commit:     3cabbb8725c4b27230244c5405b7c2e2e4bcffef
Author:     Alessandro Barbieri <lssndrbarbieri <AT> gmail <DOT> com>
AuthorDate: Thu Mar 25 18:14:40 2021 +0000
Commit:     Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org>
CommitDate: Wed Jun  9 14:55:39 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3cabbb87

sci-geosciences/GeographicLib: various improvements

python bindings
examples
documentation

Closes: https://bugs.gentoo.org/636338
Closes: https://bugs.gentoo.org/777810
Package-Manager: Portage-3.0.17, Repoman-3.0.2
Signed-off-by: Alessandro Barbieri <lssndrbarbieri <AT> gmail.com>
Closes: https://github.com/gentoo/gentoo/pull/20118
Signed-off-by: Andrew Ammerlaan <andrewammerlaan <AT> gentoo.org>

 .../GeographicLib/GeographicLib-1.51-r1.ebuild     | 111 +++++++++++++++++++++
 sci-geosciences/GeographicLib/metadata.xml         |  12 +++
 2 files changed, 123 insertions(+)

diff --git a/sci-geosciences/GeographicLib/GeographicLib-1.51-r1.ebuild 
b/sci-geosciences/GeographicLib/GeographicLib-1.51-r1.ebuild
new file mode 100644
index 00000000000..50bc12fbb31
--- /dev/null
+++ b/sci-geosciences/GeographicLib/GeographicLib-1.51-r1.ebuild
@@ -0,0 +1,111 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7..9} )
+
+inherit cmake distutils-r1
+
+MY_PN="${PN,,}"
+
+DESCRIPTION="C++ library for converting geographic coordinate systems"
+HOMEPAGE="https://sourceforge.net/projects/geographiclib/";
+SRC_URI="mirror://sourceforge/${MY_PN}/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/19"
+KEYWORDS="~amd64 ~arm"
+IUSE="doc examples python"
+# To-Do:find out why this doesn't work
+# 105/167 Test #105: GeodSolve82 ......................***Failed
+# Required regular expression not found. Regex=[20\.0010* 0\.0* 180\.0* 
20\.0010* 0\.0* 180\.0* 0\.0* 0\.0* 0\.0* 1\.0* 1\.0* -?0
+RESTRICT="test"
+
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+RDEPEND="python? ( ${PYTHON_DEPS} )"
+DEPEND="${RDEPEND}"
+BDEPEND="
+       doc? (
+               >=app-doc/doxygen-1.8.7
+               >=dev-lang/perl-5.26.1-r1
+               >=dev-python/sphinx-1.6.3-r2
+               >=sys-apps/util-linux-2.31
+       )
+"
+
+distutils_enable_tests setup.py
+# there are additional docs in the python dir
+distutils_enable_sphinx python/doc
+
+src_prepare() {
+       cmake_src_prepare
+
+       if use python; then
+               pushd "python" || die
+               distutils-r1_python_prepare_all
+               popd || die
+       fi
+}
+
+src_configure() {
+       export GEODATAPATH="/usr/share/${MY_PN}"
+
+       local mycmakeargs=(
+               -DGEOGRAPHICLIB_DOCUMENTATION=$(usex doc ON OFF)
+               -DGEOGRAPHICLIB_LIB_TYPE="SHARED"
+               -DGEOGRAPHICLIB_DATA="${GEODATAPATH}"
+       )
+       cmake_src_configure
+}
+
+src_compile() {
+       cmake_src_compile
+
+       if use python; then
+               pushd "python" || die
+               python_foreach_impl distutils-r1_python_compile
+               popd || die
+               python_compile_all
+       fi
+}
+
+src_test() {
+       # Only 1 failing test in the C code, python passes for me
+       cmake_src_test
+
+       if use python; then
+               pushd "python" || die
+               python_foreach_impl python_test
+               popd || die
+       fi
+}
+
+src_install() {
+       cmake_src_install
+
+       # remove python things added by the cmake_src_install function
+       rm -r "${D}/usr/$(get_libdir)/python" || die
+       # if use python we re-add these python files for each implementation
+       if use python; then
+               pushd "python" || die
+               python_foreach_impl distutils-r1_python_install
+               popd || die
+       fi
+
+       #TODO: find out if java stuff need something
+
+       # Installs to wrong doc dir for some reason
+       # Also happens with USE="-doc"
+       mv "${D}/usr/share/doc/${PN}" "${D}/usr/share/doc/${PF}" || die
+
+       if use examples; then
+               dodoc -r examples
+               docompress -x "/usr/share/doc/${PF}/examples"
+       fi
+
+       insinto "/usr/share/maxima/${MY_PN}"
+       doins -r maxima/.
+
+       find "${D}" -name "*.la" -delete || die
+}

diff --git a/sci-geosciences/GeographicLib/metadata.xml 
b/sci-geosciences/GeographicLib/metadata.xml
index 74ced8bea00..efc517b3724 100644
--- a/sci-geosciences/GeographicLib/metadata.xml
+++ b/sci-geosciences/GeographicLib/metadata.xml
@@ -5,4 +5,16 @@
                <email>[email protected]</email>
                <name>Gentoo ROS Project</name>
        </maintainer>
+       <upstream>
+               <maintainer status="active">
+                       <email>[email protected]</email>
+                       <name>Charles Karney</name>
+               </maintainer>
+               <doc lang="en">https://geographiclib.sourceforge.io/html</doc>
+               <bugs-to>https://sourceforge.net/p/geographiclib/bugs/</bugs-to>
+               <remote-id type="sourceforge">geographiclib</remote-id>
+       </upstream>
+       <longdescription lang="en">
+GeographicLib is a small set of C++ classes for converting between geographic, 
UTM, UPS, MGRS, and geocentric coordinates, for gravity (e.g., EGM2008), geoid, 
and geomagnetic field (e.g., WMM2010) calculations, and for solving geodesic 
problems.
+       </longdescription>
 </pkgmetadata>

Reply via email to