Introduction to Subversion
Subversion is a version control
system that is designed to be a compelling replacement for
CVS in the open source community.
It extends and enhances CVS'
feature set, while maintaining a similar interface for those
already familiar with CVS. These
instructions install the client and server software used to
manipulate a Subversion
repository. Creation of a repository is covered at Running a
Subversion Server.
This package is known to build and work properly using an LFS-7.3
platform.
Package Information
Subversion Dependencies
Required
SQLite-3.7.16.2, Apr-Util-1.5.2 and
neon-0.29.6 or serf.
If you require the Berkeley DB
back-end hooks in Subversion to
build or support BDB based repositories, you must have APR-util linked to the Berkeley DB library.
Optional
Python-2.7.5 (required to run the test suite),
Berkeley DB-5.3.21, Cyrus
SASL-2.1.26, OpenSSL-1.0.1e, D-Bus
GLib Bindings-0.100.2, gnome-keyring-3.6.3, KWallet from KDE and
Apache-2.4.4.
Optional (for the Java Bindings)
One of OpenJDK-1.7.0.9, Dante, or Jikes,
and JUnit-4.10 (to test the Java bindings)
Optional (for the SWIG Bindings)
SWIG and Python-2.7.5.
User Notes: http://wiki.linuxfromscratch.org/blfs/wiki/subversion
Installation of Subversion
Install Subversion by running the
following commands:
./configure --prefix=/usr --disable-static &&
make
If you have Doxygen-1.8.4 installed and you wish to build
the API documentation, issue: doxygen
doc/doxygen.conf.
If you passed the --enable-javahl
parameter to configure and wish to build the
Java bindings, issue the following command:
make javahl
Perl and/or Python
If you have a multi core CPU and normally run make with multiple jobs (eg
make -j4) then a bug
in the Makefile will prevent the
Perl bindings compiling correctly.
Fix the Makefile with this sed:
sed -i 's#Makefile.PL.in$#& libsvn_swig_perl#' Makefile.in &&
To compile the Perl and/or
Python bindings issue any or all
of the following commands:
make swig-pl &&
make swig-py
To test the results, issue: make
check.
To test the results of the Java bindings build, issue make check-javahl. Note you must
have the JUnit testing framework
installed.
To test the results of any or all of the SWIG bindings, you can use the following
commands:
make check-swig-pl &&
make check-swig-py
Now, as the root user:
make install &&
install -v -m755 -d /usr/share/doc/subversion-1.7.8 &&
cp -v -R doc/* \
/usr/share/doc/subversion-1.7.8
If you built the Java bindings, issue the following command as the
root user to install them:
make install-javahl
If you built any of the SWIG
bindings, issue any or all of the following commands as the
root user to install them:
make install-swig-pl &&
make install-swig-py
In order for Python to
automatically discover the bindings, add /usr/lib/svn-python to the PYTHONPATH environment variable to the system or
personal profiles.