====== Subversion on apache2 ======
A lot of this wiki is borrowed from the subversion install-manual, and spiced up with some experience :-)
During the build anc configure process you might need some packages.. Just get them by apt-get, and retry.. Quite easy.
Running the Apache2 server is quite limited, but it works great, and finally I can get through "stupid" corporate firewalls (port 80).
**Note**: The Apache build depends on libtools and m4 which are available for install using funpkg from the /ffp/packages directory.
===== 1: Apache =====
I only managed to get it to work with Apache 2.0, and NOT 2.2. There is a lot of trouble with Apache versions and APR versions. After a couple of days of investigation i discovered:
Apache 2.0.60 + SVN 1.4.2 works with APR 0.9.14 (and the APR-utils)
I never managed to get Apache 2.2.* to work with any APR version
==== Cleanup ====
First off, if you have any Subversion libraries lying around from previous 'make installs', clean them up first!
# rm -f /usr/local/lib/libsvn*
# rm -f /usr/local/lib/libapr*
# rm -f /usr/local/lib/libexpat*
# rm -f /usr/local/lib/libneon*
==== Get apache source ====
Find a place to download the apache source.
$ svn co http://svn.apache.org/repos/asf/httpd/httpd/branches/2.0.x httpd-2.0
Checkout the "apr" and "apr-util" modules into the srclib/ directory:
$ cd httpd-2.0/srclib
$ svn co http://svn.apache.org/repos/asf/apr/apr/branches/0.9.x apr
$ svn co http://svn.apache.org/repos/asf/apr/apr-util/branches/0.9.x apr-util
==== build, configure and install ====
At the top of the httpd-2.0 tree: (the apache will be installed at /usr/local/apache2.. else change the prefix)
$ ./buildconf
$ ./configure --enable-dav --enable-so --enable-maintainer-mode --prefix=/usr/local/apache2
$ make && make install
===== 2: Subversion =====
==== Cleanup (again) ====
First off, if you have any Subversion libraries lying around from previous 'make installs', clean them up first!
# rm -f /usr/local/lib/libsvn*
# rm -f /usr/local/lib/libapr*
# rm -f /usr/local/lib/libexpat*
# rm -f /usr/local/lib/libneon*
==== Get subversion ====
Find a place to download the sourcecode
$ wget http://subversion.tigris.org/downloads/subversion-1.4.2.tar.gz
$ wget http://subversion.tigris.org/downloads/subversion-deps-1.4.2.tar.gz
$ tar -zxvf subversion-1.4.2.tar.gz
$ tar -zxvf subversion-deps-1.4.2.tar.gz
==== Important: Ensure the same APR's ====
$ cd subversion-1.4.2
$ rm -rf apr*
$ svn co http://svn.apache.org/repos/asf/apr/apr/branches/0.9.x apr
$ svn co http://svn.apache.org/repos/asf/apr/apr-util/branches/0.9.x apr-util
==== Autogen ====
Run:
sh ./autogen.sh
==== build, configure and install ====
In the apr directory within the subversion tree, create the apr configuration:
./buildconf
Same for apr-util.
At the top of the subversion tree:
NOTICE: if you have changed the prefix, remember to change it below.
$ ./configure --enable-maintainer-mode --with-apxs=/usr/local/apache2/bin/apxs
$ make && make install
===== 3: Adjust httpd.conf=====
cd /usr/local/apache2/conf
pico httpd.conf
Change port-number and server-name
At the buttom of httpd.conf setup the SVN paths:
DAV svn
SVNPath /path/to/repository/
# SVNParentPath /path/to/parent repository/ # if you have different repositories under this path
===== 4: Launch the server=====
$ /usr/local/apache2/bin/apachectl start