Gentoo Archives: gentoo-commits

From: "Patrick Lauer (patrick)" <patrick@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in dev-db/postgis: ChangeLog postgis-1.5.0-r1.ebuild
Date: Tue, 23 Feb 2010 14:40:26
Message-Id: E1Njvvx-00052x-LI@stork.gentoo.org
1 patrick 10/02/23 14:40:21
2
3 Modified: ChangeLog
4 Added: postgis-1.5.0-r1.ebuild
5 Log:
6 Fixing doc installation. Slightly hacky, sorry :)
7 (Portage version: 2.2_rc63/cvs/Linux x86_64)
8
9 Revision Changes Path
10 1.44 dev-db/postgis/ChangeLog
11
12 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/dev-db/postgis/ChangeLog?rev=1.44&view=markup
13 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/dev-db/postgis/ChangeLog?rev=1.44&content-type=text/plain
14 diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/dev-db/postgis/ChangeLog?r1=1.43&r2=1.44
15
16 Index: ChangeLog
17 ===================================================================
18 RCS file: /var/cvsroot/gentoo-x86/dev-db/postgis/ChangeLog,v
19 retrieving revision 1.43
20 retrieving revision 1.44
21 diff -u -r1.43 -r1.44
22 --- ChangeLog 21 Feb 2010 10:43:41 -0000 1.43
23 +++ ChangeLog 23 Feb 2010 14:40:20 -0000 1.44
24 @@ -1,6 +1,11 @@
25 # ChangeLog for dev-db/postgis
26 # Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
27 -# $Header: /var/cvsroot/gentoo-x86/dev-db/postgis/ChangeLog,v 1.43 2010/02/21 10:43:41 patrick Exp $
28 +# $Header: /var/cvsroot/gentoo-x86/dev-db/postgis/ChangeLog,v 1.44 2010/02/23 14:40:20 patrick Exp $
29 +
30 +*postgis-1.5.0-r1 (23 Feb 2010)
31 +
32 + 23 Feb 2010; Patrick Lauer <patrick@g.o> +postgis-1.5.0-r1.ebuild:
33 + Fixing doc installation. Slightly hacky, sorry :)
34
35 21 Feb 2010; Patrick Lauer <patrick@g.o> -postgis-1.1.4.ebuild,
36 -postgis-1.2.0.ebuild, -postgis-1.2.1.ebuild, -postgis-1.3.3.ebuild,
37
38
39
40 1.1 dev-db/postgis/postgis-1.5.0-r1.ebuild
41
42 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/dev-db/postgis/postgis-1.5.0-r1.ebuild?rev=1.1&view=markup
43 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/dev-db/postgis/postgis-1.5.0-r1.ebuild?rev=1.1&content-type=text/plain
44
45 Index: postgis-1.5.0-r1.ebuild
46 ===================================================================
47 # Copyright 1999-2010 Gentoo Foundation
48 # Distributed under the terms of the GNU General Public License v2
49 # $Header: /var/cvsroot/gentoo-x86/dev-db/postgis/postgis-1.5.0-r1.ebuild,v 1.1 2010/02/23 14:40:20 patrick Exp $
50
51 EAPI="2"
52
53 inherit eutils versionator
54
55 DESCRIPTION="Geographic Objects for PostgreSQL"
56 HOMEPAGE="http://postgis.refractions.net"
57 SRC_URI="http://postgis.refractions.net/download/${P}.tar.gz"
58 LICENSE="GPL-2"
59 SLOT="0"
60 KEYWORDS="~amd64 ~ppc ~x86"
61 IUSE="doc"
62
63 RDEPEND=">=virtual/postgresql-server-8.3
64 >=sci-libs/geos-3.2
65 >=sci-libs/proj-4.6.0
66 dev-libs/libxml2"
67
68 DEPEND="${RDEPEND}
69 doc? ( app-text/docbook-xsl-stylesheets
70 app-text/docbook-xml-dtd:4.3
71 media-gfx/imagemagick )"
72
73 RESTRICT="test"
74
75 pkg_setup(){
76 if [ ! -z "${PGUSER}" ]; then
77 eval unset PGUSER
78 fi
79 if [ ! -z "${PGDATABASE}" ]; then
80 eval unset PGDATABASE
81 fi
82 local tmp
83 tmp="$(portageq match / ${CATEGORY}/${PN} | cut -d'.' -f2)"
84 if [ "${tmp}" != "$(get_version_component_range 2)" ]; then
85 elog "You must soft upgrade your existing postgis enabled databases"
86 elog "by adding their names in the ${ROOT}conf.d/postgis_dbs file"
87 elog "then using 'emerge --config postgis'."
88 require_soft_upgrade="1"
89 ebeep 2
90 fi
91 }
92
93 src_configure(){
94 local myconf
95 if use doc; then
96 myconf="${myconf} --with-xsldir=$(ls "${ROOT}"usr/share/sgml/docbook/* | \
97 grep xsl\- | cut -d':' -f1)"
98 fi
99
100 econf --enable-autoconf \
101 --datadir=/usr/share/postgresql/contrib/ \
102 --libdir=/usr/$(get_libdir)/postgresql/ \
103 --docdir=${D}/usr/share/doc/${PF}/html/ \
104 ${myconf} ||\
105 die "Error: econf failed"
106
107 if use doc; then
108 cd doc
109 sed -i -e 's:PGSQL_DOCDIR=/:PGSQL_DOCDIR=${D}/:' Makefile || die "Fixing doc install paths failed"
110 sed -i -e 's:PGSQL_MANDIR=/:PGSQL_MANDIR=${D}/:' Makefile || die "Fixing doc install paths failed"
111 sed -i -e 's:PGSQL_SHAREDIR=/:PGSQL_SHAREDIR=${D}/:' Makefile || die "Fixing doc install paths failed"
112 fi
113 }
114
115 src_compile() {
116 emake -j1 || die "Error: emake failed"
117
118 cd topology/
119 emake -j1 || die "Unable to build topology sql file"
120
121 if use doc ; then
122 cd "${S}"
123 emake -j1 docs || die "Unable to build documentation"
124 fi
125 }
126
127 src_install(){
128 dodir /usr/$(get_libdir)/postgresql /usr/share/postgresql/contrib/
129 emake DESTDIR="${D}" install || die "emake install failed"
130 cd "${S}/topology/"
131 emake DESTDIR="${D}" install || die "emake install topology failed"
132
133 cd "${S}"
134 dodoc CREDITS TODO loader/README.* doc/*txt
135
136 docinto topology
137 dodoc topology/{TODO,README}
138 dobin ./utils/postgis_restore.pl
139
140 cd "${S}"
141 if use doc; then
142 emake DESTDIR="${D}" docs-install || die "emake install docs failed"
143 fi
144
145 echo "template_gis" > postgis_dbs
146 doconfd postgis_dbs
147
148 if [ ! -z "${require_soft_upgrade}" ]; then
149 grep "'C'" -B 4 "${D}"usr/share/postgresql/contrib/lwpostgis.sql | \
150 grep -v "'sql'" > \
151 "${D}"usr/share/postgresql/contrib/load_before_upgrade.sql
152 fi
153 }
154
155 pkg_postinst() {
156 elog "To create new (upgrade) spatial databases add their names in the"
157 elog "${ROOT}conf.d/postgis_dbs file, then use 'emerge --config postgis'."
158 }
159
160 pkg_config(){
161 einfo "Create or upgrade a spatial templates and databases."
162 einfo "Please add your databases names into ${ROOT}conf.d/postgis_dbs"
163 einfo "(templates name have to be prefixed with 'template')."
164 for i in $(cat "${ROOT}etc/conf.d/postgis_dbs"); do
165 source "${ROOT}"etc/conf.d/postgresql
166 PGDATABASE=${i}
167 eval set PGDATABASE=${i}
168 myuser="${PGUSER:-postgres}"
169 mydb="${PGDATABASE:-template_gis}"
170 eval set PGUSER=${myuser}
171
172 is_template=false
173 if [ "${mydb:0:8}" == "template" ];then
174 is_template=true
175 mytype="template database"
176 else
177 mytype="database"
178 fi
179
180 einfo
181 einfo "Using the user ${myuser} and the ${mydb} ${mytype}."
182
183 logfile=$(mktemp "${ROOT}tmp/error.log.XXXXXX")
184 safe_exit(){
185 eerror "Removing created ${mydb} ${mytype}"
186 dropdb -q -U "${myuser}" "${mydb}" ||\
187 (eerror "${1}"
188 die "Removing old db failed, you must do it manually")
189 eerror "Please read ${logfile} for more information."
190 die "${1}"
191 }
192
193 # if there is not a table or a template existing with the same name, create.
194 if [ -z "$(psql -U ${myuser} -l | grep "${mydb}")" ]; then
195 createdb -q -O ${myuser} -U ${myuser} ${mydb} ||\
196 die "Unable to create the ${mydb} ${mytype} as ${myuser}"
197 createlang -U ${myuser} plpgsql ${mydb}
198 if [ "$?" == 2 ]; then
199 safe_exit "Unable to createlang plpgsql ${mydb}."
200 fi
201 (psql -q -U ${myuser} ${mydb} -f \
202 "${ROOT}"usr/share/postgresql/contrib/lwpostgis.sql &&
203 psql -q -U ${myuser} ${mydb} -f \
204 "${ROOT}"usr/share/postgresql/contrib/spatial_ref_sys.sql) 2>\
205 "${logfile}"
206 if [ "$(grep -c ERROR "${logfile}")" \> 0 ]; then
207 safe_exit "Unable to load sql files."
208 fi
209 if ${is_template}; then
210 psql -q -U ${myuser} ${mydb} -c \
211 "UPDATE pg_database SET datistemplate = TRUE
212 WHERE datname = '${mydb}';
213 GRANT ALL ON table spatial_ref_sys, geometry_columns TO PUBLIC;" \
214 || die "Unable to create ${mydb}"
215 psql -q -U ${myuser} ${mydb} -c \
216 "VACUUM FREEZE;" || die "Unable to set VACUUM FREEZE option"
217 fi
218 else
219 if [ -e "${ROOT}"usr/share/postgresql/contrib/load_before_upgrade.sql ];
220 then
221 einfo "Updating the dynamic library references"
222 psql -q -f \
223 "${ROOT}"usr/share/postgresql/contrib/load_before_upgrade.sql\
224 2> "${logfile}"
225 if [ "$(grep -c ERROR "${logfile}")" \> 0 ]; then
226 safe_exit "Unable to update references."
227 fi
228 fi
229 if [ -e "${ROOT}"usr/share/postgresql/contrib/lwpostgis_upgrade.sql ];
230 then
231 einfo "Running soft upgrade"
232 psql -q -U ${myuser} ${mydb} -f \
233 "${ROOT}"usr/share/postgresql/contrib/lwpostgis_upgrade.sql 2>\
234 "${logfile}"
235 if [ "$(grep -c ERROR "${logfile}")" \> 0 ]; then
236 safe_exit "Unable to run soft upgrade."
237 fi
238 fi
239 fi
240 if ${is_template}; then
241 einfo "You can now create a spatial database using :"
242 einfo "'createdb -T ${mydb} test'"
243 fi
244 done
245 }