head	1.7;
access;
symbols;
locks; strict;
comment	@-- @;


1.7
date	2008.06.19.20.56.14;	author rse;	state dead;
branches;
next	1.6;
commitid	SOWitrk8jjQHmB7t;

1.6
date	2008.06.16.17.54.29;	author rse;	state Exp;
branches;
next	1.5;
commitid	sLi12nMRklYksc7t;

1.5
date	2008.05.18.18.37.25;	author rse;	state Exp;
branches;
next	1.4;
commitid	TsF7FpmRW4vRCt3t;

1.4
date	2008.05.04.17.07.57;	author rse;	state Exp;
branches;
next	1.3;
commitid	T3VJ5Rk8drX3AF1t;

1.3
date	2008.05.04.12.05.13;	author rse;	state Exp;
branches;
next	1.2;
commitid	f9OltSjA3SndUD1t;

1.2
date	2008.04.14.10.58.07;	author rse;	state Exp;
branches;
next	1.1;
commitid	fbqw2dWVs4L3b4Zs;

1.1
date	2008.04.03.08.18.05;	author rse;	state Exp;
branches;
next	;
commitid	EpiRdQzhKfi4EDXs;


desc
@@


1.7
log
@remove obsolete package
@
text
@##
##  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-rc11
%define       V_opkg      1.5.0rc11
%define       V_cvs2svn   2.1.1
%define       V_svn2cvs   20080504
%define       V_book_html 20080504
%define       V_book_pdf  20080504

#   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:      20080616

#   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}

%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-1
    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

@


1.6
log
@upgrading package: subversion15 1.5.0rc5 -> 1.5.0rc11
@
text
@@


1.5
log
@upgrading package: subversion15 1.5.0rc4 -> 1.5.0rc5
@
text
@d25 2
a26 2
%define       V_dist      1.5.0-rc5
%define       V_opkg      1.5.0rc5
d43 1
a43 1
Release:      20080518
@


1.4
log
@remove correct top-level directory
@
text
@d25 2
a26 2
%define       V_dist      1.5.0-rc4
%define       V_opkg      1.5.0rc4
d43 1
a43 1
Release:      20080504
@


1.3
log
@upgrading package: subversion15 1.5.0b1 -> 1.5.0rc4
@
text
@d283 1
a283 1
    rm -rf $RPM_BUILD_ROOT%{l_prefix}/build
@


1.2
log
@remove explicit Conflict as RPM 5 dislikes the combination of Provides and Conflicts (for the same NEVRA)
@
text
@d25 6
a30 6
%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
d43 1
a43 1
Release:      20080414
@


1.1
log
@new package: subversion15 1.5.0b1 (Source Revision Control System)
@
text
@d43 1
a43 1
Release:      20080403
a101 1
Conflicts:    subversion
@

