Gentoo Archives: gentoo-commits

From: Lars Wendler <polynomial-c@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-vcs/subversion/files/, dev-vcs/subversion/
Date: Mon, 12 Aug 2019 07:17:14
Message-Id: 1565594220.7a7a627164167509632bcd5b2e782b8a09c358d2.polynomial-c@gentoo
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 -}