Author: lyalyakin
Date: Tue Sep  8 14:52:19 2026
New Revision: 1938011

Log:
Remove section III (Building a Subversion server) from INSTALL.

The build-related content of the section has been moved to the dedicated
Apache HTTP Server entry of the Dependencies in Detail section. The rest of
the content duplicates what's already in SVNBook and has been removed.

* INSTALL
  (Contents): Update the table of contents.
  (II.E): New subsection with a brief summary of the two servers (svnserve
   and httpd).
  (III): Remove.
  (III, IV): Renumber sections IV and V to III and IV.
  (IV.12): Remove the reference to section III.D.

Modified:
   subversion/trunk/INSTALL

Modified: subversion/trunk/INSTALL
==============================================================================
--- subversion/trunk/INSTALL    Tue Sep  8 14:51:40 2026        (r1938010)
+++ subversion/trunk/INSTALL    Tue Sep  8 14:52:19 2026        (r1938011)
@@ -18,17 +18,12 @@ Contents:
        B. Building with CMake (Windows and Unix)
        C. Building with vcproj/vcxproj (Windows only, deprecated)
        D. Running the test suite
+       E. Building a Subversion server
 
-   III. BUILDING A SUBVERSION SERVER
-       A. Setting Up Apache Httpd
-       B. Making and Installing the Subversion Apache Server Module
-       C. Configuring Apache Httpd for Subversion
-       D. Running and Testing
-       E. Alternative:  'svnserve' and ra_svn
+   III. PROGRAMMING LANGUAGE BINDINGS (PYTHON, PERL, RUBY, JAVA)
 
-    IV. PROGRAMMING LANGUAGE BINDINGS (PYTHON, PERL, RUBY, JAVA)
+    IV. DEPENDENCIES IN DETAIL
 
-     V. DEPENDENCIES IN DETAIL
 
 
 
@@ -420,271 +415,30 @@ II.   INSTALLATION
 
       Run the ctests command from the build directory.
 
-
-III.  BUILDING A SUBVERSION SERVER
-      ============================
-
-      Subversion has two servers you can choose from:  svnserve and
-      Apache.  svnserve is a small, lightweight server program that is
-      automatically compiled when you build Subversion's source.  Apache
-      is a more heavyweight HTTP server, but tends to have more features.
-
-      This section primarily focuses on how to build Apache and the
-      accompanying mod_dav_svn server module for it.  If you plan to use
-      svnserve instead, jump right to section E for a quick explanation.
-
-
-  A.  Setting Up Apache Httpd
-      -----------------------
-
-      1.  Obtaining and Installing Apache Httpd 2
-
-      Subversion tries to compile against the latest released version
-      of Apache httpd 2.2+.  The easiest thing for you to do is download
-      a source tarball of the latest release and unpack that.
-
-      If you have questions about the Apache httpd 2.2 build, please consult
-      the httpd install documentation:
-
-          https://httpd.apache.org/docs-2.2/install.html
-
-      At the top of the httpd tree:
-
-          $ ./buildconf
-          $ ./configure --enable-dav --enable-so --enable-maintainer-mode
-
-      The first arg says to build mod_dav.
-
-      The second arg says to enable shared module support which is needed
-      for a typical compile of mod_dav_svn (see below).
-
-      The third arg says to include debugging information.  If you
-      built Subversion with --enable-maintainer-mode, then you should
-      do the same for Apache; there can be problems if one was
-      compiled with debugging and the other without.
-
-      Note: if you have multiple db versions installed on your system,
-      Apache might link to a different one than Subversion, causing
-      failures when accessing the repository through Apache.  To prevent
-      this from happening, you have to tell Apache which db version to
-      use and where to find db.  Add --with-dbm=db4 and
-      --with-berkeley-db=/usr/local/BerkeleyDB.4.2 to the configure
-      line.  Make sure this is the same db as the one Subversion uses.
-      This note assumes you have installed Berkeley DB 4.2.52
-      at its default locations.
-
-      You may also want to include other modules in your build. Add
-      --enable-ssl to turn on SSL support, and --enable-deflate to turn on
-      compression support, for example.  Consult the Apache documentation
-      for more details.
-
-      All instructions below assume you configured Apache to install
-      in its default location, /usr/local/apache2/; substitute
-      appropriately if you chose some other location.
-
-      Compile and install apache:
-
-          $ make && make install
-
-
-  B.  Making and Installing the Subversion Apache Server Module
-      ---------------------------------------------------------
-
-      Go back into your subversion working copy and run ./autogen.sh if
-      you need to.  Then, assuming Apache httpd 2.2 is installed in the
-      standard location, run:
-
-          $ ./configure
-
-      Note: do *not* configure subversion with "--disable-shared"!
-      mod_dav_svn *must* be built as a shared library, and it will
-      look for other libsvn_*.so libraries on your system.
-
-      If you see a warning message that the build of mod_dav_svn is
-      being skipped, this may be because you have Apache httpd 2.x
-      installed in a non-standard location.  You can use the
-      "--with-apxs=" option to locate the apxs script:
-
-          $ ./configure --with-apxs=/usr/local/apache2/bin/apxs
-
-      Note: it *is* possible to build mod_dav_svn as a static library
-      and link it directly into Apache. Possible, but painful. Stick
-      with the shared library for now; if you can't, then ask.
-
-          $ rm /usr/local/lib/libsvn*
-
-      If you have old subversion libraries sitting on your system,
-      libtool will link them instead of the `fresh' ones in your tree.
-      Remove them before building subversion.
-
-          $ make clean && make && make install
-
-      After the make install, the Subversion shared libraries are in
-      /usr/local/lib/.  mod_dav_svn.so should be installed in
-      /usr/local/libexec/ (or elsewhere, such as /usr/local/apache2/modules/,
-      if you passed --with-apache-libexecdir to configure).
-
-
-      Section II.C explains how to build the server on Windows.
-
-
-  C.  Configuring Apache Httpd for Subversion
-      ---------------------------------------
-
-      The following section is an abbreviated version of the
-      information in the Subversion Book
-      (https://svnbook.red-bean.com).  Please read chapter 6 for more
-      details.
-
-      The following assumes you have already created a repository.
-      For documentation on how to do that, see README.
-
-      The following also assumes that you have modified
-      /usr/local/apache2/conf/httpd.conf to reflect your setup.
-      At a minimum you should look at the User, Group and ServerName
-      directives.  Full details on setting up apache can be found at:
-      https://httpd.apache.org/docs-2.2/
-
-      First, your httpd.conf needs to load the mod_dav_svn module.
-      If you pass --enable-mod-activation to Subversion's configure,
-      'make install' target should automatically add this line for you.
-      In any case, if Apache HTTPD gives you an error like "Unknown
-      DAV provider: svn", then you may want to verify that this line
-      exists in your httpd.conf:
-
-         LoadModule dav_svn_module     modules/mod_dav_svn.so
-
-      NOTE: if you built mod_dav as a dynamic module as well, make sure
-      the above line appears after the one that loads mod_dav.so.
-
-      Next, add this to the *bottom* of your httpd.conf:
-
-      <Location /svn/repos>
-          DAV svn
-          SVNPath /absolute/path/to/repository
-      </Location>
-
-      This will give anyone unrestricted access to the repository.  If
-      you want limited access, read or write, you add these lines to
-      the Location block:
-
-          AuthType Basic
-          AuthName "Subversion repository"
-          AuthUserFile /my/svn/user/passwd/file
-
-      And:
-
-          a) For a read/write restricted repository:
-
-             Require valid-user
-
-          b) For a write restricted repository:
-
-             <LimitExcept GET PROPFIND OPTIONS REPORT>
-                 Require valid-user
-             </LimitExcept>
-
-          c) For separate restricted read and write access:
-
-             AuthGroupFile /my/svn/group/file
-
-             <LimitExcept GET PROPFIND OPTIONS REPORT>
-                 Require group svn_committers
-             </LimitExcept>
-
-             <Limit GET PROPFIND OPTIONS REPORT>
-                 Require group svn_committers
-                 Require group svn_readers
-             </Limit>
-
-      ### FIXME Tutorials section refers to old 2.0 docs
-      These are only a few simple examples.  For a complete tutorial
-      on Apache access control, please consider taking a look at the
-      tutorials found under "Security" on the following page:
-      https://httpd.apache.org/docs-2.0/misc/tutorials.html
-
-      In order for 'svn cp' to work (which is actually implemented as a
-      DAV COPY command), mod_dav needs to be able to determine the
-      hostname of the server.  A standard way of doing this is to use
-      Apache's ServerName directive to set the server's hostname.  Edit
-      your /usr/local/apache2/conf/httpd.conf to include:
-
-      ServerName svn.myserver.org
-
-      If you are using virtual hosting through Apache's NameVirtualHost
-      directive, you may need to use the ServerAlias directive to specify
-      additional names that your server is known by.
-
-      If you have configured mod_deflate to be in the server, you can enable
-      compression support for your repository by adding the following line
-      to your Location block:
-
-          SetOutputFilter DEFLATE
-
-
-      NOTE: If you are unfamiliar with an Apache directive, or not exactly
-      sure about what it does, don't hesitate to look it up in the
-      documentation: https://httpd.apache.org/docs-2.2/mod/directives.html.
-
-      NOTE: Make sure that the user 'nobody' (or whatever UID the
-      httpd process runs as) has permission to read and write the
-      Berkeley DB files!  This is a very common problem.
-
-
-  D.  Running and Testing
-      -------------------
-
-      Fire up apache 2:
-
-          $ /usr/local/apache2/bin/apachectl stop
-          $ /usr/local/apache2/bin/apachectl start
-
-      Check /usr/local/apache2/logs/error_log to make sure it started
-      up okay.
-
-      Try doing a network checkout from the repository:
-
-          $ svn co http://localhost/svn/repos wc
-
-      The most common reason this might fail is permission problems
-      reading the repository db files.  If the checkout fails, make
-      sure that the httpd process has permission to read and write to
-      the repository.  You can see all of mod_dav_svn's complaints in
-      the Apache error logfile, /usr/local/apache2/logs/error_log.
-
-      To run the regression test suite for networked Subversion, see
-      the instructions in subversion/tests/cmdline/README.
-      For advice about tracing problems, see "Debugging the server" in
-      https://subversion.apache.org/docs/community-guide/.
 
+  E.  Building a Subversion server
+      ----------------------------
 
-  E.  Alternative:  'svnserve' and ra_svn
-      -----------------------------------
+      Subversion has two servers you can choose from, svnserve and
+      Apache HTTP Server (httpd):
 
-      An alternative network layer is libsvn_ra_svn (on the client
-      side) and the 'svnserve' process on the server.  This is a
-      simple network layer that speaks a custom protocol over plain
-      TCP (documented in libsvn_ra_svn/protocol):
+      - svnserve is a small, lightweight server program that makes Subversion
+        repositories available to clients over a custom protocol.  The svnserve
+        server is automatically compiled when you build Subversion's source.
 
-         $ svnserve -d     # becomes a background daemon
-         $ svn checkout svn://localhost/usr/local/svn/repository
+      - Apache HTTP Server is a "heavy-duty" server for which the Subversion
+        project provides the mod_dav_svn and mod_authz_svn modules.  Please
+        refer to section IV.11 below for more information.
 
-      You can use the "-r" option to svnserve to set a logical root
-      for repositories, and the "-R" option to restrict connections to
-      read-only access.  ("Read-only" is a logical term here; svnserve
-      still needs write access to the database in this mode, but will
-      not allow commits or revprop changes.)
+       SVNBook provides an overview of the server options as well as the steps
+       necessary to configure these servers in 'Chapter 6.  Server
+       Configuration':
 
-      'svnserve' has built-in CRAM-MD5 authentication (so you can use
-      non-system accounts), and can also be tunneled over SSH (so you
-      can use existing system accounts).  It's also capable of using
-      Cyrus SASL if libsasl2 is detected at ./configure time.  Please
-      read chapter 6 in the Subversion Book
-      (https://svnbook.red-bean.com) for details on these features.
+           https://svnbook.red-bean.com/en/1.8/svn.serverconfig.html
 
 
 
-IV.   PROGRAMMING LANGUAGE BINDINGS (PYTHON, PERL, RUBY, JAVA)
+III.  PROGRAMMING LANGUAGE BINDINGS (PYTHON, PERL, RUBY, JAVA)
       ========================================================
 
       For Python, Perl and Ruby bindings, see the file
@@ -697,7 +451,7 @@ IV.   PROGRAMMING LANGUAGE BINDINGS (PYT
 
 
 
-V.    DEPENDENCIES IN DETAIL
+IV.   DEPENDENCIES IN DETAIL
       ======================
 
       Subversion depends on a number of third party tools and libraries.
@@ -986,7 +740,6 @@ V.    DEPENDENCIES IN DETAIL
         Subversion's own repository (whether or not running the test
         suite).
       * Build the SWIG Python bindings.
-      * Testing as described in section III.D.
 
       The Python bindings are used by:
 

Reply via email to