diff options
author | Brahmajit Das <brahmajit.xyz@gmail.com> | 2023-06-16 06:01:26 +0000 |
---|---|---|
committer | Andrew Ammerlaan <andrewammerlaan@gentoo.org> | 2023-09-11 09:29:35 +0200 |
commit | 48f29b64335f87408a20a0fbf9a9dc81bb55b814 (patch) | |
tree | bf5b015d1b74097cdfaebc929ebe72c481e97c6d /sci-electronics/splat | |
parent | sci-chemistry/cluster: Fix error: ISO C++17 does not allow register storage c... (diff) | |
download | gentoo-48f29b64335f87408a20a0fbf9a9dc81bb55b814.tar.gz gentoo-48f29b64335f87408a20a0fbf9a9dc81bb55b814.tar.bz2 gentoo-48f29b64335f87408a20a0fbf9a9dc81bb55b814.zip |
sci-electronics/splat: Fix error: ISO C++17 does not allow register storage class specifier
Bug: https://bugs.gentoo.org/898168
Signed-off-by: Brahmajit Das <brahmajit.xyz@gmail.com>
Closes: https://github.com/gentoo/gentoo/pull/31477
Signed-off-by: Andrew Ammerlaan <andrewammerlaan@gentoo.org>
Diffstat (limited to 'sci-electronics/splat')
-rw-r--r-- | sci-electronics/splat/files/splat-1.4.2-drop-register-keyword.patch | 22 | ||||
-rw-r--r-- | sci-electronics/splat/splat-1.4.2-r1.ebuild | 92 |
2 files changed, 114 insertions, 0 deletions
diff --git a/sci-electronics/splat/files/splat-1.4.2-drop-register-keyword.patch b/sci-electronics/splat/files/splat-1.4.2-drop-register-keyword.patch new file mode 100644 index 000000000000..4445b06f2057 --- /dev/null +++ b/sci-electronics/splat/files/splat-1.4.2-drop-register-keyword.patch @@ -0,0 +1,22 @@ +Register keyword was deprecated in C++14 and removed in C++17 +Bug: https://bugs.gentoo.org/898168 +--- a/splat.cpp ++++ b/splat.cpp +@@ -567,7 +567,7 @@ double ElevationAngle(struct site source, struct site destination) + (downtilt), as referenced to a normal to the center of + the earth. */ + +- register double a, b, dx; ++ double a, b, dx; + + a=GetElevation(destination)+destination.alt+earthradius; + b=GetElevation(source)+source.alt+earthradius; +@@ -2727,7 +2727,7 @@ void PlotPath(struct site source, struct site destination, char mask_value) + + char block; + int x, y; +- register double cos_xmtr_angle, cos_test_angle, test_alt; ++ double cos_xmtr_angle, cos_test_angle, test_alt; + double distance, rx_alt, tx_alt; + + ReadPath(source,destination); diff --git a/sci-electronics/splat/splat-1.4.2-r1.ebuild b/sci-electronics/splat/splat-1.4.2-r1.ebuild new file mode 100644 index 000000000000..e8c4e8321e79 --- /dev/null +++ b/sci-electronics/splat/splat-1.4.2-r1.ebuild @@ -0,0 +1,92 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit toolchain-funcs + +DESCRIPTION="RF Signal Propagation, Loss, And Terrain analysis tool" +HOMEPAGE="https://www.qsl.net/kd2bd/splat.html" +SRC_URI="https://www.qsl.net/kd2bd/${P}.tar.bz2" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~x86" +IUSE="doc hires l10n_es" + +DEPEND=" + app-arch/bzip2 + sys-libs/zlib +" +RDEPEND="${DEPEND}" + +PATCHES=( + "${FILESDIR}"/${PN}-1.2.2-gcc43.patch + "${FILESDIR}"/${PN}-1.4.2-drop-register-keyword.patch +) + +src_configure() { + # fake resulting file from interactive configuration script + # using default resolution + cat <<- EOF > "${S}/splat.h" || die + /* Parameters for 3 arc-second standard resolution mode of operation */ + #define MAXPAGES 9 + #define HD_MODE 0 + EOF + if use hires; then + # fake resulting file from interactive configuration script + # using default resolution + cat <<- EOF > "${S}/hires.h" || die + /* Parameters for 3 arc-second hires resolution mode of operation */ + #define MAXPAGES 9 + #define HD_MODE 1 + EOF + fi +} + +src_compile() { + tc-export CC CXX + + cp {splat,rfsplat}.cpp || die + emake LDLIBS="-lm -lbz2" -E "rfsplat: itwom3.0.o" + if use hires; then + cp {hires,splat}.h || die + cp {splat,rfsplat-hd}.cpp || die + emake LDLIBS="-lm -lbz2" -E "rfsplat-hd: itwom3.0.o" + fi + + cd utils || die + + emake citydecoder usgs2sdf + emake LDLIBS=-lbz2 srtm2sdf + emake LDLIBS=-lm bearing +} + +src_install() { + local SPLAT_LANG="english" + use l10n_es && SPLAT_LANG="spanish" + # splat binary + dobin rfsplat + + use hires && dobin rfsplat-hd + + # utilities + dobin utils/{citydecoder,usgs2sdf,srtm2sdf,postdownload,bearing} + newman docs/${SPLAT_LANG}/man/splat.man rfsplat.1 + + dodoc CHANGES README utils/fips.txt + newdoc utils/README README.UTILS + + use doc && dodoc docs/${SPLAT_LANG}/{pdf/splat.pdf,postscript/splat.ps} + + #sample data + docinto sample_data + dodoc -r sample_data/. +} + +pkg_postinst() { + elog "The original SPLAT! command got renamed to 'rfsplat' to avoid" + elog "filename collision with app-portage/splat." + elog "" + elog "Be aware that it is still referenced as 'splat' in the documentation." +} |