source: general/prog/subversion.xml@ 7d68b92

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 7.10 7.7 7.8 7.9 8.0 8.1 8.2 8.3 8.4 9.0 9.1 basic bdubbs/svn elogind kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts lazarus lxqt nosym perl-modules plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition trunk upgradedb xry111/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since 7d68b92 was 7d68b92, checked in by Bruce Dubbs <bdubbs@…>, 9 years ago

Tags for programs needed to build LFS/BLFS books

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@15539 af4574ff-66df-0310-9fd7-8a98e5e911e0

  • Property mode set to 100644
File size: 17.0 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
7 <!--<!ENTITY subversion-download-http
8 "http://archive.apache.org/dist/subversion/subversion-&subversion-version;.tar.bz2">-->
9 <!ENTITY subversion-download-http
10 "http://www.apache.org/dist/subversion/subversion-&subversion-version;.tar.bz2">
11 <!ENTITY subversion-download-ftp " ">
12 <!ENTITY subversion-md5sum "766a89bbbb388f8eb76166672d3b9e49">
13 <!ENTITY subversion-size "6.6 MB">
14 <!ENTITY subversion-buildsize "123 MB (272 MB with all bindings and API documentation built; additional 694 MB for tests)">
15 <!ENTITY subversion-time "1.9 SBU (3.6 SBU with all bindings and API documentation built; additional 11 SBU for tests)">
16]>
17
18<sect1 id="subversion" xreflabel="Subversion-&subversion-version;">
19 <?dbhtml filename="subversion.html"?>
20
21 <sect1info>
22 <othername>$LastChangedBy$</othername>
23 <date>$Date$</date>
24 </sect1info>
25
26 <title>Subversion-&subversion-version;</title>
27
28 <indexterm zone="subversion">
29 <primary sortas="a-Subversion">Subversion</primary>
30 </indexterm>
31
32 <sect2 role="package">
33 <title>Introduction to Subversion</title>
34
35 <para>
36 <application>Subversion</application> is a version control system that is
37 designed to be a compelling replacement for <application>CVS</application>
38 in the open source community. It extends and enhances
39 <application>CVS</application>' feature set, while maintaining a similar
40 interface for those already familiar with <application>CVS</application>.
41 These instructions install the client and server software used to
42 manipulate a <application>Subversion</application> repository. Creation of
43 a repository is covered at <xref linkend="svnserver"/>.
44 </para>
45
46 &lfs77_checked;
47
48 <bridgehead renderas="sect3">Package Information</bridgehead>
49 <itemizedlist spacing="compact">
50 <listitem>
51 <para>
52 Download (HTTP): <ulink url="&subversion-download-http;"/>
53 </para>
54 </listitem>
55 <listitem>
56 <para>
57 Download (FTP): <ulink url="&subversion-download-ftp;"/>
58 </para>
59 </listitem>
60 <listitem>
61 <para>
62 Download MD5 sum: &subversion-md5sum;
63 </para>
64 </listitem>
65 <listitem>
66 <para>
67 Download size: &subversion-size;
68 </para>
69 </listitem>
70 <listitem>
71 <para>
72 Estimated disk space required: &subversion-buildsize;
73 </para>
74 </listitem>
75 <listitem>
76 <para>
77 Estimated build time: &subversion-time;
78 </para>
79 </listitem>
80 </itemizedlist>
81
82 <bridgehead renderas="sect3">Subversion Dependencies</bridgehead>
83
84 <bridgehead renderas="sect4">Required</bridgehead>
85 <para role="required">
86 <xref linkend="apr-util"/> and
87 <xref linkend="sqlite"/>
88 </para>
89
90 <bridgehead renderas="sect4">Recommended</bridgehead>
91 <para role="recommended">
92 <xref linkend="serf"/> (for handling http:// and https:// URLs)
93 </para>
94
95<!-- support for berkeley db is deprecated since 1.8
96 <note>
97 <para>
98 If you require the <application>Berkeley DB</application> back-end hooks
99 in <application>Subversion</application> to build or support BDB based
100 repositories, you must have <application>APR-util</application> linked to
101 the <application>Berkeley DB</application> library.
102 </para>
103 </note>
104-->
105
106 <bridgehead renderas="sect4">Optional</bridgehead>
107 <para role="optional">
108 <xref linkend="apache"/>,
109<!-- support for berkeley db is deprecated since 1.8
110 <xref linkend="db"/>,
111-->
112 <xref linkend="cyrus-sasl"/>,
113 <xref linkend="dbus"/>,
114 <xref linkend="kdelibs"/> (for <ulink url="http://utils.kde.org/projects/kwalletmanager/">KWallet</ulink> support),
115 <xref linkend="python2"/> (with sqlite support for the tests),
116 <xref linkend="ruby"/>, and
117 <xref linkend="swig"/> (for building Perl, Python and Ruby bindings)
118 </para>
119
120 <bridgehead renderas="sect4">Optional (for the Java Bindings)</bridgehead>
121 <para role="optional">
122 One of <xref linkend="openjdk"/>,
123 <ulink url="http://www.inet.no/dante/">Dante</ulink> or
124 <ulink url="http://oss.software.ibm.com/developerworks/opensource/jikes/">Jikes</ulink>,
125 and <xref linkend="junit"/> (to test the Java bindings)
126 </para>
127
128 <para condition="html" role="usernotes">
129 User Notes: <ulink url="&blfs-wiki;/subversion"/>
130 </para>
131 </sect2>
132
133 <sect2 role="installation">
134 <title>Installation of Subversion</title>
135
136 <para>
137 Install <application>Subversion</application> by running the following
138 commands:
139 </para>
140
141<screen><userinput>./configure --prefix=/usr \
142 --disable-static \
143 --with-apache-libexecdir &amp;&amp;
144make</userinput></screen>
145
146 <para>
147 If you have <xref linkend="doxygen"/> installed and you wish to build the
148 API documentation, issue: <command>doxygen doc/doxygen.conf</command>.
149 </para>
150
151 <para>
152 If you passed the <option>--enable-javahl</option> parameter to
153 <command>configure</command> and wish to build the Java bindings, issue
154 the following command:
155 </para>
156 <para>
157 <screen><command>make javahl</command></screen>
158 </para>
159
160 <para>
161 If you have a multi core CPU and normally run <command>make</command> with
162 multiple jobs (eg <command>make -j4</command>) then a bug in the
163 <filename>Makefile</filename> will prevent the
164 <application>Perl</application> bindings compiling correctly. Fix the
165 <filename>Makefile</filename> with:
166 </para>
167 <para>
168 <screen><command>sed -i 's#Makefile.PL.in$#&amp; libsvn_swig_perl#' Makefile.in</command></screen>
169 </para>
170
171 <para>
172 If you want to compile <application>Perl</application>,
173 <application>Python2</application>, or <application>Ruby</application>
174 bindings, issue any of the following command:
175 </para>
176 <para>
177 <screen><command>make swig-pl</command> # for <application>Perl</application>
178<command>make swig-py \
179 swig_pydir=/usr/lib/python&python2-majorver;/site-packages/libsvn \
180 swig_pydir_extra=/usr/lib/python&python2-majorver;/site-packages/svn</command> # for <application>Python</application>
181<command>make swig-rb</command> # for <application>Ruby</application></screen>
182 </para>
183
184 <para>
185 To test the results, issue: <command>make -k check</command>. One test
186 (wc-queries-test) is known to fail with recent versions of SQLite.
187 </para>
188
189 <para>
190 To test the results of the Java bindings build, issue
191 <command>make check-javahl</command>. Note you must have the
192 <application>JUnit</application> testing framework installed.
193 </para>
194
195 <para>
196 To test the results of any of the <application>SWIG</application>
197 bindings, you can use any of the following commands:
198 <command>make check-swig-pl</command>,
199 <command> make check-swig-py</command>, or
200 <command>make check-swig-rb</command>.
201 </para>
202
203
204 <para>
205 Now, as the <systemitem class="username">root</systemitem> user:
206 </para>
207
208<screen role="root"><userinput>make -j1 install &amp;&amp;
209install -v -m755 -d /usr/share/doc/subversion-&subversion-version; &amp;&amp;
210cp -v -R doc/* \
211 /usr/share/doc/subversion-&subversion-version;</userinput></screen>
212
213 <para>
214 If you built the Java bindings, issue the following command as the
215 <systemitem class="username">root</systemitem> user to install them:
216 </para>
217 <para>
218 <screen> <command>make install-javahl</command></screen>
219 </para>
220
221 <para>
222 If you built the <application>Perl</application>,
223 <application>Python2</application>, or
224 <application>Ruby</application> bindings, issue any of the following
225 commands as the <systemitem class="username">root</systemitem> user
226 to install them:
227 </para>
228 <para>
229 <screen><command>make install-swig-pl</command>
230<command>make install-swig-py \
231 swig_pydir=/usr/lib/python&python2-majorver;/site-packages/libsvn \
232 swig_pydir_extra=/usr/lib/python&python2-majorver;/site-packages/svn</command>
233<command>make install-swig-rb</command></screen>
234 </para>
235
236 </sect2>
237
238 <sect2 role="commands">
239 <title>Command Explanations</title>
240
241 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
242 href="../../xincludes/static-libraries.xml"/>
243
244 <para>
245 <parameter>--with-apache-libexecdir</parameter>:
246 If <xref linkend="apache"/> is installed, the shared
247 <application>Apache</application> modules are
248 built. This switch allows to have those modules installed to
249 <application>Apache</application>'s configured module dir instead
250 of <filename class="directory">/usr/libexec</filename>. It has no effect
251 if <application>Apache</application> is not installed.
252 </para>
253
254 </sect2>
255
256 <sect2 role="configuration">
257 <title>Configuring Subversion</title>
258
259 <sect3 id="subversion-config">
260 <title>Config Files</title>
261
262 <para>
263 <filename>~/.subversion/config</filename> and
264 <filename>/etc/subversion/config</filename>
265 </para>
266
267 <indexterm zone="subversion subversion-config">
268 <primary sortas="e-AA.subversion/config">~/.subversion/config</primary>
269 </indexterm>
270
271 <indexterm zone="subversion subversion-config">
272 <primary sortas="e-etc-subversion-config">/etc/subversion/config</primary>
273 </indexterm>
274 </sect3>
275
276 <sect3>
277 <title>Configuration Information</title>
278
279 <para>
280 <filename>/etc/subversion/config</filename> is the
281 <application>Subversion</application> system-wide configuration file.
282 This file is used to specify defaults for different
283 <command>svn</command> commands.
284 </para>
285
286 <para>
287 <filename>~/.subversion/config</filename> is the user's personal
288 configuration file. It is used to override the system-wide defaults set
289 in <filename>/etc/subversion/config</filename>.
290 </para>
291 </sect3>
292
293 </sect2>
294
295 <sect2 role="content">
296 <title>Contents</title>
297
298 <segmentedlist>
299 <segtitle>Installed Programs</segtitle>
300 <segtitle>Installed Libraries</segtitle>
301 <segtitle>Installed Directories</segtitle>
302
303 <seglistitem>
304 <seg>
305 svn, svnadmin, svndumpfilter, svnlook, svnmucc, svnrdump, svnserve,
306 svnsync, and svnversion
307 </seg>
308 <seg>
309 libsvn_*-1.so and optionally, a Java library, the mod_dav_svn.so and
310 and mod_authz_svn.so <application>Apache HTTP</application> DSO
311 modules and various <application>Perl</application>,
312 <application>Python</application> and
313 <application>Ruby</application> modules.
314 </seg>
315 <seg>
316 /usr/include/subversion-1,
317 /usr/lib/perl5/site_perl/&lfs-perl-version;/{,auto/}SVN,
318 /usr/lib/python2.7/site-packages/{libsvn,svn},
319 /usr/lib/ruby/site_ruby//&lt;x.y.z&gt;/{,&lt;arch-linux&gt;-linux/}svn,
320 /usr/lib/svn-javahl, and
321 /usr/share/doc/subversion-&subversion-version;
322<!-- /usr/lib/svn-python/libsvn (optional),
323 /usr/lib/svn-python/svn (optional),
324-->
325 </seg>
326 </seglistitem>
327 </segmentedlist>
328
329 <variablelist>
330 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
331 <?dbfo list-presentation="list"?>
332 <?dbhtml list-presentation="table"?>
333
334 <varlistentry id="svn">
335 <term><command>svn</command></term>
336 <listitem>
337 <para>
338 is a command-line client program used to access
339 <application>Subversion</application> repositories.
340 </para>
341 <indexterm zone="subversion svn">
342 <primary sortas="b-svn">svn</primary>
343 </indexterm>
344 </listitem>
345 </varlistentry>
346
347 <varlistentry id="svnadmin">
348 <term><command>svnadmin</command></term>
349 <listitem>
350 <para>
351 is a tool for creating, tweaking or repairing a
352 <application>Subversion</application> repository.
353 </para>
354 <indexterm zone="subversion svnadmin">
355 <primary sortas="b-svnadmin">svnadmin</primary>
356 </indexterm>
357 </listitem>
358 </varlistentry>
359
360 <varlistentry id="svndumpfilter">
361 <term><command>svndumpfilter</command></term>
362 <listitem>
363 <para>
364 is a program for filtering <application>Subversion</application>
365 repository dumpfile format streams.
366 </para>
367 <indexterm zone="subversion svndumpfilter">
368 <primary sortas="b-svndumpfilter">svndumpfilter</primary>
369 </indexterm>
370 </listitem>
371 </varlistentry>
372
373 <varlistentry id="svnlook">
374 <term><command>svnlook</command></term>
375 <listitem>
376 <para>
377 is a tool for inspecting a <application>Subversion</application>
378 repository.
379 </para>
380 <indexterm zone="subversion svnlook">
381 <primary sortas="b-svnlook">svnlook</primary>
382 </indexterm>
383 </listitem>
384 </varlistentry>
385
386 <varlistentry id="svnmucc">
387 <term><command>svnmucc</command></term>
388 <listitem>
389 <para>
390 is a Multiple URL Command Client for <application>Subversion</application>.
391 </para>
392 <indexterm zone="subversion svnmucc">
393 <primary sortas="b-svnmucc">svnmucc</primary>
394 </indexterm>
395 </listitem>
396 </varlistentry>
397
398 <varlistentry id="svnrdump">
399 <term><command>svnrdump</command></term>
400 <listitem>
401 <para>
402 is a tool for dumping or loading a remote
403 <application>Subversion</application> repository.
404 </para>
405 <indexterm zone="subversion svnrdump">
406 <primary sortas="b-svnrdump">svnrdump</primary>
407 </indexterm>
408 </listitem>
409 </varlistentry>
410
411 <varlistentry id="svnserve">
412 <term><command>svnserve</command></term>
413 <listitem>
414 <para>
415 is a custom standalone server program, able to run as a daemon
416 process or invoked by SSH.
417 </para>
418 <indexterm zone="subversion svnserve">
419 <primary sortas="b-svnserve">svnserve</primary>
420 </indexterm>
421 </listitem>
422 </varlistentry>
423
424 <varlistentry id="svnsync">
425 <term><command>svnsync</command></term>
426 <listitem>
427 <para>
428 is a <application>Subversion</application> repository
429 synchronisation tool.
430 </para>
431 <indexterm zone="subversion svnsync">
432 <primary sortas="b-svnsync">svnsync</primary>
433 </indexterm>
434 </listitem>
435 </varlistentry>
436
437 <varlistentry id="svnversion">
438 <term><command>svnversion</command></term>
439 <listitem>
440 <para>
441 is used to report the version number and state of a working
442 <application>Subversion</application> repository copy.
443 </para>
444 <indexterm zone="subversion svnversion">
445 <primary sortas="b-svnversion">svnversion</primary>
446 </indexterm>
447 </listitem>
448 </varlistentry>
449
450 <varlistentry id="libsvn_star-1">
451 <term><filename class="libraryfile">libsvn_*-1.so</filename></term>
452 <listitem>
453 <para>
454 are the support libraries used by the
455 <application>Subversion</application> programs.
456 </para>
457 <indexterm zone="subversion libsvn_star-1">
458 <primary sortas="c-libsvn_star-1">libsvn_*-1.so</primary>
459 </indexterm>
460 </listitem>
461 </varlistentry>
462
463 <varlistentry id="mod_authz_svn">
464 <term><filename class="libraryfile">mod_authz_svn.so</filename></term>
465 <listitem>
466 <para>
467 is a plug-in module for the <application>Apache</application> HTTP
468 server, used to authenticate users to a
469 <application>Subversion</application> repository over the Internet
470 or an intranet.
471 </para>
472 <indexterm zone="subversion mod_authz_svn">
473 <primary sortas="c-mod_authz_svn">mod_authz_svn.so</primary>
474 </indexterm>
475 </listitem>
476 </varlistentry>
477
478 <varlistentry id="mod_dav_svn">
479 <term><filename class="libraryfile">mod_dav_svn.so</filename></term>
480 <listitem>
481 <para>
482 is a plug-in module for the <application>Apache</application> HTTP
483 server, used to make a <application>Subversion</application>
484 repository available to others over the Internet or an intranet.
485 </para>
486 <indexterm zone="subversion mod_dav_svn">
487 <primary sortas="c-mod_authz_svn">mod_dav_svn.so</primary>
488 </indexterm>
489 </listitem>
490 </varlistentry>
491
492 </variablelist>
493
494 </sect2>
495
496</sect1>
Note: See TracBrowser for help on using the repository browser.