From 1f00990debeffd0052c194989d0a02baac23eb96 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Mon, 22 Apr 2024 23:59:31 +0100 Subject: gentoo auto-resync : 22:04:2024 - 23:59:31 --- sci-libs/Manifest.gz | Bin 44813 -> 44816 bytes sci-libs/cartopy/Manifest | 7 - sci-libs/cartopy/cartopy-0.21.1-r1.ebuild | 88 ------- sci-libs/cartopy/cartopy-0.22.0.ebuild | 85 ------ .../cartopy/files/cartopy-0.21.1-fix-test.patch | 28 -- .../files/cartopy-0.21.1-fix-test_proj92.patch | 126 --------- .../files/cartopy-0.21.1-fix-test_proj92_1.patch | 46 ---- sci-libs/indilib/Manifest | 3 + .../files/indilib-2.0.7-fix-system-httplib.patch | 32 +++ sci-libs/indilib/indilib-2.0.7.ebuild | 87 ++++++ sci-libs/pyshp/Manifest | 1 - sci-libs/pyshp/pyshp-2.3.1-r1.ebuild | 30 --- sci-libs/stellarsolver/Manifest | 3 + .../files/stellarsolver-2.5-compiler-warning.patch | 26 ++ .../files/stellarsolver-2.5-qsort-warning.patch | 291 +++++++++++++++++++++ sci-libs/stellarsolver/stellarsolver-2.5-r1.ebuild | 37 +++ 16 files changed, 479 insertions(+), 411 deletions(-) delete mode 100644 sci-libs/cartopy/cartopy-0.21.1-r1.ebuild delete mode 100644 sci-libs/cartopy/cartopy-0.22.0.ebuild delete mode 100644 sci-libs/cartopy/files/cartopy-0.21.1-fix-test.patch delete mode 100644 sci-libs/cartopy/files/cartopy-0.21.1-fix-test_proj92.patch delete mode 100644 sci-libs/cartopy/files/cartopy-0.21.1-fix-test_proj92_1.patch create mode 100644 sci-libs/indilib/files/indilib-2.0.7-fix-system-httplib.patch create mode 100644 sci-libs/indilib/indilib-2.0.7.ebuild delete mode 100644 sci-libs/pyshp/pyshp-2.3.1-r1.ebuild create mode 100644 sci-libs/stellarsolver/files/stellarsolver-2.5-compiler-warning.patch create mode 100644 sci-libs/stellarsolver/files/stellarsolver-2.5-qsort-warning.patch create mode 100644 sci-libs/stellarsolver/stellarsolver-2.5-r1.ebuild (limited to 'sci-libs') diff --git a/sci-libs/Manifest.gz b/sci-libs/Manifest.gz index 94f95e16e650..9f65a31da84e 100644 Binary files a/sci-libs/Manifest.gz and b/sci-libs/Manifest.gz differ diff --git a/sci-libs/cartopy/Manifest b/sci-libs/cartopy/Manifest index 6cb82b979239..67f176886705 100644 --- a/sci-libs/cartopy/Manifest +++ b/sci-libs/cartopy/Manifest @@ -1,11 +1,4 @@ -AUX cartopy-0.21.1-fix-test.patch 1108 BLAKE2B c88a6a68bf0c0737d31049ac2c5a24791779ccc2b29f767056796c138928b04ffea47d8989dec02ed19725527d512920f07c991eb80f1534b83bf842df48b30e SHA512 010f1c844d21c60dca18dbc5530fcbebb5da99bd4a126e6c844bcb32c55533114c53694fbfc381e9a3aecabab8d11d9fb33a826597b9b66eae30c07f304f44e6 -AUX cartopy-0.21.1-fix-test_proj92.patch 5677 BLAKE2B 6ec667d840e4c7909a5c17ed858cd9dd2ea7c8022ece40cdbad00be2b36167e485864c2698969fc033c7c43882fab4b14bd8e3febeaec7c9727c3f34ad84c22f SHA512 e13235d0ee16dbb0748495fc0d697df450f9f4ea7f66845331c5dc3208f70502ebf9c7288730cdd060b20b489b0b2e729bbcb99616a2b6ddf12e42fc45427b06 -AUX cartopy-0.21.1-fix-test_proj92_1.patch 2002 BLAKE2B 891615c88200d3a4ed84ecdbdc1150c82524734dc06c8240534788c0395d5e5244d9a6faeafedf174e1172fb929c36a27b9e2a2aa205293063471dc925e1218b SHA512 156704f18ca398c8327ed3a111cfd87696a0d5f7907d4e8c34ce3e0c8a99eea4930c241f88f6a9c8fe8bfab34148cbbe995a6f471332c97ad88aa0d4d9c567e0 AUX cartopy-0.23.0-backport-test-fixes.patch 520 BLAKE2B 57edd4f30665f243a7e710f3341fae647c897aab5066adf2749fd3c084adc67a730203d29dc3c5d19b8b963ecde2c41cbfd8a5da2c82e8775161d2ee4621a1ef SHA512 701b61807388962d2be57da2b7d32a0cd0b84584119cd0772d8b2a1da15e9cf233a048c2bd3ac08bd353732f7c2ae36bf500983569c1c42fec093752a9c570bd -DIST cartopy-0.21.1.gh.tar.gz 10815884 BLAKE2B 4137f593b6ce35270f9df5016529250a07c57ec5a95843db8740eb494f55109b5129cf72153b0216e4f786771bf5cedde3caaecd40175fe9ad5c6fb65ad84788 SHA512 de1d09ee3bf6af13bcc7cc4bb1f7c13335ba67e05d2ad64efa0fb00bdb74c7e13c6fc44822d5ac1d70ee7d39b2322280c1395dc66119b9ecd94ca26014e413a1 -DIST cartopy-0.22.0.gh.tar.gz 10907762 BLAKE2B 0524efb2359f72da4e73cc74c41b03f4e335163dea4b86f5b8907b2a20521ce81a42fceebbdd7e582315b33aed0dfdf159469dfa13516c9c46a8f887f847fa21 SHA512 195cc69170c826240e03918de39925459c94c36b76f1a87b8ec3bca7c00ed577eb8c727ccda1511c0f691ac5aea043d3d02d7bfb603624548e63c9a7dc644ad5 DIST cartopy-0.23.0.gh.tar.gz 10645484 BLAKE2B aa9306e9f5bd85ae28be4802aac1a36d67df5812e9d188ad20d27103eaff1856b7d48e256459519b4e647bdf17fc207e8473ec6ead7413db113311fe821faba6 SHA512 8f357faad592db03c564d2c87f6d1600d2a04a68b71b250925c222cea418b8588f2eb48f64d3ec7210650a34372777ef8416c8f129af7911661615759d2c60b5 -EBUILD cartopy-0.21.1-r1.ebuild 2301 BLAKE2B 0cad49a11e61991c6f2eb42575769941d7944f5b1a802d894d45525ffa045b43f9491123a02f20ee7cf8faf4fa5a792c21096ce1552628542839d8a1765abe15 SHA512 ed4e5e0f66f270fb298276f222f1fc3b68a99288f7714610df7cc772586e1214fc26497e14f542496d56cf21d07922a97bfb89f256a465b76bf85d5af7836e29 -EBUILD cartopy-0.22.0.ebuild 2153 BLAKE2B 47c7563e70117d433b2d1450efa2fd21666f85d88de9ffcda0378435cb5f087549d3e688ac43706ec6c9f28cd3394de96545c8d4846b84162a2dcc063873226d SHA512 3e3cb0519d3fc86ba19ba2205d9f836b8641da8e02a7635cc8c6706fdad778dce0fc670fb652074461c16d9d069db0101c813fa14194aed8fcce7a50289c18d3 EBUILD cartopy-0.23.0.ebuild 2193 BLAKE2B 82d5147690bbe2081793db394666cbd1ad41c68a8f18a55f7f6e555d7551273f617db996b4298a062f7436635b0b00f085b9cf3773267705082af22562e63fe7 SHA512 4afffbef0971f207444de7013d948993fac1bac211310fd5f10fa2c2f92e338638bb19023a99b49819b88329563510bfc28e11ba67c477e19855dc7dfa1f15ca MISC metadata.xml 729 BLAKE2B 38605f8140ccae8c9edf2b5eb7bf394e9c99fd089fa998c98422967cc12d3b808d3b7901d3746da25558c9211e47deec01a3d5856176cda8a868c0151a03fed8 SHA512 f3fb714f50475c2e0f4150d20423195fffb39243aefd313e9a9d0fa834364a928a712006d6e1e1def77b902f8c349a4045d3081fe38697054e744441e622a591 diff --git a/sci-libs/cartopy/cartopy-0.21.1-r1.ebuild b/sci-libs/cartopy/cartopy-0.21.1-r1.ebuild deleted file mode 100644 index e7186c4571c4..000000000000 --- a/sci-libs/cartopy/cartopy-0.21.1-r1.ebuild +++ /dev/null @@ -1,88 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DISTUTILS_SINGLE_IMPL=1 -DISTUTILS_EXT=1 -PYTHON_COMPAT=( python3_{9..11} ) - -DISTUTILS_USE_PEP517=setuptools -inherit distutils-r1 multibuild multiprocessing virtualx - -MY_PV=${PV/_beta/b} -MY_P=${PN}-${MY_PV} - -DESCRIPTION="Python package for geospatial data processing and analysis" -HOMEPAGE="https://scitools.org.uk/cartopy" -SRC_URI="https://github.com/SciTools/${PN}/archive/v${MY_PV}.tar.gz -> ${P}.gh.tar.gz" -S="${WORKDIR}"/${MY_P} - -LICENSE="LGPL-3" -SLOT="0" -KEYWORDS="~amd64 ~x86" -IUSE="test" -RESTRICT="!test? ( test )" -REQUIRED_USE="${PYTHON_REQUIRED_USE}" - -RDEPEND=" - ${PYTHON_DEPS} - sci-libs/gdal[python,${PYTHON_SINGLE_USEDEP}] - sci-libs/geos - $(python_gen_cond_dep ' - >=dev-python/numpy-1.19[${PYTHON_USEDEP}] - dev-python/shapely[${PYTHON_USEDEP}] - dev-python/six[${PYTHON_USEDEP}] - dev-python/matplotlib[${PYTHON_USEDEP}] - dev-python/scipy[${PYTHON_USEDEP}] - dev-python/pillow[jpeg,${PYTHON_USEDEP}] - dev-python/pyproj[${PYTHON_USEDEP}] - sci-libs/pyshp[${PYTHON_USEDEP}] - ') -" -DEPEND="${RDEPEND}" -BDEPEND=" - $(python_gen_cond_dep ' - dev-python/setuptools-scm[${PYTHON_USEDEP}] - dev-python/cython[${PYTHON_USEDEP}] - ') - test? ( - $(python_gen_cond_dep ' - dev-python/filelock[${PYTHON_USEDEP}] - dev-python/mock[${PYTHON_USEDEP}] - dev-python/flufl-lock[${PYTHON_USEDEP}] - dev-python/pytest-mpl[${PYTHON_USEDEP}] - dev-python/pytest-xdist[${PYTHON_USEDEP}] - ') - ) -" - -PATCHES=( "${FILESDIR}"/${P}-fix-test.patch - # backports to fix tests with >=PROJ9.2 - "${FILESDIR}"/${PN}-0.21.1-fix-test_proj92.patch - "${FILESDIR}"/${PN}-0.21.1-fix-test_proj92_1.patch ) - -EPYTEST_IGNORE=( - # Require network access, not covered by markers - lib/cartopy/tests/mpl/test_crs.py - lib/cartopy/tests/mpl/test_gridliner.py -) - -distutils_enable_tests pytest - -python_prepare_all() { - export SETUPTOOLS_SCM_PRETEND_VERSION=${PV} - - # Prepare matplotlib backend for test suite - export MPLCONFIGDIR="${T}" - echo "backend : Agg" > "${MPLCONFIGDIR}"/matplotlibrc || die - - distutils-r1_python_prepare_all -} - -python_test() { - cd "${BUILD_DIR}" || die - - # Drop all tests needing network access - virtx epytest -n "$(makeopts_jobs)" -m "not network and not natural_earth" || die "test failed" -} diff --git a/sci-libs/cartopy/cartopy-0.22.0.ebuild b/sci-libs/cartopy/cartopy-0.22.0.ebuild deleted file mode 100644 index cfc80da1d172..000000000000 --- a/sci-libs/cartopy/cartopy-0.22.0.ebuild +++ /dev/null @@ -1,85 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DISTUTILS_SINGLE_IMPL=1 -DISTUTILS_EXT=1 -PYTHON_COMPAT=( python3_{9..11} ) - -DISTUTILS_USE_PEP517=setuptools -inherit distutils-r1 multiprocessing virtualx - -MY_PV=${PV/_beta/b} -MY_P=${PN}-${MY_PV} - -DESCRIPTION="Python package for geospatial data processing and analysis" -HOMEPAGE="https://scitools.org.uk/cartopy" -SRC_URI="https://github.com/SciTools/${PN}/archive/v${MY_PV}.tar.gz -> ${P}.gh.tar.gz" -S="${WORKDIR}"/${MY_P} - -LICENSE="LGPL-3" -SLOT="0" -KEYWORDS="~amd64 ~x86" -IUSE="test" -RESTRICT="!test? ( test )" -REQUIRED_USE="${PYTHON_REQUIRED_USE}" - -RDEPEND=" - ${PYTHON_DEPS} - sci-libs/gdal[python,${PYTHON_SINGLE_USEDEP}] - sci-libs/geos - $(python_gen_cond_dep ' - >=dev-python/numpy-1.19[${PYTHON_USEDEP}] - dev-python/shapely[${PYTHON_USEDEP}] - dev-python/six[${PYTHON_USEDEP}] - dev-python/matplotlib[${PYTHON_USEDEP}] - dev-python/scipy[${PYTHON_USEDEP}] - dev-python/pillow[jpeg,${PYTHON_USEDEP}] - dev-python/pyproj[${PYTHON_USEDEP}] - sci-libs/pyshp[${PYTHON_USEDEP}] - ') -" -DEPEND="${RDEPEND}" -BDEPEND=" - $(python_gen_cond_dep ' - dev-python/setuptools-scm[${PYTHON_USEDEP}] - dev-python/cython[${PYTHON_USEDEP}] - ') - test? ( - $(python_gen_cond_dep ' - dev-python/filelock[${PYTHON_USEDEP}] - dev-python/mock[${PYTHON_USEDEP}] - dev-python/flufl-lock[${PYTHON_USEDEP}] - dev-python/pytest-mpl[${PYTHON_USEDEP}] - dev-python/pytest-xdist[${PYTHON_USEDEP}] - ') - ) -" - -EPYTEST_IGNORE=( - # Require network access, not covered by markers - lib/cartopy/tests/mpl/test_crs.py - lib/cartopy/tests/mpl/test_gridliner.py -) - -distutils_enable_tests pytest - -python_prepare_all() { - export SETUPTOOLS_SCM_PRETEND_VERSION=${PV} - - # Prepare matplotlib backend for test suite - export MPLCONFIGDIR="${T}" - echo "backend : Agg" > "${MPLCONFIGDIR}"/matplotlibrc || die - - sed -i -e "s/exclude =/#exclude =/" pyproject.toml || die - - distutils-r1_python_prepare_all -} - -python_test() { - cd "${BUILD_DIR}" || die - - # Drop all tests needing network access - virtx epytest -n "$(makeopts_jobs)" -m "not network and not natural_earth" || die "test failed" -} diff --git a/sci-libs/cartopy/files/cartopy-0.21.1-fix-test.patch b/sci-libs/cartopy/files/cartopy-0.21.1-fix-test.patch deleted file mode 100644 index fd308b326c68..000000000000 --- a/sci-libs/cartopy/files/cartopy-0.21.1-fix-test.patch +++ /dev/null @@ -1,28 +0,0 @@ -Matplotlib-3.7 has merged SubplotBase into AxesBase now, which makes the -class string representation here GeoAxes now, even though we are -still an _instance_ of GeoAxesSubplot - -Backported from https://github.com/SciTools/cartopy/commit/6b4572ba1a8a877f28e25dfe9559c14b7a565958?diff=unified -diff --git a/lib/cartopy/tests/mpl/test_axes.py b/lib/cartopy/tests/mpl/test_axes.py -index eaf5904..d4e37a1 100644 ---- a/lib/cartopy/tests/mpl/test_axes.py -+++ b/lib/cartopy/tests/mpl/test_axes.py -@@ -13,7 +13,8 @@ import pytest - - import cartopy.crs as ccrs - import cartopy.feature as cfeature --from cartopy.mpl.geoaxes import InterProjectionTransform, GeoAxes -+from cartopy.mpl.geoaxes import ( -+ InterProjectionTransform, GeoAxes, GeoAxesSubplot) - - - class TestNoSpherical: -@@ -119,7 +120,7 @@ class Test_Axes_add_geometries: - - def test_geoaxes_subplot(): - ax = plt.subplot(1, 1, 1, projection=ccrs.PlateCarree()) -- assert str(ax.__class__) == "" -+ assert isinstance(ax, GeoAxesSubplot) - - - @pytest.mark.mpl_image_compare(filename='geoaxes_subslice.png') diff --git a/sci-libs/cartopy/files/cartopy-0.21.1-fix-test_proj92.patch b/sci-libs/cartopy/files/cartopy-0.21.1-fix-test_proj92.patch deleted file mode 100644 index e9f1d03eeeb2..000000000000 --- a/sci-libs/cartopy/files/cartopy-0.21.1-fix-test_proj92.patch +++ /dev/null @@ -1,126 +0,0 @@ -diff --git a/lib/cartopy/tests/crs/test_equidistant_conic.py b/lib/cartopy/tests/crs/test_equidistant_conic.py -index 045c87e5d..9f50b4f04 100644 ---- a/lib/cartopy/tests/crs/test_equidistant_conic.py -+++ b/lib/cartopy/tests/crs/test_equidistant_conic.py -@@ -10,6 +10,7 @@ - - import numpy as np - from numpy.testing import assert_almost_equal, assert_array_almost_equal -+import pyproj - import pytest - - import cartopy.crs as ccrs -@@ -23,11 +24,16 @@ def test_default(self): - 'y_0=0.0', 'lat_1=20.0', 'lat_2=50.0'} - check_proj_params('eqdc', eqdc, other_args) - -+ expected_x = (-22784919.35600352, 22784919.35600352) -+ expected_y = (-10001965.729313632, 17558791.85156368) -+ if pyproj.__proj_version__ >= '9.2.0': -+ expected_x = (-22784919.3559981, 22784919.3559981) -+ expected_y = (-10001965.72931272, 17558791.85157471) - assert_almost_equal(np.array(eqdc.x_limits), -- (-22784919.35600352, 22784919.35600352), -+ expected_x, - decimal=7) - assert_almost_equal(np.array(eqdc.y_limits), -- (-10001965.729313632, 17558791.85156368), -+ expected_y, - decimal=7) - - def test_eccentric_globe(self): -@@ -37,12 +43,16 @@ def test_eccentric_globe(self): - other_args = {'a=1000', 'b=500', 'lon_0=0.0', 'lat_0=0.0', 'x_0=0.0', - 'y_0=0.0', 'lat_1=20.0', 'lat_2=50.0'} - check_proj_params('eqdc', eqdc, other_args) -- -+ expected_x = (-3016.869847713461, 3016.869847713461) -+ expected_y = (-1216.6029342241113, 2511.0574375797723) -+ if pyproj.__proj_version__ >= '9.2.0': -+ expected_x = (-2960.1009481, 2960.1009481) -+ expected_y = (-1211.05573766, 2606.04249537) - assert_almost_equal(np.array(eqdc.x_limits), -- (-3016.869847713461, 3016.869847713461), -+ expected_x, - decimal=7) - assert_almost_equal(np.array(eqdc.y_limits), -- (-1216.6029342241113, 2511.0574375797723), -+ expected_y, - decimal=7) - - def test_eastings(self): -@@ -127,12 +137,16 @@ def test_ellipsoid_transform(self): - 'lat_0=23.0', 'x_0=0.0', 'y_0=0.0', 'lat_1=29.5', - 'lat_2=45.5'} - check_proj_params('eqdc', eqdc, other_args) -- -+ expected_x = (-22421870.719894886, 22421870.719894886) -+ expected_y = (-12546277.778958388, 17260638.403203618) -+ if pyproj.__proj_version__ >= '9.2.0': -+ expected_x = (-22421870.71988974, 22421870.71988976) -+ expected_y = (-12546277.77895742, 17260638.403216) - assert_almost_equal(np.array(eqdc.x_limits), -- (-22421870.719894886, 22421870.719894886), -+ expected_x, - decimal=7) - assert_almost_equal(np.array(eqdc.y_limits), -- (-12546277.778958388, 17260638.403203618), -+ expected_y, - decimal=7) - - result = eqdc.transform_point(-75.0, 35.0, geodetic) -diff --git a/lib/cartopy/tests/crs/test_sinusoidal.py b/lib/cartopy/tests/crs/test_sinusoidal.py -index 2f2a1821a..9347260a1 100644 ---- a/lib/cartopy/tests/crs/test_sinusoidal.py -+++ b/lib/cartopy/tests/crs/test_sinusoidal.py -@@ -6,6 +6,7 @@ - - import numpy as np - from numpy.testing import assert_almost_equal -+import pyproj - import pytest - - import cartopy.crs as ccrs -@@ -32,10 +33,15 @@ def test_eccentric_globe(self): - other_args = {'a=1000', 'b=500', 'lon_0=0.0', 'x_0=0.0', 'y_0=0.0'} - check_proj_params('sinu', crs, other_args) - -+ expected_x = [-3141.59, 3141.59] -+ expected_y = [-1216.60, 1216.60] -+ if pyproj.__proj_version__ >= '9.2.0': -+ expected_x = [-3141.60, 3141.60] -+ expected_y = [-1211.05, 1211.05] - assert_almost_equal(np.array(crs.x_limits), -- [-3141.59, 3141.59], decimal=2) -+ expected_x, decimal=2) - assert_almost_equal(np.array(crs.y_limits), -- [-1216.60, 1216.60], decimal=2) -+ expected_y, decimal=2) - - def test_offset(self): - crs = ccrs.Sinusoidal() -diff --git a/lib/cartopy/tests/test_crs.py b/lib/cartopy/tests/test_crs.py -index c1a5d11da..b6c38ced3 100644 ---- a/lib/cartopy/tests/test_crs.py -+++ b/lib/cartopy/tests/test_crs.py -@@ -90,9 +90,17 @@ def test_osgb(self, approx): - def test_epsg(self): - uk = ccrs.epsg(27700) - assert uk.epsg_code == 27700 -- assert_almost_equal(uk.x_limits, (-104009.357, 688806.007), decimal=3) -- assert_almost_equal(uk.y_limits, (-8908.37, 1256558.45), decimal=2) -- assert_almost_equal(uk.threshold, 7928.15, decimal=2) -+ expected_x = (-104009.357, 688806.007) -+ expected_y = (-8908.37, 1256558.45) -+ expected_threshold = 7928.15 -+ if pyproj.__proj_version__ >= '9.2.0': -+ expected_x = (-104728.764, 688806.007) -+ expected_y = (-8908.36, 1256616.32) -+ expected_threshold = 7935.34 -+ assert_almost_equal(uk.x_limits, -+ expected_x, decimal=3) -+ assert_almost_equal(uk.y_limits, expected_y, decimal=2) -+ assert_almost_equal(uk.threshold, expected_threshold, decimal=2) - self._check_osgb(uk) - - def test_epsg_compound_crs(self): diff --git a/sci-libs/cartopy/files/cartopy-0.21.1-fix-test_proj92_1.patch b/sci-libs/cartopy/files/cartopy-0.21.1-fix-test_proj92_1.patch deleted file mode 100644 index 7ce52bb23364..000000000000 --- a/sci-libs/cartopy/files/cartopy-0.21.1-fix-test_proj92_1.patch +++ /dev/null @@ -1,46 +0,0 @@ -diff --git a/lib/cartopy/tests/crs/test_lambert_conformal.py b/lib/cartopy/tests/crs/test_lambert_conformal.py -index 6032d2e5c..c64022ff9 100644 ---- a/lib/cartopy/tests/crs/test_lambert_conformal.py -+++ b/lib/cartopy/tests/crs/test_lambert_conformal.py -@@ -5,6 +5,7 @@ - # licensing details. - - from numpy.testing import assert_array_almost_equal -+import pyproj - import pytest - - import cartopy.crs as ccrs -@@ -68,18 +69,29 @@ def test_too_many_parallel(self): - - def test_single_spole(self): - s_pole_crs = ccrs.LambertConformal(standard_parallels=[-1.]) -+ expected_x = (-19939660, 19939660) -+ expected_y = (-735590302, -8183795) -+ if pyproj.__proj_version__ >= '9.2.0': -+ expected_x = (-19840440, 19840440) -+ expected_y = (-370239953, -8191953) -+ print(s_pole_crs.x_limits) - assert_array_almost_equal(s_pole_crs.x_limits, -- (-19939660, 19939660), -+ expected_x, - decimal=0) - assert_array_almost_equal(s_pole_crs.y_limits, -- (-735590302, -8183795), -+ expected_y, - decimal=0) - - def test_single_npole(self): - n_pole_crs = ccrs.LambertConformal(standard_parallels=[1.]) -+ expected_x = (-20130569, 20130569) -+ expected_y = (-8170229, 726200683) -+ if pyproj.__proj_version__ >= '9.2.0': -+ expected_x = (-20222156, 20222156) -+ expected_y = (-8164817, 360848719) - assert_array_almost_equal(n_pole_crs.x_limits, -- (-20130569, 20130569), -+ expected_x, - decimal=0) - assert_array_almost_equal(n_pole_crs.y_limits, -- (-8170229, 726200683), -+ expected_y, - decimal=0) diff --git a/sci-libs/indilib/Manifest b/sci-libs/indilib/Manifest index b49ac4f3f349..b29c58da2afc 100644 --- a/sci-libs/indilib/Manifest +++ b/sci-libs/indilib/Manifest @@ -1,3 +1,6 @@ +AUX indilib-2.0.7-fix-system-httplib.patch 1359 BLAKE2B d2a8000039bedef796d7e751000320bb3aaa69563fc5ef878d0b4c8b2a274087d30230388cc5b05a9fcb25f4b5369ce501d9b13d7f88dbf213096b9f893b3c62 SHA512 81ed02c6a92a4e2143551f4e2abdaacf44d747bb4c4cb06b18807fc005c4c97b87a4d0830dea6d6f8a473162d5863eee6d0aceab6396c2a3a35b9e951c2b7dc3 DIST indilib-2.0.6.tar.gz 2793169 BLAKE2B ebbbc40074df8ea77b781d09d802506003e3f71ee9450730b145ff9d190d9a0d41bcb7db4449fb05f138d536b811d7fcbfd095516b2f73a163bd110335d3d14d SHA512 e00ca31f4bc2298529586e5c1cc35389e9dcc72f9b93a1c5a4594c4c3d11f72a63e02d228a582f4ee08b7986a8eed6ebe53cb19b25fa05ebe53243708d2a8ff5 +DIST indilib-2.0.7.tar.gz 2843758 BLAKE2B dee94a40d4b3c5c4d994d945a3608a41765af14c4937d475bdf80dca5d5847b814e0d9a1060f39b15b109916dee45f1876ce8edd29588e209276e3b1bf6f3dd7 SHA512 292c0a5b8f07b24c42ea9424be19012c97317206b837d8601ec4d771fa35c314bf00712509f8199ee3da193ea12f0c3e90036a49deece304dc256cdeba60810d EBUILD indilib-2.0.6.ebuild 1897 BLAKE2B 8a544c9f323b97ebe1d615c585ab38fb832299b0dccbe2b1c1e72b9486328840add58ba72c7efe098e2c62c82441e9c376e47ccce3d33adbb8a73d3b91dfaaef SHA512 7a2ad54c7624ec6dd798d3b54e092b289365b5719d77577362f92801f9a059de00f1360c49b215853321b4c846947a23da879142c596f5f68a2aabb5da28dc21 +EBUILD indilib-2.0.7.ebuild 1955 BLAKE2B 9c1fdedcc8f75050d359e3dc7880f21a78337145f0afa3135a37398f74c1eba5bc724d80d049279ce7e341fee753d494265e6a2ebe2d0aa0708ab879e1a8903b SHA512 2571c32094f53daea768426f982609167f6e05279d16fbef9109ada9597691fd3d4092cea8d31a374b3492ac04804de1531dcbb5471ea6254f3eac2f38932c7e MISC metadata.xml 562 BLAKE2B 675fbd88b6ea5004a89e4d86f397e924317f56ad98743d1d8cd9758f92b516cf70386f4eb59c8869451acd6b312c50a05b37a9ca3cedac87599bd90cd46d6ddd SHA512 ebef1f64112d45534b6ea13ce54b2ee57349d11486b881be277d669e984891fe9d8ca3839aadbbece908f55bd027060739460929bd7e0400cd04e639c7d2186f diff --git a/sci-libs/indilib/files/indilib-2.0.7-fix-system-httplib.patch b/sci-libs/indilib/files/indilib-2.0.7-fix-system-httplib.patch new file mode 100644 index 000000000000..81876a468fa2 --- /dev/null +++ b/sci-libs/indilib/files/indilib-2.0.7-fix-system-httplib.patch @@ -0,0 +1,32 @@ +From 1d9e7a4645aa9d1c8534a0e69c3fb212382ac1ed Mon Sep 17 00:00:00 2001 +From: Mario Haustein +Date: Fri, 12 Apr 2024 11:31:01 +0200 +Subject: [PATCH] Link against httplib if using system libraries (#2039) + +--- + drivers/auxiliary/CMakeLists.txt | 2 +- + drivers/dome/CMakeLists.txt | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/drivers/auxiliary/CMakeLists.txt b/drivers/auxiliary/CMakeLists.txt +index 66f7e3a615..41279d0a9d 100644 +--- a/drivers/auxiliary/CMakeLists.txt ++++ b/drivers/auxiliary/CMakeLists.txt +@@ -313,5 +313,5 @@ SET(dragonlight_SRC + dragonlight.cpp) + + add_executable(indi_dragon_light ${dragonlight_SRC}) +-target_link_libraries(indi_dragon_light indidriver) ++target_link_libraries(indi_dragon_light indidriver ${HTTPLIB_LIBRARY}) + install(TARGETS indi_dragon_light RUNTIME DESTINATION bin) +diff --git a/drivers/dome/CMakeLists.txt b/drivers/dome/CMakeLists.txt +index 9dfdc812b8..377af11d2f 100644 +--- a/drivers/dome/CMakeLists.txt ++++ b/drivers/dome/CMakeLists.txt +@@ -80,5 +80,5 @@ SET(dragonlair_SRC + dragonlair.cpp) + + add_executable(indi_dragonlair_dome ${dragonlair_SRC}) +-target_link_libraries(indi_dragonlair_dome indidriver) ++target_link_libraries(indi_dragonlair_dome indidriver ${HTTPLIB_LIBRARY}) + install(TARGETS indi_dragonlair_dome RUNTIME DESTINATION bin) diff --git a/sci-libs/indilib/indilib-2.0.7.ebuild b/sci-libs/indilib/indilib-2.0.7.ebuild new file mode 100644 index 000000000000..78c307accfed --- /dev/null +++ b/sci-libs/indilib/indilib-2.0.7.ebuild @@ -0,0 +1,87 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake flag-o-matic udev + +DESCRIPTION="INDI Astronomical Control Protocol library" +HOMEPAGE="https://www.indilib.org/" +SRC_URI="https://github.com/${PN}/${PN/lib/}/archive/v${PV}.tar.gz -> ${P}.tar.gz" +S="${WORKDIR}/${P/lib/}" + +LICENSE="BSD GPL-2+ LGPL-2+ LGPL-2.1+" +SLOT="0/1" +KEYWORDS="~amd64 ~ppc ~ppc64 ~riscv ~x86" +IUSE="ogg rtlsdr test websocket" + +RESTRICT="!test? ( test )" + +RDEPEND=" + dev-cpp/cpp-httplib:= + dev-cpp/nlohmann_json + dev-libs/libev + media-libs/libjpeg-turbo:= + net-misc/curl + sci-libs/cfitsio:= + sci-libs/fftw:3.0= + sci-libs/gsl:= + sci-libs/libnova:= + sys-libs/zlib + virtual/libusb:1 + ogg? ( + media-libs/libogg + media-libs/libtheora + ) + rtlsdr? ( net-wireless/rtl-sdr ) + websocket? ( dev-libs/boost:= ) +" +DEPEND="${RDEPEND} + kernel_linux? ( sys-kernel/linux-headers ) + test? ( >=dev-cpp/gtest-1.8.0 ) + websocket? ( dev-cpp/websocketpp ) +" + +PATCHES=( "${FILESDIR}/${P}-fix-system-httplib.patch" ) + +src_configure() { + # -Werror=odr + # https://bugs.gentoo.org/878525 + # https://github.com/indilib/indi/issues/2023 + filter-lto + + local mycmakeargs=( + -DINDI_SYSTEM_HTTPLIB=ON + -DINDI_SYSTEM_JSONLIB=ON + -DINDI_BUILD_QT5_CLIENT=OFF + -DINDI_BUILD_SHARED=ON + -DINDI_BUILD_STATIC=OFF + -DINDI_BUILD_XISF=OFF # not packaged + -DUDEVRULES_INSTALL_DIR="${EPREFIX}$(get_udevdir)"/rules.d + $(cmake_use_find_package ogg OggTheora) + $(cmake_use_find_package rtlsdr RTLSDR) + -DINDI_BUILD_UNITTESTS=$(usex test) + -DINDI_BUILD_INTEGTESTS=$(usex test) + -DINDI_BUILD_WEBSOCKET=$(usex websocket) + ) + + cmake_src_configure +} + +src_test() { + # Unit tests + BUILD_DIR="${BUILD_DIR}"/test cmake_src_test + + # Integration tests + # They fail in parallel because they try to bind to the same port more + # than once. + BUILD_DIR="${BUILD_DIR}"/integs cmake_src_test -j1 +} + +pkg_postinst() { + udev_reload +} + +pkg_postrm() { + udev_reload +} diff --git a/sci-libs/pyshp/Manifest b/sci-libs/pyshp/Manifest index 339bc9656a49..cd8a593a9c8d 100644 --- a/sci-libs/pyshp/Manifest +++ b/sci-libs/pyshp/Manifest @@ -1,4 +1,3 @@ DIST pyshp-2.3.1..gh.tar.gz 2213685 BLAKE2B ca5b87dec442508bc4a0612982984ba0fb91aa8acffddb6a448c43ccf42285305600a5e28e1fb781a3d94e8ce0624d027642fddcc5f2176dca3df095e59df170 SHA512 08844492b8d1d824c639844f7f314909d946bd4d3703a4f8d4cb64d400729671b42ff5b0f80aa68d9469f3939a3c7619ba13c9efdcba3b244ec01d7be3a371c5 -EBUILD pyshp-2.3.1-r1.ebuild 777 BLAKE2B 59870ff54c0a4a3b8ace5ca05ff0225fdbfb6d9cb1cacee8d3b7759a92099fb4dfd1fdc2a62bd7d53e47bfb481ba4f9df996ed99298ecbcecca0fd3292f91e6f SHA512 5f47eb6e8138c64c6b4ccac8288d01216c7180fdefd486a8c4be2e30327b21af8f56806f01baec58bc23668a3c13056c7d5549d8a9f3473224133a4f28b470cd EBUILD pyshp-2.3.1-r2.ebuild 766 BLAKE2B c14fa6ee82cb0649abb28ffacc950263e10e16e42a0ee32096938eb3169fd1ebe55383fc6a3b8304d26a14d4d3602d6b1b494a7c6cd3648b2f1b1dea822f723f SHA512 1eae298a56f3c3c1f01e30e3dfc6860b1b461a73a33af8c2b5e2696576a4cbcbfed271e406cab0608777bb834af0814fd0af6ac1bbe63ab61536d53f09df1db5 MISC metadata.xml 392 BLAKE2B d0502636f7a083b4eca21dd9c9cb2604d96ec91616c88566f42687e53be965090683984d3289ae332c94309e89b25f39a12b601467abec718365d53f423fe21d SHA512 b3914985e7b8857a7f0841d4e987746f64a571a83ed3a237621c048e073c1f5a77512c40011ee1808c3ffadff08c03adc53ffe767e8a5f35c628882df779b771 diff --git a/sci-libs/pyshp/pyshp-2.3.1-r1.ebuild b/sci-libs/pyshp/pyshp-2.3.1-r1.ebuild deleted file mode 100644 index 813c53e427ef..000000000000 --- a/sci-libs/pyshp/pyshp-2.3.1-r1.ebuild +++ /dev/null @@ -1,30 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="8" - -PYTHON_COMPAT=( python3_{9..11} ) - -DISTUTILS_USE_PEP517=setuptools -inherit distutils-r1 - -DESCRIPTION="Pure Python read/write support for ESRI Shapefile format" -HOMEPAGE="https://pypi.org/project/pyshp/" -# pypi tarballs are missing test data -#SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz" -SRC_URI="https://github.com/GeospatialPython/${PN}/archive/${PV}.tar.gz -> ${P}..gh.tar.gz" - -LICENSE="MIT" -SLOT="0" -KEYWORDS="~amd64 ~x86" -IUSE="test" -RESTRICT="!test? ( test )" - -RDEPEND="" -DEPEND="${RDEPEND} - dev-python/setuptools[${PYTHON_USEDEP}] - test? ( dev-python/pytest[${PYTHON_USEDEP}] )" - -python_test() { - epytest test_shapefile.py -m "not network" || die -} diff --git a/sci-libs/stellarsolver/Manifest b/sci-libs/stellarsolver/Manifest index 82cb5d6114f3..bc74485a1c19 100644 --- a/sci-libs/stellarsolver/Manifest +++ b/sci-libs/stellarsolver/Manifest @@ -1,3 +1,6 @@ +AUX stellarsolver-2.5-compiler-warning.patch 1046 BLAKE2B a9820195206c698bd3107846e52a48e648555ce6da2d8700f6a44bf4bcba80c968e5ff60bfcb556c0c7b1b405acd3702a37bb2dcba30f999edff92c566237090 SHA512 4136dff3be775e1ec426eff9be5caf5368cec8faa969752ecce55b0680da0c5b725541632116507dfbe381025986fc188be4534ac98ffe9bfb4860fdb099365c +AUX stellarsolver-2.5-qsort-warning.patch 10025 BLAKE2B d16f29912b6190e4dc0af6ba307064e1312737eafff211fab1466f2f13af40e9afb6100e728d71d60cae83e8bc88175bf79dedce82f938fd372be22266a21c47 SHA512 a099ef0d47fabec1b9f776a4f901e39daa0231db559837a2f40bf5fa23847513f188bd9292758f5c4f055a5ea62fe03e7c45b8dd129453d41d10b20a510c1d3a DIST stellarsolver-2.5.tar.gz 23402988 BLAKE2B ec1ab428413104a329128e3e90883884eedf2c031fb4f3f5a8ab7579243a7b7a496579f3127ad0324176cf825d02a417e1538272b931a87090f1373adf0d1239 SHA512 003522ac0b4130e0ca16ccb617743e3716aa2a182ad63abfb901ea0b47c28a745e8ca1e5b7874d17636ff948b1ebc055277557f89a159e425af7d2a64f513fe8 +EBUILD stellarsolver-2.5-r1.ebuild 821 BLAKE2B db23bead364172e310ecc9491ca8e892bff04beaa5c712e269f2de9576b27bf6cfb9f8c6c21bfd409cdb0f5362b2e881129c14831a771ab8cf28aed08f203337 SHA512 eae66785f2d4150fdf43dc27ec4d247db68ee5d5554406ceaf49e094eade8e7cb9856d4930a6d0d757bcf3c9e1eded44b68dbbbac235c1349f6cb8ac13d819ee EBUILD stellarsolver-2.5.ebuild 688 BLAKE2B 6a736278e73f986b5b40387de2abc1caada0ae553b98573c06937898f8f152ff7de997d811d4626da58d21464dacecbd8202cb8f341ff397b850412412c3e926 SHA512 3bd5aa128bb70b642e5d7df572ac3b0cae6a0629e85cbc49a9451bbfdd3abecc42bda8b44dc1a1b52d748e0d7a6db0611bac00501e79b115641d0c2f7eb1cdee MISC metadata.xml 464 BLAKE2B 4d73483b37f92bd6a6a112d27c17ce7c8c0165cb3400f10c3a5ed5a65bcaa6e2e0d892d305834fc813655258173552cdef75431d9798491d0b124de1dbb6f035 SHA512 3cc978f381b4435b05712e69733336ec7e89963d4b236059c21b4bf7f08b899e617243ef5df0e27c2ef21e59197b97fcf414c1964b86b215d0c355c4f88cac77 diff --git a/sci-libs/stellarsolver/files/stellarsolver-2.5-compiler-warning.patch b/sci-libs/stellarsolver/files/stellarsolver-2.5-compiler-warning.patch new file mode 100644 index 000000000000..eaae908db774 --- /dev/null +++ b/sci-libs/stellarsolver/files/stellarsolver-2.5-compiler-warning.patch @@ -0,0 +1,26 @@ +From 475193d28c0b33b14cecf9492a7c3cd06abcc9f5 Mon Sep 17 00:00:00 2001 +From: Tim Surber +Date: Wed, 10 Apr 2024 23:36:49 +0200 +Subject: [PATCH] fix another compiler warning + +--- + stellarsolver/astrometry/util/fitstable.c | 6 +++++- + 1 file changed, 5 insertions(+), 1 deletion(-) + +diff --git a/stellarsolver/astrometry/util/fitstable.c b/stellarsolver/astrometry/util/fitstable.c +index 10e1bc2..5885040 100644 +--- a/stellarsolver/astrometry/util/fitstable.c ++++ b/stellarsolver/astrometry/util/fitstable.c +@@ -1227,7 +1227,11 @@ static fitstable_t* open_for_writing(const char* fn, const char* mode, FILE* fid + else { + tab->fid = fopen(fn, mode); + if (!tab->fid) { +- SYSERROR("Couldn't open output file %s for writing", fn); ++ if (fn != NULL) { ++ SYSERROR("Couldn't open output file %s for writing", fn); ++ } else { ++ SYSERROR("Couldn't open output file because the filename is null"); ++ } + goto bailout; + } + } diff --git a/sci-libs/stellarsolver/files/stellarsolver-2.5-qsort-warning.patch b/sci-libs/stellarsolver/files/stellarsolver-2.5-qsort-warning.patch new file mode 100644 index 000000000000..72acd2adc9c6 --- /dev/null +++ b/sci-libs/stellarsolver/files/stellarsolver-2.5-qsort-warning.patch @@ -0,0 +1,291 @@ +From efd820a1655f808107a1984d55124ea142c66fa6 Mon Sep 17 00:00:00 2001 +From: Tim Surber +Date: Wed, 10 Apr 2024 23:31:58 +0200 +Subject: [PATCH] backport qsort warning fix + +--- + .../astrometry/include/astrometry/ioutils.h | 9 +++ + .../include/astrometry/os-features-config.h | 4 +- + .../include/astrometry/permutedsort.h | 2 +- + stellarsolver/astrometry/os-features.h | 16 ------ + stellarsolver/astrometry/util/bl-sort.c | 3 +- + stellarsolver/astrometry/util/ioutils.c | 2 +- + .../astrometry/util/os-features-test.c | 57 ------------------- + stellarsolver/astrometry/util/os-features.c | 6 +- + stellarsolver/astrometry/util/permutedsort.c | 3 +- + .../astrometry/util/qsort_reentrant.c | 37 +++--------- + 10 files changed, 27 insertions(+), 112 deletions(-) + +diff --git a/stellarsolver/astrometry/include/astrometry/ioutils.h b/stellarsolver/astrometry/include/astrometry/ioutils.h +index 07f7eecf..e5cf63c8 100644 +--- a/stellarsolver/astrometry/include/astrometry/ioutils.h ++++ b/stellarsolver/astrometry/include/astrometry/ioutils.h +@@ -31,6 +31,15 @@ char* dirname(const char* path); + + extern uint32_t ENDIAN_DETECTOR; + ++void QSORT_R(void* base, size_t nmembers, size_t member_size, ++ void* token, int (*compar)(void *, const void *, const void *)); ++ ++/** ++ You should define the "comparison" function like this: ++ static int QSORT_COMPARISON_FUNCTION(my_comparison, void* token, const void* v1, const void* v2) { ++ */ ++#define QSORT_COMPARISON_FUNCTION(func, thunk, v1, v2) func(thunk, v1, v2) ++ + int copy_file(const char* infn, const char* outfn); + + int pad_fid(FILE* fid, size_t len, char pad); +diff --git a/stellarsolver/astrometry/include/astrometry/os-features-config.h b/stellarsolver/astrometry/include/astrometry/os-features-config.h +index a246d428..bcc336e9 100644 +--- a/stellarsolver/astrometry/include/astrometry/os-features-config.h ++++ b/stellarsolver/astrometry/include/astrometry/os-features-config.h +@@ -1,4 +1,4 @@ +-#define NEED_DECLARE_QSORT_R 0 +-#define NEED_QSORT_R 1 ++#define NEED_DECLARE_QSORT_R 1 ++#define NEED_QSORT_R 0 + #define NEED_SWAP_QSORT_R 0 + #define HAVE_NETPBM 0 +\ No newline at end of file +diff --git a/stellarsolver/astrometry/include/astrometry/permutedsort.h b/stellarsolver/astrometry/include/astrometry/permutedsort.h +index 23c1a7e9..d3590160 100644 +--- a/stellarsolver/astrometry/include/astrometry/permutedsort.h ++++ b/stellarsolver/astrometry/include/astrometry/permutedsort.h +@@ -7,7 +7,7 @@ + #define PERMUTED_SORT_H + + // for QSORT_COMPARISON_FUNCTION +-#include "os-features.h" ++#include "ioutils.h" + + /* + Computes the permutation array that will cause the "realarray" to be +diff --git a/stellarsolver/astrometry/os-features.h b/stellarsolver/astrometry/os-features.h +index 2c2a9d19..90dd375f 100644 +--- a/stellarsolver/astrometry/os-features.h ++++ b/stellarsolver/astrometry/os-features.h +@@ -108,22 +108,6 @@ + -Ubuntu 8.10 + */ + +-#if NEED_DECLARE_QSORT_R +-//// NOTE: this declaration must match os-features-test.c . +-void qsort_r(void *base, size_t nmemb, size_t sz, +- void *userdata, +- int (*compar)(void *, const void *, const void *)); +-#endif +- +-#if NEED_SWAP_QSORT_R +-#define QSORT_R(a,b,c,d,e) qsort_r(a,b,c,e,d) +-#define QSORT_COMPARISON_FUNCTION(func, thunk, v1, v2) func(v1, v2, thunk) +- +-#else +-#define QSORT_R qsort_r +-#define QSORT_COMPARISON_FUNCTION(func, thunk, v1, v2) func(thunk, v1, v2) +- +-#endif + + // As suggested in http://gcc.gnu.org/onlinedocs/gcc-4.3.0/gcc/Function-Names.html + #if __STDC_VERSION__ < 199901L +diff --git a/stellarsolver/astrometry/util/bl-sort.c b/stellarsolver/astrometry/util/bl-sort.c +index 70123660..a024d271 100644 +--- a/stellarsolver/astrometry/util/bl-sort.c ++++ b/stellarsolver/astrometry/util/bl-sort.c +@@ -3,6 +3,8 @@ + # Licensed under a 3-clause BSD style license - see LICENSE + */ + ++#include "ioutils.h" // for QSORT_R ++ + #include "bl-sort.h" + // for qsort_r + #include "os-features.h" +@@ -166,4 +168,3 @@ static int sort_helper_pl(const void* v1, const void* v2, void* userdata) { + void pl_sort(pl* list, int (*compare)(const void* v1, const void* v2)) { + bl_sort_with_userdata(list, sort_helper_pl, compare); + } +- +diff --git a/stellarsolver/astrometry/util/ioutils.c b/stellarsolver/astrometry/util/ioutils.c +index c490fb8c..b4ecba0b 100644 +--- a/stellarsolver/astrometry/util/ioutils.c ++++ b/stellarsolver/astrometry/util/ioutils.c +@@ -43,7 +43,7 @@ + + #include "os-features.h" + #include "ioutils.h" +-//#include "os-features.h" ++#include "qsort_reentrant.c" + #include "errors.h" + #include "log.h" + +diff --git a/stellarsolver/astrometry/util/os-features-test.c b/stellarsolver/astrometry/util/os-features-test.c +index 445ac1cd..a274c16b 100644 +--- a/stellarsolver/astrometry/util/os-features-test.c ++++ b/stellarsolver/astrometry/util/os-features-test.c +@@ -14,63 +14,6 @@ int main() { + } + #endif + +-#ifdef TEST_QSORT_R +-static int cmp(void* u, const void* a, const void* b) { +- return 0; +-} +-int main() { +- int array; +- int baton; +- qsort_r(&array, 1, sizeof(int), &baton, cmp); +- //printf("#define NEED_QSORT_R 0\n"); +- return 0; +-} +-#endif +- +-#ifdef TEST_DECLARE_QSORT_R +-// Test whether just declaring qsort_r as we do causes a compile failure. +- +-void qsort_r(void *base, size_t nmemb, size_t sz, +- void *userdata, +- int (*compar)(void *, const void *, const void *)); +- +-int main() { +- //printf("#define NEED_DECLARE_QSORT_R 1\n"); +- return 0; +-} +-#endif +- +-#ifdef TEST_SWAP_QSORT_R +-// Use the result of TEST_DECLARE_QSORT_R and TEST_NEED_QSORT_R, or else +-// this test will fail with a warning about undefined qsort_r +-// Include .c rather than .h because we test with: +-// gcc -o (exec) os-features-test.c +-// and if NEED_QSORT_R, os-features.c includes qsort_reentrant.c +-#include "os-features-config.h.tmp" +-#define DONT_INCLUDE_OS_FEATURES_CONFIG_H 1 +-#include "os-features.c" +-#undef DONT_INCLUDE_OS_FEATURES_CONFIG_H +-// Test whether qsort_r works unswapped. (ie, qsort_r matches the definition of +-// QSORT_R defined in the os-features.h documentation.) +-static int sortfunc(void* thunk, const void* v1, const void* v2) { +- const int* i1 = v1; +- const int* i2 = v2; +- if (*i1 < *i2) +- return -1; +- if (*i1 > *i2) +- return 1; +- return 0; +-} +-int main() { +- int array[] = { 4, 17, 88, 34, 12, 12, 17 }; +- int N = sizeof(array)/sizeof(int); +- int mythunk = 42; +- qsort_r(array, N, sizeof(int), &mythunk, sortfunc); +- //printf("#define NEED_SWAP_QSORT_R 0\n"); +- return 0; +-} +-#endif +- + #if defined(TEST_NETPBM) || defined(TEST_NETPBM_MAKE) + #include + int main(int argc, char** args) { +diff --git a/stellarsolver/astrometry/util/os-features.c b/stellarsolver/astrometry/util/os-features.c +index 0c7d2b95..e95d463b 100644 +--- a/stellarsolver/astrometry/util/os-features.c ++++ b/stellarsolver/astrometry/util/os-features.c +@@ -37,8 +37,4 @@ + //int fdatasync(int fd) { + // return fsync(fd); + //} +-//#endif +- +-#if NEED_QSORT_R +-#include "qsort_reentrant.c" +-#endif ++//#endif +\ No newline at end of file +diff --git a/stellarsolver/astrometry/util/permutedsort.c b/stellarsolver/astrometry/util/permutedsort.c +index 0bc42298..e37b7e19 100644 +--- a/stellarsolver/astrometry/util/permutedsort.c ++++ b/stellarsolver/astrometry/util/permutedsort.c +@@ -17,7 +17,8 @@ + #endif + + #include "permutedsort.h" +-#include "os-features.h" // for qsort_r ++#include "os-features.h" ++#include "ioutils.h" + + int* permutation_init(int* perm, int N) { + int i; +diff --git a/stellarsolver/astrometry/util/qsort_reentrant.c b/stellarsolver/astrometry/util/qsort_reentrant.c +index 982aa3e1..bce9147a 100644 +--- a/stellarsolver/astrometry/util/qsort_reentrant.c ++++ b/stellarsolver/astrometry/util/qsort_reentrant.c +@@ -35,14 +35,14 @@ + #endif + //__FBSDID("$FreeBSD: src/sys/libkern/qsort.c,v 1.15 2004/07/15 23:58:23 glebius Exp $"); + +-// Astrometry: We want reentrant! +-#define I_AM_QSORT_R + +-#ifdef I_AM_QSORT_R ++// Astrometry.net: we lightly modified this file: ++// - renamed qsort_r to QSORT_R to avoid clashes with system version ++// - removed the preprocessor magic that support re-entrant and non- ++// functions in the same source code. ++ + typedef int cmp_t(void *, const void *, const void *); +-#else +-typedef int cmp_t(const void *, const void *); +-#endif ++ + static __inline char *med3(char *, char *, char *, cmp_t *, void *); + static __inline void swapfunc(char *, char *, int, int); + +@@ -84,32 +84,17 @@ swapfunc(char *a, char *b, int n, int swaptype) + + #define vecswap(a, b, n) if ((n) > 0) swapfunc(a, b, n, swaptype) + +-#ifdef I_AM_QSORT_R + #define CMP(t, x, y) (cmp((t), (x), (y))) +-#else +-#define CMP(t, x, y) (cmp((x), (y))) +-#endif + + static __inline char * +-med3(char *a, char *b, char *c, cmp_t *cmp, void *thunk +-#ifndef I_AM_QSORT_R +-__unused +-#endif +-) ++med3(char *a, char *b, char *c, cmp_t *cmp, void *thunk) + { + return CMP(thunk, a, b) < 0 ? + (CMP(thunk, b, c) < 0 ? b : (CMP(thunk, a, c) < 0 ? c : a )) + :(CMP(thunk, b, c) > 0 ? b : (CMP(thunk, a, c) < 0 ? a : c )); + } + +-#ifdef I_AM_QSORT_R +-void +-qsort_r(void *a, size_t n, size_t es, void *thunk, cmp_t *cmp) +-#else +-#define thunk NULL +-void +-qsort(void *a, size_t n, size_t es, cmp_t *cmp) +-#endif ++void QSORT_R(void *a, size_t n, size_t es, void *thunk, cmp_t *cmp) + { + char *pa, *pb, *pc, *pd, *pl, *pm, *pn; + int d, r, swaptype, swap_cnt; +@@ -177,11 +162,7 @@ loop: SWAPINIT(a, es); + r = min(pd - pc, pn - pd - es); + vecswap(pb, pn - r, r); + if ((r = pb - pa) > es) +-#ifdef I_AM_QSORT_R +- qsort_r(a, r / es, es, thunk, cmp); +-#else +- qsort(a, r / es, es, cmp); +-#endif ++ QSORT_R(a, r / es, es, thunk, cmp); + if ((r = pd - pc) > es) { + /* Iterate rather than recurse to save stack space */ + a = pn - r; diff --git a/sci-libs/stellarsolver/stellarsolver-2.5-r1.ebuild b/sci-libs/stellarsolver/stellarsolver-2.5-r1.ebuild new file mode 100644 index 000000000000..f60a2a9b7daf --- /dev/null +++ b/sci-libs/stellarsolver/stellarsolver-2.5-r1.ebuild @@ -0,0 +1,37 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake flag-o-matic + +DESCRIPTION="Cross-platform Sextractor and Astrometry.net-Based internal astrometric solver" +HOMEPAGE="https://github.com/rlancaste/stellarsolver" +SRC_URI="https://github.com/rlancaste/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="BSD GPL-3" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="" + +RDEPEND=" + dev-qt/qtconcurrent:5 + dev-qt/qtcore:5 + dev-qt/qtgui:5 + dev-qt/qtnetwork:5 + dev-qt/qtwidgets:5 + sci-libs/cfitsio:= + sci-libs/gsl:= + sci-astronomy/wcslib:= +" +DEPEND="${RDEPEND}" + +# https://github.com/rlancaste/stellarsolver/issues/108 +PATCHES=( "${FILESDIR}"/${P}-{qsort,compiler}-warning.patch ) # git master + +src_configure() { + # bug #862930 + filter-lto + + cmake_src_configure +} -- cgit v1.2.3