summaryrefslogtreecommitdiff
path: root/extra/subversion/PKGBUILD
blob: f788f2d4a8cc175e458a890e9b4b9066090a0caa (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
# $Id: PKGBUILD 194714 2013-09-23 03:35:04Z angvp $
# Maintainer: Angel Velasquez <angvp@archlinux.org> 
# Contributor: Stéphane Gaudreault <stephane@archlinux.org>
# Contributor: Paul Mattal <paul@archlinux.org>
# Contributor: Jason Chu <jason@archlinux.org>

pkgname=subversion
pkgver=1.8.3
pkgrel=1
pkgdesc="A Modern Concurrent Version Control System"
arch=('i686' 'x86_64' 'mips64el')
url="http://subversion.apache.org/"
license=('APACHE')
depends=('sqlite' 'file' 'serf' 'systemd')
makedepends=('apache' 'python2' 'perl' 'swig'
             'libgnome-keyring' 'kdelibs' 'ruby')
[ "$CARCH" != "mips64el" ] && makedepends+=('java-runtime' 'java-environment')
optdepends=('libgnome-keyring: for GNOME Keyring for auth credentials'
            'kdeutils-kwallet: for KWallet for auth credentials'
            'bash-completion: for svn bash completion'
            'python2: for some hook scripts'
        'java-environment: for Java support'
        'ruby: for some hook scripts')
provides=('svn')
backup=('etc/xinetd.d/svn' 'etc/conf.d/svnserve')
options=('!makeflags' '!libtool' '!emptydirs')
install=${pkgname}.install
source=(http://www.apache.org/dist/subversion/subversion-${pkgver}.tar.bz2{,.asc}
        svn
        svnserve.conf
        svnserve.tmpfiles
        svnserve.service
        subversion.rpath.fix.patch)
md5sums=('7d7bd97347a4491e1ffb529563ce2e9e'
         'SKIP'
         'a0db6dd43af33952739b6ec089852630'
         'c459e299192552f61578f3438abf0664'
         'bb2857eceafcfac35dde39dcffad2314'
         'e8020c7a1d1a0c47091b5fdd034f81c5'
         '6b4340ba9d8845cd8497e013ae01be3f')

prepare() {
   cd ${pkgname}-${pkgver}
   patch -Np0 -i ../subversion.rpath.fix.patch
   sed -i 's|/usr/bin/env python|/usr/bin/env python2|' tools/hook-scripts/{,mailer/{,tests/}}*.py
}

build() {
   cd ${pkgname}-${pkgver}
   export PYTHON=/usr/bin/python2
   [ "$CARCH" = "mips64el" ] && extraconf="--disable-javahl"
   ./configure --prefix=/usr --with-apr=/usr --with-apr-util=/usr \
               --with-zlib=/usr --with-serf=/usr --with-apxs \
               --with-sqlite=/usr --with-berkeley-db=:/usr/include/:/usr/lib:db-5.3 \
               --enable-javahl --with-gnome-keyring --with-kwallet \
               --with-apache-libexecdir=/usr/lib/httpd/modules \
               --with-ruby-sitedir=/usr/lib/ruby/vendor_ruby \
               --disable-static $extraconf

   make LT_LDFLAGS="-L$Fdestdir/usr/lib"
   make swig_pydir=/usr/lib/python2.7/site-packages/libsvn \
     swig_pydir_extra=/usr/lib/python2.7/site-packages/svn swig-py swig-pl swig-rb
   
   [ "$CARCH" = "mips64el" ] || make javahl 
}

#check() {
#   cd ${pkgname}-${pkgver}
#   export LANG=C LC_ALL=C
#   make check check-swig-pl check-swig-py check-swig-rb CLEANUP=yes # check-javahl
#}

package() {
   cd ${pkgname}-${pkgver}

   export LD_LIBRARY_PATH="${pkgdir}"/usr/lib:${LD_LIBRARY_PATH}
   make DESTDIR="${pkgdir}" INSTALLDIRS=vendor \
     swig_pydir=/usr/lib/python2.7/site-packages/libsvn \
     swig_pydir_extra=/usr/lib/python2.7/site-packages/svn \
     install install-swig-py install-swig-pl install-swig-rb

   [ "$CARCH" = "mips64el" ] || make install-javahl 

   install -dm755 "${pkgdir}"/usr/share/subversion
   cp -a tools/hook-scripts "${pkgdir}"/usr/share/subversion/
   rm "${pkgdir}"/usr/share/subversion/hook-scripts/*.in

   ## svnserve ...

   # xinetd
   install -D -m 644 "${srcdir}"/svn "${pkgdir}"/etc/xinetd.d/svn

   # ... systemd
   install -D -m 644 "${srcdir}"/svnserve.service  "${pkgdir}"/usr/lib/systemd/system/svnserve.service
   install -D -m 644 "${srcdir}"/svnserve.tmpfiles "${pkgdir}"/usr/lib/tmpfiles.d/svnserve.conf

   # ... common config
   install -D -m 644 "${srcdir}"/svnserve.conf "${pkgdir}"/etc/conf.d/svnserve

   install -Dm 644 tools/client-side/bash_completion \
     "${pkgdir}"/usr/share/bash-completion/completions/subversion
   for i in svn svnadmin svndumpfilter svnlook svnsync svnversion; do
      ln -sf subversion "${pkgdir}"/usr/share/bash-completion/completions/${i}
   done
}