Difference between revisions of "Subversion"

From CBLFS
Jump to navigationJump to search
 
(24 intermediate revisions by 7 users not shown)
Line 2: Line 2:
 
|-valign="top"
 
|-valign="top"
 
!Download Source:
 
!Download Source:
| http://subversion.tigris.org/downloads/subversion-deps-{{Subversion-Version}}.tar.bz2
+
| http://mirrors.sonic.net/apache/subversion/subversion-{{Subversion-Version}}.tar.bz2
|-
 
!Required Patch:
 
| http://svn.cross-lfs.org/svn/repos/patches/subversion/subversion-{{Subversion-Version}}-build_fix-1.patch
 
|-
 
 
|}
 
|}
  
Line 12: Line 8:
  
  
{{Package-Introduction|The goal of the Subversion project is to build a version control system that is a compelling replacement for CVS in the open source community. At the moment, the [http://www.linuxfromscratch.org/lfs/ LFS], [http://www.linuxfromscratch.org/blfs/ BLFS], and [http://trac.cross-lfs.org CLFS] projects all use subversion to maintain their books.|http://subversion.tigris.org/}}
+
{{Package-Introduction|The goal of the Subversion project is to build a version control system that is a compelling replacement for CVS in the open source community. At the moment, the [http://www.linuxfromscratch.org/lfs/ LFS], [http://www.linuxfromscratch.org/blfs/ BLFS], and [http://trac.cross-lfs.org CLFS] projects all use subversion to maintain their books.|http://subversion.apache.org/}}
  
 
== Dependencies ==
 
== Dependencies ==
 +
 +
{{Note|The Subversion 1.7 releases have a get-deps.sh script in the source directory to download required dependencies as a separate dependency file is not available anymore. Run the script if you do not want to build the required dependencies separately.}}
  
 
=== Required ===
 
=== Required ===
Line 20: Line 18:
 
* [[APR-util]]
 
* [[APR-util]]
 
* [[Serf]]
 
* [[Serf]]
 +
* [[SQLite3]]
  
 
=== Optional ===
 
=== Optional ===
 
* [[Python]]
 
* [[Python]]
* [[Apache]]
+
* [[Apache]]   Required for mod_dav_svn
 
* [[JDK]]
 
* [[JDK]]
 
* [[JUnit]]
 
* [[JUnit]]
Line 35: Line 34:
 
* [[SWIG]]
 
* [[SWIG]]
 
* [[Ruby]]
 
* [[Ruby]]
 +
* [[Neon]]
 +
* [[Unzip]] for the get-deps.sh script for downloading dependencies
 +
 +
{{Note|If not using neon you may want to pass --without-neon for configure to work properly.}}
  
 
== Non-Multilib ==
 
== Non-Multilib ==
Line 40: Line 43:
 
Compile the package:
 
Compile the package:
  
./configure --prefix=/usr --with-serf=/usr &&
+
  ./configure --prefix=/usr --with-serf=/usr &&
  make local-all
+
  make
  
 
Install the package:
 
Install the package:
  
  make local-install &&
+
  make install
find doc -type d -exec chmod 755 {} \; &&
 
find doc -type f -exec chmod 644 {} \; &&
 
install -v -m755 -d /usr/share/doc/subversion-{{Subversion-Version}} &&
 
cp -v -R doc/* /usr/share/doc/subversion-{{Subversion-Version}}
 
  
 
== Multilib ==
 
== Multilib ==
Line 59: Line 58:
 
  CC="gcc ${BUILD32}" CXX="g++ ${BUILD32}" USE_ARCH=32 \
 
  CC="gcc ${BUILD32}" CXX="g++ ${BUILD32}" USE_ARCH=32 \
 
  ./configure --prefix=/usr --with-serf=/usr &&
 
  ./configure --prefix=/usr --with-serf=/usr &&
  make local-all
+
  make
  
 
Install the package
 
Install the package
  
  make local-install
+
  make install
  
 
=== N32 ===
 
=== N32 ===
Line 70: Line 69:
  
 
  CC="gcc ${BUILDN32}" CXX="g++ ${BUILDN32}" USE_ARCH=n32 \
 
  CC="gcc ${BUILDN32}" CXX="g++ ${BUILDN32}" USE_ARCH=n32 \
  ./configure --prefix=/usr --with-serf=/usr &&
+
  ./configure --prefix=/usr --with-serf=/usr \
 +
    --libdir=/usr/lib32 &&
 
  sed -i 's@/usr/lib/@/usr/lib32/@g' Makefile &&
 
  sed -i 's@/usr/lib/@/usr/lib32/@g' Makefile &&
  make local-all
+
  make
  
 
Install the package
 
Install the package
  
  make local-install
+
  make install
  
 
=== 64Bit ===
 
=== 64Bit ===
Line 83: Line 83:
  
 
  CC="gcc ${BUILD64}" CXX="g++ ${BUILD64}" USE_ARCH=64 \
 
  CC="gcc ${BUILD64}" CXX="g++ ${BUILD64}" USE_ARCH=64 \
  ./configure --prefix=/usr --with-serf=/usr &&
+
  ./configure --prefix=/usr --with-serf=/usr \
 +
    --libdir=/usr/lib64 &&
 
  sed -i 's@/usr/lib/@/usr/lib64/@g' Makefile &&
 
  sed -i 's@/usr/lib/@/usr/lib64/@g' Makefile &&
  make local-all
+
  make
  
 
Install the package
 
Install the package
  
  make local-install
+
  make install
  
 
=== Install Documents ===
 
=== Install Documents ===
Line 134: Line 135:
 
! svnversion
 
! svnversion
 
| is used to report the version number and state of a working Subversion repository copy.
 
| is used to report the version number and state of a working Subversion repository copy.
|-valign="top"
 
! neon-config
 
| is a script which provides information about an installed copy of the neon library.
 
|-valign="top"
 
! apr-config
 
| ???
 
 
|-valign="top"
 
|-valign="top"
 
! libsvn_*.{so,a}
 
! libsvn_*.{so,a}
 
| are the support libraries used by the Subversion programs.
 
| are the support libraries used by the Subversion programs.
 
|-valign="top"
 
|-valign="top"
! libneon.{so,a}
 
| is used as a high-level interface to common HTTP and WebDAV methods.
 
 
|-valign="top"
 
|-valign="top"
 
! mod_authz_svn.so
 
! mod_authz_svn.so

Latest revision as of 13:27, 17 October 2012

Download Source: http://mirrors.sonic.net/apache/subversion/subversion-1.7.8.tar.bz2


Introduction to Subversion

The goal of the Subversion project is to build a version control system that is a compelling replacement for CVS in the open source community. At the moment, the LFS, BLFS, and CLFS projects all use subversion to maintain their books.

Project Homepage: http://subversion.apache.org/

Dependencies

Caution.png

Note

The Subversion 1.7 releases have a get-deps.sh script in the source directory to download required dependencies as a separate dependency file is not available anymore. Run the script if you do not want to build the required dependencies separately.

Required

Optional

Caution.png

Note

If not using neon you may want to pass --without-neon for configure to work properly.

Non-Multilib

Compile the package:

 ./configure --prefix=/usr --with-serf=/usr &&
make

Install the package:

make install

Multilib

32Bit

Compile the package:

CC="gcc ${BUILD32}" CXX="g++ ${BUILD32}" USE_ARCH=32 \
./configure --prefix=/usr --with-serf=/usr &&
make

Install the package

make install

N32

Compile the package:

CC="gcc ${BUILDN32}" CXX="g++ ${BUILDN32}" USE_ARCH=n32 \
./configure --prefix=/usr --with-serf=/usr \
    --libdir=/usr/lib32 &&
sed -i 's@/usr/lib/@/usr/lib32/@g' Makefile &&
make

Install the package

make install

64Bit

Compile the package:

CC="gcc ${BUILD64}" CXX="g++ ${BUILD64}" USE_ARCH=64 \
./configure --prefix=/usr --with-serf=/usr \
    --libdir=/usr/lib64 &&
sed -i 's@/usr/lib/@/usr/lib64/@g' Makefile &&
make

Install the package

make install

Install Documents

Install the documents

find doc -type d -exec chmod 755 {} \; &&
find doc -type f -exec chmod 644 {} \; &&
install -v -m755 -d /usr/share/doc/subversion-1.7.8 &&
cp -v -R doc/* /usr/share/doc/subversion-1.7.8

Contents

Installed Programs: svn, svnadmin, svndumpfilter, svnlook, svnserve, and svnversion
Installed Libraries: libsvn*.{so,a} and optionally, mod_dav_svn.so, and mod_authz_svn.so Apache HTTP DSO modules
Installed Directories: /etc/subversion, /usr/include/subversion-1, /usr/lib/perl5/site_perl/5.8.8/i686-linux/auto/SVN (optional), /usr/lib/perl5/site_perl/5.8.8/i686-linux/SVN (optional), /usr/lib/svn-javahl (optional), /usr/lib/svn-python and /usr/share/doc/subversion-1.7.8

Short Description

svn is a command-line client program used to access Subversion repositories.
svnadmin is a tool for creating, tweaking or repairing a Subversion repository.
svndumpfilter is a program for filtering Subversion repository dumpfile format streams.
svnlook is a tool for inspecting a Subversion repository.
svnserve is a custom standalone server program, able to run as a daemon process or invoked by SSH.
svnversion is used to report the version number and state of a working Subversion repository copy.
libsvn_*.{so,a} are the support libraries used by the Subversion programs.
mod_authz_svn.so is a plug-in module for the Apache HTTP server, used to authenticate users to a Subversion repository over the Internet or an intranet.
mod_dav_svn.so is a plug-in module for the Apache HTTP server, used to make a Subversion repository available to others over the Internet or an intranet.