published on: mingster

UPDATE: 2015/10/27

For fresh install of El Capitan, Folks at HomeBrew has done the fine work for us.  From now we can just get it setup with brew.
brew install svn

 

UPDATE: 2014/10/27

Now we are in the era of OSX 10.10 (Yosemite) and the build method below is troublesome, particular with serf.

Folks at HomeBrew has done the fine work for us.  From now we can just get it setup with brew.
brew install subversion
this will get you subversion 1.8.10 at /usr/local/Cellar/subversion/1.8.10.1
As brew doesn't override the system default, let's do it ourself:


cd /usr/bin
ls -la svn*

You see the svn executables. Just rename and relink them. For example,


sudo mv svn svn1.7
sudo ln -s /usr/local/Cellar/subversion/1.8.10_1/bin/svn ./svn

Finally, force brew to link and overwrite all conflicting files:

brew link --overwrite subversion

 

This post is about how to compile the latest SVN source (1.8.3) on OSX Mavericks (OSX 10.9).

References

Sam's Updating to SVN 1.8 for Mac OSX 10.8. This is about building in OSX 10.8.

Requirement

  1. Xcode command line tool: can be download at Apple's dev center or install command line tool without Xcode.
  2. Setup the Tool chain:
    sudo ln -s /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/ /Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.9.xctoolchain
    The key is to link the toolchain to reflect new version # of Maverick, which is 10.9.
  3. The SVN source: can be download form Apache SVN project.
    Here's straight way in command:
    cd ~/Downloads/
    curl -o subversion-1.8.3.tar.gz http://archive.apache.org/dist/subversion/subversion-1.8.3.tar.gz
    tar -xvf subversion-1.8.3.tar.gz

Build and Install SVN

Build serf

First we will need to build serf, included in the subversion package.
cd ~/Downloads/subversion-1.8.3
sh get-deps.sh serf
cd serf/
./configure
make
sudo make install

Build SVN

Go back up to the SVN source root, and build it using serf. Depend on your hardware, it might takes awhile. If you need a coffee, this is good time to do so once you start the make.

cd ..
./configure --prefix=/usr/local --with-serf=/usr/local/serf
make
sudo make install

Wrap it up

Now you've the new SVN 1.8.3 installed at /usr/local/bin. Make sure your path includes it. From there you should able to:
svn --version

And here you go:

svn, version 1.8.3 (r1516576)
   compiled Oct 24 2013, 02:38:35 on x86_64-apple-darwin13.0.0

Copyright (C) 2013 The Apache Software Foundation.
This software consists of contributions made by many people;
see the NOTICE file for more information.
Subversion is open source software, see http://subversion.apache.org/

The following repository access (RA) modules are available:

* ra_svn : Module for accessing a repository using the svn network protocol.
  - with Cyrus SASL authentication
  - handles 'svn' scheme
* ra_local : Module for accessing a repository on local disk.
  - handles 'file' scheme
* ra_serf : Module for accessing a repository via WebDAV protocol using serf.
  - using serf 1.2.1
  - handles 'http' scheme
  - handles 'https' scheme