1 |
titanofold 11/05/02 11:40:31 |
2 |
|
3 |
Modified: ChangeLog |
4 |
Added: postgis-1.5.2-r3.ebuild |
5 |
Removed: postgis-1.5.2-r2.ebuild |
6 |
Log: |
7 |
Moved postgresql-config and checks into pkg_setup |
8 |
|
9 |
(Portage version: 2.1.9.42/cvs/Linux i686) |
10 |
|
11 |
Revision Changes Path |
12 |
1.50 dev-db/postgis/ChangeLog |
13 |
|
14 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-db/postgis/ChangeLog?rev=1.50&view=markup |
15 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-db/postgis/ChangeLog?rev=1.50&content-type=text/plain |
16 |
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-db/postgis/ChangeLog?r1=1.49&r2=1.50 |
17 |
|
18 |
Index: ChangeLog |
19 |
=================================================================== |
20 |
RCS file: /var/cvsroot/gentoo-x86/dev-db/postgis/ChangeLog,v |
21 |
retrieving revision 1.49 |
22 |
retrieving revision 1.50 |
23 |
diff -u -r1.49 -r1.50 |
24 |
--- ChangeLog 2 May 2011 04:31:33 -0000 1.49 |
25 |
+++ ChangeLog 2 May 2011 11:40:31 -0000 1.50 |
26 |
@@ -1,6 +1,12 @@ |
27 |
# ChangeLog for dev-db/postgis |
28 |
# Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2 |
29 |
-# $Header: /var/cvsroot/gentoo-x86/dev-db/postgis/ChangeLog,v 1.49 2011/05/02 04:31:33 titanofold Exp $ |
30 |
+# $Header: /var/cvsroot/gentoo-x86/dev-db/postgis/ChangeLog,v 1.50 2011/05/02 11:40:31 titanofold Exp $ |
31 |
+ |
32 |
+*postgis-1.5.2-r3 (02 May 2011) |
33 |
+ |
34 |
+ 02 May 2011; Aaron W. Swenson <titanofold@g.o> |
35 |
+ -postgis-1.5.2-r2.ebuild, +postgis-1.5.2-r3.ebuild: |
36 |
+ Moved postgresql-config and checks into pkg_setup |
37 |
|
38 |
*postgis-1.5.2-r2 (02 May 2011) |
39 |
|
40 |
|
41 |
|
42 |
|
43 |
1.1 dev-db/postgis/postgis-1.5.2-r3.ebuild |
44 |
|
45 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-db/postgis/postgis-1.5.2-r3.ebuild?rev=1.1&view=markup |
46 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-db/postgis/postgis-1.5.2-r3.ebuild?rev=1.1&content-type=text/plain |
47 |
|
48 |
Index: postgis-1.5.2-r3.ebuild |
49 |
=================================================================== |
50 |
# Copyright 1999-2011 Gentoo Foundation |
51 |
# Distributed under the terms of the GNU General Public License v2 |
52 |
# $Header: /var/cvsroot/gentoo-x86/dev-db/postgis/postgis-1.5.2-r3.ebuild,v 1.1 2011/05/02 11:40:31 titanofold Exp $ |
53 |
|
54 |
EAPI="4" |
55 |
|
56 |
inherit eutils versionator |
57 |
|
58 |
DESCRIPTION="Geographic Objects for PostgreSQL" |
59 |
HOMEPAGE="http://postgis.refractions.net" |
60 |
SRC_URI="http://postgis.refractions.net/download/${P}.tar.gz" |
61 |
LICENSE="GPL-2" |
62 |
SLOT="0" |
63 |
KEYWORDS="~amd64 ~ppc ~x86" |
64 |
IUSE="doc gtk" |
65 |
|
66 |
RDEPEND=" |
67 |
|| ( |
68 |
dev-db/postgresql-server:9.0 |
69 |
dev-db/postgresql-server:8.4 |
70 |
dev-db/postgresql-server:8.3 |
71 |
dev-db/postgresql-server:9.1 |
72 |
) |
73 |
dev-libs/libxml2:2 |
74 |
>=sci-libs/geos-3.2 |
75 |
>=sci-libs/proj-4.6.0 |
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 |
86 |
media-gfx/graphicsmagick[imagemagick] |
87 |
) |
88 |
) |
89 |
" |
90 |
|
91 |
RESTRICT="test" |
92 |
|
93 |
PGIS="$(get_version_component_range 1-2)" |
94 |
|
95 |
pkg_setup() { |
96 |
export PGSLOT="$(postgresql-config show)" |
97 |
if [[ ${PGSLOT//.} < 83 ]] ; then |
98 |
eerror "You must build ${CATEGORY}/${PN} against PostgreSQL 8.3 or higher." |
99 |
eerror "Set an appropriate slot with postgresql-config." |
100 |
die "postgresql-config not set to 8.3 or higher." |
101 |
fi |
102 |
|
103 |
if [[ ${PGSLOT//.} > 90 ]] ; then |
104 |
ewarn "You are building ${CATEGORY}/${PN} against a version of PostgreSQL greater than 9.0." |
105 |
ewarn "This is neither supported here nor upstream." |
106 |
ewarn "However, all indicators show that this should work." |
107 |
ewarn "Any bugs you encounter should be reported upstream." |
108 |
fi |
109 |
} |
110 |
|
111 |
src_configure() { |
112 |
# Configure interprets --without-gui as being the same as --with-gui |
113 |
if use gtk ; then |
114 |
econf --with-gui |
115 |
else |
116 |
econf |
117 |
fi |
118 |
} |
119 |
|
120 |
src_compile() { |
121 |
# Occasionally, builds fail because of out of order compilation. |
122 |
# Otherwise, it'd be fine. |
123 |
emake -j1 |
124 |
cd topology/ |
125 |
emake -j1 |
126 |
|
127 |
if use doc ; then |
128 |
cd "${S}/doc/" |
129 |
emake -j1 |
130 |
fi |
131 |
} |
132 |
|
133 |
src_install() { |
134 |
emake -j1 DESTDIR="${D}" install |
135 |
cd topology/ |
136 |
emake -j1 DESTDIR="${D}" install |
137 |
|
138 |
cd "${S}" |
139 |
dodoc CREDITS TODO loader/README.* doc/*txt |
140 |
|
141 |
docinto topology |
142 |
dodoc topology/{TODO,README} |
143 |
dobin ./utils/postgis_restore.pl |
144 |
|
145 |
if use doc; then |
146 |
cd doc/html |
147 |
dohtml -r * |
148 |
fi |
149 |
|
150 |
insinto /etc |
151 |
doins "${FILESDIR}/postgis_dbs" |
152 |
|
153 |
cd "${S}/doc" |
154 |
doman man/* |
155 |
insinto /usr/share/postgresql-${PGSLOT}/contrib/postgis-${PGIS}/ |
156 |
doins postgis_comments.sql |
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 |
|
180 |
# The server we work with must be the same slot we built against. |
181 |
local server_version |
182 |
server_version=$(psql -U ${pguser} -d postgres -p ${PGPORT} \ |
183 |
-Aqwtc 'SELECT version()' 2> /dev/null) |
184 |
if [[ $? = 0 ]] ; then |
185 |
server_version=$(echo ${server_version} | cut -d " " -f 2 | \ |
186 |
cut -d "." -f -2 | tr -d .) |
187 |
if [[ $server_version != ${PGSLOT//.} ]] ; then |
188 |
unset PGPASSWORD |
189 |
eerror "Server version must be ${PGSLOT}.x" |
190 |
die "Server version isn't ${PGSLOT}.x" |
191 |
fi |
192 |
else |
193 |
unset PGPASSWORD |
194 |
eerror "Is the server running?" |
195 |
die "Couldn't connect to server." |
196 |
fi |
197 |
|
198 |
local retval |
199 |
safe_exit() { |
200 |
unset PGPASSWORD |
201 |
sed -e 's/\(configured\)/#\1/' -i "${EROOT%/}/etc/postgis_dbs" |
202 |
eend $retval |
203 |
eerror "All actions could not be performed." |
204 |
eerror "Read above to see what failed." |
205 |
eerror "Once you fix the issue, you'll need to edit:" |
206 |
eerror " ${EROOT%/}/etc/postgis_dbs" |
207 |
eerror "As some things may have succeeded." |
208 |
eerror |
209 |
die "All actions could not be performed" |
210 |
} |
211 |
|
212 |
local db |
213 |
for db in ${databases[@]} ; do |
214 |
ebegin "Performing CREATE LANGUAGE on ${db}" |
215 |
createlang -U ${pguser} -p ${PGPORT} plpgsql ${db} |
216 |
retval=$? |
217 |
# In this case, only error code 1 is fatal |
218 |
[[ $retval == 1 ]] && safe_exit || eend 0 |
219 |
|
220 |
ebegin "Enabling PostGIS on ${db}" |
221 |
psql -q -U ${pguser} -p ${PGPORT} -d ${db} \ |
222 |
-f "${postgis_path}/postgis.sql" |
223 |
retval=$? |
224 |
[[ $retval == 0 ]] && eend 0 || safe_exit |
225 |
done |
226 |
|
227 |
for db in ${templates[@]} ; do |
228 |
ebegin "Creating template database '${db}'" |
229 |
createdb -p ${PGPORT} -U ${pguser} -O ${pguser} -T ${from_template} \ |
230 |
${db} "PostGIS Template" |
231 |
retval=$? |
232 |
[[ $retval != 0 ]] && safe_exit |
233 |
|
234 |
psql -q -U ${pguser} -p ${PGPORT} -c \ |
235 |
"UPDATE pg_database \ |
236 |
SET datistemplate = TRUE, datallowconn = TRUE \ |
237 |
WHERE datname = '${db}'" |
238 |
retval=$? |
239 |
[[ $retval != 0 ]] && safe_exit |
240 |
|
241 |
createlang -U ${pguser} -p ${PGPORT} plpgsql ${db} |
242 |
retval=$? |
243 |
# In this case, only error code 1 is fatal |
244 |
[[ $retval == 1 ]] && safe_exit |
245 |
|
246 |
psql -q -U ${pguser} -p ${PGPORT} -d ${db} \ |
247 |
-f "${postgis_path}/postgis.sql" |
248 |
retval=$? |
249 |
[[ $retval == 0 ]] && eend 0 || safe_exit |
250 |
done |
251 |
|
252 |
for db in ${espg_databases[@]} ; do |
253 |
ebegin "Adding ESPG to ${db}" |
254 |
psql -q -U ${pguser} -p ${PGPORT} -d ${db} \ |
255 |
-f "${postgis_path}/spatial_ref_sys.sql" |
256 |
retval=$? |
257 |
[[ $retval == 0 ]] && eend 0 || safe_exit |
258 |
done |
259 |
|
260 |
for db in ${comment_databases[@]} ; do |
261 |
ebegin "Adding comments on ${db}" |
262 |
psql -q -U ${pguser} -p ${PGPORT} -d ${db} \ |
263 |
-f "${postgis_path}/postgis_comments.sql" |
264 |
retval=$? |
265 |
[[ $retval == 0 ]] && eend 0 || safe_exit |
266 |
done |
267 |
|
268 |
for db in ${upgrade_from_1_3[@]} ; do |
269 |
ebegin "Upgrading from PostGIS 1.3 to ${PGIS} on ${db}" |
270 |
psql -q -U ${pguser} -p ${PGPORT} -d ${db} \ |
271 |
-f "${postgis_path}/postgis_upgrade_13_to_${PGIS//.}.sql" |
272 |
retval=$? |
273 |
[[ $retval == 0 ]] && eend 0 || safe_exit |
274 |
done |
275 |
|
276 |
for db in ${upgrade_from_1_4[@]} ; do |
277 |
ebegin "Upgrading from PostGIS 1.4 to ${PGIS} on ${db}" |
278 |
psql -q -U ${pguser} -p ${PGPORT} -d ${db} \ |
279 |
-f "${postgis_path}/postgis_upgrade_14_to_${PGIS//.}.sql" |
280 |
retval=$? |
281 |
[[ $retval == 0 ]] && eend 0 || safe_exit |
282 |
done |
283 |
|
284 |
for db in ${upgrade_from_1_5[@]} ; do |
285 |
ebegin "Minor upgrade for PostGIS ${PGIS} on ${db}" |
286 |
psql -q -U ${pguser} -p ${PGPORT} -d ${db} \ |
287 |
-f "${postgis_path}/postgis_upgrade_${PGIS//.}_minor.sql" |
288 |
retval=$? |
289 |
[[ $retval == 0 ]] && eend 0 || safe_exit |
290 |
done |
291 |
|
292 |
# Clean up and make it so the user has to edit postgis_dbs again that |
293 |
# way this script won't step on any toes due to user error. |
294 |
unset PGPASSWORD |
295 |
sed -e 's/\(configured\)/#\1/' -i "${EROOT%/}/etc/postgis_dbs" |
296 |
einfo "PostgreSQL ${PGSLOT} is now PostGIS enabled." |
297 |
einfo |
298 |
einfo "To enable other databases, change the default slot:" |
299 |
einfo " postgresql-config set <slot>" |
300 |
einfo "Then, emerge this package again:" |
301 |
einfo " emerge -av =${CATEGORY}/${PF}" |
302 |
else |
303 |
eerror "You must edit:" |
304 |
eerror " ${EROOT%/}/etc/postgis_dbs" |
305 |
eerror "Before running 'emerge --config =${CATEGORY}/${PF}'" |
306 |
eerror |
307 |
die "Edit postgis_dbs" |
308 |
fi |
309 |
} |