Author: lyalyakin
Date: Fri Aug 7 11:17:47 2026
New Revision: 1936959
Log:
Cut the BDB guidance to a minimum in INSTALL.
* INSTALL
(I.B: Dependency Overview): Reword the Berkeley DB section. Mark it as
scheduled for future removal. Note that CMake-based build doesn't support
BDB.
(I.C.8): Remove the Berkeley DB section entirely. Renumber other sections
affected by this change.
Modified:
subversion/trunk/INSTALL
Modified: subversion/trunk/INSTALL
==============================================================================
--- subversion/trunk/INSTALL Fri Aug 7 11:13:00 2026 (r1936958)
+++ subversion/trunk/INSTALL Fri Aug 7 11:17:47 2026 (r1936959)
@@ -115,17 +115,12 @@ I. INTRODUCTION
repositories over http:// and https:// URLs. Apache Serf uses OpenSSL
for the encrypted https:// communication.
- * Berkeley DB (DEPRECATED and OPTIONAL for client and server)
+ * Berkeley DB (DEPRECATED, TO BE REMOVED IN THE FUTURE)
- When you create a repository, you have the option of
- specifying a storage 'back-end' implementation. Currently,
- there are two options. The newer and recommended one, known
- as FSFS, does not require Berkeley DB. FSFS stores data in a
- flat filesystem. The older implementation, known as BDB, has
- been deprecated and is not recommended for new repositories,
- but is still available. BDB stores data in a Berkeley DB
- database. This back-end will only be available if the BDB
- libraries are discovered at compile time.
+ Needed only for the deprecated BDB repository backend. Support for
+ BDB is planned to be removed completely in the future.
+
+ The CMake build system does not support building with BDB.
* libsasl (OPTIONAL for client and server)
@@ -342,51 +337,7 @@ I. INTRODUCTION
system or directly from https://serf.apache.org/.
-
- 8. Berkeley DB 4.X (DEPRECATED and OPTIONAL)
-
- You need the Berkeley DB libraries only if you are building a
- Subversion server that supports the older BDB repository storage
- back-end, or a Subversion client that can access local BDB
- repositories via the file:// URI scheme.
-
- The BDB back-end has been deprecated and is not recommended for
- new repositories. BDB may be removed in Subversion 2.0. We
- recommend the newer FSFS back-end for all new repositories.
- FSFS does not require the Berkeley DB libraries.
-
- If in doubt, the 'svnadmin info' command, added in Subversion
- 1.9, can identify whether an existing repository uses BDB or
- FSFS.
-
- The current recommended version of Berkeley DB is 4.4.20 or
- newer, which brings auto-recovery functionality to the Berkeley
- DB database environment.
-
- If you must use an older version of Berkeley DB, we *strongly*
- recommend using 4.3 or 4.2 over the 4.1 or 4.0 versions. Not
- only are these significantly faster and more stable, but they
- also enable Subversion repositories to automatically clean up
- database journal files to save disk space.
-
- You'll need Berkeley DB installed on your system. You can
- get it from:
-
-
http://www.oracle.com/technetwork/database/database-technologies/berkeleydb/overview/index.html
-
- If you have Berkeley DB installed in a place not searched by default
- for includes and libraries, add something like this:
-
-
--with-berkeley-db=db.h:/usr/local/include/db4.7:/usr/local/lib/db4.7:db-4.7
-
- to your `configure' switches, and the build process will use the
- Berkeley DB header and library in the named directories. You may
- need to use a different path, of course. Note that in order for
- the detection to succeed, the dynamic linker must be able to find
- the libraries at configure time.
-
-
- 9. Cyrus SASL library (OPTIONAL)
+ 8. Cyrus SASL library (OPTIONAL)
If the Simple Authentication and Security Layer (SASL) library
is detected on your system, then the Subversion client and
@@ -397,7 +348,7 @@ I. INTRODUCTION
http://freshmeat.net/projects/cyrussasl/
- 10. Apache Web Server 2.2.X or newer (OPTIONAL)
+ 9. Apache Web Server 2.2.X or newer (OPTIONAL)
(https://httpd.apache.org/download.cgi)
@@ -410,7 +361,7 @@ I. INTRODUCTION
is done: See section III for details.
- 11. Python 3.x or newer (https://www.python.org/) (OPTIONAL)
+ 10. Python 3.x or newer (https://www.python.org/) (OPTIONAL)
Subversion does not require Python for its basic operation.
However, Python is required for building and testing Subversion
@@ -462,33 +413,33 @@ I. INTRODUCTION
section II.B for more about autogen.sh.
- 12. Perl 5.8 or newer (Windows only) (OPTIONAL)
+ 11. Perl 5.8 or newer (Windows only) (OPTIONAL)
To build Subversion under any of the MS Windows platforms, you
will also need Perl 5.8 or newer to run apr-util's w32locatedb.pl
script.
- 13. pkg-config (Unix only, OPTIONAL)
+ 12. pkg-config (Unix only, OPTIONAL)
Subversion uses pkg-config to find appropriate options used
at build time.
- 14. D-Bus (Unix only, OPTIONAL)
+ 13. D-Bus (Unix only, OPTIONAL)
D-Bus is a message bus system. D-Bus is required for support for KWallet
and GNOME Keyring. pkg-config is needed to find D-Bus headers and
library.
- 15. Qt 5 or Qt 4 (Unix only, OPTIONAL)
+ 14. Qt 5 or Qt 4 (Unix only, OPTIONAL)
Qt is a cross-platform application framework. QtCore, QtDBus and QtGui
modules are required for support for KWallet. pkg-config is needed
to find Qt headers and libraries.
- 16. KDE 5 Framework libraries or KDELibs 4 (Unix only, OPTIONAL)
+ 15. KDE 5 Framework libraries or KDELibs 4 (Unix only, OPTIONAL)
Subversion contains optional support for storing passwords in KWallet.
Subversion will look for KF5Wallet, KF5CoreAddons, KF5I18n APIs by
default,
@@ -504,13 +455,13 @@ I. INTRODUCTION
--with-kwallet=/path/to/KDE/prefix
- 17. GLib 2 (Unix only, OPTIONAL)
+ 16. GLib 2 (Unix only, OPTIONAL)
GLib is a general-purpose utility library. GLib is required for support
for GNOME Keyring. pkg-config is needed to find GLib headers and library.
- 18. GNOME Keyring (Unix only, OPTIONAL)
+ 17. GNOME Keyring (Unix only, OPTIONAL)
Subversion contains optional support for storing passwords in GNOME
Keyring.
pkg-config is needed to find GNOME Keyring headers and library. D-Bus and
@@ -518,7 +469,7 @@ I. INTRODUCTION
then pass the '--with-gnome-keyring' option to `configure`.
- 19. libmagic (OPTIONAL)
+ 18. libmagic (OPTIONAL)
Subversion's configure script attempts to find libmagic automatically.
If it is installed in a non-standard location, then use:
@@ -540,7 +491,7 @@ I. INTRODUCTION
--with-libmagic
- 20. LZ4 (REQUIRED)
+ 19. LZ4 (REQUIRED)
Subversion uses LZ4 compression library version r129 or above. Configure
will attempt to locate the system library by default using pkg-config
@@ -554,7 +505,7 @@ I. INTRODUCTION
--with-lz4=internal
- 21. py3c (OPTIONAL)
+ 20. py3c (OPTIONAL)
Subversion uses the Python 3 Compatibility Layer for C
Extensions (py3c) library when building the Python language