[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: Recommended build method for SVN?

From: Robert Dailey <rcdailey_at_gmail.com>
Date: Sun, 30 Nov 2008 22:28:46 -0600

On Sun, Nov 30, 2008 at 10:18 PM, Robert Dailey <rcdailey_at_gmail.com> wrote:

> Hi,
>
> I'm creating my own open source project that will utilize the Subversion
> API. However, I want to minimize the amount of dependency building I have to
> do on various platforms, specifically Windows since it is the most difficult
> to deal with. I want to directly use the code from the subversion
> development trunk, however I'm not sure what the best way to go about that
> is. My main concern is the APR and Neon libraries, as well as any other
> mandatory dependencies Subversion has. How do you guys recommend handling
> these dependencies? I would prefer to have all third party source code in my
> repository for my project to make checkouts quick and simple. I want to
> avoid forcing people to go out and hunt down libraries and compile them,
> especially on Windows, since this could literally take hours.
>
> Thanks for reading.
>

After reading back over my post again I don't feel I was very specific, so
let me explain a little more.

For my open source project I'm using CMake to generate Visual Studio project
files on Windows. I would like to be able to build the Subversion library
and all of its dependencies in a convenient way for each checkout (If doing
so is even required in the first place). On Linux, this would be trivial,
since I simply would just create a Bash script to execute all of the make
commands for all of the dependencies (APR, Neon, etc). However, on Windows
I'm not sure how in the world I would allow this to be done conveniently.

I've looked into possibly setting up CMake to build APR, Neon, Subversion,
and other required libraries, however this is going to be a complex task and
require a lot of maintenance when future versions are released. I've
established this isn't a reasonable approach to the problem.

Basically, I see myself having 3 options:

   - Build all of the binaries needed for all platforms I plan to support.
   This means I'd be compiling Subversion and all of its dependencies and then
   place those binaries under version control.
   - Setup a way to have Subversion and all of its dependencies build as a
   prerequisite to building my open source project. Finding a portable way to
   do this seems tricky/tedious/difficult.
   - Don't check in any libraries at all and require developers on my
   project to spend hours setting up their development environment, paths, and
   compiling binaries manually (This is mainly a concern on Windows, not sure
   about MacOS).

Remember, the goal here is to keep development on my project simple. I want
a developer to checkout my project and be able to immediately start working.
I don't want to have to spend hours doing setup work. Thanks again for
reading.
Received on 2008-12-01 05:29:00 CET

This is an archived mail posted to the Subversion Dev mailing list.