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
Apr-Util-1.5.2, neon-0.29.6 or
serf,
and SQLite-3.7.17
Note
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
Apache-2.4.4, Berkeley
DB-5.3.21, Cyrus SASL-2.1.26, D-Bus GLib Bindings-0.100.2, libgnome-keyring-3.6.0, kdelibs-4.10.3 (for KWallet
support), OpenSSL-1.0.1e, Python-2.7.5 (required to
run the test suite) and Ruby-2.0.0 (version 1.8.x)
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
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
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, Python or Ruby bindings issue any of the following
commands:
make swig-pl &&
make swig-py &&
make swig-rb
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 of the SWIG bindings, you can use any of the
following commands:
make check-swig-pl &&
make check-swig-py &&
make check-swig-rb
Now, as the root user:
make install &&
install -v -m755 -d /usr/share/doc/subversion-1.7.10 &&
cp -v -R doc/* \
/usr/share/doc/subversion-1.7.10
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 of the following commands as the root user to install them:
make install-swig-pl &&
make install-swig-py &&
make install-swig-rb
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.