1 |
commit: 7a7a627164167509632bcd5b2e782b8a09c358d2 |
2 |
Author: Lars Wendler <polynomial-c <AT> gentoo <DOT> org> |
3 |
AuthorDate: Mon Aug 12 07:16:44 2019 +0000 |
4 |
Commit: Lars Wendler <polynomial-c <AT> gentoo <DOT> org> |
5 |
CommitDate: Mon Aug 12 07:17:00 2019 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7a7a6271 |
7 |
|
8 |
dev-vcs/subversion: Security cleanup |
9 |
|
10 |
Bug: https://bugs.gentoo.org/690594 |
11 |
Package-Manager: Portage-2.3.71, Repoman-2.3.17 |
12 |
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org> |
13 |
|
14 |
dev-vcs/subversion/Manifest | 3 - |
15 |
.../files/subversion-1.11.1-allow-apr-1.7.0+.patch | 18 - |
16 |
...subversion-1.9.7-fix-wc-queries-test-test.patch | 26 - |
17 |
dev-vcs/subversion/subversion-1.10.4.ebuild | 532 --------------------- |
18 |
dev-vcs/subversion/subversion-1.11.1.ebuild | 532 --------------------- |
19 |
dev-vcs/subversion/subversion-1.12.0.ebuild | 532 --------------------- |
20 |
6 files changed, 1643 deletions(-) |
21 |
|
22 |
diff --git a/dev-vcs/subversion/Manifest b/dev-vcs/subversion/Manifest |
23 |
index 46c3cbbf98c..297c8addf67 100644 |
24 |
--- a/dev-vcs/subversion/Manifest |
25 |
+++ b/dev-vcs/subversion/Manifest |
26 |
@@ -1,5 +1,2 @@ |
27 |
DIST subversion-1.10.0_rc1-patches-1.tar.xz 2984 BLAKE2B 7c9619b95ca6b433a58dc5baf3a1e1b14ef0017f714af81762b975d50a37b743788a4da65cf7f9eb8e633cbc813ad8dd974b530a19ec2d3fc74b75921f8f0c17 SHA512 aa7a25a253ea2da99520399d292d3e1602985392bae6dc5582003fdb9719d654638754b6e370b68b184ee6729ba3833bd511c09b2cb36f8f476b42063f55fbb2 |
28 |
-DIST subversion-1.10.4.tar.bz2 8392477 BLAKE2B 93364178d2252332b070ebddd5791cb43e0000802d820848a6ca2e13ae3036a9119901dcde1b73ea09bd34af3fd72b923bdd2765e302359e7f1ecf49a6840685 SHA512 c44a4a4a9533cd4f4cb6ddbc3ce98585a96da6c8e75497d087034b52f899797bb0972dfc0e79db99e81149e59e7fa765398c6ad35eba64f11f4ae9c3b3537434 |
29 |
-DIST subversion-1.11.1.tar.bz2 8499709 BLAKE2B f14bbe9b28dec32894a8c262d32f36e01c9866352f1c54b5468804e81c1eadb895cbe9e33783a9e7d4a7f54dfa3b25b762015b9ca4886a14628c434254995c77 SHA512 2d082f715bf592ffc6a19311a9320dbae2ff0ee126b0472ce1c3f10e9aee670f43d894889430e6d093620f7b69c611e9a26773bc7a2f8b599ec37540ecd84a8d |
30 |
-DIST subversion-1.12.0.tar.bz2 8504473 BLAKE2B 21664158bf48ff1231b8ae25fd70971ee90ded5306bbf29a1e4a105fca9f15c4d8bfa4d7ab33fc5d10f86aa191120a1921d049b1fac6346cc643391a28d84997 SHA512 87a00b23bdac63124fa00642e2ac7e6f7818b092bc6422cabdeb2ca8fbc8c481fb8c1e4fbd86aac94e8e1fc099fa163aa0609aca23265ceb96ef4ebe78a64c13 |
31 |
DIST subversion-1.12.2.tar.bz2 8506584 BLAKE2B 535e4c6c369537baa7f9fc9123d0314de1bb8d4b3c51e0216662047fd1084ceb6a1f349de54bf575f0eb8e1041fcd6525e6cf27dbd908e2148578cb9fb807bb3 SHA512 b1f859b460afa54598778d8633f648acb4fa46138f7d6f0c1451e3c6a1de71df859233cd9ac7f19f0f20d7237ed3988f0a38da7552ffa58391e19d957bc7c136 |
32 |
|
33 |
diff --git a/dev-vcs/subversion/files/subversion-1.11.1-allow-apr-1.7.0+.patch b/dev-vcs/subversion/files/subversion-1.11.1-allow-apr-1.7.0+.patch |
34 |
deleted file mode 100644 |
35 |
index a0da4a5931d..00000000000 |
36 |
--- a/dev-vcs/subversion/files/subversion-1.11.1-allow-apr-1.7.0+.patch |
37 |
+++ /dev/null |
38 |
@@ -1,18 +0,0 @@ |
39 |
---- a/build/ac-macros/swig.m4 |
40 |
-+++ b/build/ac-macros/swig.m4 |
41 |
-@@ -137,13 +137,13 @@ |
42 |
- AC_CACHE_CHECK([for apr_int64_t Python/C API format string], |
43 |
- [svn_cv_pycfmt_apr_int64_t], [ |
44 |
- if test "x$svn_cv_pycfmt_apr_int64_t" = "x"; then |
45 |
-- AC_EGREP_CPP([MaTcHtHiS +\"lld\" +EnDeNd], |
46 |
-+ AC_EGREP_CPP([MaTcHtHiS +\"ll(\" *\")?d\" +EnDeNd], |
47 |
- [#include <apr.h> |
48 |
- MaTcHtHiS APR_INT64_T_FMT EnDeNd], |
49 |
- [svn_cv_pycfmt_apr_int64_t="L"]) |
50 |
- fi |
51 |
- if test "x$svn_cv_pycfmt_apr_int64_t" = "x"; then |
52 |
-- AC_EGREP_CPP([MaTcHtHiS +\"ld\" +EnDeNd],r |
53 |
-+ AC_EGREP_CPP([MaTcHtHiS +\"l(\" *\")?d\" +EnDeNd],r |
54 |
- [#include <apr.h> |
55 |
- MaTcHtHiS APR_INT64_T_FMT EnDeNd], |
56 |
- [svn_cv_pycfmt_apr_int64_t="l"]) |
57 |
|
58 |
diff --git a/dev-vcs/subversion/files/subversion-1.9.7-fix-wc-queries-test-test.patch b/dev-vcs/subversion/files/subversion-1.9.7-fix-wc-queries-test-test.patch |
59 |
deleted file mode 100644 |
60 |
index 6658bd683e7..00000000000 |
61 |
--- a/dev-vcs/subversion/files/subversion-1.9.7-fix-wc-queries-test-test.patch |
62 |
+++ /dev/null |
63 |
@@ -1,26 +0,0 @@ |
64 |
-https://bugs.gentoo.org/605438 |
65 |
- |
66 |
---- a/subversion/tests/libsvn_wc/wc-queries-test.c 2019/01/24 10:33:42 1852012 |
67 |
-+++ b/subversion/tests/libsvn_wc/wc-queries-test.c 2019/01/24 10:58:23 1852013 |
68 |
-@@ -670,7 +670,20 @@ |
69 |
- || (item->expression_vars < 1)) |
70 |
- && !is_result_table(item->table)) |
71 |
- { |
72 |
-- if (in_list(primary_key_statements, i)) |
73 |
-+ if (MATCH_TOKEN(item->table, "sqlite_master")) |
74 |
-+ { |
75 |
-+ /* The sqlite_master table does not have an index. |
76 |
-+ Query explanations that say 'SCAN TABLE sqlite_master' |
77 |
-+ will appear if SQLite was compiled with the option |
78 |
-+ SQLITE_ENABLE_STMT_SCANSTATUS, for queries such |
79 |
-+ as 'DROP TABLE foo', but the performance of such |
80 |
-+ statements is not our concern here. */ |
81 |
-+ |
82 |
-+ /* "Slow" statements do expect too see a warning, however. */ |
83 |
-+ if (is_slow_statement(i)) |
84 |
-+ warned = TRUE; |
85 |
-+ } |
86 |
-+ else if (in_list(primary_key_statements, i)) |
87 |
- { |
88 |
- /* Reported as primary key index usage in Sqlite 3.7, |
89 |
- as table scan in 3.8+, while the execution plan is |
90 |
|
91 |
diff --git a/dev-vcs/subversion/subversion-1.10.4.ebuild b/dev-vcs/subversion/subversion-1.10.4.ebuild |
92 |
deleted file mode 100644 |
93 |
index 29e2204d1a6..00000000000 |
94 |
--- a/dev-vcs/subversion/subversion-1.10.4.ebuild |
95 |
+++ /dev/null |
96 |
@@ -1,532 +0,0 @@ |
97 |
-# Copyright 1999-2019 Gentoo Authors |
98 |
-# Distributed under the terms of the GNU General Public License v2 |
99 |
- |
100 |
-EAPI=6 |
101 |
- |
102 |
-PYTHON_COMPAT=( python2_7 ) |
103 |
-USE_RUBY="ruby25 ruby24 ruby23" |
104 |
-DISTUTILS_OPTIONAL=1 |
105 |
-WANT_AUTOMAKE="none" |
106 |
-GENTOO_DEPEND_ON_PERL="no" |
107 |
- |
108 |
-inherit autotools bash-completion-r1 db-use depend.apache distutils-r1 elisp-common flag-o-matic java-pkg-opt-2 libtool multilib perl-module ruby-single xdg-utils |
109 |
- |
110 |
-MY_P="${P/_/-}" |
111 |
-DESCRIPTION="Advanced version control system" |
112 |
-HOMEPAGE="https://subversion.apache.org/" |
113 |
-SRC_URI="mirror://apache/${PN}/${MY_P}.tar.bz2 |
114 |
- https://dev.gentoo.org/~polynomial-c/${PN}-1.10.0_rc1-patches-1.tar.xz" |
115 |
-S="${WORKDIR}/${MY_P}" |
116 |
- |
117 |
-LICENSE="Subversion GPL-2" |
118 |
-SLOT="0" |
119 |
-[[ "${PV}" = *_rc* ]] || \ |
120 |
-KEYWORDS="alpha amd64 arm arm64 hppa ia64 ppc ppc64 sparc x86" |
121 |
-IUSE="apache2 berkdb ctypes-python debug doc +dso extras gnome-keyring +http java kwallet nls perl python ruby sasl test vim-syntax" |
122 |
- |
123 |
-COMMON_DEPEND=" |
124 |
- app-arch/bzip2 |
125 |
- app-arch/lz4 |
126 |
- >=dev-db/sqlite-3.7.12 |
127 |
- >=dev-libs/apr-1.3:1 |
128 |
- >=dev-libs/apr-util-1.3:1 |
129 |
- dev-libs/expat |
130 |
- dev-libs/libutf8proc:= |
131 |
- sys-apps/file |
132 |
- sys-libs/zlib |
133 |
- berkdb? ( >=sys-libs/db-4.0.14:= ) |
134 |
- ctypes-python? ( ${PYTHON_DEPS} ) |
135 |
- gnome-keyring? ( |
136 |
- dev-libs/glib:2 |
137 |
- gnome-base/libgnome-keyring |
138 |
- sys-apps/dbus |
139 |
- ) |
140 |
- http? ( >=net-libs/serf-1.3.4 ) |
141 |
- kwallet? ( |
142 |
- dev-qt/qtcore:5 |
143 |
- dev-qt/qtdbus:5 |
144 |
- dev-qt/qtgui:5 |
145 |
- kde-frameworks/kcoreaddons:5 |
146 |
- kde-frameworks/ki18n:5 |
147 |
- kde-frameworks/kwallet:5 |
148 |
- sys-apps/dbus |
149 |
- ) |
150 |
- perl? ( dev-lang/perl:= ) |
151 |
- python? ( ${PYTHON_DEPS} ) |
152 |
- ruby? ( ${RUBY_DEPS} ) |
153 |
- sasl? ( dev-libs/cyrus-sasl )" |
154 |
-RDEPEND="${COMMON_DEPEND} |
155 |
- apache2? ( www-servers/apache[apache2_modules_dav] ) |
156 |
- java? ( >=virtual/jre-1.8 ) |
157 |
- nls? ( virtual/libintl ) |
158 |
- perl? ( dev-perl/URI )" |
159 |
-# Note: ctypesgen doesn't need PYTHON_USEDEP, it's used once |
160 |
-DEPEND="${COMMON_DEPEND} |
161 |
- !!<sys-apps/sandbox-1.6 |
162 |
- ctypes-python? ( dev-python/ctypesgen ) |
163 |
- doc? ( app-doc/doxygen ) |
164 |
- gnome-keyring? ( virtual/pkgconfig ) |
165 |
- http? ( virtual/pkgconfig ) |
166 |
- java? ( >=virtual/jdk-1.8 ) |
167 |
- kwallet? ( |
168 |
- kde-frameworks/kdelibs4support:5 |
169 |
- virtual/pkgconfig |
170 |
- ) |
171 |
- nls? ( sys-devel/gettext ) |
172 |
- perl? ( dev-lang/swig ) |
173 |
- python? ( dev-lang/swig ) |
174 |
- ruby? ( dev-lang/swig ) |
175 |
- test? ( ${PYTHON_DEPS} )" |
176 |
- |
177 |
-REQUIRED_USE=" |
178 |
- ctypes-python? ( ${PYTHON_REQUIRED_USE} ) |
179 |
- python? ( ${PYTHON_REQUIRED_USE} ) |
180 |
- test? ( |
181 |
- ${PYTHON_REQUIRED_USE} |
182 |
- !dso |
183 |
- )" |
184 |
- |
185 |
-want_apache |
186 |
- |
187 |
-pkg_setup() { |
188 |
- if use berkdb ; then |
189 |
- local apu_bdb_version="$(${EPREFIX}/usr/bin/apu-1-config --includes \ |
190 |
- | grep -Eoe '-I${EPREFIX}/usr/include/db[[:digit:]]\.[[:digit:]]' \ |
191 |
- | sed 's:.*b::')" |
192 |
- einfo |
193 |
- if [[ -z "${SVN_BDB_VERSION}" ]] ; then |
194 |
- if [[ -n "${apu_bdb_version}" ]] ; then |
195 |
- SVN_BDB_VERSION="${apu_bdb_version}" |
196 |
- einfo "Matching db version to apr-util" |
197 |
- else |
198 |
- SVN_BDB_VERSION="$(db_ver_to_slot "$(db_findver sys-libs/db 2>/dev/null)")" |
199 |
- einfo "SVN_BDB_VERSION variable isn't set. You can set it to enforce using of specific version of Berkeley DB." |
200 |
- fi |
201 |
- fi |
202 |
- einfo "Using: Berkeley DB ${SVN_BDB_VERSION}" |
203 |
- einfo |
204 |
- |
205 |
- if [[ -n "${apu_bdb_version}" && "${SVN_BDB_VERSION}" != "${apu_bdb_version}" ]]; then |
206 |
- eerror "APR-Util is linked against Berkeley DB ${apu_bdb_version}, but you are trying" |
207 |
- eerror "to build Subversion with support for Berkeley DB ${SVN_BDB_VERSION}." |
208 |
- eerror "Rebuild dev-libs/apr-util or set SVN_BDB_VERSION=\"${apu_bdb_version}\"." |
209 |
- eerror "Aborting to avoid possible run-time crashes." |
210 |
- die "Berkeley DB version mismatch" |
211 |
- fi |
212 |
- fi |
213 |
- |
214 |
- depend.apache_pkg_setup |
215 |
- |
216 |
- java-pkg-opt-2_pkg_setup |
217 |
- |
218 |
- if ! use http ; then |
219 |
- ewarn "WebDAV support is disabled. You need WebDAV to" |
220 |
- ewarn "access repositories through the HTTP protocol." |
221 |
- ewarn "Consider enabling \"http\" USE flag" |
222 |
- echo -ne "\a" |
223 |
- fi |
224 |
- |
225 |
- if use debug ; then |
226 |
- append-cppflags -DSVN_DEBUG -DAP_DEBUG |
227 |
- fi |
228 |
- |
229 |
- # https://issues.apache.org/jira/browse/SVN-4813#comment-16813739 |
230 |
- append-cppflags -P |
231 |
- |
232 |
- # http://mail-archives.apache.org/mod_mbox/subversion-dev/201306.mbox/%3C51C42014.3060700@××××××××.com%3E |
233 |
- [[ ${CHOST} == *-solaris2* ]] && append-cppflags -D__EXTENSIONS__ |
234 |
- |
235 |
- # Allow for custom repository locations. |
236 |
- SVN_REPOS_LOC="${SVN_REPOS_LOC:-${EPREFIX}/var/svn}" |
237 |
- |
238 |
- if use ruby ; then |
239 |
- local rbslot |
240 |
- RB_VER="" |
241 |
- for rbslot in $(sed 's@\([[:digit:]]\+\)\([[:digit:]]\)@\1.\2@g' <<< ${USE_RUBY//ruby}) ; do |
242 |
- if has_version dev-lang/ruby:${rbslot} ; then |
243 |
- RB_VER="${rbslot/.}" |
244 |
- break |
245 |
- fi |
246 |
- done |
247 |
- [[ -z "${RB_VER}" ]] && die "No useable ruby version found" |
248 |
- fi |
249 |
-} |
250 |
- |
251 |
-src_prepare() { |
252 |
- eapply "${WORKDIR}/patches" |
253 |
- eapply "${FILESDIR}"/${PN}-1.9.7-fix-wc-queries-test-test.patch |
254 |
- eapply "${FILESDIR}"/${PN}-1.11.1-allow-apr-1.7.0+.patch |
255 |
- eapply_user |
256 |
- |
257 |
- chmod +x build/transform_libtool_scripts.sh || die |
258 |
- |
259 |
- sed -i \ |
260 |
- -e "s/\(BUILD_RULES=.*\) bdb-test\(.*\)/\1\2/g" \ |
261 |
- -e "s/\(BUILD_RULES=.*\) test\(.*\)/\1\2/g" configure.ac |
262 |
- |
263 |
- # this bites us in particular on Solaris |
264 |
- sed -i -e '1c\#!/usr/bin/env sh' build/transform_libtool_scripts.sh || \ |
265 |
- die "/bin/sh is not POSIX shell!" |
266 |
- |
267 |
- eautoconf |
268 |
- elibtoolize |
269 |
- |
270 |
- sed -e 's/\(libsvn_swig_py\)-\(1\.la\)/\1-$(EPYTHON)-\2/g' \ |
271 |
- -i build-outputs.mk || die "sed failed" |
272 |
- |
273 |
- if use python ; then |
274 |
- # XXX: make python_copy_sources accept path |
275 |
- S=${S}/subversion/bindings/swig/python python_copy_sources |
276 |
- rm -r "${S}"/subversion/bindings/swig/python || die |
277 |
- fi |
278 |
- |
279 |
- xdg_environment_reset |
280 |
-} |
281 |
- |
282 |
-src_configure() { |
283 |
- local myconf=( |
284 |
- --libdir="${EPREFIX%/}/usr/$(get_libdir)" |
285 |
- $(use_with apache2 apache-libexecdir) |
286 |
- $(use_with apache2 apxs "${EPREFIX}"/usr/bin/apxs) |
287 |
- $(use_with berkdb berkeley-db "db.h:${EPREFIX%/}/usr/include/db${SVN_BDB_VERSION}::db-${SVN_BDB_VERSION}") |
288 |
- $(use_with ctypes-python ctypesgen "${EPREFIX%/}/usr") |
289 |
- $(use_enable dso runtime-module-search) |
290 |
- $(use_with gnome-keyring) |
291 |
- $(use_enable java javahl) |
292 |
- $(use_with java jdk "${JAVA_HOME}") |
293 |
- $(use_with kwallet) |
294 |
- $(use_enable nls) |
295 |
- $(use_with sasl) |
296 |
- $(use_with http serf) |
297 |
- --with-apr="${EPREFIX%/}/usr/bin/apr-1-config" |
298 |
- --with-apr-util="${EPREFIX%/}/usr/bin/apu-1-config" |
299 |
- --disable-experimental-libtool |
300 |
- --without-jikes |
301 |
- --disable-mod-activation |
302 |
- --disable-static |
303 |
- ) |
304 |
- |
305 |
- if use python || use perl || use ruby; then |
306 |
- myconf+=( --with-swig ) |
307 |
- else |
308 |
- myconf+=( --without-swig ) |
309 |
- fi |
310 |
- |
311 |
- if use java ; then |
312 |
- myconf+=( --without-junit ) |
313 |
- fi |
314 |
- |
315 |
- case ${CHOST} in |
316 |
- *-aix*) |
317 |
- # avoid recording immediate path to sharedlibs into executables |
318 |
- append-ldflags -Wl,-bnoipath |
319 |
- ;; |
320 |
- *-cygwin*) |
321 |
- # no LD_PRELOAD support, no undefined symbols |
322 |
- myconf+=( --disable-local-library-preloading LT_LDFLAGS=-no-undefined ) |
323 |
- ;; |
324 |
- *-interix*) |
325 |
- # loader crashes on the LD_PRELOADs... |
326 |
- myconf+=( --disable-local-library-preloading ) |
327 |
- ;; |
328 |
- *-solaris*) |
329 |
- # need -lintl to link |
330 |
- use nls && append-libs intl |
331 |
- # this breaks installation, on x64 echo replacement is 32-bits |
332 |
- myconf+=( --disable-local-library-preloading ) |
333 |
- ;; |
334 |
- *-mint*) |
335 |
- myconf+=( --enable-all-static --disable-local-library-preloading ) |
336 |
- ;; |
337 |
- *) |
338 |
- # inject LD_PRELOAD entries for easy in-tree development |
339 |
- myconf+=( --enable-local-library-preloading ) |
340 |
- ;; |
341 |
- esac |
342 |
- |
343 |
- #version 1.7.7 again tries to link against the older installed version and fails, when trying to |
344 |
- #compile for x86 on amd64, so workaround this issue again |
345 |
- #check newer versions, if this is still/again needed |
346 |
- myconf+=( --disable-disallowing-of-undefined-references ) |
347 |
- |
348 |
- # for build-time scripts |
349 |
- if use ctypes-python || use python || use test; then |
350 |
- python_setup |
351 |
- fi |
352 |
- |
353 |
- if use python && [[ ${CHOST} == *-darwin* ]] ; then |
354 |
- export ac_cv_python_link="$(tc-getCC) "'$(PYTHON_CFLAGS) -bundle -undefined dynamic_lookup $(PYTHON_LIBS)' |
355 |
- export ac_cv_python_libs='$(PYTHON_CFLAGS) -bundle -undefined dynamic_lookup $(PYTHON_LIBS)' |
356 |
- export ac_cv_python_compile="$(tc-getCC)" |
357 |
- fi |
358 |
- |
359 |
- # allow overriding Python include directory |
360 |
- ac_cv_path_RUBY=$(usex ruby "${EPREFIX%/}/usr/bin/ruby${RB_VER}" "none") \ |
361 |
- ac_cv_path_RDOC=$(usex ruby "${EPREFIX%/}/usr/bin/rdoc${RB_VER}" "none") \ |
362 |
- ac_cv_python_includes='-I$(PYTHON_INCLUDEDIR)' \ |
363 |
- econf "${myconf[@]}" |
364 |
-} |
365 |
- |
366 |
-src_compile() { |
367 |
- emake local-all |
368 |
- |
369 |
- if use ctypes-python ; then |
370 |
- # pre-generate .py files |
371 |
- use ctypes-python && emake ctypes-python |
372 |
- |
373 |
- pushd subversion/bindings/ctypes-python >/dev/null || die |
374 |
- distutils-r1_src_compile |
375 |
- popd >/dev/null || die |
376 |
- fi |
377 |
- |
378 |
- if use python ; then |
379 |
- swig_py_compile() { |
380 |
- local p=subversion/bindings/swig/python |
381 |
- rm -f ${p} || die |
382 |
- ln -s "${BUILD_DIR}" ${p} || die |
383 |
- |
384 |
- python_export PYTHON_INCLUDEDIR |
385 |
- emake swig-py \ |
386 |
- swig_pydir="$(python_get_sitedir)/libsvn" \ |
387 |
- swig_pydir_extra="$(python_get_sitedir)/svn" |
388 |
- } |
389 |
- |
390 |
- # this will give us proper BUILD_DIR for symlinking |
391 |
- BUILD_DIR=python \ |
392 |
- python_foreach_impl swig_py_compile |
393 |
- fi |
394 |
- |
395 |
- if use perl ; then |
396 |
- emake swig-pl |
397 |
- fi |
398 |
- |
399 |
- if use ruby ; then |
400 |
- emake swig-rb |
401 |
- fi |
402 |
- |
403 |
- if use java ; then |
404 |
- emake -j1 JAVAC_FLAGS="$(java-pkg_javac-args) -encoding iso8859-1" javahl |
405 |
- fi |
406 |
- |
407 |
- if use extras ; then |
408 |
- emake tools |
409 |
- fi |
410 |
- |
411 |
- if use doc ; then |
412 |
- doxygen doc/doxygen.conf || die "Building of Subversion HTML documentation failed" |
413 |
- |
414 |
- if use java; then |
415 |
- emake doc-javahl |
416 |
- fi |
417 |
- fi |
418 |
-} |
419 |
- |
420 |
-src_test() { |
421 |
- if has_version ~${CATEGORY}/${P} ; then |
422 |
- default |
423 |
- |
424 |
- if use ctypes-python ; then |
425 |
- python_test() { |
426 |
- "${PYTHON}" subversion/bindings/ctypes-python/test/run_all.py \ |
427 |
- || die "ctypes-python tests fail with ${EPYTHON}" |
428 |
- } |
429 |
- |
430 |
- distutils-r1_src_test |
431 |
- fi |
432 |
- |
433 |
- if use python ; then |
434 |
- swig_py_test() { |
435 |
- pushd "${BUILD_DIR}" >/dev/null || die |
436 |
- "${PYTHON}" tests/run_all.py || die "swig-py tests fail with ${EPYTHON}" |
437 |
- popd >/dev/null || die |
438 |
- } |
439 |
- |
440 |
- BUILD_DIR=subversion/bindings/swig/python \ |
441 |
- python_foreach_impl swig_py_test |
442 |
- fi |
443 |
- else |
444 |
- ewarn "The test suite shows errors when there is an older version of" |
445 |
- ewarn "${CATEGORY}/${PN} installed. Please install =${CATEGORY}/${P}*" |
446 |
- ewarn "before running the test suite." |
447 |
- ewarn "Test suite skipped." |
448 |
- fi |
449 |
-} |
450 |
- |
451 |
-src_install() { |
452 |
- emake -j1 DESTDIR="${D}" local-install |
453 |
- |
454 |
- if use ctypes-python ; then |
455 |
- pushd subversion/bindings/ctypes-python >/dev/null || die |
456 |
- distutils-r1_src_install |
457 |
- popd >/dev/null || die |
458 |
- fi |
459 |
- |
460 |
- if use python ; then |
461 |
- swig_py_install() { |
462 |
- local p=subversion/bindings/swig/python |
463 |
- rm -f ${p} || die |
464 |
- ln -s "${BUILD_DIR}" ${p} || die |
465 |
- |
466 |
- emake \ |
467 |
- DESTDIR="${D}" \ |
468 |
- swig_pydir="$(python_get_sitedir)/libsvn" \ |
469 |
- swig_pydir_extra="$(python_get_sitedir)/svn" \ |
470 |
- install-swig-py |
471 |
- } |
472 |
- |
473 |
- BUILD_DIR=python \ |
474 |
- python_foreach_impl swig_py_install |
475 |
- fi |
476 |
- |
477 |
- if use perl ; then |
478 |
- emake DESTDIR="${D}" INSTALLDIRS="vendor" install-swig-pl |
479 |
- perl_delete_localpod |
480 |
- find "${ED}" \( -name .packlist -o -name "*.bs" \) -delete || die |
481 |
- fi |
482 |
- |
483 |
- if use ruby ; then |
484 |
- emake DESTDIR="${D}" install-swig-rb |
485 |
- fi |
486 |
- |
487 |
- if use java ; then |
488 |
- emake DESTDIR="${D}" install-javahl |
489 |
- java-pkg_regso "${ED%/}"/usr/$(get_libdir)/libsvnjavahl*$(get_libname) |
490 |
- java-pkg_dojar "${ED%/}"/usr/$(get_libdir)/svn-javahl/svn-javahl.jar |
491 |
- rm -fr "${ED%/}"/usr/$(get_libdir)/svn-javahl/*.jar |
492 |
- fi |
493 |
- |
494 |
- # Install Apache module configuration. |
495 |
- if use apache2 ; then |
496 |
- keepdir "${APACHE_MODULES_CONFDIR}" |
497 |
- insinto "${APACHE_MODULES_CONFDIR}" |
498 |
- doins "${FILESDIR}/47_mod_dav_svn.conf" |
499 |
- fi |
500 |
- |
501 |
- # Install Bash Completion, bug 43179. |
502 |
- newbashcomp tools/client-side/bash_completion svn |
503 |
- bashcomp_alias svn svn{admin,dumpfilter,look,sync,version} |
504 |
- rm -f tools/client-side/bash_completion |
505 |
- |
506 |
- # Install hot backup script, bug 54304. |
507 |
- newbin tools/backup/hot-backup.py svn-hot-backup |
508 |
- rm -fr tools/backup |
509 |
- |
510 |
- # Install svnserve init-script and xinet.d snippet, bug 43245. |
511 |
- newinitd "${FILESDIR}"/svnserve.initd3 svnserve |
512 |
- newconfd "${FILESDIR}"/svnserve.confd svnserve |
513 |
- insinto /etc/xinetd.d |
514 |
- newins "${FILESDIR}"/svnserve.xinetd svnserve |
515 |
- |
516 |
- #adjust default user and group with disabled apache2 USE flag, bug 381385 |
517 |
- if ! use apache2 ; then |
518 |
- sed -e "s\USER:-apache\USER:-svn\g" \ |
519 |
- -e "s\GROUP:-apache\GROUP:-svnusers\g" \ |
520 |
- -i "${ED%/}"/etc/init.d/svnserve || die |
521 |
- sed -e "0,/apache/s//svn/" \ |
522 |
- -e "s:apache:svnusers:" \ |
523 |
- -i "${ED%/}"/etc/xinetd.d/svnserve || die |
524 |
- fi |
525 |
- |
526 |
- # Install documentation. |
527 |
- dodoc CHANGES COMMITTERS README |
528 |
- dodoc tools/xslt/svnindex.{css,xsl} |
529 |
- rm -fr tools/xslt |
530 |
- |
531 |
- # Install extra files. |
532 |
- if use extras ; then |
533 |
- cat <<- EOF > 80subversion-extras |
534 |
- PATH="${EPREFIX}/usr/$(get_libdir)/subversion/bin" |
535 |
- ROOTPATH="${EPREFIX}/usr/$(get_libdir)/subversion/bin" |
536 |
- EOF |
537 |
- doenvd 80subversion-extras |
538 |
- |
539 |
- emake DESTDIR="${D}" toolsdir="/usr/$(get_libdir)/subversion/bin" install-tools |
540 |
- |
541 |
- find tools \( -name "*.bat" -o -name "*.in" -o -name ".libs" \) -print0 | xargs -0 rm -fr |
542 |
- rm -fr tools/client-side/svnmucc |
543 |
- rm -fr tools/server-side/{svn-populate-node-origins-index,svnauthz-validate}* |
544 |
- rm -fr tools/{buildbot,dev,diff,po} |
545 |
- |
546 |
- insinto /usr/share/${PN} |
547 |
- find tools -name '*.py' -exec sed -i -e '1s:python:&2:' {} + || die |
548 |
- doins -r tools |
549 |
- fi |
550 |
- |
551 |
- if use doc ; then |
552 |
- docinto html |
553 |
- dodoc -r doc/doxygen/html/* |
554 |
- |
555 |
- if use java ; then |
556 |
- java-pkg_dojavadoc doc/javadoc |
557 |
- fi |
558 |
- fi |
559 |
- |
560 |
- prune_libtool_files --all |
561 |
- |
562 |
- cd "${ED%/}"/usr/share/locale |
563 |
- for i in * ; do |
564 |
- if [[ ${i} != *${LINGUAS}* ]] ; then |
565 |
- rm -r ${i} || die |
566 |
- fi |
567 |
- done |
568 |
-} |
569 |
- |
570 |
-pkg_preinst() { |
571 |
- # Compare versions of Berkeley DB, bug 122877. |
572 |
- if use berkdb && [[ -f "${EROOT}/usr/bin/svn" ]] ; then |
573 |
- OLD_BDB_VERSION="$(scanelf -nq "${EROOT}/usr/$(get_libdir)/libsvn_subr-1$(get_libname 0)" | grep -Eo "libdb-[[:digit:]]+\.[[:digit:]]+" | sed -e "s/libdb-\(.*\)/\1/")" |
574 |
- NEW_BDB_VERSION="$(scanelf -nq "${ED%/}/usr/$(get_libdir)/libsvn_subr-1$(get_libname 0)" | grep -Eo "libdb-[[:digit:]]+\.[[:digit:]]+" | sed -e "s/libdb-\(.*\)/\1/")" |
575 |
- if [[ "${OLD_BDB_VERSION}" != "${NEW_BDB_VERSION}" ]] ; then |
576 |
- CHANGED_BDB_VERSION="1" |
577 |
- fi |
578 |
- fi |
579 |
-} |
580 |
- |
581 |
-pkg_postinst() { |
582 |
- if [[ -n "${CHANGED_BDB_VERSION}" ]] ; then |
583 |
- ewarn "You upgraded from an older version of Berkeley DB and may experience" |
584 |
- ewarn "problems with your repository. Run the following commands as root to fix it:" |
585 |
- ewarn " db4_recover -h ${SVN_REPOS_LOC}/repos" |
586 |
- ewarn " chown -Rf apache:apache ${SVN_REPOS_LOC}/repos" |
587 |
- fi |
588 |
- |
589 |
- ewarn "If you run subversion as a daemon, you will need to restart it to avoid module mismatches." |
590 |
-} |
591 |
- |
592 |
-pkg_postrm() { |
593 |
- : |
594 |
-} |
595 |
- |
596 |
-pkg_config() { |
597 |
- # Remember: Don't use ${EROOT}${SVN_REPOS_LOC} since ${SVN_REPOS_LOC} |
598 |
- # already has EPREFIX in it |
599 |
- einfo "Initializing the database in ${SVN_REPOS_LOC}..." |
600 |
- if [[ -e "${SVN_REPOS_LOC}/repos" ]] ; then |
601 |
- echo "A Subversion repository already exists and I will not overwrite it." |
602 |
- echo "Delete \"${SVN_REPOS_LOC}/repos\" first if you're sure you want to have a clean version." |
603 |
- else |
604 |
- mkdir -p "${SVN_REPOS_LOC}/conf" |
605 |
- |
606 |
- einfo "Populating repository directory..." |
607 |
- # Create initial repository. |
608 |
- "${EROOT}/usr/bin/svnadmin" create "${SVN_REPOS_LOC}/repos" |
609 |
- |
610 |
- einfo "Setting repository permissions..." |
611 |
- SVNSERVE_USER="$(. "${EROOT}/etc/conf.d/svnserve"; echo "${SVNSERVE_USER}")" |
612 |
- SVNSERVE_GROUP="$(. "${EROOT}/etc/conf.d/svnserve"; echo "${SVNSERVE_GROUP}")" |
613 |
- if use apache2 ; then |
614 |
- [[ -z "${SVNSERVE_USER}" ]] && SVNSERVE_USER="apache" |
615 |
- [[ -z "${SVNSERVE_GROUP}" ]] && SVNSERVE_GROUP="apache" |
616 |
- else |
617 |
- [[ -z "${SVNSERVE_USER}" ]] && SVNSERVE_USER="svn" |
618 |
- [[ -z "${SVNSERVE_GROUP}" ]] && SVNSERVE_GROUP="svnusers" |
619 |
- fi |
620 |
- chmod -Rf go-rwx "${SVN_REPOS_LOC}/conf" |
621 |
- chmod -Rf o-rwx "${SVN_REPOS_LOC}/repos" |
622 |
- echo "Please create \"${SVNSERVE_GROUP}\" group if it does not exist yet." |
623 |
- echo "Afterwards please create \"${SVNSERVE_USER}\" user with homedir \"${SVN_REPOS_LOC}\"" |
624 |
- echo "and as part of the \"${SVNSERVE_GROUP}\" group if it does not exist yet." |
625 |
- echo "Finally, execute \"chown -Rf ${SVNSERVE_USER}:${SVNSERVE_GROUP} ${SVN_REPOS_LOC}/repos\"" |
626 |
- echo "to finish the configuration." |
627 |
- fi |
628 |
-} |
629 |
|
630 |
diff --git a/dev-vcs/subversion/subversion-1.11.1.ebuild b/dev-vcs/subversion/subversion-1.11.1.ebuild |
631 |
deleted file mode 100644 |
632 |
index 29ff1706b70..00000000000 |
633 |
--- a/dev-vcs/subversion/subversion-1.11.1.ebuild |
634 |
+++ /dev/null |
635 |
@@ -1,532 +0,0 @@ |
636 |
-# Copyright 1999-2019 Gentoo Authors |
637 |
-# Distributed under the terms of the GNU General Public License v2 |
638 |
- |
639 |
-EAPI=6 |
640 |
- |
641 |
-PYTHON_COMPAT=( python2_7 ) |
642 |
-USE_RUBY="ruby25 ruby24 ruby23" |
643 |
-DISTUTILS_OPTIONAL=1 |
644 |
-WANT_AUTOMAKE="none" |
645 |
-GENTOO_DEPEND_ON_PERL="no" |
646 |
- |
647 |
-inherit autotools bash-completion-r1 db-use depend.apache distutils-r1 elisp-common flag-o-matic java-pkg-opt-2 libtool multilib perl-module ruby-single xdg-utils |
648 |
- |
649 |
-MY_P="${P/_/-}" |
650 |
-DESCRIPTION="Advanced version control system" |
651 |
-HOMEPAGE="https://subversion.apache.org/" |
652 |
-SRC_URI="mirror://apache/${PN}/${MY_P}.tar.bz2 |
653 |
- https://dev.gentoo.org/~polynomial-c/${PN}-1.10.0_rc1-patches-1.tar.xz" |
654 |
-S="${WORKDIR}/${MY_P}" |
655 |
- |
656 |
-LICENSE="Subversion GPL-2" |
657 |
-SLOT="0" |
658 |
-[[ "${PV}" = *_rc* ]] || \ |
659 |
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86" |
660 |
-IUSE="apache2 berkdb ctypes-python debug doc +dso extras gnome-keyring +http java kwallet nls perl python ruby sasl test vim-syntax" |
661 |
- |
662 |
-COMMON_DEPEND=" |
663 |
- app-arch/bzip2 |
664 |
- app-arch/lz4 |
665 |
- >=dev-db/sqlite-3.7.12 |
666 |
- >=dev-libs/apr-1.3:1 |
667 |
- >=dev-libs/apr-util-1.3:1 |
668 |
- dev-libs/expat |
669 |
- dev-libs/libutf8proc:= |
670 |
- sys-apps/file |
671 |
- sys-libs/zlib |
672 |
- berkdb? ( >=sys-libs/db-4.0.14:= ) |
673 |
- ctypes-python? ( ${PYTHON_DEPS} ) |
674 |
- gnome-keyring? ( |
675 |
- dev-libs/glib:2 |
676 |
- gnome-base/libgnome-keyring |
677 |
- sys-apps/dbus |
678 |
- ) |
679 |
- http? ( >=net-libs/serf-1.3.4 ) |
680 |
- kwallet? ( |
681 |
- dev-qt/qtcore:5 |
682 |
- dev-qt/qtdbus:5 |
683 |
- dev-qt/qtgui:5 |
684 |
- kde-frameworks/kcoreaddons:5 |
685 |
- kde-frameworks/ki18n:5 |
686 |
- kde-frameworks/kwallet:5 |
687 |
- sys-apps/dbus |
688 |
- ) |
689 |
- perl? ( dev-lang/perl:= ) |
690 |
- python? ( ${PYTHON_DEPS} ) |
691 |
- ruby? ( ${RUBY_DEPS} ) |
692 |
- sasl? ( dev-libs/cyrus-sasl )" |
693 |
-RDEPEND="${COMMON_DEPEND} |
694 |
- apache2? ( www-servers/apache[apache2_modules_dav] ) |
695 |
- java? ( >=virtual/jre-1.8 ) |
696 |
- nls? ( virtual/libintl ) |
697 |
- perl? ( dev-perl/URI )" |
698 |
-# Note: ctypesgen doesn't need PYTHON_USEDEP, it's used once |
699 |
-DEPEND="${COMMON_DEPEND} |
700 |
- !!<sys-apps/sandbox-1.6 |
701 |
- ctypes-python? ( dev-python/ctypesgen ) |
702 |
- doc? ( app-doc/doxygen ) |
703 |
- gnome-keyring? ( virtual/pkgconfig ) |
704 |
- http? ( virtual/pkgconfig ) |
705 |
- java? ( >=virtual/jdk-1.8 ) |
706 |
- kwallet? ( |
707 |
- kde-frameworks/kdelibs4support:5 |
708 |
- virtual/pkgconfig |
709 |
- ) |
710 |
- nls? ( sys-devel/gettext ) |
711 |
- perl? ( dev-lang/swig ) |
712 |
- python? ( dev-lang/swig ) |
713 |
- ruby? ( dev-lang/swig ) |
714 |
- test? ( ${PYTHON_DEPS} )" |
715 |
- |
716 |
-REQUIRED_USE=" |
717 |
- ctypes-python? ( ${PYTHON_REQUIRED_USE} ) |
718 |
- python? ( ${PYTHON_REQUIRED_USE} ) |
719 |
- test? ( |
720 |
- ${PYTHON_REQUIRED_USE} |
721 |
- !dso |
722 |
- )" |
723 |
- |
724 |
-want_apache |
725 |
- |
726 |
-pkg_setup() { |
727 |
- if use berkdb ; then |
728 |
- local apu_bdb_version="$(${EPREFIX}/usr/bin/apu-1-config --includes \ |
729 |
- | grep -Eoe '-I${EPREFIX}/usr/include/db[[:digit:]]\.[[:digit:]]' \ |
730 |
- | sed 's:.*b::')" |
731 |
- einfo |
732 |
- if [[ -z "${SVN_BDB_VERSION}" ]] ; then |
733 |
- if [[ -n "${apu_bdb_version}" ]] ; then |
734 |
- SVN_BDB_VERSION="${apu_bdb_version}" |
735 |
- einfo "Matching db version to apr-util" |
736 |
- else |
737 |
- SVN_BDB_VERSION="$(db_ver_to_slot "$(db_findver sys-libs/db 2>/dev/null)")" |
738 |
- einfo "SVN_BDB_VERSION variable isn't set. You can set it to enforce using of specific version of Berkeley DB." |
739 |
- fi |
740 |
- fi |
741 |
- einfo "Using: Berkeley DB ${SVN_BDB_VERSION}" |
742 |
- einfo |
743 |
- |
744 |
- if [[ -n "${apu_bdb_version}" && "${SVN_BDB_VERSION}" != "${apu_bdb_version}" ]]; then |
745 |
- eerror "APR-Util is linked against Berkeley DB ${apu_bdb_version}, but you are trying" |
746 |
- eerror "to build Subversion with support for Berkeley DB ${SVN_BDB_VERSION}." |
747 |
- eerror "Rebuild dev-libs/apr-util or set SVN_BDB_VERSION=\"${apu_bdb_version}\"." |
748 |
- eerror "Aborting to avoid possible run-time crashes." |
749 |
- die "Berkeley DB version mismatch" |
750 |
- fi |
751 |
- fi |
752 |
- |
753 |
- depend.apache_pkg_setup |
754 |
- |
755 |
- java-pkg-opt-2_pkg_setup |
756 |
- |
757 |
- if ! use http ; then |
758 |
- ewarn "WebDAV support is disabled. You need WebDAV to" |
759 |
- ewarn "access repositories through the HTTP protocol." |
760 |
- ewarn "Consider enabling \"http\" USE flag" |
761 |
- echo -ne "\a" |
762 |
- fi |
763 |
- |
764 |
- # https://issues.apache.org/jira/browse/SVN-4813#comment-16813739 |
765 |
- append-cppflags -P |
766 |
- |
767 |
- if use debug ; then |
768 |
- append-cppflags -DSVN_DEBUG -DAP_DEBUG |
769 |
- fi |
770 |
- |
771 |
- # http://mail-archives.apache.org/mod_mbox/subversion-dev/201306.mbox/%3C51C42014.3060700@××××××××.com%3E |
772 |
- [[ ${CHOST} == *-solaris2* ]] && append-cppflags -D__EXTENSIONS__ |
773 |
- |
774 |
- # Allow for custom repository locations. |
775 |
- SVN_REPOS_LOC="${SVN_REPOS_LOC:-${EPREFIX}/var/svn}" |
776 |
- |
777 |
- if use ruby ; then |
778 |
- local rbslot |
779 |
- RB_VER="" |
780 |
- for rbslot in $(sed 's@\([[:digit:]]\+\)\([[:digit:]]\)@\1.\2@g' <<< ${USE_RUBY//ruby}) ; do |
781 |
- if has_version dev-lang/ruby:${rbslot} ; then |
782 |
- RB_VER="${rbslot/.}" |
783 |
- break |
784 |
- fi |
785 |
- done |
786 |
- [[ -z "${RB_VER}" ]] && die "No useable ruby version found" |
787 |
- fi |
788 |
-} |
789 |
- |
790 |
-src_prepare() { |
791 |
- eapply "${WORKDIR}/patches" |
792 |
- eapply "${FILESDIR}"/${PN}-1.9.7-fix-wc-queries-test-test.patch |
793 |
- eapply "${FILESDIR}"/${PN}-1.11.1-allow-apr-1.7.0+.patch |
794 |
- eapply_user |
795 |
- |
796 |
- chmod +x build/transform_libtool_scripts.sh || die |
797 |
- |
798 |
- sed -i \ |
799 |
- -e "s/\(BUILD_RULES=.*\) bdb-test\(.*\)/\1\2/g" \ |
800 |
- -e "s/\(BUILD_RULES=.*\) test\(.*\)/\1\2/g" configure.ac |
801 |
- |
802 |
- # this bites us in particular on Solaris |
803 |
- sed -i -e '1c\#!/usr/bin/env sh' build/transform_libtool_scripts.sh || \ |
804 |
- die "/bin/sh is not POSIX shell!" |
805 |
- |
806 |
- eautoconf |
807 |
- elibtoolize |
808 |
- |
809 |
- sed -e 's/\(libsvn_swig_py\)-\(1\.la\)/\1-$(EPYTHON)-\2/g' \ |
810 |
- -i build-outputs.mk || die "sed failed" |
811 |
- |
812 |
- if use python ; then |
813 |
- # XXX: make python_copy_sources accept path |
814 |
- S=${S}/subversion/bindings/swig/python python_copy_sources |
815 |
- rm -r "${S}"/subversion/bindings/swig/python || die |
816 |
- fi |
817 |
- |
818 |
- xdg_environment_reset |
819 |
-} |
820 |
- |
821 |
-src_configure() { |
822 |
- local myconf=( |
823 |
- --libdir="${EPREFIX%/}/usr/$(get_libdir)" |
824 |
- $(use_with apache2 apache-libexecdir) |
825 |
- $(use_with apache2 apxs "${EPREFIX}"/usr/bin/apxs) |
826 |
- $(use_with berkdb berkeley-db "db.h:${EPREFIX%/}/usr/include/db${SVN_BDB_VERSION}::db-${SVN_BDB_VERSION}") |
827 |
- $(use_with ctypes-python ctypesgen "${EPREFIX%/}/usr") |
828 |
- $(use_enable dso runtime-module-search) |
829 |
- $(use_with gnome-keyring) |
830 |
- $(use_enable java javahl) |
831 |
- $(use_with java jdk "${JAVA_HOME}") |
832 |
- $(use_with kwallet) |
833 |
- $(use_enable nls) |
834 |
- $(use_with sasl) |
835 |
- $(use_with http serf) |
836 |
- --with-apr="${EPREFIX%/}/usr/bin/apr-1-config" |
837 |
- --with-apr-util="${EPREFIX%/}/usr/bin/apu-1-config" |
838 |
- --disable-experimental-libtool |
839 |
- --without-jikes |
840 |
- --disable-mod-activation |
841 |
- --disable-static |
842 |
- ) |
843 |
- |
844 |
- if use python || use perl || use ruby; then |
845 |
- myconf+=( --with-swig ) |
846 |
- else |
847 |
- myconf+=( --without-swig ) |
848 |
- fi |
849 |
- |
850 |
- if use java ; then |
851 |
- myconf+=( --without-junit ) |
852 |
- fi |
853 |
- |
854 |
- case ${CHOST} in |
855 |
- *-aix*) |
856 |
- # avoid recording immediate path to sharedlibs into executables |
857 |
- append-ldflags -Wl,-bnoipath |
858 |
- ;; |
859 |
- *-cygwin*) |
860 |
- # no LD_PRELOAD support, no undefined symbols |
861 |
- myconf+=( --disable-local-library-preloading LT_LDFLAGS=-no-undefined ) |
862 |
- ;; |
863 |
- *-interix*) |
864 |
- # loader crashes on the LD_PRELOADs... |
865 |
- myconf+=( --disable-local-library-preloading ) |
866 |
- ;; |
867 |
- *-solaris*) |
868 |
- # need -lintl to link |
869 |
- use nls && append-libs intl |
870 |
- # this breaks installation, on x64 echo replacement is 32-bits |
871 |
- myconf+=( --disable-local-library-preloading ) |
872 |
- ;; |
873 |
- *-mint*) |
874 |
- myconf+=( --enable-all-static --disable-local-library-preloading ) |
875 |
- ;; |
876 |
- *) |
877 |
- # inject LD_PRELOAD entries for easy in-tree development |
878 |
- myconf+=( --enable-local-library-preloading ) |
879 |
- ;; |
880 |
- esac |
881 |
- |
882 |
- #version 1.7.7 again tries to link against the older installed version and fails, when trying to |
883 |
- #compile for x86 on amd64, so workaround this issue again |
884 |
- #check newer versions, if this is still/again needed |
885 |
- myconf+=( --disable-disallowing-of-undefined-references ) |
886 |
- |
887 |
- # for build-time scripts |
888 |
- if use ctypes-python || use python || use test; then |
889 |
- python_setup |
890 |
- fi |
891 |
- |
892 |
- if use python && [[ ${CHOST} == *-darwin* ]] ; then |
893 |
- export ac_cv_python_link="$(tc-getCC) "'$(PYTHON_CFLAGS) -bundle -undefined dynamic_lookup $(PYTHON_LIBS)' |
894 |
- export ac_cv_python_libs='$(PYTHON_CFLAGS) -bundle -undefined dynamic_lookup $(PYTHON_LIBS)' |
895 |
- export ac_cv_python_compile="$(tc-getCC)" |
896 |
- fi |
897 |
- |
898 |
- # allow overriding Python include directory |
899 |
- ac_cv_path_RUBY=$(usex ruby "${EPREFIX%/}/usr/bin/ruby${RB_VER}" "none") \ |
900 |
- ac_cv_path_RDOC=$(usex ruby "${EPREFIX%/}/usr/bin/rdoc${RB_VER}" "none") \ |
901 |
- ac_cv_python_includes='-I$(PYTHON_INCLUDEDIR)' \ |
902 |
- econf "${myconf[@]}" |
903 |
-} |
904 |
- |
905 |
-src_compile() { |
906 |
- emake local-all |
907 |
- |
908 |
- if use ctypes-python ; then |
909 |
- # pre-generate .py files |
910 |
- use ctypes-python && emake ctypes-python |
911 |
- |
912 |
- pushd subversion/bindings/ctypes-python >/dev/null || die |
913 |
- distutils-r1_src_compile |
914 |
- popd >/dev/null || die |
915 |
- fi |
916 |
- |
917 |
- if use python ; then |
918 |
- swig_py_compile() { |
919 |
- local p=subversion/bindings/swig/python |
920 |
- rm -f ${p} || die |
921 |
- ln -s "${BUILD_DIR}" ${p} || die |
922 |
- |
923 |
- python_export PYTHON_INCLUDEDIR |
924 |
- emake swig-py \ |
925 |
- swig_pydir="$(python_get_sitedir)/libsvn" \ |
926 |
- swig_pydir_extra="$(python_get_sitedir)/svn" |
927 |
- } |
928 |
- |
929 |
- # this will give us proper BUILD_DIR for symlinking |
930 |
- BUILD_DIR=python \ |
931 |
- python_foreach_impl swig_py_compile |
932 |
- fi |
933 |
- |
934 |
- if use perl ; then |
935 |
- emake swig-pl |
936 |
- fi |
937 |
- |
938 |
- if use ruby ; then |
939 |
- emake swig-rb |
940 |
- fi |
941 |
- |
942 |
- if use java ; then |
943 |
- emake -j1 JAVAC_FLAGS="$(java-pkg_javac-args) -encoding iso8859-1" javahl |
944 |
- fi |
945 |
- |
946 |
- if use extras ; then |
947 |
- emake tools |
948 |
- fi |
949 |
- |
950 |
- if use doc ; then |
951 |
- doxygen doc/doxygen.conf || die "Building of Subversion HTML documentation failed" |
952 |
- |
953 |
- if use java; then |
954 |
- emake doc-javahl |
955 |
- fi |
956 |
- fi |
957 |
-} |
958 |
- |
959 |
-src_test() { |
960 |
- if has_version ~${CATEGORY}/${P} ; then |
961 |
- default |
962 |
- |
963 |
- if use ctypes-python ; then |
964 |
- python_test() { |
965 |
- "${PYTHON}" subversion/bindings/ctypes-python/test/run_all.py \ |
966 |
- || die "ctypes-python tests fail with ${EPYTHON}" |
967 |
- } |
968 |
- |
969 |
- distutils-r1_src_test |
970 |
- fi |
971 |
- |
972 |
- if use python ; then |
973 |
- swig_py_test() { |
974 |
- pushd "${BUILD_DIR}" >/dev/null || die |
975 |
- "${PYTHON}" tests/run_all.py || die "swig-py tests fail with ${EPYTHON}" |
976 |
- popd >/dev/null || die |
977 |
- } |
978 |
- |
979 |
- BUILD_DIR=subversion/bindings/swig/python \ |
980 |
- python_foreach_impl swig_py_test |
981 |
- fi |
982 |
- else |
983 |
- ewarn "The test suite shows errors when there is an older version of" |
984 |
- ewarn "${CATEGORY}/${PN} installed. Please install =${CATEGORY}/${P}*" |
985 |
- ewarn "before running the test suite." |
986 |
- ewarn "Test suite skipped." |
987 |
- fi |
988 |
-} |
989 |
- |
990 |
-src_install() { |
991 |
- emake -j1 DESTDIR="${D}" local-install |
992 |
- |
993 |
- if use ctypes-python ; then |
994 |
- pushd subversion/bindings/ctypes-python >/dev/null || die |
995 |
- distutils-r1_src_install |
996 |
- popd >/dev/null || die |
997 |
- fi |
998 |
- |
999 |
- if use python ; then |
1000 |
- swig_py_install() { |
1001 |
- local p=subversion/bindings/swig/python |
1002 |
- rm -f ${p} || die |
1003 |
- ln -s "${BUILD_DIR}" ${p} || die |
1004 |
- |
1005 |
- emake \ |
1006 |
- DESTDIR="${D}" \ |
1007 |
- swig_pydir="$(python_get_sitedir)/libsvn" \ |
1008 |
- swig_pydir_extra="$(python_get_sitedir)/svn" \ |
1009 |
- install-swig-py |
1010 |
- } |
1011 |
- |
1012 |
- BUILD_DIR=python \ |
1013 |
- python_foreach_impl swig_py_install |
1014 |
- fi |
1015 |
- |
1016 |
- if use perl ; then |
1017 |
- emake DESTDIR="${D}" INSTALLDIRS="vendor" install-swig-pl |
1018 |
- perl_delete_localpod |
1019 |
- find "${ED}" \( -name .packlist -o -name "*.bs" \) -delete || die |
1020 |
- fi |
1021 |
- |
1022 |
- if use ruby ; then |
1023 |
- emake DESTDIR="${D}" install-swig-rb |
1024 |
- fi |
1025 |
- |
1026 |
- if use java ; then |
1027 |
- emake DESTDIR="${D}" install-javahl |
1028 |
- java-pkg_regso "${ED%/}"/usr/$(get_libdir)/libsvnjavahl*$(get_libname) |
1029 |
- java-pkg_dojar "${ED%/}"/usr/$(get_libdir)/svn-javahl/svn-javahl.jar |
1030 |
- rm -fr "${ED%/}"/usr/$(get_libdir)/svn-javahl/*.jar |
1031 |
- fi |
1032 |
- |
1033 |
- # Install Apache module configuration. |
1034 |
- if use apache2 ; then |
1035 |
- keepdir "${APACHE_MODULES_CONFDIR}" |
1036 |
- insinto "${APACHE_MODULES_CONFDIR}" |
1037 |
- doins "${FILESDIR}/47_mod_dav_svn.conf" |
1038 |
- fi |
1039 |
- |
1040 |
- # Install Bash Completion, bug 43179. |
1041 |
- newbashcomp tools/client-side/bash_completion svn |
1042 |
- bashcomp_alias svn svn{admin,dumpfilter,look,sync,version} |
1043 |
- rm -f tools/client-side/bash_completion |
1044 |
- |
1045 |
- # Install hot backup script, bug 54304. |
1046 |
- newbin tools/backup/hot-backup.py svn-hot-backup |
1047 |
- rm -fr tools/backup |
1048 |
- |
1049 |
- # Install svnserve init-script and xinet.d snippet, bug 43245. |
1050 |
- newinitd "${FILESDIR}"/svnserve.initd3 svnserve |
1051 |
- newconfd "${FILESDIR}"/svnserve.confd svnserve |
1052 |
- insinto /etc/xinetd.d |
1053 |
- newins "${FILESDIR}"/svnserve.xinetd svnserve |
1054 |
- |
1055 |
- #adjust default user and group with disabled apache2 USE flag, bug 381385 |
1056 |
- if ! use apache2 ; then |
1057 |
- sed -e "s\USER:-apache\USER:-svn\g" \ |
1058 |
- -e "s\GROUP:-apache\GROUP:-svnusers\g" \ |
1059 |
- -i "${ED%/}"/etc/init.d/svnserve || die |
1060 |
- sed -e "0,/apache/s//svn/" \ |
1061 |
- -e "s:apache:svnusers:" \ |
1062 |
- -i "${ED%/}"/etc/xinetd.d/svnserve || die |
1063 |
- fi |
1064 |
- |
1065 |
- # Install documentation. |
1066 |
- dodoc CHANGES COMMITTERS README |
1067 |
- dodoc tools/xslt/svnindex.{css,xsl} |
1068 |
- rm -fr tools/xslt |
1069 |
- |
1070 |
- # Install extra files. |
1071 |
- if use extras ; then |
1072 |
- cat <<- EOF > 80subversion-extras |
1073 |
- PATH="${EPREFIX}/usr/$(get_libdir)/subversion/bin" |
1074 |
- ROOTPATH="${EPREFIX}/usr/$(get_libdir)/subversion/bin" |
1075 |
- EOF |
1076 |
- doenvd 80subversion-extras |
1077 |
- |
1078 |
- emake DESTDIR="${D}" toolsdir="/usr/$(get_libdir)/subversion/bin" install-tools |
1079 |
- |
1080 |
- find tools \( -name "*.bat" -o -name "*.in" -o -name ".libs" \) -print0 | xargs -0 rm -fr |
1081 |
- rm -fr tools/client-side/svnmucc |
1082 |
- rm -fr tools/server-side/{svn-populate-node-origins-index,svnauthz-validate}* |
1083 |
- rm -fr tools/{buildbot,dev,diff,po} |
1084 |
- |
1085 |
- insinto /usr/share/${PN} |
1086 |
- find tools -name '*.py' -exec sed -i -e '1s:python:&2:' {} + || die |
1087 |
- doins -r tools |
1088 |
- fi |
1089 |
- |
1090 |
- if use doc ; then |
1091 |
- docinto html |
1092 |
- dodoc -r doc/doxygen/html/* |
1093 |
- |
1094 |
- if use java ; then |
1095 |
- java-pkg_dojavadoc doc/javadoc |
1096 |
- fi |
1097 |
- fi |
1098 |
- |
1099 |
- prune_libtool_files --all |
1100 |
- |
1101 |
- cd "${ED%/}"/usr/share/locale |
1102 |
- for i in * ; do |
1103 |
- if [[ ${i} != *${LINGUAS}* ]] ; then |
1104 |
- rm -r ${i} || die |
1105 |
- fi |
1106 |
- done |
1107 |
-} |
1108 |
- |
1109 |
-pkg_preinst() { |
1110 |
- # Compare versions of Berkeley DB, bug 122877. |
1111 |
- if use berkdb && [[ -f "${EROOT}/usr/bin/svn" ]] ; then |
1112 |
- OLD_BDB_VERSION="$(scanelf -nq "${EROOT}/usr/$(get_libdir)/libsvn_subr-1$(get_libname 0)" | grep -Eo "libdb-[[:digit:]]+\.[[:digit:]]+" | sed -e "s/libdb-\(.*\)/\1/")" |
1113 |
- NEW_BDB_VERSION="$(scanelf -nq "${ED%/}/usr/$(get_libdir)/libsvn_subr-1$(get_libname 0)" | grep -Eo "libdb-[[:digit:]]+\.[[:digit:]]+" | sed -e "s/libdb-\(.*\)/\1/")" |
1114 |
- if [[ "${OLD_BDB_VERSION}" != "${NEW_BDB_VERSION}" ]] ; then |
1115 |
- CHANGED_BDB_VERSION="1" |
1116 |
- fi |
1117 |
- fi |
1118 |
-} |
1119 |
- |
1120 |
-pkg_postinst() { |
1121 |
- if [[ -n "${CHANGED_BDB_VERSION}" ]] ; then |
1122 |
- ewarn "You upgraded from an older version of Berkeley DB and may experience" |
1123 |
- ewarn "problems with your repository. Run the following commands as root to fix it:" |
1124 |
- ewarn " db4_recover -h ${SVN_REPOS_LOC}/repos" |
1125 |
- ewarn " chown -Rf apache:apache ${SVN_REPOS_LOC}/repos" |
1126 |
- fi |
1127 |
- |
1128 |
- ewarn "If you run subversion as a daemon, you will need to restart it to avoid module mismatches." |
1129 |
-} |
1130 |
- |
1131 |
-pkg_postrm() { |
1132 |
- : |
1133 |
-} |
1134 |
- |
1135 |
-pkg_config() { |
1136 |
- # Remember: Don't use ${EROOT}${SVN_REPOS_LOC} since ${SVN_REPOS_LOC} |
1137 |
- # already has EPREFIX in it |
1138 |
- einfo "Initializing the database in ${SVN_REPOS_LOC}..." |
1139 |
- if [[ -e "${SVN_REPOS_LOC}/repos" ]] ; then |
1140 |
- echo "A Subversion repository already exists and I will not overwrite it." |
1141 |
- echo "Delete \"${SVN_REPOS_LOC}/repos\" first if you're sure you want to have a clean version." |
1142 |
- else |
1143 |
- mkdir -p "${SVN_REPOS_LOC}/conf" |
1144 |
- |
1145 |
- einfo "Populating repository directory..." |
1146 |
- # Create initial repository. |
1147 |
- "${EROOT}/usr/bin/svnadmin" create "${SVN_REPOS_LOC}/repos" |
1148 |
- |
1149 |
- einfo "Setting repository permissions..." |
1150 |
- SVNSERVE_USER="$(. "${EROOT}/etc/conf.d/svnserve"; echo "${SVNSERVE_USER}")" |
1151 |
- SVNSERVE_GROUP="$(. "${EROOT}/etc/conf.d/svnserve"; echo "${SVNSERVE_GROUP}")" |
1152 |
- if use apache2 ; then |
1153 |
- [[ -z "${SVNSERVE_USER}" ]] && SVNSERVE_USER="apache" |
1154 |
- [[ -z "${SVNSERVE_GROUP}" ]] && SVNSERVE_GROUP="apache" |
1155 |
- else |
1156 |
- [[ -z "${SVNSERVE_USER}" ]] && SVNSERVE_USER="svn" |
1157 |
- [[ -z "${SVNSERVE_GROUP}" ]] && SVNSERVE_GROUP="svnusers" |
1158 |
- fi |
1159 |
- chmod -Rf go-rwx "${SVN_REPOS_LOC}/conf" |
1160 |
- chmod -Rf o-rwx "${SVN_REPOS_LOC}/repos" |
1161 |
- echo "Please create \"${SVNSERVE_GROUP}\" group if it does not exist yet." |
1162 |
- echo "Afterwards please create \"${SVNSERVE_USER}\" user with homedir \"${SVN_REPOS_LOC}\"" |
1163 |
- echo "and as part of the \"${SVNSERVE_GROUP}\" group if it does not exist yet." |
1164 |
- echo "Finally, execute \"chown -Rf ${SVNSERVE_USER}:${SVNSERVE_GROUP} ${SVN_REPOS_LOC}/repos\"" |
1165 |
- echo "to finish the configuration." |
1166 |
- fi |
1167 |
-} |
1168 |
|
1169 |
diff --git a/dev-vcs/subversion/subversion-1.12.0.ebuild b/dev-vcs/subversion/subversion-1.12.0.ebuild |
1170 |
deleted file mode 100644 |
1171 |
index a281b9a9523..00000000000 |
1172 |
--- a/dev-vcs/subversion/subversion-1.12.0.ebuild |
1173 |
+++ /dev/null |
1174 |
@@ -1,532 +0,0 @@ |
1175 |
-# Copyright 1999-2019 Gentoo Authors |
1176 |
-# Distributed under the terms of the GNU General Public License v2 |
1177 |
- |
1178 |
-EAPI=6 |
1179 |
- |
1180 |
-PYTHON_COMPAT=( python2_7 ) |
1181 |
-USE_RUBY="ruby26 ruby25 ruby24" |
1182 |
-DISTUTILS_OPTIONAL=1 |
1183 |
-WANT_AUTOMAKE="none" |
1184 |
-GENTOO_DEPEND_ON_PERL="no" |
1185 |
- |
1186 |
-inherit autotools bash-completion-r1 db-use depend.apache distutils-r1 elisp-common flag-o-matic java-pkg-opt-2 libtool multilib perl-module ruby-single xdg-utils |
1187 |
- |
1188 |
-MY_P="${P/_/-}" |
1189 |
-DESCRIPTION="Advanced version control system" |
1190 |
-HOMEPAGE="https://subversion.apache.org/" |
1191 |
-SRC_URI="mirror://apache/${PN}/${MY_P}.tar.bz2 |
1192 |
- https://dev.gentoo.org/~polynomial-c/${PN}-1.10.0_rc1-patches-1.tar.xz" |
1193 |
-S="${WORKDIR}/${MY_P}" |
1194 |
- |
1195 |
-LICENSE="Subversion GPL-2" |
1196 |
-SLOT="0" |
1197 |
-[[ "${PV}" = *_rc* ]] || \ |
1198 |
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux" |
1199 |
-IUSE="apache2 berkdb ctypes-python debug doc +dso extras gnome-keyring +http java kwallet nls perl python ruby sasl test vim-syntax" |
1200 |
- |
1201 |
-COMMON_DEPEND=" |
1202 |
- app-arch/bzip2 |
1203 |
- app-arch/lz4 |
1204 |
- >=dev-db/sqlite-3.7.12 |
1205 |
- >=dev-libs/apr-1.3:1 |
1206 |
- >=dev-libs/apr-util-1.3:1 |
1207 |
- dev-libs/expat |
1208 |
- dev-libs/libutf8proc:= |
1209 |
- sys-apps/file |
1210 |
- sys-libs/zlib |
1211 |
- berkdb? ( >=sys-libs/db-4.0.14:= ) |
1212 |
- ctypes-python? ( ${PYTHON_DEPS} ) |
1213 |
- gnome-keyring? ( |
1214 |
- dev-libs/glib:2 |
1215 |
- gnome-base/libgnome-keyring |
1216 |
- sys-apps/dbus |
1217 |
- ) |
1218 |
- http? ( >=net-libs/serf-1.3.4 ) |
1219 |
- kwallet? ( |
1220 |
- dev-qt/qtcore:5 |
1221 |
- dev-qt/qtdbus:5 |
1222 |
- dev-qt/qtgui:5 |
1223 |
- kde-frameworks/kcoreaddons:5 |
1224 |
- kde-frameworks/ki18n:5 |
1225 |
- kde-frameworks/kwallet:5 |
1226 |
- sys-apps/dbus |
1227 |
- ) |
1228 |
- perl? ( dev-lang/perl:= ) |
1229 |
- python? ( ${PYTHON_DEPS} ) |
1230 |
- ruby? ( ${RUBY_DEPS} ) |
1231 |
- sasl? ( dev-libs/cyrus-sasl )" |
1232 |
-RDEPEND="${COMMON_DEPEND} |
1233 |
- apache2? ( www-servers/apache[apache2_modules_dav] ) |
1234 |
- java? ( >=virtual/jre-1.8 ) |
1235 |
- nls? ( virtual/libintl ) |
1236 |
- perl? ( dev-perl/URI )" |
1237 |
-# Note: ctypesgen doesn't need PYTHON_USEDEP, it's used once |
1238 |
-DEPEND="${COMMON_DEPEND} |
1239 |
- !!<sys-apps/sandbox-1.6 |
1240 |
- ctypes-python? ( dev-python/ctypesgen ) |
1241 |
- doc? ( app-doc/doxygen ) |
1242 |
- gnome-keyring? ( virtual/pkgconfig ) |
1243 |
- http? ( virtual/pkgconfig ) |
1244 |
- java? ( >=virtual/jdk-1.8 ) |
1245 |
- kwallet? ( |
1246 |
- kde-frameworks/kdelibs4support:5 |
1247 |
- virtual/pkgconfig |
1248 |
- ) |
1249 |
- nls? ( sys-devel/gettext ) |
1250 |
- perl? ( dev-lang/swig ) |
1251 |
- python? ( dev-lang/swig ) |
1252 |
- ruby? ( dev-lang/swig ) |
1253 |
- test? ( ${PYTHON_DEPS} )" |
1254 |
- |
1255 |
-REQUIRED_USE=" |
1256 |
- ctypes-python? ( ${PYTHON_REQUIRED_USE} ) |
1257 |
- python? ( ${PYTHON_REQUIRED_USE} ) |
1258 |
- test? ( |
1259 |
- ${PYTHON_REQUIRED_USE} |
1260 |
- !dso |
1261 |
- )" |
1262 |
- |
1263 |
-want_apache |
1264 |
- |
1265 |
-pkg_setup() { |
1266 |
- if use berkdb ; then |
1267 |
- local apu_bdb_version="$(${EPREFIX}/usr/bin/apu-1-config --includes \ |
1268 |
- | grep -Eoe '-I${EPREFIX}/usr/include/db[[:digit:]]\.[[:digit:]]' \ |
1269 |
- | sed 's:.*b::')" |
1270 |
- einfo |
1271 |
- if [[ -z "${SVN_BDB_VERSION}" ]] ; then |
1272 |
- if [[ -n "${apu_bdb_version}" ]] ; then |
1273 |
- SVN_BDB_VERSION="${apu_bdb_version}" |
1274 |
- einfo "Matching db version to apr-util" |
1275 |
- else |
1276 |
- SVN_BDB_VERSION="$(db_ver_to_slot "$(db_findver sys-libs/db 2>/dev/null)")" |
1277 |
- einfo "SVN_BDB_VERSION variable isn't set. You can set it to enforce using of specific version of Berkeley DB." |
1278 |
- fi |
1279 |
- fi |
1280 |
- einfo "Using: Berkeley DB ${SVN_BDB_VERSION}" |
1281 |
- einfo |
1282 |
- |
1283 |
- if [[ -n "${apu_bdb_version}" && "${SVN_BDB_VERSION}" != "${apu_bdb_version}" ]]; then |
1284 |
- eerror "APR-Util is linked against Berkeley DB ${apu_bdb_version}, but you are trying" |
1285 |
- eerror "to build Subversion with support for Berkeley DB ${SVN_BDB_VERSION}." |
1286 |
- eerror "Rebuild dev-libs/apr-util or set SVN_BDB_VERSION=\"${apu_bdb_version}\"." |
1287 |
- eerror "Aborting to avoid possible run-time crashes." |
1288 |
- die "Berkeley DB version mismatch" |
1289 |
- fi |
1290 |
- fi |
1291 |
- |
1292 |
- depend.apache_pkg_setup |
1293 |
- |
1294 |
- java-pkg-opt-2_pkg_setup |
1295 |
- |
1296 |
- if ! use http ; then |
1297 |
- ewarn "WebDAV support is disabled. You need WebDAV to" |
1298 |
- ewarn "access repositories through the HTTP protocol." |
1299 |
- ewarn "Consider enabling \"http\" USE flag" |
1300 |
- echo -ne "\a" |
1301 |
- fi |
1302 |
- |
1303 |
- # https://issues.apache.org/jira/browse/SVN-4813#comment-16813739 |
1304 |
- append-cppflags -P |
1305 |
- |
1306 |
- if use debug ; then |
1307 |
- append-cppflags -DSVN_DEBUG -DAP_DEBUG |
1308 |
- fi |
1309 |
- |
1310 |
- # http://mail-archives.apache.org/mod_mbox/subversion-dev/201306.mbox/%3C51C42014.3060700@××××××××.com%3E |
1311 |
- [[ ${CHOST} == *-solaris2* ]] && append-cppflags -D__EXTENSIONS__ |
1312 |
- |
1313 |
- # Allow for custom repository locations. |
1314 |
- SVN_REPOS_LOC="${SVN_REPOS_LOC:-${EPREFIX}/var/svn}" |
1315 |
- |
1316 |
- if use ruby ; then |
1317 |
- local rbslot |
1318 |
- RB_VER="" |
1319 |
- for rbslot in $(sed 's@\([[:digit:]]\+\)\([[:digit:]]\)@\1.\2@g' <<< ${USE_RUBY//ruby}) ; do |
1320 |
- if has_version dev-lang/ruby:${rbslot} ; then |
1321 |
- RB_VER="${rbslot/.}" |
1322 |
- break |
1323 |
- fi |
1324 |
- done |
1325 |
- [[ -z "${RB_VER}" ]] && die "No useable ruby version found" |
1326 |
- fi |
1327 |
-} |
1328 |
- |
1329 |
-src_prepare() { |
1330 |
- eapply "${WORKDIR}/patches" |
1331 |
- eapply "${FILESDIR}"/${PN}-1.11.1-allow-apr-1.7.0+.patch |
1332 |
- eapply_user |
1333 |
- |
1334 |
- chmod +x build/transform_libtool_scripts.sh || die |
1335 |
- |
1336 |
- sed -i \ |
1337 |
- -e "s/\(BUILD_RULES=.*\) bdb-test\(.*\)/\1\2/g" \ |
1338 |
- -e "s/\(BUILD_RULES=.*\) test\(.*\)/\1\2/g" configure.ac |
1339 |
- |
1340 |
- # this bites us in particular on Solaris |
1341 |
- sed -i -e '1c\#!/usr/bin/env sh' build/transform_libtool_scripts.sh || \ |
1342 |
- die "/bin/sh is not POSIX shell!" |
1343 |
- |
1344 |
- eautoconf |
1345 |
- elibtoolize |
1346 |
- |
1347 |
- sed -e 's/\(libsvn_swig_py\)-\(1\.la\)/\1-$(EPYTHON)-\2/g' \ |
1348 |
- -i build-outputs.mk || die "sed failed" |
1349 |
- |
1350 |
- if use python ; then |
1351 |
- # XXX: make python_copy_sources accept path |
1352 |
- S=${S}/subversion/bindings/swig/python python_copy_sources |
1353 |
- rm -r "${S}"/subversion/bindings/swig/python || die |
1354 |
- fi |
1355 |
- |
1356 |
- xdg_environment_reset |
1357 |
-} |
1358 |
- |
1359 |
-src_configure() { |
1360 |
- local myconf=( |
1361 |
- --libdir="${EPREFIX%/}/usr/$(get_libdir)" |
1362 |
- $(use_with apache2 apache-libexecdir) |
1363 |
- $(use_with apache2 apxs "${EPREFIX}"/usr/bin/apxs) |
1364 |
- $(use_with berkdb berkeley-db "db.h:${EPREFIX%/}/usr/include/db${SVN_BDB_VERSION}::db-${SVN_BDB_VERSION}") |
1365 |
- $(use_with ctypes-python ctypesgen "${EPREFIX%/}/usr") |
1366 |
- $(use_enable dso runtime-module-search) |
1367 |
- $(use_with gnome-keyring) |
1368 |
- $(use_enable java javahl) |
1369 |
- $(use_with java jdk "${JAVA_HOME}") |
1370 |
- $(use_with kwallet) |
1371 |
- $(use_enable nls) |
1372 |
- $(use_with sasl) |
1373 |
- $(use_with http serf) |
1374 |
- --with-apr="${EPREFIX%/}/usr/bin/apr-1-config" |
1375 |
- --with-apr-util="${EPREFIX%/}/usr/bin/apu-1-config" |
1376 |
- --disable-experimental-libtool |
1377 |
- --without-jikes |
1378 |
- --disable-mod-activation |
1379 |
- --disable-static |
1380 |
- --enable-svnxx |
1381 |
- ) |
1382 |
- |
1383 |
- if use python || use perl || use ruby; then |
1384 |
- myconf+=( --with-swig ) |
1385 |
- else |
1386 |
- myconf+=( --without-swig ) |
1387 |
- fi |
1388 |
- |
1389 |
- if use java ; then |
1390 |
- myconf+=( --without-junit ) |
1391 |
- fi |
1392 |
- |
1393 |
- case ${CHOST} in |
1394 |
- *-aix*) |
1395 |
- # avoid recording immediate path to sharedlibs into executables |
1396 |
- append-ldflags -Wl,-bnoipath |
1397 |
- ;; |
1398 |
- *-cygwin*) |
1399 |
- # no LD_PRELOAD support, no undefined symbols |
1400 |
- myconf+=( --disable-local-library-preloading LT_LDFLAGS=-no-undefined ) |
1401 |
- ;; |
1402 |
- *-interix*) |
1403 |
- # loader crashes on the LD_PRELOADs... |
1404 |
- myconf+=( --disable-local-library-preloading ) |
1405 |
- ;; |
1406 |
- *-solaris*) |
1407 |
- # need -lintl to link |
1408 |
- use nls && append-libs intl |
1409 |
- # this breaks installation, on x64 echo replacement is 32-bits |
1410 |
- myconf+=( --disable-local-library-preloading ) |
1411 |
- ;; |
1412 |
- *-mint*) |
1413 |
- myconf+=( --enable-all-static --disable-local-library-preloading ) |
1414 |
- ;; |
1415 |
- *) |
1416 |
- # inject LD_PRELOAD entries for easy in-tree development |
1417 |
- myconf+=( --enable-local-library-preloading ) |
1418 |
- ;; |
1419 |
- esac |
1420 |
- |
1421 |
- #version 1.7.7 again tries to link against the older installed version and fails, when trying to |
1422 |
- #compile for x86 on amd64, so workaround this issue again |
1423 |
- #check newer versions, if this is still/again needed |
1424 |
- #myconf+=( --disable-disallowing-of-undefined-references ) |
1425 |
- |
1426 |
- # for build-time scripts |
1427 |
- if use ctypes-python || use python || use test; then |
1428 |
- python_setup |
1429 |
- fi |
1430 |
- |
1431 |
- if use python && [[ ${CHOST} == *-darwin* ]] ; then |
1432 |
- export ac_cv_python_link="$(tc-getCC) "'$(PYTHON_CFLAGS) -bundle -undefined dynamic_lookup $(PYTHON_LIBS)' |
1433 |
- export ac_cv_python_libs='$(PYTHON_CFLAGS) -bundle -undefined dynamic_lookup $(PYTHON_LIBS)' |
1434 |
- export ac_cv_python_compile="$(tc-getCC)" |
1435 |
- fi |
1436 |
- |
1437 |
- # allow overriding Python include directory |
1438 |
- ac_cv_path_RUBY=$(usex ruby "${EPREFIX%/}/usr/bin/ruby${RB_VER}" "none") \ |
1439 |
- ac_cv_path_RDOC=$(usex ruby "${EPREFIX%/}/usr/bin/rdoc${RB_VER}" "none") \ |
1440 |
- ac_cv_python_includes='-I$(PYTHON_INCLUDEDIR)' \ |
1441 |
- econf "${myconf[@]}" |
1442 |
-} |
1443 |
- |
1444 |
-src_compile() { |
1445 |
- emake local-all |
1446 |
- |
1447 |
- if use ctypes-python ; then |
1448 |
- # pre-generate .py files |
1449 |
- use ctypes-python && emake ctypes-python |
1450 |
- |
1451 |
- pushd subversion/bindings/ctypes-python >/dev/null || die |
1452 |
- distutils-r1_src_compile |
1453 |
- popd >/dev/null || die |
1454 |
- fi |
1455 |
- |
1456 |
- if use python ; then |
1457 |
- swig_py_compile() { |
1458 |
- local p=subversion/bindings/swig/python |
1459 |
- rm -f ${p} || die |
1460 |
- ln -s "${BUILD_DIR}" ${p} || die |
1461 |
- |
1462 |
- python_export PYTHON_INCLUDEDIR |
1463 |
- emake swig-py \ |
1464 |
- swig_pydir="$(python_get_sitedir)/libsvn" \ |
1465 |
- swig_pydir_extra="$(python_get_sitedir)/svn" |
1466 |
- } |
1467 |
- |
1468 |
- # this will give us proper BUILD_DIR for symlinking |
1469 |
- BUILD_DIR=python \ |
1470 |
- python_foreach_impl swig_py_compile |
1471 |
- fi |
1472 |
- |
1473 |
- if use perl ; then |
1474 |
- emake swig-pl |
1475 |
- fi |
1476 |
- |
1477 |
- if use ruby ; then |
1478 |
- emake swig-rb |
1479 |
- fi |
1480 |
- |
1481 |
- if use java ; then |
1482 |
- emake -j1 JAVAC_FLAGS="$(java-pkg_javac-args) -encoding iso8859-1" javahl |
1483 |
- fi |
1484 |
- |
1485 |
- if use extras ; then |
1486 |
- emake tools |
1487 |
- fi |
1488 |
- |
1489 |
- if use doc ; then |
1490 |
- doxygen doc/doxygen.conf || die "Building of Subversion HTML documentation failed" |
1491 |
- |
1492 |
- if use java; then |
1493 |
- emake doc-javahl |
1494 |
- fi |
1495 |
- fi |
1496 |
-} |
1497 |
- |
1498 |
-src_test() { |
1499 |
- if has_version ~${CATEGORY}/${P} ; then |
1500 |
- default |
1501 |
- |
1502 |
- if use ctypes-python ; then |
1503 |
- python_test() { |
1504 |
- "${PYTHON}" subversion/bindings/ctypes-python/test/run_all.py \ |
1505 |
- || die "ctypes-python tests fail with ${EPYTHON}" |
1506 |
- } |
1507 |
- |
1508 |
- distutils-r1_src_test |
1509 |
- fi |
1510 |
- |
1511 |
- if use python ; then |
1512 |
- swig_py_test() { |
1513 |
- pushd "${BUILD_DIR}" >/dev/null || die |
1514 |
- "${PYTHON}" tests/run_all.py || die "swig-py tests fail with ${EPYTHON}" |
1515 |
- popd >/dev/null || die |
1516 |
- } |
1517 |
- |
1518 |
- BUILD_DIR=subversion/bindings/swig/python \ |
1519 |
- python_foreach_impl swig_py_test |
1520 |
- fi |
1521 |
- else |
1522 |
- ewarn "The test suite shows errors when there is an older version of" |
1523 |
- ewarn "${CATEGORY}/${PN} installed. Please install =${CATEGORY}/${P}*" |
1524 |
- ewarn "before running the test suite." |
1525 |
- ewarn "Test suite skipped." |
1526 |
- fi |
1527 |
-} |
1528 |
- |
1529 |
-src_install() { |
1530 |
- emake -j1 DESTDIR="${D}" local-install |
1531 |
- |
1532 |
- if use ctypes-python ; then |
1533 |
- pushd subversion/bindings/ctypes-python >/dev/null || die |
1534 |
- distutils-r1_src_install |
1535 |
- popd >/dev/null || die |
1536 |
- fi |
1537 |
- |
1538 |
- if use python ; then |
1539 |
- swig_py_install() { |
1540 |
- local p=subversion/bindings/swig/python |
1541 |
- rm -f ${p} || die |
1542 |
- ln -s "${BUILD_DIR}" ${p} || die |
1543 |
- |
1544 |
- emake \ |
1545 |
- DESTDIR="${D}" \ |
1546 |
- swig_pydir="$(python_get_sitedir)/libsvn" \ |
1547 |
- swig_pydir_extra="$(python_get_sitedir)/svn" \ |
1548 |
- install-swig-py |
1549 |
- } |
1550 |
- |
1551 |
- BUILD_DIR=python \ |
1552 |
- python_foreach_impl swig_py_install |
1553 |
- fi |
1554 |
- |
1555 |
- if use perl ; then |
1556 |
- emake DESTDIR="${D}" INSTALLDIRS="vendor" install-swig-pl |
1557 |
- perl_delete_localpod |
1558 |
- find "${ED}" \( -name .packlist -o -name "*.bs" \) -delete || die |
1559 |
- fi |
1560 |
- |
1561 |
- if use ruby ; then |
1562 |
- emake DESTDIR="${D}" install-swig-rb |
1563 |
- fi |
1564 |
- |
1565 |
- if use java ; then |
1566 |
- emake DESTDIR="${D}" install-javahl |
1567 |
- java-pkg_regso "${ED%/}"/usr/$(get_libdir)/libsvnjavahl*$(get_libname) |
1568 |
- java-pkg_dojar "${ED%/}"/usr/$(get_libdir)/svn-javahl/svn-javahl.jar |
1569 |
- rm -fr "${ED%/}"/usr/$(get_libdir)/svn-javahl/*.jar |
1570 |
- fi |
1571 |
- |
1572 |
- # Install Apache module configuration. |
1573 |
- if use apache2 ; then |
1574 |
- keepdir "${APACHE_MODULES_CONFDIR}" |
1575 |
- insinto "${APACHE_MODULES_CONFDIR}" |
1576 |
- doins "${FILESDIR}/47_mod_dav_svn.conf" |
1577 |
- fi |
1578 |
- |
1579 |
- # Install Bash Completion, bug 43179. |
1580 |
- newbashcomp tools/client-side/bash_completion svn |
1581 |
- bashcomp_alias svn svn{admin,dumpfilter,look,sync,version} |
1582 |
- rm -f tools/client-side/bash_completion |
1583 |
- |
1584 |
- # Install hot backup script, bug 54304. |
1585 |
- newbin tools/backup/hot-backup.py svn-hot-backup |
1586 |
- rm -fr tools/backup |
1587 |
- |
1588 |
- # Install svnserve init-script and xinet.d snippet, bug 43245. |
1589 |
- newinitd "${FILESDIR}"/svnserve.initd3 svnserve |
1590 |
- newconfd "${FILESDIR}"/svnserve.confd svnserve |
1591 |
- insinto /etc/xinetd.d |
1592 |
- newins "${FILESDIR}"/svnserve.xinetd svnserve |
1593 |
- |
1594 |
- #adjust default user and group with disabled apache2 USE flag, bug 381385 |
1595 |
- if ! use apache2 ; then |
1596 |
- sed -e "s\USER:-apache\USER:-svn\g" \ |
1597 |
- -e "s\GROUP:-apache\GROUP:-svnusers\g" \ |
1598 |
- -i "${ED%/}"/etc/init.d/svnserve || die |
1599 |
- sed -e "0,/apache/s//svn/" \ |
1600 |
- -e "s:apache:svnusers:" \ |
1601 |
- -i "${ED%/}"/etc/xinetd.d/svnserve || die |
1602 |
- fi |
1603 |
- |
1604 |
- # Install documentation. |
1605 |
- dodoc CHANGES COMMITTERS README |
1606 |
- dodoc tools/xslt/svnindex.{css,xsl} |
1607 |
- rm -fr tools/xslt |
1608 |
- |
1609 |
- # Install extra files. |
1610 |
- if use extras ; then |
1611 |
- cat <<- EOF > 80subversion-extras |
1612 |
- PATH="${EPREFIX}/usr/$(get_libdir)/subversion/bin" |
1613 |
- ROOTPATH="${EPREFIX}/usr/$(get_libdir)/subversion/bin" |
1614 |
- EOF |
1615 |
- doenvd 80subversion-extras |
1616 |
- |
1617 |
- emake DESTDIR="${D}" toolsdir="/usr/$(get_libdir)/subversion/bin" install-tools |
1618 |
- |
1619 |
- find tools \( -name "*.bat" -o -name "*.in" -o -name ".libs" \) -print0 | xargs -0 rm -fr |
1620 |
- rm -fr tools/client-side/svnmucc |
1621 |
- rm -fr tools/server-side/{svn-populate-node-origins-index,svnauthz-validate}* |
1622 |
- rm -fr tools/{buildbot,dev,diff,po} |
1623 |
- |
1624 |
- insinto /usr/share/${PN} |
1625 |
- find tools -name '*.py' -exec sed -i -e '1s:python:&2:' {} + || die |
1626 |
- doins -r tools |
1627 |
- fi |
1628 |
- |
1629 |
- if use doc ; then |
1630 |
- docinto html |
1631 |
- dodoc -r doc/doxygen/html/* |
1632 |
- |
1633 |
- if use java ; then |
1634 |
- java-pkg_dojavadoc doc/javadoc |
1635 |
- fi |
1636 |
- fi |
1637 |
- |
1638 |
- prune_libtool_files --all |
1639 |
- |
1640 |
- cd "${ED%/}"/usr/share/locale |
1641 |
- for i in * ; do |
1642 |
- if [[ ${i} != *${LINGUAS}* ]] ; then |
1643 |
- rm -r ${i} || die |
1644 |
- fi |
1645 |
- done |
1646 |
-} |
1647 |
- |
1648 |
-pkg_preinst() { |
1649 |
- # Compare versions of Berkeley DB, bug 122877. |
1650 |
- if use berkdb && [[ -f "${EROOT}/usr/bin/svn" ]] ; then |
1651 |
- OLD_BDB_VERSION="$(scanelf -nq "${EROOT}/usr/$(get_libdir)/libsvn_subr-1$(get_libname 0)" | grep -Eo "libdb-[[:digit:]]+\.[[:digit:]]+" | sed -e "s/libdb-\(.*\)/\1/")" |
1652 |
- NEW_BDB_VERSION="$(scanelf -nq "${ED%/}/usr/$(get_libdir)/libsvn_subr-1$(get_libname 0)" | grep -Eo "libdb-[[:digit:]]+\.[[:digit:]]+" | sed -e "s/libdb-\(.*\)/\1/")" |
1653 |
- if [[ "${OLD_BDB_VERSION}" != "${NEW_BDB_VERSION}" ]] ; then |
1654 |
- CHANGED_BDB_VERSION="1" |
1655 |
- fi |
1656 |
- fi |
1657 |
-} |
1658 |
- |
1659 |
-pkg_postinst() { |
1660 |
- if [[ -n "${CHANGED_BDB_VERSION}" ]] ; then |
1661 |
- ewarn "You upgraded from an older version of Berkeley DB and may experience" |
1662 |
- ewarn "problems with your repository. Run the following commands as root to fix it:" |
1663 |
- ewarn " db4_recover -h ${SVN_REPOS_LOC}/repos" |
1664 |
- ewarn " chown -Rf apache:apache ${SVN_REPOS_LOC}/repos" |
1665 |
- fi |
1666 |
- |
1667 |
- ewarn "If you run subversion as a daemon, you will need to restart it to avoid module mismatches." |
1668 |
-} |
1669 |
- |
1670 |
-pkg_postrm() { |
1671 |
- : |
1672 |
-} |
1673 |
- |
1674 |
-pkg_config() { |
1675 |
- # Remember: Don't use ${EROOT}${SVN_REPOS_LOC} since ${SVN_REPOS_LOC} |
1676 |
- # already has EPREFIX in it |
1677 |
- einfo "Initializing the database in ${SVN_REPOS_LOC}..." |
1678 |
- if [[ -e "${SVN_REPOS_LOC}/repos" ]] ; then |
1679 |
- echo "A Subversion repository already exists and I will not overwrite it." |
1680 |
- echo "Delete \"${SVN_REPOS_LOC}/repos\" first if you're sure you want to have a clean version." |
1681 |
- else |
1682 |
- mkdir -p "${SVN_REPOS_LOC}/conf" |
1683 |
- |
1684 |
- einfo "Populating repository directory..." |
1685 |
- # Create initial repository. |
1686 |
- "${EROOT}/usr/bin/svnadmin" create "${SVN_REPOS_LOC}/repos" |
1687 |
- |
1688 |
- einfo "Setting repository permissions..." |
1689 |
- SVNSERVE_USER="$(. "${EROOT}/etc/conf.d/svnserve"; echo "${SVNSERVE_USER}")" |
1690 |
- SVNSERVE_GROUP="$(. "${EROOT}/etc/conf.d/svnserve"; echo "${SVNSERVE_GROUP}")" |
1691 |
- if use apache2 ; then |
1692 |
- [[ -z "${SVNSERVE_USER}" ]] && SVNSERVE_USER="apache" |
1693 |
- [[ -z "${SVNSERVE_GROUP}" ]] && SVNSERVE_GROUP="apache" |
1694 |
- else |
1695 |
- [[ -z "${SVNSERVE_USER}" ]] && SVNSERVE_USER="svn" |
1696 |
- [[ -z "${SVNSERVE_GROUP}" ]] && SVNSERVE_GROUP="svnusers" |
1697 |
- fi |
1698 |
- chmod -Rf go-rwx "${SVN_REPOS_LOC}/conf" |
1699 |
- chmod -Rf o-rwx "${SVN_REPOS_LOC}/repos" |
1700 |
- echo "Please create \"${SVNSERVE_GROUP}\" group if it does not exist yet." |
1701 |
- echo "Afterwards please create \"${SVNSERVE_USER}\" user with homedir \"${SVN_REPOS_LOC}\"" |
1702 |
- echo "and as part of the \"${SVNSERVE_GROUP}\" group if it does not exist yet." |
1703 |
- echo "Finally, execute \"chown -Rf ${SVNSERVE_USER}:${SVNSERVE_GROUP} ${SVN_REPOS_LOC}/repos\"" |
1704 |
- echo "to finish the configuration." |
1705 |
- fi |
1706 |
-} |