diff --git a/dev-db/pgrouting/Manifest b/dev-db/pgrouting/Manifest index 602175e5e41b2..165c8aaa10cc7 100644 --- a/dev-db/pgrouting/Manifest +++ b/dev-db/pgrouting/Manifest @@ -1 +1,2 @@ DIST pgrouting-2.0.0.tar.gz 3765933 SHA256 606309e8ece04abec062522374b48179c16bddb30dd4c5080b89a4298e8d163b SHA512 4a74cc1ce1bbbb8d95ae2aabc712e30c97e0418b1e4f28a255ecd9e57577bd7081a52e6e64a63cb06c9ca659271273b37bdbefb94d49e69b9c2ce45e96911884 WHIRLPOOL ce7492fe1512f7829bd887a7acaadc6c276719fc7e00ceb68a702a2476a9464c83bf929ef78381c8d36a6575dee21587c204f798511e1430731064c2c48a0815 +DIST pgrouting-2.5.0.tar.gz 7157856 SHA256 2c97df865484bf4e4e6f059b535b63bbe64534076b9d0c4bdd494f916fa24e9d SHA512 663dd5f5133d0bf1bbf7c35480c644ba848e65259023a0ef7f31b813b8ed99a4e2cfb813d870de7550e98ca1f8b0255aa28b2c948d13e8975af9f0d19f820784 WHIRLPOOL 0b9236414efd3b07e12dce1d4239151593212c2baae398b2b75e31e2ad09aa1f1fdb0d59471da716ae13ceef7b65fb9594b3090ecff0c1d2cab0a4c73177aae4 diff --git a/dev-db/pgrouting/pgrouting-2.5.0.ebuild b/dev-db/pgrouting/pgrouting-2.5.0.ebuild new file mode 100644 index 0000000000000..79e1b0aa8f7fd --- /dev/null +++ b/dev-db/pgrouting/pgrouting-2.5.0.ebuild @@ -0,0 +1,95 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI="5" +POSTGRES_COMPAT=( 9.{4,5,6} 10 ) + +inherit eutils cmake-utils + +DESCRIPTION="pgRouting extends PostGIS and PostgreSQL with geospatial routing functionality." +HOMEPAGE="http://pgrouting.org/index.html" +LICENSE="GPL-2 MIT Boost-1.0" + +SLOT="0" +KEYWORDS="~amd64 ~x86" +SRC_URI="https://github.com/pgRouting/pgrouting/archive/v${PV}.tar.gz -> ${PN}-${PV}.tar.gz" +IUSE="+drivingdistance doc pdf html" + +REQUIRED_USE="html? ( doc ) pdf? ( doc )" + +RDEPEND=" + || ( + dev-db/postgresql:10[server] + dev-db/postgresql:9.6[server] + dev-db/postgresql:9.5[server] + dev-db/postgresql:9.4[server] + ) + >=dev-db/postgis-2.0 + dev-libs/boost + drivingdistance? ( sci-mathematics/cgal ) +" + +DEPEND=" + doc? ( >=dev-python/sphinx-1.1 ) + pdf? ( >=dev-python/sphinx-1.1[latex] ) +" + +# Needs a running psql instance, doesn't work out of the box +RESTRICT="test" + +postgres_check_slot() { + if ! declare -p POSTGRES_COMPAT &>/dev/null; then + die 'POSTGRES_COMPAT not declared.' + fi + +# Don't die because we can't run postgresql-config during pretend. +[[ "$EBUILD_PHASE" = "pretend" \ + && -z "$(which postgresql-config 2> /dev/null)" ]] && return 0 + + local res=$(echo ${POSTGRES_COMPAT[@]} \ + | grep -c $(postgresql-config show 2> /dev/null) 2> /dev/null) + + if [[ "$res" -eq "0" ]] ; then + eerror "PostgreSQL slot must be set to one of: " + eerror " ${POSTGRES_COMPAT[@]}" + return 1 + fi + + return 0 +} + +pkg_pretend() { + postgres_check_slot || die +} + +pkg_setup() { + postgres_check_slot || die +} + +src_configure() { + local mycmakeargs=( + $(cmake-utils_use_with drivingdistance DD) + $(cmake-utils_use_with doc DOC) + $(cmake-utils_use_build doc MAN) + $(cmake-utils_use_build html HTML) + $(cmake-utils_use_build pdf LATEX) + ) + + cmake-utils_src_configure +} + +src_compile() { + local make_opts + use doc && make_opts="all doc" + cmake-utils_src_make ${make_opts} +} + +src_install() { + use doc && doman "${BUILD_DIR}"/doc/man/en/pgrouting.7 + use html && dohtml -r "${BUILD_DIR}"/doc/html/* + use pdf && dodoc "${BUILD_DIR}"/doc/latex/en/*.pdf + + dodoc README* VERSION + + cmake-utils_src_install +}