OpenPKG CVS Repository
http://cvs.openpkg.org/
____________________________________________________________________________
Server: cvs.openpkg.org Name: Ralf S. Engelschall
Root: /v/openpkg/cvs Email: [EMAIL PROTECTED]
Module: openpkg-src Date: 03-Apr-2008 10:18:09
Branch: HEAD Handle: 2008040309180500
Added files:
openpkg-src/subversion15
rc.subversion subversion.config
subversion.config.apache subversion.servers
subversion15.patch subversion15.spec
Log:
new package: subversion15 1.5.0b1 (Source Revision Control System)
Summary:
Revision Changes Path
1.1 +63 -0 openpkg-src/subversion15/rc.subversion
1.1 +39 -0 openpkg-src/subversion15/subversion.config
1.1 +19 -0 openpkg-src/subversion15/subversion.config.apache
1.1 +29 -0 openpkg-src/subversion15/subversion.servers
1.1 +104 -0 openpkg-src/subversion15/subversion15.patch
1.1 +408 -0 openpkg-src/subversion15/subversion15.spec
____________________________________________________________________________
patch -p0 <<'@@ .'
Index: openpkg-src/subversion15/rc.subversion
============================================================================
$ cvs diff -u -r0 -r1.1 rc.subversion
--- /dev/null 2008-04-03 10:17:50 +0200
+++ rc.subversion 2008-04-03 10:18:05 +0200
@@ -0,0 +1,63 @@
[EMAIL PROTECTED]@/bin/openpkg rc
+##
+## rc.subversion -- Run-Commands
+##
+
+%config
+ subversion_enable="$openpkg_rc_def"
+ subversion_env="no"
+ subversion_daemon="no"
+ subversion_daemon_host="127.0.0.1"
+ subversion_daemon_port="3690"
+ subversion_daemon_root="@l_prefix@/var/subversion/default"
+
+%common
+ subversion_daemon_pidfile="@l_prefix@/var/subversion/svnserve.pid"
+ subversion_signal () {
+ [ -f $subversion_daemon_pidfile ] \
+ && kill -$1 `cat $subversion_daemon_pidfile`
+ }
+
+%status -u @l_susr@ -o
+ subversion_usable="unknown"
+ subversion_active="no"
+ rcService subversion enable yes && \
+ subversion_signal 0 && subversion_active="yes"
+ echo "subversion_enable=\"$subversion_enable\""
+ echo "subversion_usable=\"$subversion_usable\""
+ echo "subversion_active=\"$subversion_active\""
+
+%start -u @l_susr@
+ rcService subversion enable yes || exit 0
+ rcService subversion active yes && exit 0
+ if rcVarIsYes subversion_daemon; then
+ @l_prefix@/bin/svnserve --daemon \
+ --listen-host $subversion_daemon_host \
+ --listen-port $subversion_daemon_port \
+ --root $subversion_daemon_root \
+ --pid-file $subversion_daemon_pidfile
+ fi
+
+%stop -u @l_susr@
+ rcService subversion enable yes || exit 0
+ rcService subversion active no && exit 0
+ if rcVarIsYes subversion_daemon; then
+ subversion_signal TERM
+ sleep 2
+ rm -f $subversion_daemon_pidfile 2>/dev/null || true
+ fi
+
+%restart -u @l_susr@
+ rcService subversion enable yes || exit 0
+ rcService subversion active no && exit 0
+ rc subversion stop start
+
+%env
+ rcService subversion enable yes || exit 0
+ if rcVarIsYes subversion_env; then
+ if [ ".$BASH" != . ]; then
+ shopt -s extglob progcomp
+ . @l_prefix@/etc/subversion/bashrc
+ fi
+ fi
+
@@ .
patch -p0 <<'@@ .'
Index: openpkg-src/subversion15/subversion.config
============================================================================
$ cvs diff -u -r0 -r1.1 subversion.config
--- /dev/null 2008-04-03 10:17:50 +0200
+++ subversion.config 2008-04-03 10:18:06 +0200
@@ -0,0 +1,39 @@
+##
+## config -- Subversion global configuration file
+##
+
+# [auth]
+# store-passwords = no
+# store-auth-creds = no
+
+# [helpers]
+# editor-cmd = @l_prefix@/bin/vim
+# diff-cmd = @l_prefix@/bin/diff0
+# diff3-cmd = @l_prefix@/bin/diff3
+# diff3-has-program-arg = true
+
+# [tunnels]
+# ssh = $SVN_SSH ssh
+# rsh = $SVN_RSH rsh
+
+# [miscellany]
+# global-ignores = *.o *.lo *.la #*# .*.rej *.rej .*~ *~ .#* .DS_Store
+# log-encoding = latin1
+# use-commit-times = yes
+# enable-auto-props = yes
+
+# [auto-props]
+# *.c = svn:eol-style=native
+# *.cpp = svn:eol-style=native
+# *.h = svn:eol-style=native
+# *.dsp = svn:eol-style=CRLF
+# *.dsw = svn:eol-style=CRLF
+# *.sh = svn:eol-style=native;svn:executable
+# *.txt = svn:eol-style=native
+# *.png = svn:mime-type=image/png
+# *.jpg = svn:mime-type=image/jpeg
+# *.gif = svn:mime-type=image/gif
+# *.xml = svn:eol-style=native
+# *.tex = svn:eol-style=native
+# Makefile = svn:eol-style=native
+
@@ .
patch -p0 <<'@@ .'
Index: openpkg-src/subversion15/subversion.config.apache
============================================================================
$ cvs diff -u -r0 -r1.1 subversion.config.apache
--- /dev/null 2008-04-03 10:17:50 +0200
+++ subversion.config.apache 2008-04-03 10:18:07 +0200
@@ -0,0 +1,19 @@
+##
+## subversion.conf -- Apache configuration for Subversion modules
+##
+
+LoadModule dav_svn_module @l_prefix@/libexec/apache/mod_dav_svn.so
+LoadModule authz_svn_module @l_prefix@/libexec/apache/mod_authz_svn.so
+
+#<Location /svn/default>
+# DAV svn
+# SVNParentPath @l_prefix@/var/subversion/default
+# AuthzSVNAccessFile @l_prefix@/var/subversion/default/conf/authz
+# AuthUserFile @l_prefix@/var/subversion/default/conf/htpasswd
+# AuthName "Subversion Default Repository"
+# AuthType Basic
+# <LimitExcept GET PROPFIND OPTIONS REPORT>
+# Require valid-user
+# </LimitExcept>
+#</Location>
+
@@ .
patch -p0 <<'@@ .'
Index: openpkg-src/subversion15/subversion.servers
============================================================================
$ cvs diff -u -r0 -r1.1 subversion.servers
--- /dev/null 2008-04-03 10:17:50 +0200
+++ subversion.servers 2008-04-03 10:18:08 +0200
@@ -0,0 +1,29 @@
+##
+## servers -- Subversion global servers configuration file
+##
+
+# [groups]
+# group1 = *.example.com
+# group2 = *.example.net
+
+# [group1]
+# http-proxy-host = proxy1.some-domain-name.com
+# http-proxy-port = 80
+# http-proxy-username = blah
+# http-proxy-password = doubleblah
+# http-timeout = 60
+# neon-debug-mask = 130
+
+# [group2]
+# http-proxy-host = proxy2.some-domain-name.com
+# http-proxy-port = 9000
+
+# [global]
+# http-proxy-exceptions = *.exception.com, www.internal-site.org
+# http-proxy-host = defaultproxy.whatever.com
+# http-proxy-port = 7000
+# http-proxy-username = defaultusername
+# http-proxy-password = defaultpassword
+# http-compression = no
+# ssl-authority-files = /path/to/CAcert.pem;/path/to/CAcert2.pem
+
@@ .
patch -p0 <<'@@ .'
Index: openpkg-src/subversion15/subversion15.patch
============================================================================
$ cvs diff -u -r0 -r1.1 subversion15.patch
--- /dev/null 2008-04-03 10:17:50 +0200
+++ subversion15.patch 2008-04-03 10:18:09 +0200
@@ -0,0 +1,104 @@
+Index: Makefile.in
+--- Makefile.in.orig 2008-02-24 04:36:03 +0100
++++ Makefile.in 2008-04-03 09:53:06 +0200
+@@ -155,7 +155,7 @@
+ LT_COMPILE = $(LIBTOOL) $(LTFLAGS) --mode=compile $(COMPILE)
+
+ # special compilation for files destined for mod_dav_svn
+-COMPILE_APACHE_MOD = $(LIBTOOL) $(LTFLAGS) --mode=compile $(CC) $(CPPFLAGS)
$(CFLAGS) $(APACHE_INCLUDES) $(INCLUDES) -o $@ -c
++COMPILE_APACHE_MOD = @APXS@ -c -S LIBEXECDIR="$(APACHE_LIBEXECDIR)"
$(CPPFLAGS) $(APACHE_INCLUDES) $(INCLUDES) -o $@
+
+ # special compilation for files destined for libsvn_swig_* (e.g.
swigutil_*.c)
+ COMPILE_SWIG_PY = $(LIBTOOL) $(LTFLAGS) --mode=compile $(SWIG_PY_COMPILE)
$(CPPFLAGS) -DSWIGPYTHON $(CFLAGS) $(SWIG_PY_INCLUDES) $(INCLUDES) -o $@ -c
+@@ -170,7 +170,7 @@
+ LINK = $(LIBTOOL) $(LTFLAGS) --mode=link $(CC) $(LT_LDFLAGS) $(CFLAGS)
$(LDFLAGS) -rpath $(libdir)
+
+ # special link rule for mod_dav_svn
+-LINK_APACHE_MOD = $(LIBTOOL) $(LTFLAGS) --mode=link $(CC) $(LT_LDFLAGS)
$(CFLAGS) $(LDFLAGS) -rpath $(APACHE_LIBEXECDIR) -avoid-version -module
$(APACHE_LDFLAGS)
++LINK_APACHE_MOD = @APXS@ -c -S LIBEXECDIR="$(APACHE_LIBEXECDIR)" $(LDFLAGS)
$(APACHE_LDFLAGS)
+
+ # Compilation of SWIG-generated C source code
+ COMPILE_PY_WRAPPER = $(LIBTOOL) $(LTFLAGS) --mode=compile
$(SWIG_PY_COMPILE) $(CPPFLAGS) $(SWIG_PY_INCLUDES) -prefer-pic -c -o $@
+@@ -638,7 +638,7 @@
+ ./config.status subversion/bindings/swig/perl/native/Makefile.PL
+
+ $(SWIG_PL_DIR)/native/Makefile: $(SWIG_PL_DIR)/native/Makefile.PL
+- cd $(SWIG_PL_DIR)/native; $(PERL) Makefile.PL
++ cd $(SWIG_PL_DIR)/native; $(PERL) Makefile.PL INSTALLDIRS=vendor
+
+ swig-pl_DEPS = autogen-swig-pl libsvn_swig_perl \
+ $(SWIG_PL_DIR)/native/Makefile
+Index: apr-util/crypto/getuuid.c
+--- apr-util/crypto/getuuid.c.orig 2008-03-13 08:00:29 +0100
++++ apr-util/crypto/getuuid.c 2008-04-03 09:53:51 +0200
+@@ -131,7 +131,7 @@
+
+ /* crap. this isn't crypto quality, but it will be Good Enough */
+
+- get_system_time(&time_now);
++ time_now = apr_time_now();
+ srand((unsigned int)(((time_now >> 32) ^ time_now) & 0xffffffff));
+
+ return rand() & 0x0FFFF;
+Index: build-outputs.mk
+--- build-outputs.mk.orig 2008-03-13 08:00:51 +0100
++++ build-outputs.mk 2008-04-03 09:53:06 +0200
+@@ -333,7 +333,7 @@
+ mod_dav_svn_DEPS = subversion/mod_dav_svn/activity.lo
subversion/mod_dav_svn/authz.lo subversion/mod_dav_svn/deadprops.lo
subversion/mod_dav_svn/liveprops.lo subversion/mod_dav_svn/lock.lo
subversion/mod_dav_svn/merge.lo subversion/mod_dav_svn/mirror.lo
subversion/mod_dav_svn/mod_dav_svn.lo
subversion/mod_dav_svn/reports/dated-rev.lo
subversion/mod_dav_svn/reports/file-revs.lo
subversion/mod_dav_svn/reports/get-location-segments.lo
subversion/mod_dav_svn/reports/get-locations.lo
subversion/mod_dav_svn/reports/get-locks.lo
subversion/mod_dav_svn/reports/log.lo
subversion/mod_dav_svn/reports/mergeinfo.lo
subversion/mod_dav_svn/reports/replay.lo
subversion/mod_dav_svn/reports/update.lo subversion/mod_dav_svn/repos.lo
subversion/mod_dav_svn/util.lo subversion/mod_dav_svn/version.lo
subversion/libsvn_repos/libsvn_repos-1.la subversion/libsvn_fs/libsvn_fs-1.la
subversion/libsvn_delta/libsvn_delta-1.la
subversion/libsvn_subr/libsvn_subr-1.la
+ mod_dav_svn_OBJECTS = activity.lo authz.lo deadprops.lo liveprops.lo
lock.lo merge.lo mirror.lo mod_dav_svn.lo reports/dated-rev.lo
reports/file-revs.lo reports/get-location-segments.lo reports/get-locations.lo
reports/get-locks.lo reports/log.lo reports/mergeinfo.lo reports/replay.lo
reports/update.lo repos.lo util.lo version.lo
+ subversion/mod_dav_svn/mod_dav_svn.la: $(mod_dav_svn_DEPS)
+- cd subversion/mod_dav_svn && $(LINK_APACHE_MOD) -o mod_dav_svn.la
$(LT_NO_UNDEFINED) $(mod_dav_svn_OBJECTS)
../../subversion/libsvn_repos/libsvn_repos-1.la
../../subversion/libsvn_fs/libsvn_fs-1.la
../../subversion/libsvn_delta/libsvn_delta-1.la
../../subversion/libsvn_subr/libsvn_subr-1.la $(LIBS)
++ cd subversion/mod_dav_svn && $(LINK_APACHE_MOD) -o mod_dav_svn.la
$(LT_NO_UNDEFINED) $(mod_dav_svn_OBJECTS)
../../subversion/libsvn_repos/libsvn_repos-1.la
../../subversion/libsvn_fs/libsvn_fs-1.la
../../subversion/libsvn_fs_base/libsvn_fs_base-1.la
../../subversion/libsvn_fs_fs/libsvn_fs_fs-1.la
../../subversion/libsvn_delta/libsvn_delta-1.la
../../subversion/libsvn_subr/libsvn_subr-1.la $(LIBS)
+
+ opt_test_PATH = subversion/tests/libsvn_subr
+ opt_test_DEPS = subversion/tests/libsvn_subr/opt-test.o
subversion/tests/libsvn_test-1.la subversion/libsvn_subr/libsvn_subr-1.la
+Index: configure
+--- configure.orig 2008-03-13 08:00:53 +0100
++++ configure 2008-04-03 09:53:06 +0200
+@@ -4958,6 +4958,11 @@
+ ac_sub_cache_file="$ac_dots$cache_file" ;;
+ esac
+
++ args="$args --prefix=$prefix/libexec/subversion/neon"
++ if [ ".$with_ssl" = .yes ]; then
++ args="$args --with-ssl"
++ fi
++
+ # The eval makes quoting arguments work.
+ if eval $SHELL $ac_abs_srcdir/configure $ac_configure_args
--cache-file=$ac_sub_cache_file --srcdir=$ac_abs_srcdir $args
+ then :
+Index: subversion/bindings/swig/perl/native/Makefile.PL.in
+--- subversion/bindings/swig/perl/native/Makefile.PL.in.orig 2007-10-22
09:00:25 +0200
++++ subversion/bindings/swig/perl/native/Makefile.PL.in 2008-04-03
09:54:42 +0200
+@@ -23,17 +23,13 @@
+ ra_dav
+
fs_base
+
fs_fs/));
+-my @ldmodules = map {"-lsvn_$_-1"} (@modules, qw/diff subr/);
++my @ldmodules = map {"-lsvn_$_-1"} (@modules, qw/diff subr delta ra_dav
subr ra_local ra_svn fs_base fs_fs/);
+
+ my $apr_shlib_path_var = '@SVN_APR_SHLIB_PATH_VAR@';
+ my $cppflags = '@CPPFLAGS@';
+ my $apr_cflags = '@SVN_APR_INCLUDES@';
+ my $apu_cflags = '@SVN_APRUTIL_INCLUDES@';
+-
+-# According to the log of r7937, the flags guarded by the conditional break
+-# the build on FreeBSD if not conditionalized.
+-my $apr_ldflags = '@SVN_APR_EXPORT_LIBS@'
+- if $^O eq 'darwin' or $^O eq 'cygwin';
++my $apr_ldflags = '@SVN_APRUTIL_EXPORT_LIBS@ @SVN_APR_EXPORT_LIBS@ -liconv
-lz '.`neon-config --libs`.' -lssl -lcrypto -lxml2';
+
+ chomp $apr_shlib_path_var;
+
+@@ -46,9 +42,9 @@
+ " -I$svnlib_builddir",
+ " -I$swig_srcdir -g"),
+ OBJECT => q/$(O_FILES)/,
+- LIBS => [join(' ', $apr_ldflags,
++ LIBS => [join(' ', "[EMAIL PROTECTED]@/lib",
+ (map {$_ = abs_path($_); "-L$_"} @ldpaths),
+- @ldmodules, '-lsvn_swig_perl-1',
++ '-lsvn_swig_perl-1', @ldmodules, @ldmodules, @ldmodules,
@ldmodules, $apr_ldflags,
+ `$swig -perl -ldflags`)],
+ test => { TESTS => "$swig_srcdir/perl/native/t/*.t" }
+ );
@@ .
patch -p0 <<'@@ .'
Index: openpkg-src/subversion15/subversion15.spec
============================================================================
$ cvs diff -u -r0 -r1.1 subversion15.spec
--- /dev/null 2008-04-03 10:17:50 +0200
+++ subversion15.spec 2008-04-03 10:18:09 +0200
@@ -0,0 +1,408 @@
+##
+## subversion15.spec -- OpenPKG RPM Package Specification
+## Copyright (c) 2000-2008 OpenPKG Foundation e.V. <http://openpkg.net/>
+##
+## Permission to use, copy, modify, and distribute this software for
+## any purpose with or without fee is hereby granted, provided that
+## the above copyright notice and this permission notice appear in all
+## copies.
+##
+## THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
+## WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+## MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+## IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
+## CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
+## USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+## ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+## OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+## OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+## SUCH DAMAGE.
+##
+
+# package version
+%define V_dist 1.5.0-beta1
+%define V_opkg 1.5.0b1
+%define V_cvs2svn 2.1.0
+%define V_svn2cvs 20071222
+%define V_book_html 20071222
+%define V_book_pdf 20071222
+
+# package information
+Name: subversion15
+Summary: Source Revision Control System
+URL: http://subversion.tigris.org/
+Vendor: Tigris
+Packager: OpenPKG Foundation e.V.
+Distribution: OpenPKG Community
+Class: EVAL
+Group: SCM
+License: Apache/BSD
+Version: %{V_opkg}
+Release: 20080403
+
+# package options
+%option with_cvs2svn no
+%option with_svn2cvs no
+%option with_apache no
+%option with_perl no
+%option with_python no
+%option with_ruby no
+
+# list of sources
+Source0:
http://subversion.tigris.org/downloads/subversion-%{V_dist}.tar.bz2
+Source1:
http://subversion.tigris.org/downloads/subversion-deps-%{V_dist}.tar.bz2
+Source2:
ftp://ftp.openpkg.org/sources/CPY/subversion/cvs2svn-%{V_cvs2svn}.tar.gz
+Source3:
ftp://ftp.openpkg.org/sources/CPY/subversion/svn2cvs.pl-%{V_svn2cvs}
+Source4:
ftp://ftp.openpkg.org/sources/CPY/subversion/svn-book-%{V_book_html}.html
+Source5:
ftp://ftp.openpkg.org/sources/CPY/subversion/svn-book-%{V_book_pdf}.pdf
+Source6: subversion.config
+Source7: subversion.config.apache
+Source8: subversion.servers
+Source9: rc.subversion
+Patch0: subversion15.patch
+
+# build information
+Prefix: %{l_prefix}
+BuildRoot: %{l_buildroot}
+BuildPreReq: OpenPKG, openpkg >= 20060823, make, libtool, sed, pkgconfig
+PreReq: OpenPKG, openpkg >= 20060823
+BuildPreReq: diffutils, db, openssl, zlib, libiconv, expat
+PreReq: diffutils, db, openssl, zlib, libiconv, expat
+%if "%{with_cvs2svn}" == "yes"
+PreReq: rcs, python, python::with_dbm = yes
+%endif
+%if "%{with_svn2cvs}" == "yes"
+BuildPreReq: perl
+PreReq: perl, perl-xml, cvs, rcs
+%endif
+%if "%{with_apache}" == "yes"
+BuildPreReq: apache, apache::with_mod_dav = yes
+PreReq: apache, apache::with_mod_dav = yes
+%endif
+%if "%{with_perl}" == "yes" || "%{with_python}" == "yes"
+BuildPreReq: swig
+%endif
+%if "%{with_perl}" == "yes"
+BuildPreReq: perl, perl-openpkg
+PreReq: perl
+%endif
+%if "%{with_python}" == "yes"
+BuildPreReq: python, swig
+PreReq: python
+%endif
+%if "%{with_ruby}" == "yes"
+BuildPreReq: ruby
+PreReq: ruby
+%endif
+AutoReq: no
+AutoReqProv: no
+Provides: subversion = %{version}-%{release}
+Conflicts: subversion
+
+%description
+ Subversion is a modern Version Control System (VCS) providing most
+ current CVS features, versioned directories/renames/meta-data,
+ atomic commits, cheap branching and tagging, native client/server
+ architecture, and the choice of database or plain-file repository
+ implementations.
+
+%track
+ prog subversion15 = {
+ version = %{V_dist}
+ url =
http://subversion.tigris.org/servlets/ProjectDocumentList?folderID=260
+ regex = subversion-(1\.5\.\d+)\.tar\.bz2
+ }
+ prog subversion15:cvs2svn = {
+ version = %{V_cvs2svn}
+ url = ftp://ftp.openpkg.org/sources/CPY/subversion/
+ regex = cvs2svn-(__VER__)\.tar\.gz
+ }
+ prog subversion15:svn2cvs = {
+ version = %{V_svn2cvs}
+ url = ftp://ftp.openpkg.org/sources/CPY/subversion/
+ regex = svn2cvs.pl-(__VER__)
+ }
+
+%prep
+ %setup -q -n subversion-%{V_dist}
+ %setup -q -n subversion-%{V_dist} -T -D -b 1
+ %setup -q -n subversion-%{V_dist} -T -D -a 2
+ cp %{SOURCE svn2cvs.pl-%{V_svn2cvs}} svn2cvs.pl
+ %patch -p0
+
+ # substitute path from applied patch
+ %{l_shtool} subst %{l_value -s -a} \
+ subversion/bindings/swig/perl/native/Makefile.PL.in
+
+ # patch: correctly pass --disable-shared to sub-directories
+ %{l_shtool} subst \
+ -e 's;\($ac_abs_srcdir/configure $ac_configure_args\);\1
--disable-shared;' \
+ configure
+
+ # patch: adjust path to configuration directory
+ %{l_shtool} subst \
+ -e 's;/etc/subversion;%{l_prefix}/etc/subversion;g' \
+ subversion/libsvn_subr/config_impl.h \
+ subversion/libsvn_subr/config_file.c
+
+ # patch: fix installation of APR
+ %{l_shtool} subst \
+ -e '/^<Layout apr>/,/<\/Layout>/{ s!\(^[ ]*prefix:\).*$!\1
%{l_prefix}!; s!\(^[ ]*sysconfdir:\).*$!\1 %{l_prefix}/etc/subversion!; }' \
+ apr/config.layout \
+ apr-util/config.layout
+
+%build
+ # configure package
+ CC="%{l_cc}" \
+ CFLAGS="%{l_cflags -O}" \
+ CPPFLAGS="%{l_cppflags libxml2 .}" \
+ LDFLAGS="%{l_ldflags} `pkg-config db --libs-only-L`" \
+ LIBS="`pkg-config db --libs-only-l`" \
+ CONFIG_SHELL="%{l_bash}" \
+ ./configure \
+ --prefix=%{l_prefix} \
+ --mandir=%{l_prefix}/man \
+ --with-berkeley-db=%{l_prefix} \
+ --with-dbm=db45 \
+ --with-ssl=openssl \
+ --with-zlib=%{l_prefix} \
+ --without-libxml2 \
+ --without-gssapi \
+%if "%{with_apache}" == "yes"
+ --with-apxs \
+ --disable-mod-activation \
+%else
+ --without-apxs \
+%endif
+%if "%{with_perl}" == "yes" || "%{with_python}" == "yes"
+ --with-swig=%{l_prefix}/bin/swig \
+%endif
+%if "%{with_perl}" == "yes"
+ --with-perl=%{l_prefix}/bin/perl \
+%endif
+%if "%{with_python}" == "yes"
+ --with-python=%{l_prefix}/bin/python \
+%endif
+%if "%{with_ruby}" == "yes"
+ --with-ruby=%{l_prefix}/bin/ruby \
+%endif
+ --disable-nls \
+ --disable-shared \
+ --enable-static
+
+ # build package
+ %{l_make} %{l_mflags}
+
+ # build Perl bindings
+%if "%{with_perl}" == "yes"
+ ( cd apr; ln -s .libs/libapr-1.a . ) || exit $?
+ ( cd apr-util; ln -s .libs/libaprutil-1.a . ) || exit $?
+ %{l_make} %{l_mflags} swig-pl
+%endif
+
+ # build Python bindings
+%if "%{with_python}" == "yes"
+ %{l_make} %{l_mflags} swig-py
+%endif
+
+ # build Ruby bindings
+%if "%{with_ruby}" == "yes"
+ %{l_make} %{l_mflags} swig-rb
+%endif
+
+%install
+ # install package
+ rm -rf $RPM_BUILD_ROOT
+ %{l_make} %{l_mflags} install DESTDIR=$RPM_BUILD_ROOT
+
+ # install Perl bindings
+%if "%{with_perl}" == "yes"
+ %{l_make} %{l_mflags} install-swig-pl DESTDIR=$RPM_BUILD_ROOT
+ %{l_prefix}/bin/perl-openpkg -F- fixate >/dev/null
+ rm -f $RPM_BUILD_ROOT%{l_prefix}/lib/libsvn_swig_perl*
+%endif
+
+ # install Python bindings
+%if "%{with_python}" == "yes"
+ %{l_make} %{l_mflags} install-swig-py DESTDIR=$RPM_BUILD_ROOT
+ rm -f $RPM_BUILD_ROOT%{l_prefix}/lib/libsvn_swig_py*
+ rm -f $RPM_BUILD_ROOT%{l_prefix}/lib/svn-python/libsvn/_*.a
+ rm -f $RPM_BUILD_ROOT%{l_prefix}/lib/svn-python/libsvn/_*.la
+ mv $RPM_BUILD_ROOT%{l_prefix}/lib/svn-python \
+ $RPM_BUILD_ROOT%{l_prefix}/lib/python
+%endif
+
+ # install Ruby bindings
+%if "%{with_ruby}" == "yes"
+ %{l_make} %{l_mflags} install-swig-rb DESTDIR=$RPM_BUILD_ROOT
+ rm -f $RPM_BUILD_ROOT%{l_prefix}/lib/libsvn_swig_ruby*
+%endif
+
+ # adjust APR installation for SVN local namespace
+ ( cd $RPM_BUILD_ROOT%{l_prefix}/include/apr-1
+ for i in *; do
+ mv $i ../subversion-1/svn_$i
+ done
+ ) || exit $?
+ %{l_shtool} subst \
+ -e 's;^\(#include <\)\(apr.*\)$;\1svn_\2;' \
+ $RPM_BUILD_ROOT/%{l_prefix}/include/subversion-1/svn*.h
+ ( cd $RPM_BUILD_ROOT%{l_prefix}/lib
+ for i in libapr*; do
+ [ ".$i" = ".libapr*" ] && continue
+ mv $i `echo "$i" | sed -e 's;^libapr\(.*\)$;libsvn_apr\1;'`
+ done
+ ) || exit $?
+ ( cd $RPM_BUILD_ROOT%{l_prefix}/libexec/subversion/neon/lib
+ for i in libneon*; do
+ [ ".$i" = ".libneon*" ] && continue
+ mv $i $RPM_BUILD_ROOT%{l_prefix}/lib/`echo "$i" | sed -e
's;^libneon\(.*\)$;libsvn_neon\1;'`
+ done
+ ) || exit $?
+ %{l_shtool} subst \
+ -e 's;libapr;libsvn_apr;g' \
+ $RPM_BUILD_ROOT%{l_prefix}/lib/libsvn_apr*.la
+ %{l_shtool} subst \
+ -e 's;^\(libdir='\).*\('\);\1%{l_prefix}/lib\2;g' \
+ -e 's;libneon;libsvn_neon;g' \
+ $RPM_BUILD_ROOT%{l_prefix}/lib/libsvn_neon.la
+
+ # strip down installation
+ rm -f $RPM_BUILD_ROOT%{l_prefix}/bin/apr-config
+ rm -f $RPM_BUILD_ROOT%{l_prefix}/bin/apu-config
+ rm -f $RPM_BUILD_ROOT%{l_prefix}/lib/apr.exp
+ rm -f $RPM_BUILD_ROOT%{l_prefix}/lib/aprutil.exp
+ rm -f $RPM_BUILD_ROOT%{l_prefix}/lib/libexpat.*
+ rm -rf $RPM_BUILD_ROOT%{l_prefix}/libexec/subversion/neon
+ rmdir $RPM_BUILD_ROOT%{l_prefix}/libexec/subversion >/dev/null 2>&1 ||
true
+ rm -rf $RPM_BUILD_ROOT%{l_prefix}/include/apr-1
+ rm -f $RPM_BUILD_ROOT%{l_prefix}/include/subversion-1/svn-revision.txt
+ rm -f $RPM_BUILD_ROOT%{l_prefix}/include/subversion-1/mod_dav_svn.h
+ rm -rf $RPM_BUILD_ROOT%{l_prefix}/share/doc
+ rm -rf $RPM_BUILD_ROOT%{l_prefix}/build
+ rm -f $RPM_BUILD_ROOT%{l_prefix}/man/man1/neon*
+ strip $RPM_BUILD_ROOT%{l_prefix}/bin/* >/dev/null 2>&1 || true
+
+ # install svn_load_dirs(1) tool
+ %{l_shtool} install -c -m 755 \
+ -e 's;#!/usr/bin/perl;#!%{l_prefix}/bin/perl;' \
+ contrib/client-side/svn_load_dirs/svn_load_dirs.pl \
+ $RPM_BUILD_ROOT%{l_prefix}/bin/svn_load_dirs
+
+ # install Subversion default global configuration files
+ %{l_shtool} mkdir -f -p -m 755 \
+ $RPM_BUILD_ROOT%{l_prefix}/etc/subversion
+ %{l_shtool} install -c -m 644 %{l_value -s -a} \
+ %{SOURCE subversion.config} \
+ $RPM_BUILD_ROOT%{l_prefix}/etc/subversion/config
+ %{l_shtool} install -c -m 644 \
+ %{SOURCE subversion.servers} \
+ $RPM_BUILD_ROOT%{l_prefix}/etc/subversion/servers
+
+ # install Subversion Bash command completion
+ %{l_shtool} install -c -m 644 \
+ tools/client-side/bash_completion \
+ $RPM_BUILD_ROOT%{l_prefix}/etc/subversion/bashrc
+
+ # install Subversion book
+ %{l_shtool} mkdir -f -p -m 755 \
+ $RPM_BUILD_ROOT%{l_prefix}/share/subversion
+ %{l_shtool} install -c -m 644 \
+ %{SOURCE svn-book-%{V_book_pdf}.pdf} \
+ $RPM_BUILD_ROOT%{l_prefix}/share/subversion/svn-book.pdf
+ %{l_shtool} install -c -m 644 \
+ %{SOURCE svn-book-%{V_book_html}.html} \
+ $RPM_BUILD_ROOT%{l_prefix}/share/subversion/svn-book.html
+
+%if "%{with_cvs2svn}" == "yes"
+ # install cvs2svn(1) tool
+ ( cd cvs2svn-%{V_cvs2svn}
+ %{l_shtool} mkdir -f -p -m 755 \
+
$RPM_BUILD_ROOT%{l_prefix}/libexec/subversion/cvs2svn/cvs2svn_rcsparse \
+ $RPM_BUILD_ROOT%{l_prefix}/libexec/subversion/cvs2svn/cvs2svn_lib
+ ( echo "#!/bin/sh"
+ echo "PYTHONPATH=\"%{l_prefix}/libexec/subversion/cvs2svn\""
+ echo "export PYTHONPATH"
+ echo "%{l_prefix}/bin/python
%{l_prefix}/libexec/subversion/cvs2svn/cvs2svn \${1+\"[EMAIL PROTECTED]"}"
+ ) >cvs2svn.sh
+ %{l_shtool} install -c -m 755 \
+ cvs2svn.sh $RPM_BUILD_ROOT%{l_prefix}/bin/cvs2svn
+ %{l_shtool} install -c -m 644 \
+ cvs2svn.1 $RPM_BUILD_ROOT%{l_prefix}/man/man1/
+ %{l_shtool} install -c -m 644 \
+ cvs2svn $RPM_BUILD_ROOT%{l_prefix}/libexec/subversion/cvs2svn/
+ %{l_shtool} install -c -m 644 \
+ cvs2svn_rcsparse/*.py \
+
$RPM_BUILD_ROOT%{l_prefix}/libexec/subversion/cvs2svn/cvs2svn_rcsparse/
+ %{l_shtool} install -c -m 644 \
+ cvs2svn_lib/*.py \
+ $RPM_BUILD_ROOT%{l_prefix}/libexec/subversion/cvs2svn/cvs2svn_lib/
+ ) || exit $?
+%endif
+
+%if "%{with_svn2cvs}" == "yes"
+ # install svn2cvs(1) tool
+ %{l_shtool} install -c -m 755 \
+ -e 's;#!/usr/bin/perl;#!%{l_prefix}/bin/perl;' \
+ svn2cvs.pl $RPM_BUILD_ROOT%{l_prefix}/bin/svn2cvs
+ %{l_prefix}/bin/pod2man svn2cvs.pl >svn2cvs.1
+ %{l_shtool} install -c -m 644 \
+ svn2cvs.1 $RPM_BUILD_ROOT%{l_prefix}/man/man1/svn2cvs.1
+%endif
+
+%if "%{with_apache}" == "yes"
+ # install Apache configuration file
+ %{l_shtool} mkdir -f -p -m 755 \
+ $RPM_BUILD_ROOT%{l_prefix}/etc/apache/apache.d
+ %{l_shtool} install -c -m 644 %{l_value -s -a} \
+ %{SOURCE subversion.config.apache} \
+ $RPM_BUILD_ROOT%{l_prefix}/etc/apache/apache.d/subversion.conf
+%endif
+
+ # install run-command script
+ %{l_shtool} mkdir -f -p -m 755 \
+ $RPM_BUILD_ROOT%{l_prefix}/etc/rc.d
+ %{l_shtool} install -c -m 755 %{l_value -s -a} \
+ %{SOURCE rc.subversion} \
+ $RPM_BUILD_ROOT%{l_prefix}/etc/rc.d/
+
+ # create directory for default repository and svnserve pidfile
+ %{l_shtool} mkdir -f -p -m 755 \
+ $RPM_BUILD_ROOT%{l_prefix}/var/subversion
+
+ # determine installation files
+ %{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT \
+ %{l_files_std} \
+ '%config %{l_prefix}/etc/subversion/*' \
+ '%doc %{l_prefix}/share/subversion/svn-book.*'
+
+%files -f files
+
+%clean
+ rm -rf $RPM_BUILD_ROOT
+
+%post
+ # create default repository
+ if [ ! -d $RPM_INSTALL_PREFIX/var/subversion/default ]; then
+ $RPM_INSTALL_PREFIX/bin/svnadmin create \
+ $RPM_INSTALL_PREFIX/var/subversion/default
+ fi
+
+ # after upgrade, restart service
+ [ $1 -eq 2 ] || exit 0
+ eval `%{l_rc} subversion status 2>/dev/null`
+ [ ".$subversion_active" = .yes ] && %{l_rc} subversion restart
+%if "%{with_apache}" == "yes"
+ eval `%{l_rc} apache status 2>/dev/null`
+ [ ".$apache_active" = .yes ] && %{l_rc} apache restart
+%endif
+ exit 0
+
+%preun
+ # before erase, stop service
+ [ $1 -eq 0 ] || exit 0
+ %{l_rc} subversion stop 2>/dev/null
+ exit 0
+
@@ .
______________________________________________________________________
OpenPKG http://openpkg.org
CVS Repository Commit List [email protected]