Introduction à Subversion
Subversion est un système de
contrôle des versions prévu pour être un superbe remplacement de
CVS dans la communauté du libre.
Il améliore et prend en charge les caractéristiques de CVS tout en conservant une interface identique
pour ceux familiers de CVS. Ces
instructions installent le logiciels client et serveur utilisés
pour manipuler un dépôt Subversion. La création d'un dépôt est
couverte dans Exécuter un serveur
subversion.
Ce paquet est connu pour se construire correctement sur une
plateforme LFS-7.9.
Informations sur le paquet
-
Téléchargement (HTTP) :
http://www.apache.org/dist/subversion/subversion-1.9.3.tar.bz2
-
Téléchargement (FTP) :
-
Somme de contrôle MD5 du téléchargement :
243036eb28b50ce517fc228eb3250add
-
Taille du téléchargement : 7.6 Mo
-
Estimation de l'espace disque requis : 429 Mo (avec tous
les bindings la documentation de l'API - 791 Mo
supplémentaires avec les tests)
-
Estimation du temps de construction : 2.9 SBU (avec tous
les bindings et la documentation de l'API - 67 SBU
supplémentaires avec les tests))
Dépendances de Subversion
Requises
Apr-Util-1.5.4 et SQLite-3.11.0
Recommandées
Serf-1.3.8 (pour prendre en charge les URL http://
et https://)
Facultatives
Apache-2.4.18, Cyrus
SASL-2.1.26, D-Bus-1.10.6, kdelibs-4.14.16
(pour KWallet
support), Python-2.7.11 (avec le support de sqlite pour
les tests), Ruby-2.3.0 et SWIG-3.0.8 (pour construire les bindings
Perl, Python et Ruby)
Facultatives (pour les bindings Java)
Un parmi OpenJDK-1.8.0.72, Dante et Jikes, et JUnit-4.11 (pour tester les
bindings Java)
Notes utilisateur : http://wiki.linuxfromscratch.org/blfs/wiki/subversion
Installation de Subversion
Note
Ce paquet peut échouer pendant la phase de make quand on utilise
de multiples processeurs. Si cela se produit essayez de continuer
avec make -j1 ou
recommencez entièrement le processus de construction avec des
sources fraîches en utilisant -j1.
Installez Subversion en lançant
les commandes suivantes :
./configure --prefix=/usr \
--disable-static \
--with-apache-libexecdir &&
make
Si vous avez installé Doxygen-1.8.11 et si vous souhaitez construire
la documentation de l'API, lancez : doxygen doc/doxygen.conf.
Si vous avez passé le paramètre --enable-javahl
à configure et si vous souhaitez
construire les bindings Java, tapez la commande :
make javahl
Si vous voulez compiler les bindings Perl, Python2, ou Ruby, tapez les commandes suivantes :
make swig-pl # pour Perl
make swig-py \
swig_pydir=/usr/lib/python2.7/site-packages/libsvn \
swig_pydir_extra=/usr/lib/python2.7/site-packages/svn # pour Python
make swig-rb # pour Ruby
Pour tester les résultats lancez : make check.
Les tests des liaisons Java, make
check-javahl, échouent à cause d'erreurs dans la
suite de tests.
Pour tester les résultats de certaines des bindings SWIG, vous pouvez utiliser les commandes
suivantes : make
check-swig-pl, make
check-swig-py, ou make check-swig-rb.
Les tests des liaisons Ruby, make
check-swig-rb, échoue à cause d'erreurs dans la
suite de tests.
Maintenant, en tant qu'utilisateur root
:
make install &&
install -v -m755 -d /usr/share/doc/subversion-1.9.3 &&
cp -v -R doc/* \
/usr/share/doc/subversion-1.9.3
Si vous construisez les liaisons Java, tapez les commandes
suivantes en tant qu'utilisateur root
pour les installer :
make install-javahl
Si vous construisez les bindings Perl, Python2, ou Ruby, tapez une des commandes suivantes en
tant qu'utilisateur root
pour les
installer :
make install-swig-pl
make install-swig-py \
swig_pydir=/usr/lib/python2.7/site-packages/libsvn \
swig_pydir_extra=/usr/lib/python2.7/site-packages/svn
make install-swig-rb
Explication des commandes
--disable-static
: Ce
paramètre empêche l'installation des versions statiques des
bibliothèques.
--with-apache-libexecdir
: Si
Apache-2.4.18 est installé, les modules
partagés de Apache sont
construits. Ce paramètre permet d'avoir ces modules installé dans
le répertoire configuré de Apache
au lieu de /usr/libexec
. Il n'a pas
d'effet si Apache n'est pas
installé.
---disable-gmock
: Ne pas utiliser
l'outil de tests Googlemock.