Prechádzať zdrojové kódy

new package: subversion15 1.5.0b1 (Source Revision Control System)

Ralf S. Engelschall 17 rokov pred
rodič
commit
2773a9fbc0

+ 63 - 0
subversion15/rc.subversion

@@ -0,0 +1,63 @@
+#!@l_prefix@/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
+

+ 39 - 0
subversion15/subversion.config

@@ -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
+

+ 19 - 0
subversion15/subversion.config.apache

@@ -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>
+

+ 29 - 0
subversion15/subversion.servers

@@ -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
+

Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 104 - 0
subversion15/subversion15.patch


+ 408 - 0
subversion15/subversion15.spec

@@ -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+\"\$@\"}"
+      ) >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
+