Hi,

attached is a suggested patch/update for the INSTALL documentation for 1.9.
Given Bert's statement about the compatibility with VS 2002/2003 I thought it might be good to also update these statements in the docu, because they just sound rather outdated then to me. Compared to the 1.10-patch the only difference is that I dropped the TODO-section regarding Serf (since I thought it might be better not to add an unfinished section rather than adding some placeholder documentation in an already published version):

[[
Several updates/corrections to the INSTALL file:
- updated compatibility statements for Visual Studio (dropping 2002/2003 support, adding support for 2008+ versions)
- case-correction for February
- replaced dead-link to Platform SDK for VC6 with link to still available instructions
- replaced redirection URL zlib.org with direct URL zlib.net
- update VS build instructions to be suitable for VS >= 2010
- libmagic marked as optional dependency
- made URLs consistently use a trailing /
- corrected minimum Serf version (1.2.1 -> 1.3.4)
- corrected section numbering and referencing in several cases
- clarify that Python is required for Windows as well
- specify Python >= 3.0 being unsupported atm
- dropping explicit mentioning of Subversion version 1.8 (since the documentation always applies to the current version)
- added missing prerequisite an install step instruction for SQLite 3.7.12
- added optional-markers to steps which are not required in all cases
- clarified when serf is required
- replaced DRIVE-variable with BUILD_ROOT-variable to make things a bit easier to understand
- added missing required quotes around SDK-paths which contain spaces
- added sections about building APR and ZLib to give some leads how to build these from source

* INSTALL
    documentation updated
]]]

Regards,
Stefan
Index: INSTALL
===================================================================
--- INSTALL     (revision 1691631)
+++ INSTALL     (working copy)
@@ -146,7 +146,7 @@
          Subversion contains optional support for storing passwords in
          KWallet (KDE 4) or GNOME Keyring.
 
-      * libmagic
+      * libmagic (OPTIONAL)
 
          If the libmagic library is detected at compile time,
          it will be used to determine mime-types of binary files
@@ -295,7 +295,7 @@
          compression.   Most Unix systems have libz pre-installed, but
          if you need it, you can get it from
 
-            http://www.zlib.net
+            http://www.zlib.net/
 
 
       3.  autoconf 2.59 or newer (Unix only)
@@ -313,7 +313,7 @@
       newer. The autogen.sh script knows about that.
 
 
-      5.  Serf library 1.2.1 or newer (OPTIONAL)
+      5.  Serf library 1.3.4 or newer (OPTIONAL)
 
       If you want your client to be able to speak to an Apache
       server (via a http:// or https:// URL), you must link against
@@ -356,7 +356,7 @@
           Under Windows, you can specify the paths to these libraries by
           passing the options --with-zlib and --with-openssl to gen-make.py.
 
-        c. Using OpenSSL on the Apache server
+        b. Using OpenSSL on the Apache server
 
           You can also add support for these features to an Apache httpd
           server to be used for Subversion using the same support libraries.
@@ -449,10 +449,11 @@
       10.  Python 2.5 or newer (http://www.python.org/)  (OPTIONAL)
 
       If you want to run "make check" or build from the latest source
-      under Unix as described in section II.B and III.D, install
-      Python 2.5 or higher on your system. The majority of the test
-      suite is written in Python, as is part of Subversion's build
+      under Unix/Windows as described in section II.B, II.E and III.D,
+      install Python 2.5 or higher on your system. The majority of the
+      test suite is written in Python, as is part of Subversion's build
       system.
+      Note that Python 3.x is not supported and most likely won't work.
 
 
       11. Perl 5.8 or newer (Windows only)  (OPTIONAL)
@@ -464,8 +465,8 @@
 
       12. SQLite  (REQUIRED)
 
-      Subversion 1.8 requires SQLite version 3.7.12 or above.  You can meet
-      this dependency several ways:
+      Subversion requires SQLite version 3.7.12 or above.  You can meet this
+      dependency several ways:
         * Use an SQLite amalgamation file.
         * Specify an SQLite installation to use.
         * Let Subversion find an installed SQLite.
@@ -754,15 +755,17 @@
   E.1 Prerequisites
 
       * Visual Studio 6 and service pack. It can be built with later versions
-        of Visual Studio (Visual Studio.NET 2002, 2003, 2005, 2008 and Visual
-        C++ Express 2005, 2008) but these instructions assume VS6.
+        of Visual Studio (Visual Studio.NET 2005-2015, Visual C++ Express
+        2005-2010, Visual Studio Express 2012-2013 and Visual Studio Community
+        2013-2015) but these instructions assume VS6.
       * A recent Windows SDK. (Not needed with Visual Studio 2005 and later)
         If you are using Visual Studio 6, you need the latest SDK which
-        is compatible with VC6, which is the one from february 2003.
+        is compatible with VC6, which is the one from February 2003.
         You can get it from MSDN:
-        http://www.microsoft.com/msdownload/platformsdk/sdkupdate/psdk-full.htm
+        
https://social.msdn.microsoft.com/Forums/windowsdesktop/en-US/e1147034-9b0b-4494-a5bc-6dfebb6b7eb1/download-and-install-microsoft-platform-sdk-febuary-2003-last-version-with-vc6-support?forum=windowssdk
       * Python 2.5 or higher, downloaded from http://www.python.org/ which is
         used to generate the project files.
+        Note that Python 3.x is not supported.
       * Perl 5.8 or higher from http://www.activestate.com/
       * Awk (from http://www.cs.princeton.edu/~bwk/btl.mirror/awk95.exe) is
         needed to compile Apache or APR.  Note that this is the actual awk
@@ -773,8 +776,9 @@
         and the Apache 2 source zip.  If you are building from a Subversion
         checkout and have not downloaded Apache 2, then get these 3 libraries
         from http://www.apache.org/dist/apr/.
+      * SQLite 3.7.12 or higher from http://www.sqlite.org/download.html
       * ZLib 1.2 or higher is required and is included in the Subversion
-        dependencies zip file or can be obtained from http://www.zlib.org
+        dependencies zip file or can be obtained from http://www.zlib.net/
       * Either a Subversion client binary from http://subversion.apache.org/ to
         do the initial checkout of the Subversion source or the zip file
         source distribution. See the section "Bootstrapping from a Zip or
@@ -799,7 +803,7 @@
         components -- versions 4.3.27 and 4.4.20 are available from
         http://subversion.tigris.org/servlets/ProjectDocumentList?folderID=688
         as db-4.3.27-win32.zip and db-4.4.20-win32.zip.
-        For more information see Section I.5.
+        For more information see Section I.C.7.
       * [Optional] Openssl 0.9.7f or higher can be obtained from
         http://www.openssl.org/source/openssl-0.9.7f.tar.gz
       * [Optional] A modified version of GNU libintl, called
@@ -820,7 +824,7 @@
       The Serf library supports secure connections with OpenSSL and
       on-the-wire compression with zlib. If you want to use the
       secure connections feature, you should pass the option
-      "--with-openssl" to the gen-make.py script. See Section I.11 for
+      "--with-openssl" to the gen-make.py script. See Section I.C.6 for
       more details.
 
   E.3 Preparation
@@ -838,7 +842,7 @@
       * Install Visual Studio Environment. You either have to tell the
         installer to register environment variables or run VCVARS32.BAT
         before building anything.  If you are using a newer Visual Studio,
-        use the 'Visual Studio 200x Command Prompt' on the Start menu.
+        use the 'Visual Studio 20xx Command Prompt' on the Start menu.
       * Install and register a recent Windows Core SDK if you are using
         Visual Studio 6. This is a quote from the Microsoft February 2003
         SDK documentation:
@@ -861,14 +865,15 @@
       * Install Perl (it should add itself to the path)
       * Copy AWK (awk95.exe) to awk.exe (e.g. SVN\awk\awk.exe) and add
         the directory containing it (e.g. SVN\awk) to the path.
-      * Install Apache 2 using the msi file if you are going to test the
-        server dso modules and are using Visual Studio 6.  You must build
+      * [Optional] Install Apache 2 using the msi file if you are going to test
+        the server dso modules and are using Visual Studio 6.  You must build
         and install it from source if you are not using Visual Studio 6 and
         want to build and/or test the server modules.
-      * If you checked out Subversion from the repository then install the serf
-        sources into SVN\src-trunk\serf.
-      * If you want BDB backend support, extract the Berkeley DB files
-        into SVN\src-trunk\db4-win32. It's a good idea to add
+      * [Optional] If you checked out Subversion from the repository and want
+        to build Subversion with http/https access support then install the
+        serf sources into SVN\src-trunk\serf.
+      * [Optional] If you want BDB backend support, extract the Berkeley DB
+        files into SVN\src-trunk\db4-win32. It's a good idea to add
         SVN\src-trunk\db4-win32\bin to your PATH, so that Subversion can find
         the Berkeley DB DLLs.
 
@@ -883,8 +888,8 @@
         SVN\src-trunk\db4-win32\lib. Again, the DLLs should be somewhere in
         your path.
 
-      * If you want to build the server modules, extract Apache source into
-        SVN\httpd-2.x.x.
+      * [Optional] If you want to build the server modules, extract Apache
+        source into SVN\httpd-2.x.x.
       * If you are building from a checkout of Subversion, and you are NOT
         building Apache, then you will need the APR libraries.  Depending
         on how you got your version of APR, either:
@@ -896,14 +901,20 @@
             SVN\apr-util, and SVN\apr-iconv respectively.
       * Extract the ZLib sources into SVN\zlib if you are not using the zlib
         included in the dependencies zip file.
-      * If you want secure connection (https) client support, extract openssl
-        into SVN\openssl-x.x.x
-      * If you want localized message support, extract svn-win32-libintl.zip
-        into SVN\svn-win32-libintl and extract gettext-x.x.x-bin.zip and
-        gettext-x.x.x-dep.zip into SVN\gettext-x.x.x-bin.
+      * [Optional] If you want secure connection (https) client support, or if
+        you are building with enabled support for serf extract openssl into
+        SVN\openssl-x.x.x
+      * [Optional] If you want localized message support, extract
+        svn-win32-libintl.zip into SVN\svn-win32-libintl and extract
+        gettext-x.x.x-bin.zip and gettext-x.x.x-dep.zip into
+        SVN\gettext-x.x.x-bin.
         Add SVN\gettext-x.x.x-bin\bin to your path.
       * [Optional] Extract MASM32 (only the ML.EXE and ML.ERR files) into
         SVN\asm (or extract nasm into SVN\asm) and put it in your path.
+      * Download the SQLite amalgemation from
+        http://www.sqlite.org/download.html
+        and extract it into SVN\sqlite-amalgemation.
+        See I.C.12 for alternatives to using the amalgemation package.
 
   E.4 Building the Binaries
 
@@ -919,14 +930,14 @@
 
       C:>set VER=trunk
       C:>set DIR=trunk
-      C:>set DRIVE=C
+      C:>set BUILD_ROOT=C:\SVN
       C:>set PYTHONDIR=C:\Python22
       C:>set AWKDIR=C:\SVN\Awk
       C:>set ASMDIR=C:\SVN\asm
-      C:>set SDKINC=C:\Program Files\Microsoft SDK\include
-      C:>set SDKLIB=C:\Program Files\Microsoft SDK\lib
+      C:>set SDKINC="C:\Program Files\Microsoft SDK\include"
+      C:>set SDKLIB="C:\Program Files\Microsoft SDK\lib"
       C:>set GETTEXTBIN=C:\SVN\gettext-0.14.1-bin\bin
-      C:>PATH=%PATH%;%DRIVE%:\SVN\src-%DIR%\db4-win32;%ASMDIR%;
+      C:>PATH=%PATH%;%BUILD_ROOT%\src-%DIR%\db4-win32;%ASMDIR%;
               %PYTHONDIR%;%AWKDIR%;%GETTEXTBIN%
       C:>set INCLUDE=%SDKINC%;%INCLUDE%
       C:>set LIB=%SDKLIB%;%LIB%
@@ -959,6 +970,41 @@
       C:>set APACHEDIR=C:\Program Files\Apache Group\Apache2
       C:>msdev httpd-2.0.58\apache.dsw /MAKE "BuildBin - Win32 Release"
 
+      APR
+
+      If you downloaded APR / APR-UTIL / APR_ICONV by source, you will have to
+      build these libraries first.
+      Building these libraries on Windows is straight forward and in most cases
+      as simple as issuing these two commands:
+
+      C:>nmake -f Makefile.win
+      C:>nmake -f Makefile.win install
+
+      Please refere to the build instructions provided by the library source
+      for actual build instructions.
+
+      ZLib
+
+      If you downloaded the zlib source, you will have to build ZLib first.
+      Building ZLib using Visual Studio should be quite simple. Just open the
+      appropriate solution and build the project zlibstat using the IDE.
+
+      Please refere to the build instructions provided by the library source
+      for actual build instructions.
+
+      Note that you'd make sure to define ZLIB_WINAPI in the ZLib config
+      header and move the lib-file into the zlib root-directory.
+
+      Serf
+
+      ### Section about serf might be required/useful to add.
+      ### scons is required too and serf needs to be configured prior to be
+      ### able to build Subversion using:
+      ### scons APR=[PATH_TO_APR] APU=[PATH_TO_APU] OPENSSL=[PATH_TO_OPENSSL]
+      ### ZLIB=[PATH_TO_ZLIB] PREFIX=[PATH_TO_SERF_DEST]
+      ### scons check
+      ### scons install
+
       Subversion
 
       Things to note:
@@ -970,7 +1016,7 @@
         the APR libraries; the options are --with-apr, --with-apr-util and
         --with-apr-iconv.
       * If you would like a debug build substitute Debug for Release in
-        the msdev commands.
+        the msdev/msdbuild commands.
       * There have been rumors that Subversion on Win32 can be built
         using the latest cygwin, you probably don't want the zip file source
         distribution though. ymmv.
@@ -983,8 +1029,9 @@
         directories must be in the Tools/Options/Directories settings (if you
         followed the 'Register the SDK with Visual Studio 6' instructions
         above this has been done for you).
-      * If you are using Visual Studio .NET change -t dsw into -t vcproj and
-        add the --vsnet-version=200x option on the gen-make.py command.
+      * If you are using Visual Studio later than VC6 change -t dsw into
+        -t vcproj and add the --vsnet-version=20xx option on the gen-make.py
+        command.
         In this case you will also have to distribute the C runtime dll with
         the binaries.  Also, since Apache/APR do not provide .vcproj files,
         you will need to convert the Apache/APR .dsp files to .vcproj files
@@ -1015,12 +1062,13 @@
       C:>msdev subversion_msvc.dsw /USEENV /MAKE "__ALL_TESTS__ - Win32 
Release"
       C:>cd ..
 
-      Or, with Visual C++.NET 2002, 2003, 2005:
+      Or, with Visual C++.NET 2005 or C++ Express 2005:
 
       C:>devenv subversion_vcnet.sln /build "Release" /project "__ALL_TESTS__"
       C:>cd ..
 
-      Or, with Visual C++ Express 2005:
+      Or, with Visual C++.NET 2008+, C++ Express 2008+, Studio Express 2012+ or
+      Studio Community 2013+:
 
       C:>msbuild subversion_vcnet.sln /t:__ALL_TESTS__ /p:Configuration=Release
       C:>cd ..
@@ -1066,7 +1114,7 @@
 
       Then run the client tests:
 
-      C:>PATH=%DRIVE%:\SVN\svn-win32-%VER%\bin;%PATH%
+      C:>PATH=%BUILD_ROOT%\svn-win32-%VER%\bin;%PATH%
       C:>cd src-%DIR%
       C:>python win-tests.py -c -r -v
 
@@ -1171,7 +1219,7 @@
       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.  For more info about the db requirement,
-      see section I.5.
+      see section I.C.7.
 
       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

Reply via email to