Gentoo Archives: gentoo-commits

From: "Aaron Swenson (titanofold)" <titanofold@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in dev-db/postgis: ChangeLog postgis-2.0.3.ebuild
Date: Sat, 02 Mar 2013 17:03:46
Message-Id: 20130302170341.22A692171D@flycatcher.gentoo.org
1 titanofold 13/03/02 17:03:41
2
3 Modified: ChangeLog
4 Added: postgis-2.0.3.ebuild
5 Log:
6 Version bump. Depend on GEOS 3.3.8 based on upstream recommendation.
7
8 (Portage version: 2.1.11.52/cvs/Linux x86_64, signed Manifest commit with key D1BBFDA0)
9
10 Revision Changes Path
11 1.78 dev-db/postgis/ChangeLog
12
13 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-db/postgis/ChangeLog?rev=1.78&view=markup
14 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-db/postgis/ChangeLog?rev=1.78&content-type=text/plain
15 diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-db/postgis/ChangeLog?r1=1.77&r2=1.78
16
17 Index: ChangeLog
18 ===================================================================
19 RCS file: /var/cvsroot/gentoo-x86/dev-db/postgis/ChangeLog,v
20 retrieving revision 1.77
21 retrieving revision 1.78
22 diff -u -r1.77 -r1.78
23 --- ChangeLog 16 Feb 2013 21:01:38 -0000 1.77
24 +++ ChangeLog 2 Mar 2013 17:03:40 -0000 1.78
25 @@ -1,6 +1,11 @@
26 # ChangeLog for dev-db/postgis
27 # Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
28 -# $Header: /var/cvsroot/gentoo-x86/dev-db/postgis/ChangeLog,v 1.77 2013/02/16 21:01:38 swegener Exp $
29 +# $Header: /var/cvsroot/gentoo-x86/dev-db/postgis/ChangeLog,v 1.78 2013/03/02 17:03:40 titanofold Exp $
30 +
31 +*postgis-2.0.3 (02 Mar 2013)
32 +
33 + 02 Mar 2013; Aaron W. Swenson <titanofold@g.o> +postgis-2.0.3.ebuild:
34 + Version bump. Depend on GEOS 3.3.8 based on upstream recommendation.
35
36 16 Feb 2013; Sven Wegener <swegener@g.o> postgis-1.5.8.ebuild:
37 Allow building with postgresql-9.2.
38
39
40
41 1.1 dev-db/postgis/postgis-2.0.3.ebuild
42
43 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-db/postgis/postgis-2.0.3.ebuild?rev=1.1&view=markup
44 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-db/postgis/postgis-2.0.3.ebuild?rev=1.1&content-type=text/plain
45
46 Index: postgis-2.0.3.ebuild
47 ===================================================================
48 # Copyright 1999-2013 Gentoo Foundation
49 # Distributed under the terms of the GNU General Public License v2
50 # $Header: /var/cvsroot/gentoo-x86/dev-db/postgis/postgis-2.0.3.ebuild,v 1.1 2013/03/02 17:03:40 titanofold Exp $
51
52 EAPI="4"
53
54 inherit autotools eutils versionator
55
56 DESCRIPTION="Geographic Objects for PostgreSQL"
57 HOMEPAGE="http://postgis.net"
58 SRC_URI="http://download.osgeo.org/postgis/source/${P}.tar.gz"
59 LICENSE="GPL-2"
60 SLOT="0"
61 KEYWORDS="~amd64 ~ppc ~x86 ~amd64-linux ~x86-linux"
62 IUSE="doc gtk"
63
64 RDEPEND="
65 || (
66 dev-db/postgresql-server:9.2
67 dev-db/postgresql-server:9.1
68 dev-db/postgresql-server:9.0
69 dev-db/postgresql-server:8.4
70 )
71 dev-libs/json-c
72 dev-libs/libxml2:2
73 >=sci-libs/geos-3.3.8
74 >=sci-libs/proj-4.6.0
75 >=sci-libs/gdal-1.9
76 gtk? ( x11-libs/gtk+:2 )
77 "
78
79 DEPEND="${RDEPEND}
80 doc? (
81 app-text/docbook-xsl-stylesheets
82 app-text/docbook-xml-dtd:4.3
83 dev-libs/libxslt
84 || (
85 media-gfx/imagemagick[png]
86 media-gfx/graphicsmagick[imagemagick,png]
87 )
88 )
89 virtual/pkgconfig
90 "
91
92 PGIS="$(get_version_component_range 1-2)"
93
94 RESTRICT="test"
95
96 # These modules are built using the same *FLAGS that were used to build
97 # dev-db/postgresql. The right thing to do is to ignore the current
98 # *FLAGS settings.
99 QA_FLAGS_IGNORED="usr/lib(64)?/(rt)?postgis-${PGIS}\.so"
100
101 # Because developers have been fooled into thinking recursive make is a
102 # good thing.
103 MAKEOPTS="-j1"
104
105 pkg_setup() {
106 export PGSLOT="$(postgresql-config show)"
107
108 if [[ ${PGSLOT//.} < 84 || ${PGSLOT//.} > 92 ]] ; then
109 eerror "You must build ${CATEGORY}/${P} against PostgreSQL 8.4 - 9.2."
110 eerror "Set an appropriate slot with postgresql-config."
111 die 'Select a PostgreSQL slot between 8.4 and 9.2'
112 fi
113 }
114
115 src_prepare() {
116 epatch "${FILESDIR}/${PN}-${PGIS}-ldflags.patch" \
117 "${FILESDIR}/${PN}-${PGIS}-pkgconfig-json.patch"
118
119 local AT_M4DIR="macros"
120 eautoreconf
121 }
122
123 src_configure() {
124 local myargs=""
125 use gtk && myargs+=" --with-gui"
126 econf ${myargs}
127 }
128
129 src_compile() {
130 # Occasionally, builds fail because of out of order compilation.
131 # Otherwise, it'd be fine.
132 emake
133 emake -C topology
134
135 if use doc ; then
136 emake comments
137 emake cheatsheets
138 emake -C doc html
139 fi
140 }
141
142 src_install() {
143 emake DESTDIR="${D}" install
144 use doc && emake DESTDIR="${D}" comments-install
145 emake -C topology DESTDIR="${D}" install
146 dobin ./utils/postgis_restore.pl
147
148 dodoc CREDITS TODO loader/README.* doc/*txt
149
150 use doc && dohtml -r doc/html/*
151
152 docinto topology
153 dodoc topology/{TODO,README}
154
155 insinto /etc
156 doins "${FILESDIR}/postgis_dbs"
157 }
158
159 pkg_postinst() {
160 postgresql-config update
161
162 elog "To finish installing or updating PostGIS edit:"
163 elog " ${EROOT%/}/etc/postgis_dbs"
164 elog
165 elog "Then, run:"
166 elog " emerge --config =${CATEGORY}/${PF}"
167 }
168
169 pkg_config(){
170 source "${EROOT%/}/etc/conf.d/postgresql-${PGSLOT}"
171 source "${EROOT%/}/etc/postgis_dbs"
172 local postgis_path="${EROOT%/}/usr/share/postgresql-${PGSLOT}/contrib/postgis-${PGIS}"
173
174 if [[ -n ${configured} ]] ; then
175 einfon "Password for PostgreSQL user '${pguser}': "
176 read -s PGPASSWORD
177 export PGPASSWORD
178 echo
179 else
180 eerror "You must edit:"
181 eerror " ${EROOT%/}/etc/postgis_dbs"
182 eerror "Before running 'emerge --config =${CATEGORY}/${PF}'"
183 eerror
184 die "Edit postgis_dbs"
185 fi
186
187 # The server we work with must be the same slot we built against.
188 local server_version
189 server_version=$(psql -U ${pguser} -d postgres -p ${PGPORT} \
190 -Aqwtc 'SELECT version()' 2> /dev/null)
191 if [[ $? = 0 ]] ; then
192 server_version=$(echo ${server_version} | cut -d " " -f 2 | \
193 cut -d "." -f -2 | tr -d .)
194 if [[ $server_version != ${PGSLOT//.} ]] ; then
195 unset PGPASSWORD
196 eerror "Server version must be ${PGSLOT}.x"
197 die "Server version isn't ${PGSLOT}.x"
198 fi
199 else
200 unset PGPASSWORD
201 eerror "Is the server running?"
202 die "Couldn't connect to server."
203 fi
204
205 local retval
206 safe_exit() {
207 unset PGPASSWORD
208 sed -e 's/\(configured\)/#\1/' -i "${EROOT%/}/etc/postgis_dbs"
209 eend $retval
210 eerror "All actions could not be performed."
211 eerror "Read above to see what failed."
212 eerror "Once you fix the issue, you'll need to edit:"
213 eerror " ${EROOT%/}/etc/postgis_dbs"
214 eerror "As some things may have succeeded."
215 eerror
216 die "All actions could not be performed"
217 }
218
219 local db
220 for db in ${databases[@]} ; do
221 ebegin "Performing CREATE LANGUAGE on ${db}"
222 createlang -U ${pguser} -p ${PGPORT} plpgsql ${db}
223 retval=$?
224 # In this case, only error code 1 is fatal
225 [[ $retval == 1 ]] && safe_exit || eend 0
226
227 ebegin "Enabling PostGIS on ${db}"
228 psql -q -U ${pguser} -p ${PGPORT} -d ${db} \
229 -f "${postgis_path}/postgis.sql"
230 retval=$?
231 [[ $retval == 0 ]] && eend 0 || safe_exit
232 done
233
234 for db in ${templates[@]} ; do
235 ebegin "Creating template database '${db}'"
236 createdb -p ${PGPORT} -U ${pguser} -O ${pguser} -T ${from_template} \
237 ${db} "PostGIS Template"
238 retval=$?
239 [[ $retval != 0 ]] && safe_exit
240
241 psql -q -U ${pguser} -p ${PGPORT} -c \
242 "UPDATE pg_database \
243 SET datistemplate = TRUE, datallowconn = TRUE \
244 WHERE datname = '${db}'"
245 retval=$?
246 [[ $retval != 0 ]] && safe_exit
247
248 createlang -U ${pguser} -p ${PGPORT} plpgsql ${db}
249 retval=$?
250 # In this case, only error code 1 is fatal
251 [[ $retval == 1 ]] && safe_exit
252
253 psql -q -U ${pguser} -p ${PGPORT} -d ${db} \
254 -f "${postgis_path}/postgis.sql"
255 retval=$?
256 [[ $retval == 0 ]] && eend 0 || safe_exit
257 done
258
259 for db in ${epsg_databases[@]} ; do
260 ebegin "Adding EPSG to ${db}"
261 psql -q -U ${pguser} -p ${PGPORT} -d ${db} \
262 -f "${postgis_path}/spatial_ref_sys.sql"
263 retval=$?
264 [[ $retval == 0 ]] && eend 0 || safe_exit
265 done
266
267 for db in ${comment_databases[@]} ; do
268 ebegin "Adding comments on ${db}"
269 local comment_file
270 for comment_file in "${postgis_path}"/*_comments.sql ; do
271 psql -q -U ${pguser} -p ${PGPORT} -d ${db} -f "${comment_file}"
272 retval=$?
273 [[ $retval == 0 ]] && continue || safe_exit
274 done
275 eend 0
276 done
277
278 for db in ${upgrade_from_1_3[@]} ; do
279 ebegin "Upgrading from PostGIS 1.3 to ${PGIS} on ${db}"
280 psql -q -U ${pguser} -p ${PGPORT} -d ${db} \
281 -f "${postgis_path}/postgis_upgrade_13_to_${PGIS//.}.sql"
282 retval=$?
283 [[ $retval == 0 ]] && eend 0 || safe_exit
284 done
285
286 for db in ${upgrade_from_1_4[@]} ; do
287 ebegin "Upgrading from PostGIS 1.4 to ${PGIS} on ${db}"
288 psql -q -U ${pguser} -p ${PGPORT} -d ${db} \
289 -f "${postgis_path}/postgis_upgrade_14_to_${PGIS//.}.sql"
290 retval=$?
291 [[ $retval == 0 ]] && eend 0 || safe_exit
292 done
293
294 for db in ${upgrade_from_1_5[@]} ; do
295 ebegin "Minor upgrade for PostGIS ${PGIS} on ${db}"
296 psql -q -U ${pguser} -p ${PGPORT} -d ${db} \
297 -f "${postgis_path}/postgis_upgrade_${PGIS//.}_minor.sql"
298 retval=$?
299 [[ $retval == 0 ]] && eend 0 || safe_exit
300 done
301
302 # Clean up and make it so the user has to edit postgis_dbs again that
303 # way this script won't step on any toes due to user error.
304 unset PGPASSWORD
305 sed -e 's/\(configured\)/#\1/' -i "${EROOT%/}/etc/postgis_dbs"
306 einfo "PostgreSQL ${PGSLOT} is now PostGIS enabled."
307 einfo
308 einfo "To enable other databases, change the default slot:"
309 einfo " postgresql-config set <slot>"
310 einfo "Then, emerge this package again:"
311 einfo " emerge -av =${CATEGORY}/${PF}"
312 }