diff options
Diffstat (limited to 'dev-db/postgis')
-rw-r--r-- | dev-db/postgis/Manifest | 2 | ||||
-rw-r--r-- | dev-db/postgis/postgis-1.3.3.ebuild | 181 |
2 files changed, 183 insertions, 0 deletions
diff --git a/dev-db/postgis/Manifest b/dev-db/postgis/Manifest index 31d3a7eabdad..8ddea36e1d71 100644 --- a/dev-db/postgis/Manifest +++ b/dev-db/postgis/Manifest @@ -4,9 +4,11 @@ DIST postgis-1.1.4.tar.gz 1853989 RMD160 8441aba816154ebe743a93334df9df43a15fa87 DIST postgis-1.2.0.tar.gz 2077747 RMD160 4f2ce71ffd49649cd5712a8bc1a6b822d968797a SHA1 b6e33324c4c2dddc925e7bac86fb1f9c635f20a6 SHA256 7d8f5782ddca38199a1630765e4a2b6d7d703af0cc28d04685cbc6156177d9cb DIST postgis-1.2.1.tar.gz 2084672 RMD160 b5f8c542a143d460ebc1387a0d9e4b69335e73c3 SHA1 0a47bde414bf691fb624ead37cc119687aba14df SHA256 edb57786b78bf89b72f60607cb38fa10da00354c2c4476c09bb3d88ca3c0d61f DIST postgis-1.3.1.tar.gz 2148125 RMD160 f199505dc04bd2caa0400c9235bbf1aecfe14b6f SHA1 db8e954dfc19e73c2331358a396e2064d1333a72 SHA256 5ce999ae638c1c9f75a7cf85d416eac71cc2d6f668132c2b6a3ae6a12075555c +DIST postgis-1.3.3.tar.gz 2089526 RMD160 4e7d59672486a990f760e7cff2deb49a1332d7cc SHA1 12b0da709360f67340f88774b70cf3bac65fcc24 SHA256 2a3ffb4ffbde3b4e87b99ef5351efa837d60b84ecb34d40c0dcab8e776d15440 EBUILD postgis-1.1.4.ebuild 2673 RMD160 b6ce2679497231931e4f3ca1d5d60e5db63805ae SHA1 a5203055b41fabb4610a6137a98dd50e6dc134ff SHA256 19e71582fa0a997e44ff594b8bcef5818884ad3e48c512673e486ccce3f76523 EBUILD postgis-1.2.0.ebuild 5373 RMD160 c2ae62e5a07fbecb5cc23594190d5a098cb250eb SHA1 39c5a6e1a22909ab60e0a1bc6143374183914af3 SHA256 5d46ac3acaf76dda719154ea4330a1aa49116b23a7e0257599156ccaa15e4e13 EBUILD postgis-1.2.1.ebuild 5566 RMD160 be9fa8d8e33b711031e50b610eb1b5805da4912a SHA1 04f8fc0f56bf77861f412dbd2840282c0d0e63b2 SHA256 2ead570f87d9c1029e3175099d6b3a984a13d0c17bf56566d6a405d8e55f49ae EBUILD postgis-1.3.1.ebuild 5285 RMD160 295b6df7e831b99bf91d57dc4e3e5e8d2cf7716e SHA1 b442f18d2f05d5f9e2f2ea8a5a0da98ec1f55840 SHA256 2c9b413535fa2042e43e2c74330e85826f702422003042bb953ffbb8bd4483cb +EBUILD postgis-1.3.3.ebuild 5285 RMD160 295b6df7e831b99bf91d57dc4e3e5e8d2cf7716e SHA1 b442f18d2f05d5f9e2f2ea8a5a0da98ec1f55840 SHA256 2c9b413535fa2042e43e2c74330e85826f702422003042bb953ffbb8bd4483cb MISC ChangeLog 4061 RMD160 166bdaabf7dc94ba1b1c615ec9100681d7ea0e5d SHA1 d1b64ef517c90cc402e0e8cc90b4d56ff7e7a349 SHA256 624f541361419be1aa98560de425c138d9344434ac5f3a0c7d191b5d4a4dd2ab MISC metadata.xml 194 RMD160 19177cc0060792a4212a48493143cc82f0302ef8 SHA1 4acac2c575abc8f6bfe00506117dc2f83a8355a2 SHA256 58a43dec1240568210b57a8396a5d317593309353f64e474c93d12a39a7bc071 diff --git a/dev-db/postgis/postgis-1.3.3.ebuild b/dev-db/postgis/postgis-1.3.3.ebuild new file mode 100644 index 000000000000..44fcf7b2ba57 --- /dev/null +++ b/dev-db/postgis/postgis-1.3.3.ebuild @@ -0,0 +1,181 @@ +# Copyright 1999-2008 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-db/postgis/postgis-1.3.3.ebuild,v 1.1 2008/05/06 17:28:54 djay Exp $ + +inherit autotools eutils versionator + +KEYWORDS="amd64 ppc x86" + +DESCRIPTION="Geographic Objects for PostgreSQL" +HOMEPAGE="http://postgis.refractions.net" +SRC_URI="http://www.postgis.org/download/${P}.tar.gz" +LICENSE="GPL-2" +SLOT="0" +IUSE="geos proj doc" + +RDEPEND=">=dev-db/postgresql-7.4 + geos? ( sci-libs/geos ) + proj? ( sci-libs/proj )" + +DEPEND="${RDEPEND} + doc? ( app-text/docbook-xsl-stylesheets )" + +RESTRICT="test" + +pkg_setup(){ + local tmp + tmp="$(portageq match / postgis | cut -d'.' -f2)" + if [ "${tmp}" != "$(get_version_component_range 2)" ]; then + elog "You must soft upgrade your existing postgis enabled databases" + elog "using 'emerge --config postgis'." + require_soft_upgrade="1" + ebeep 2 + fi +} + +src_compile(){ + local myconf + if use geos; then + myconf="--with-geos" + fi + + if use doc;then + myconf="${myconf} --with-xsl=$(ls "${ROOT}"usr/share/sgml/docbook/* | \ + grep xsl\- | cut -d':' -f1)" + fi + + econf --enable-autoconf \ + --datadir=/usr/share/postgresql/contrib/ \ + --libdir=/usr/$(get_libdir)/postgresql/ \ + --with-docdir=/usr/share/doc/${PF}/html/ \ + ${myconf} \ + $(use_with proj) ||\ + die "Error: econf failed" + + emake || die "Error: emake failed" + + cd topology/ + emake || die "Unable to build topology sql file" + + if use doc ; then + cd "${S}" + emake docs || die "Unable to build documentation" + fi +} + +src_install(){ + dodir /usr/$(get_libdir)/postgresql /usr/share/postgresql/contrib/ + emake DESTDIR="${D}" install || die "emake install failed" + cd "${S}/topology/" + emake DESTDIR="${D}" install || die "emake install topology failed" + + cd "${S}" + dodoc Changelog CREDITS TODO loader/README.* doc/*txt + + docinto topology + dodoc topology/{TODO,README} + dobin ./utils/postgis_restore.pl + + cd "${S}" + if use doc; then + emake DESTDIR="${D}" docs-install || die "emake install docs failed" + fi + + if [ ! -z "${require_soft_upgrade}" ]; then + grep "'C'" -B 4 "${D}"usr/share/postgresql/contrib/lwpostgis.sql |\ + grep -v "'sql'" > \ + "${D}"usr/share/postgresql/contrib/load_before_upgrade.sql + fi +} + +pkg_postinst() { + elog "To create new spatial database use 'emerge --config ${PN}.'" +} + +pkg_config(){ + myuser="${PG_USER:-postgres}" + mydb="${PGDATABASE:-template_gis}" + + is_template=false + if [ "${mydb:0:8}" == "template" ];then + is_template=true + mytype="template database" + else + mytype="database" + fi + + einfo "Create or upgrade a spatial template and database." + einfo "Using the user ${myuser} and the ${mydb} ${mytype}." + einfo "Please do 'export PG_USER=...' to use another user." + einfo "Please do 'export PGDATABASE=...' to set another template/database" + einfo "name (templates name have to be prefixed with 'template')." + + logfile=$(mktemp "${ROOT}tmp/error.log.XXXXXX") + safe_exit(){ + eerror "Removing created ${mydb} ${mytype}" + dropdb -q -U "${myuser}" "${mydb}" ||\ + (eerror "${1}" + die "Removing old db failed, you must do it manually") + eerror "Please read ${logfile} for more information." + die "${1}" + } + + # if there is not a table or a template existing with the same name, create. + if [ -z "$(psql -U "${myuser}" -l | grep "${mydb}")" ]; then + einfo + einfo "Please hit ENTER if you want to create the ${mydb}" + einfo "${mytype} as "${myuser}" user, or Control-C to abort now..." + read + createdb -q -O ${myuser} -U ${myuser} ${mydb} ||\ + die "Unable to create the ${mydb} ${mytype} as ${myuser}" + createlang -U ${myuser} plpgsql ${mydb} + if [ "$?" == 2 ]; then + safe_exit "Unable to createlang plpgsql ${mydb}." + fi + (psql -q -U ${myuser} ${mydb} -f \ + "${ROOT}"usr/share/postgresql/contrib/lwpostgis.sql && + psql -q -U ${myuser} ${mydb} -f \ + "${ROOT}"usr/share/postgresql/contrib/spatial_ref_sys.sql) 2>\ + "${logfile}" + if [ "$(grep -c ERROR "${logfile}")" \> 0 ]; then + safe_exit "Unable to load sql files." + fi + if ${is_template}; then + psql -q -U ${myuser} ${mydb} -c \ + "UPDATE pg_database SET datistemplate = TRUE + WHERE datname = '${mydb}'; + GRANT ALL ON table spatial_ref_sys, geometry_columns TO PUBLIC; + VACUUM FREEZE;" || die "Unable to create ${mydb}" + fi + else + einfo + einfo "Please hit ENTER if you want to upgrade the ${mydb}" + einfo "${mytype} as ${myuser} user, or Control-C to abort now..." + read + if [ -e "${ROOT}"usr/share/postgresql/contrib/load_before_upgrade.sql ]; + then + einfo "Updating the dynamic library references" + psql -q -U ${myuser} ${mydb} -f \ + "${ROOT}"usr/share/postgresql/contrib/load_before_upgrade.sql\ + 2> "${logfile}" + if [ "$(grep -c ERROR "${logfile}")" \> 0 ]; then + safe_exit "Unable to update references." + fi + fi + if [ -e "${ROOT}"usr/share/postgresql/contrib/lwpostgis_upgrade.sql ]; + then + einfo "Running soft upgrade" + psql -q -U ${myuser} ${mydb} -f \ + "${ROOT}"usr/share/postgresql/contrib/lwpostgis_upgrade.sql 2>\ + "${logfile}" + if [ "$(grep -c ERROR "${logfile}")" \> 0 ]; then + safe_exit "Unable to run soft upgrade." + fi + fi + fi + + if ${is_template}; then + einfo "You can now create a spatial database using :" + einfo "'createdb -T ${mydb} test'" + fi +} |