blob: aa51da4c0020e52f3de3d562368140e4b9beb041 [file] [log] [blame]
#
# build.conf -- configuration information for building Subversion
#
# This file is processed by ###, creating ###
#
# ----------------------------------------------------------------------------
#
# PREDEFINED SECTIONS
#
# These are global in scope, providing information to the process, rather
# than defining build targets.
#
[includes]
paths = subversion/include/*.h
[static-apache]
# Makefile.in and config.m4 (omit README)
paths = subversion/mod_dav_svn/static/[Mc]*
[test-scripts]
paths =
# bourne: test client XML handling
subversion/tests/clients/cmdline/xmltests/*.sh
# bourne: test target condensation in libsvn_subr
subversion/tests/libsvn_subr/target-test.sh
[fs-test-scripts]
paths =
# C: test both external and internal APIs of libsvn_fs
subversion/tests/libsvn_fs/run-fs-tests.sh
# C: test svn_repos_update() in libsvn_repos
subversion/tests/libsvn_repos/run-repos-tests.sh
# Python: command line processing tests
subversion/tests/clients/cmdline/getopt_tests.py
# Python: general blackbox tests
subversion/tests/clients/cmdline/basic_tests.py
# Python: commit-related tests
subversion/tests/clients/cmdline/commit_tests.py
# Python: update-related tests
subversion/tests/clients/cmdline/update_tests.py
# Python: property-related tests
subversion/tests/clients/cmdline/prop_tests.py
# Python: working copy scheduling tests
subversion/tests/clients/cmdline/schedule_tests.py
# Python: 'svn log' tests
subversion/tests/clients/cmdline/log_tests.py
# Python: 'svn cp' tests
subversion/tests/clients/cmdline/copy_tests.py
# Python: 'svn diff -r' tests
subversion/tests/clients/cmdline/diff_tests.py
# Python: 'svn stat' tests
subversion/tests/clients/cmdline/stat_tests.py
# Python: eol-translation tests
subversion/tests/clients/cmdline/trans_tests.py
# Python: 'svnadmin' tests
subversion/tests/clients/cmdline/svnadmin_tests.py
# ----------------------------------------------------------------------------
#
# BUILD TARGETS
#
# The subversion command-line client
[svn]
type = exe
path = subversion/clients/cmdline
libs = libsvn_client libsvn_wc libsvn_ra libsvn_delta libsvn_subr
$(SVN_APR_LIBS) libexpat
manpages = subversion/clients/cmdline/man/svn.1
infopages = doc/user/manual/svn-manual.info
doc/user/svn_for_cvs_users/svn_for_cvs_users.info
doc/programmer/design/svn-design.info
doc/programmer/design/svn-design.info-1
doc/programmer/design/svn-design.info-2
doc/programmer/design/svn-design.info-3
# The subversion repository administration tool
[svnadmin]
type = exe
path = subversion/svnadmin
install = fs-bin
libs = libsvn_repos libsvn_fs libsvn_delta libsvn_subr $(SVN_APR_LIBS) libexpat
# The subversion repository inspection tool
[svnlook]
type = exe
path = subversion/svnlook
install = fs-bin
libs = libsvn_repos libsvn_fs libsvn_delta libsvn_subr $(SVN_APR_LIBS) libexpat
# Library needed by all subversion clients
[libsvn_client]
type = lib
path = subversion/libsvn_client
libs = libsvn_wc libsvn_ra libsvn_delta libsvn_subr $(SVN_APR_LIBS)
# Routines for binary diffing and tree-deltas
[libsvn_delta]
type = lib
install = base-lib
path = subversion/libsvn_delta
libs = libsvn_subr $(SVN_APR_LIBS)
# The repository filesystem library
[libsvn_fs]
type = lib
path = subversion/libsvn_fs
install = fs-lib
libs = libsvn_delta libsvn_subr $(SVN_APR_LIBS) $(SVN_DB_LIBS)
# General API for accessing repositories
[libsvn_ra]
type = lib
path = subversion/libsvn_ra
# conditionally link in some more libs
libs = libsvn_subr $(SVN_RA_LIB_LINK) $(SVN_APR_LIBS)
# conditionally add more dependencies
add-deps = $(SVN_RA_LIB_DEPS)
# Accessing repositories via DAV
[libsvn_ra_dav]
type = lib
path = subversion/libsvn_ra_dav
install = base-lib
libs = libsvn_subr $(SVN_APR_LIBS) $(NEON_LIBS)
# Accessing repositories via direct libsvn_fs
[libsvn_ra_local]
type = lib
path = subversion/libsvn_ra_local
install = fs-lib
libs = libsvn_repos libsvn_fs libsvn_delta libsvn_subr $(SVN_APR_LIBS)
# Routines built on top of libsvn_fs
[libsvn_repos]
type = lib
path = subversion/libsvn_repos
install = fs-lib
libs = libsvn_fs libsvn_delta libsvn_subr $(SVN_APR_LIBS)
# Low-level grab bag of utilities
[libsvn_subr]
type = lib
install = base-lib
path = subversion/libsvn_subr
libs = $(SVN_APR_LIBS) libexpat
# Working copy management lib
[libsvn_wc]
type = lib
path = subversion/libsvn_wc
libs = libsvn_delta libsvn_subr $(SVN_APR_LIBS)
# Subversion plugin for Apache's mod_dav
[libmod_dav_svn]
type = lib
path = subversion/mod_dav_svn
libs = libsvn_repos libsvn_fs libsvn_delta libsvn_subr
# we don't need the .so version stuff for an Apache module, so avoid them
link-flags = -avoid-version
# need special build rules to include the Apache headers
custom = apache-mod
install = apache-mod
# Simple XML-parsing lib
[libexpat]
type = lib
install = base-lib
path = expat-lite
# there are some .c files included by others, so *.c isn't appropriate
sources = hashtable.c xmlparse.c xmlrole.c xmltok.c
# ----------------------------------------------------------------------------
#
# TARGETS FOR SWIG SUPPORT
#
# SWIG utility library for Python modules
[libsvn_swig_py]
type = lib
path = subversion/bindings/swig
libs = $(SVN_APR_LIBS)
install = swig-py-lib
# need special build rule to include -DSWIGPYTHON
custom = swig-py
# ----------------------------------------------------------------------------
#
# TESTING TARGETS
#
# general library: our C testing framework
[libsvn_test]
type = lib
path = subversion/tests
sources = svn_tests_main.c svn_test_editor.c
install = test
libs = libsvn_delta libsvn_subr $(SVN_APR_LIBS)
# shared utils for writing fs tests
[libsvn_test_fs]
type = lib
path = subversion/tests
sources = fs-helpers.c
install = fs-test
libs = libsvn_fs libsvn_repos
# tests for *public* fs API (svn_fs.h)
[fs-test]
type = exe
path = subversion/tests/libsvn_fs
sources = fs-test.c
install = fs-test
libs = libsvn_test libsvn_test_fs libsvn_fs libsvn_delta libsvn_subr
$(SVN_APR_LIBS) libexpat
# run-fs-tests.sh will run this for us
testing = skip
# test skels in libsvn_fs
[skel-test]
type = exe
path = subversion/tests/libsvn_fs
sources = skel-test.c
install = fs-test
libs = libsvn_test libsvn_fs libsvn_delta libsvn_subr $(SVN_APR_LIBS) libexpat
# run-fs-tests.sh will run this for us
testing = skip
# test keygen funcs in libsvn_fs
[key-test]
type = exe
path = subversion/tests/libsvn_fs
sources = key-test.c
install = fs-test
libs = libsvn_test libsvn_fs libsvn_delta libsvn_subr $(SVN_APR_LIBS) libexpat
# run-fs-tests.sh will run this for us
testing = skip
# test strings/reps in libsvn_fs
[strings-reps-test]
type = exe
path = subversion/tests/libsvn_fs
sources = strings-reps-test.c
install = fs-test
libs = libsvn_test libsvn_test_fs libsvn_fs libsvn_delta libsvn_subr
$(SVN_APR_LIBS) libexpat
# run-fs-tests.sh will run this for us
testing = skip
# Little argument verification tool used by repos-test
[md5args]
type = exe
path = subversion/tests/libsvn_repos
sources = md5args.c
install = test
libs = libsvn_subr $(SVN_APR_LIBS) libexpat
# run-repos-tests.sh will run this for us
testing = skip
# test svn_repos_update() is libsvn_repos
[repos-test]
type = exe
path = subversion/tests/libsvn_repos
sources = repos-test.c dir-delta-editor.c
install = fs-test
libs = libsvn_test libsvn_test_fs libsvn_repos libsvn_fs libsvn_delta
libsvn_subr $(SVN_APR_LIBS) libexpat
# run-repos-tests.sh will run this for us
testing = skip
# test hashfile format for props
[hashdump-test]
type = exe
path = subversion/tests/libsvn_subr
sources = hashdump-test.c
install = test
libs = libsvn_test libsvn_delta libsvn_subr $(SVN_APR_LIBS) libexpat
# test svn_stringbuf_t utilities
[stringtest]
type = exe
path = subversion/tests/libsvn_subr
sources = stringtest.c
install = test
libs = libsvn_test libsvn_delta libsvn_subr $(SVN_APR_LIBS) libexpat
# test path library
[path-test]
type = exe
path = subversion/tests/libsvn_subr
sources = path-test.c
install = test
libs = libsvn_test libsvn_subr $(SVN_APR_LIBS)
# test eol conversion and keyword substitution routines
[translate-test]
type = exe
path = subversion/tests/libsvn_wc
sources = translate-test.c
install = test
libs = libsvn_test libsvn_delta libsvn_wc libsvn_subr $(SVN_APR_LIBS) libexpat
# use random data to test delta processing
[random-test]
type = exe
path = subversion/tests/libsvn_delta
sources = random-test.c
install = test
libs = libsvn_test libsvn_delta libsvn_subr $(SVN_APR_LIBS) libexpat
### Tests that are simply broken (fix?) ----------
# test delta combination
[delta-combine-test]
type = exe
path = subversion/tests/libsvn_delta
sources = delta-combine-test.c
install = test
libs = libsvn_delta libsvn_subr $(SVN_APR_LIBS) libexpat
# disabled for now -- the delta combiner isn't written, and we
# don't really have any idea if the interface would be compatible
# with this test, anyway.
testing = skip
# test public routines in libsvn_ra_local
[ra-local-test]
type = exe
path = subversion/tests/libsvn_ra_local
sources = ra-local-test.c
install = fs-test
libs = libsvn_test libsvn_ra libsvn_fs libsvn_delta libsvn_subr
$(SVN_APR_LIBS) libexpat
# disabled for now, BROKEN.
testing = skip
### Tests that don't use the C framework (rewrite?) ----------
# test svn_path_condense_targets()
[target-test]
type = exe
path = subversion/tests/libsvn_subr
sources = target-test.c
install = test
libs = libsvn_subr $(SVN_APR_LIBS) libexpat
# target-test.sh will run this for us
testing = skip
# write an xml file by driving xml editor
[xml-output-test]
type = exe
path = subversion/tests/libsvn_delta
sources = xml-output-test.c
install = test
libs = libsvn_delta libsvn_subr $(SVN_APR_LIBS) libexpat
# this is really redundant with our XML svn-test*.sh tests.
testing = skip
# checkout a wc from an XML file
[checkout-test]
type = exe
path = subversion/tests/libsvn_wc
sources = checkout-test.c
install = test
libs = libsvn_wc libsvn_delta libsvn_subr $(SVN_APR_LIBS) libexpat
# this is really redundant with our XML svn-test*.sh tests.
testing = skip
### Disabled tests that don't use our C framework (rewrite?) ---------
# process and print commands from an XML tree-delta
[deltaparse-test]
type = exe
path = subversion/tests/libsvn_delta
sources = deltaparse-test.c
install = test
libs = libsvn_test libsvn_delta libsvn_subr $(SVN_APR_LIBS) libexpat
testing = skip
### Disabled tests that don't use our C framework and are BROKEN --------
### (rewrite these? delete these?)
# test our textdelta encoding
[svndiff-test]
type = exe
path = subversion/tests/libsvn_delta
sources = svndiff-test.c
install = test
libs = libsvn_delta libsvn_subr $(SVN_APR_LIBS) libexpat
testing = skip
# compare two files, print txdelta windows
[vdelta-test]
type = exe
path = subversion/tests/libsvn_delta
sources = vdelta-test.c
install = test
libs = libsvn_delta libsvn_subr $(SVN_APR_LIBS) libexpat
testing = skip
# ----------------------------------------------------------------------------
#
# DOC TARGETS
#
#[svn-design]
#type = doc
#path = doc
#install = doc
#sources = svn-design.texi
#deps = ...
# ----------------------------------------------------------------------------