blob: 30d35c887e1191ad0cbe1fbdb4625a6355720294 [file] [log] [blame]
#
# build.conf -- configuration information for building Subversion
#
######################################################################
#
# Copyright (c) 2000-2001 CollabNet. All rights reserved.
#
# This software is licensed as described in the file COPYING, which
# you should have received as part of this distribution. The terms
# are also available at http://subversion.tigris.org/license-1.html.
# If newer versions of this license are posted there, you may use a
# newer version instead, at your option.
#
######################################################################
#
# This file is processed by gen-make.py, creating build-outputs.mk
#
# ----------------------------------------------------------------------------
#
# PREDEFINED SECTIONS
#
# These are global in scope, providing information to the process, rather
# than defining build targets.
#
[options]
includes = subversion/include/*.h
swig-languages = python
[static-apache]
# Makefile.in and config.m4 (omit README)
paths = subversion/mod_dav_svn/static/[Mc]*
[test-scripts]
paths =
subversion/tests/libsvn_subr/target-test.py
[fs-test-scripts]
paths =
subversion/tests/libsvn_fs/run-fs-tests.py
subversion/tests/libsvn_repos/run-repos-tests.py
subversion/tests/clients/cmdline/getopt_tests.py
subversion/tests/clients/cmdline/basic_tests.py
subversion/tests/clients/cmdline/commit_tests.py
subversion/tests/clients/cmdline/update_tests.py
subversion/tests/clients/cmdline/switch_tests.py
subversion/tests/clients/cmdline/prop_tests.py
subversion/tests/clients/cmdline/schedule_tests.py
subversion/tests/clients/cmdline/log_tests.py
subversion/tests/clients/cmdline/copy_tests.py
subversion/tests/clients/cmdline/diff_tests.py
subversion/tests/clients/cmdline/module_tests.py
subversion/tests/clients/cmdline/merge_tests.py
subversion/tests/clients/cmdline/stat_tests.py
subversion/tests/clients/cmdline/trans_tests.py
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_APRUTIL_LIBS) $(SVN_APR_LIBS) $(NEON_LIBS)
manpages = subversion/clients/cmdline/man/svn.1
subversion/svnadmin/svnadmin.1
infopages = 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_APRUTIL_LIBS) $(SVN_APR_LIBS)
# The subversion repository inspection tool
[svnlook]
type = exe
path = subversion/svnlook
install = fs-bin
libs = libsvn_repos libsvn_fs libsvn_delta libsvn_subr $(SVN_APRUTIL_LIBS) $(SVN_APR_LIBS)
# The subversion pipe endpoint
#[svnpipe]
#type = exe
#install = svnpipe-bin
#path = subversion/svnpipe
#libs = libsvn_client libsvn_wc libsvn_ra libsvn_delta libsvn_subr
# $(SVN_APRUTIL_LIBS) $(SVN_APR_LIBS)
# Library needed by all subversion clients
[libsvn_client]
type = lib
path = subversion/libsvn_client
libs = libsvn_wc libsvn_ra libsvn_delta libsvn_subr $(SVN_APRUTIL_LIBS) $(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_APRUTIL_LIBS) $(SVN_APR_LIBS)
# The repository filesystem library
[libsvn_fs]
type = lib
path = subversion/libsvn_fs
sources = *.c bdb/*.c util/*.c
install = fs-lib
libs = libsvn_delta libsvn_subr $(SVN_APRUTIL_LIBS) $(SVN_DB_LIBS) $(SVN_APR_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_APRUTIL_LIBS) $(SVN_APR_LIBS)
# conditionally add more dependencies
add-deps = $(SVN_RA_LIB_DEPS)
# authentication functions
[libsvn_auth]
type = lib
install = base-lib
path = subversion/libsvn_auth
libs = libsvn_subr $(SVN_APRUTIL_LIBS) $(SVN_APR_LIBS)
# Accessing repositories via DAV
[libsvn_ra_dav]
type = lib
path = subversion/libsvn_ra_dav
install = base-lib
libs = libsvn_subr $(SVN_APRUTIL_LIBS) $(SVN_APR_LIBS) $(NEON_LIBS)
custom = ra-module
# Accessing repositories via pipes
[libsvn_ra_pipe]
type = lib
path = subversion/libsvn_ra_pipe
install = pipe-lib
libs = libsvn_subr $(SVN_APR_LIBS) $(SVN_XMLRPC_LIBS)
custom = ra-module
# 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_APRUTIL_LIBS) $(SVN_APR_LIBS)
custom = ra-module
# 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_APRUTIL_LIBS) $(SVN_APR_LIBS)
# Low-level grab bag of utilities
[libsvn_subr]
type = lib
install = base-lib
path = subversion/libsvn_subr
libs = $(SVN_APRUTIL_LIBS) $(SVN_APR_LIBS)
# Working copy management lib
[libsvn_wc]
type = lib
path = subversion/libsvn_wc
libs = libsvn_delta libsvn_subr $(SVN_APRUTIL_LIBS) $(SVN_APR_LIBS)
# Subversion plugin for Apache's mod_dav
[mod_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
# pass -module to allow name to start with something else than 'lib'
link-flags = -avoid-version -module
# need special build rules to include the Apache headers
custom = apache-mod
install = apache-mod
# ----------------------------------------------------------------------------
#
# TARGETS FOR SWIG SUPPORT
#
[swig_client]
type = swig
path = subversion/bindings/swig
sources = svn_client.i
[swig_delta]
type = swig
path = subversion/bindings/swig
sources = svn_delta.i
[swig_fs]
type = swig
path = subversion/bindings/swig
sources = svn_fs.i
[swig_ra]
type = swig
path = subversion/bindings/swig
sources = svn_ra.i
[swig_repos]
type = swig
path = subversion/bindings/swig
sources = svn_repos.i
[swig_wc]
type = swig
path = subversion/bindings/swig
sources = svn_wc.i
[swig_util]
type = swig
path = subversion/bindings/swig
sources = util.i
# SWIG utility library for Python modules
[libsvn_swig_py]
type = lib
path = subversion/bindings/swig
sources = swigutil_py.c
libs = $(SVN_APRUTIL_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_APRUTIL_LIBS) $(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_APRUTIL_LIBS) $(SVN_APR_LIBS)
# run-fs-tests.py 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_APRUTIL_LIBS) $(SVN_APR_LIBS)
# run-fs-tests.py 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_APRUTIL_LIBS) $(SVN_APR_LIBS)
# run-fs-tests.py 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_APRUTIL_LIBS) $(SVN_APR_LIBS)
# run-fs-tests.sh will run this for us
testing = skip
# test strings/reps in libsvn_fs
[changes-test]
type = exe
path = subversion/tests/libsvn_fs
sources = changes-test.c
install = fs-test
libs = libsvn_test libsvn_test_fs libsvn_fs libsvn_delta libsvn_subr
$(SVN_APRUTIL_LIBS) $(SVN_APR_LIBS)
# 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_APRUTIL_LIBS) $(SVN_APR_LIBS)
# run-repos-tests.py 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_APRUTIL_LIBS) $(SVN_APR_LIBS)
# run-repos-tests.py 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_APRUTIL_LIBS) $(SVN_APR_LIBS)
# 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_APRUTIL_LIBS) $(SVN_APR_LIBS)
# test path library
[path-test]
type = exe
path = subversion/tests/libsvn_subr
sources = path-test.c
install = test
libs = libsvn_test libsvn_subr $(SVN_APRUTIL_LIBS) $(SVN_APR_LIBS)
# test time functions
[time-test]
type = exe
path = subversion/tests/libsvn_subr
sources = time-test.c
install = test
libs = libsvn_test libsvn_subr $(SVN_APRUTIL_LIBS) $(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_APRUTIL_LIBS) $(SVN_APR_LIBS)
# 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_APRUTIL_LIBS) $(SVN_APR_LIBS)
### Tests that are simply broken (fix?) ----------
# 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_APRUTIL_LIBS) $(SVN_APR_LIBS) $(NEON_LIBS)
# 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_APRUTIL_LIBS) $(SVN_APR_LIBS)
# target-test.py will run this for us
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_APRUTIL_LIBS) $(SVN_APR_LIBS)
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_APRUTIL_LIBS) $(SVN_APR_LIBS)
testing = skip
# ----------------------------------------------------------------------------
#
# SCRIPT TARGETS (NO BUILD NEEDED)
#
[svn-config]
type = script
path = .
sources = svn-config
# ----------------------------------------------------------------------------
#
# DOC TARGETS
#
#[svn-design]
#type = doc
#path = doc
#install = doc
#sources = svn-design.texi
#deps = ...
# ----------------------------------------------------------------------------