Replace bare SubversionException implemented in C with
[svn.git] / build.conf
blob8ae33091fb46db2364dcaf62906388e672cd7117
2 # build.conf -- configuration information for building Subversion
4 ######################################################################
6 # Copyright (c) 2000-2006 CollabNet.  All rights reserved.
8 # This software is licensed as described in the file COPYING, which
9 # you should have received as part of this distribution.  The terms
10 # are also available at http://subversion.tigris.org/license-1.html.
11 # If newer versions of this license are posted there, you may use a
12 # newer version instead, at your option.
14 ######################################################################
16 # This file is processed by gen-make.py, creating build-outputs.mk
19 # ----------------------------------------------------------------------------
21 # PREDEFINED SECTION
23 # This [options] section is global in scope, providing information to the
24 # process, rather than defining a build target, as all other sections do.
27 [options]
28 includes = subversion/include/*.h
29 include-wildcards = *.h *.i *.swg
30 private-includes =
31         subversion/include/private/*.h
32         subversion/bindings/swig/include/*.swg
33         subversion/libsvn_delta/compose_delta.c
34 private-built-includes =
35         subversion/svn_private_config.h
36         subversion/bindings/swig/proxy/swig_python_external_runtime.swg
37         subversion/bindings/swig/proxy/swig_perl_external_runtime.swg
38         subversion/bindings/swig/proxy/swig_ruby_external_runtime.swg
39         subversion/bindings/javahl/include/org_tigris_subversion_javahl_CommitItemStateFlags.h
40         subversion/bindings/javahl/include/org_tigris_subversion_javahl_ConflictDescriptor_Kind.h
41         subversion/bindings/javahl/include/org_tigris_subversion_javahl_ConflictDescriptor_Action.h
42         subversion/bindings/javahl/include/org_tigris_subversion_javahl_ConflictDescriptor_Reason.h
43         subversion/bindings/javahl/include/org_tigris_subversion_javahl_ConflictResult.h
44         subversion/bindings/javahl/include/org_tigris_subversion_javahl_LockStatus.h
45         subversion/bindings/javahl/include/org_tigris_subversion_javahl_NodeKind.h
46         subversion/bindings/javahl/include/org_tigris_subversion_javahl_NotifyAction.h
47         subversion/bindings/javahl/include/org_tigris_subversion_javahl_NotifyStatus.h
48         subversion/bindings/javahl/include/org_tigris_subversion_javahl_NativeResources.h
49         subversion/bindings/javahl/include/org_tigris_subversion_javahl_Path.h
50         subversion/bindings/javahl/include/org_tigris_subversion_javahl_PromptUserPassword2.h
51         subversion/bindings/javahl/include/org_tigris_subversion_javahl_Revision.h
52         subversion/bindings/javahl/include/org_tigris_subversion_javahl_RevisionKind.h
53         subversion/bindings/javahl/include/org_tigris_subversion_javahl_SVNAdmin.h
54         subversion/bindings/javahl/include/org_tigris_subversion_javahl_SVNClient.h
55         subversion/bindings/javahl/include/org_tigris_subversion_javahl_SVNClientLogLevel.h
56         subversion/bindings/javahl/include/org_tigris_subversion_javahl_ScheduleKind.h
57         subversion/bindings/javahl/include/org_tigris_subversion_javahl_StatusKind.h
58         subversion/bindings/javahl/include/org_tigris_subversion_javahl_Version.h
61 # Makefile.in and config.m4 (omit README)
62 static-apache-files = subversion/mod_dav_svn/static/[Mc]*
64 test-scripts =
65         subversion/tests/libsvn_subr/target-test.py
66         subversion/tests/cmdline/getopt_tests.py
67         subversion/tests/cmdline/basic_tests.py
68         subversion/tests/cmdline/checkout_tests.py
69         subversion/tests/cmdline/commit_tests.py
70         subversion/tests/cmdline/update_tests.py
71         subversion/tests/cmdline/switch_tests.py
72         subversion/tests/cmdline/prop_tests.py
73         subversion/tests/cmdline/schedule_tests.py
74         subversion/tests/cmdline/log_tests.py
75         subversion/tests/cmdline/copy_tests.py
76         subversion/tests/cmdline/diff_tests.py
77         subversion/tests/cmdline/export_tests.py
78         subversion/tests/cmdline/externals_tests.py
79         subversion/tests/cmdline/merge_tests.py
80         subversion/tests/cmdline/merge_authz_tests.py
81         subversion/tests/cmdline/revert_tests.py
82         subversion/tests/cmdline/mergeinfo_tests.py
83         subversion/tests/cmdline/stat_tests.py
84         subversion/tests/cmdline/trans_tests.py
85         subversion/tests/cmdline/autoprop_tests.py
86         subversion/tests/cmdline/blame_tests.py
87         subversion/tests/cmdline/special_tests.py
88         subversion/tests/cmdline/svnadmin_tests.py
89         subversion/tests/cmdline/svnlook_tests.py
90         subversion/tests/cmdline/svnversion_tests.py
91         subversion/tests/cmdline/utf8_tests.py
92         subversion/tests/cmdline/history_tests.py
93         subversion/tests/cmdline/lock_tests.py
94         subversion/tests/cmdline/cat_tests.py
95         subversion/tests/cmdline/import_tests.py
96         subversion/tests/cmdline/svnsync_tests.py
97         subversion/tests/cmdline/authz_tests.py
98         subversion/tests/cmdline/depth_tests.py
99         subversion/tests/cmdline/svndumpfilter_tests.py
101 bdb-test-scripts =
103 swig-python-opts = -python -classic
104 swig-perl-opts = -perl -nopm -noproxy
105 swig-ruby-opts = -ruby
106 swig-languages = python perl ruby
107 swig-dirs = 
108         subversion/bindings/swig/python
109         subversion/bindings/swig/perl
110         subversion/bindings/swig/ruby
111         subversion/bindings/swig/proxy
113 swig-proxy-dir = subversion/bindings/swig/proxy
114 swig-checkout-files = common.swg swigrun.swg runtime.swg
115                       ruby/rubydef.swg ruby/rubyhead.swg ruby/rubytracking.swg
116                       perl5/perlrun.swg python/pyrun.swg python/python.swg
118 # ----------------------------------------------------------------------------
120 # BUILD TARGETS
123 # Explanation for the seemingly-spurious mention of 'neon' in the libs lines
124 # for svn, svnsync, ra-local-test, svn-push and svnmucc:
125 # This is a workaround for a libtool bug, which manifests on Linux and similar
126 # ELF platforms, when linking to an installed Neon, and there are old
127 # Subversion libraries in the same directory as the installed Neon.  In such
128 # cases, the run-before-installing version of the executables (.libs/lt-foo),
129 # gets given an ELF RPATH which includes the install directory *before* all the
130 # uninstalled libsvn_foo/.libs directories have been mentioned.  This occurs
131 # because when libtool is at the point of handling Neon, it adds an RPATH entry
132 # pointing to its directory, but fails to correctly consider that it should
133 # prioritize all the RPATH entries for *un*installed libraries before all those
134 # for installed libraries, to avoid this bug.  As a kludgy workaround, we add
135 # a mention of 'neon' to the end of the libs lines for executables which
136 # indirectly link to libsvn_ra_neon, which has the effect of 'pulling' the
137 # harmful RPATH entry toward the end of RPATH, enabling the executables to run
138 # correctly before installation, even when old versions of the Subversion
139 # libraries are present.
140 # This bug was last confirmed to be present in libtool 1.5.22.
142 # The subversion command-line client
143 [svn]
144 description = Subversion Client
145 type = exe
146 path = subversion/svn
147 libs = libsvn_client libsvn_wc libsvn_ra libsvn_delta libsvn_diff libsvn_subr
148        apriconv apr neon
149 manpages = subversion/svn/svn.1
150 install = bin
152 # The subversion repository administration tool
153 [svnadmin]
154 description = Subversion Repository Administrator
155 type = exe
156 path = subversion/svnadmin
157 install = bin
158 manpages = subversion/svnadmin/svnadmin.1
159 libs = libsvn_repos libsvn_fs libsvn_delta libsvn_subr apriconv apr sqlite
161 # The subversion repository dump filtering tool
162 [svndumpfilter]
163 description = Subversion Dumpfile Filter
164 type = exe
165 path = subversion/svndumpfilter
166 install = bin
167 manpages = subversion/svndumpfilter/svndumpfilter.1
168 libs = libsvn_repos libsvn_fs libsvn_delta libsvn_subr apriconv apr sqlite
170 # The subversion repository inspection tool
171 [svnlook]
172 description = Subversion Repository Browser
173 type = exe
174 path = subversion/svnlook
175 install = bin
176 manpages = subversion/svnlook/svnlook.1
177 libs = libsvn_repos libsvn_fs libsvn_delta libsvn_diff libsvn_subr apriconv apr 
178        sqlite
180 [svnserve]
181 description = Subversion Server
182 type = exe
183 path = subversion/svnserve
184 install = bin
185 manpages = subversion/svnserve/svnserve.8 subversion/svnserve/svnserve.conf.5
186 libs = libsvn_repos libsvn_fs libsvn_delta libsvn_subr libsvn_ra_svn
187        apriconv apr sasl
188 msvc-libs = advapi32.lib ws2_32.lib
190 [svnsync]
191 description = Subversion repository replicator
192 type = exe
193 path = subversion/svnsync
194 libs = libsvn_ra libsvn_delta libsvn_subr apr neon
195 install = bin
196 manpages = subversion/svnsync/svnsync.1
198 [svnversion]
199 description = Subversion Revision Extractor
200 type = exe
201 path = subversion/svnversion
202 libs = libsvn_wc libsvn_subr apriconv apr
203 install = bin
204 manpages = subversion/svnversion/svnversion.1
206 # Library needed by all subversion clients
207 [libsvn_client]
208 description = Subversion Client Library
209 type = lib
210 path = subversion/libsvn_client
211 libs = libsvn_wc libsvn_ra libsvn_delta libsvn_diff libsvn_subr apriconv apr
212 install = lib
213 msvc-export = svn_client.h
215 # Routines for binary diffing and tree-deltas
216 [libsvn_delta]
217 description = Subversion Delta Library
218 type = lib
219 install = fsmod-lib
220 path = subversion/libsvn_delta
221 libs = libsvn_subr aprutil apriconv apr zlib
222 msvc-export = svn_delta.h
224 # Routines for diffing
225 [libsvn_diff]
226 description = Subversion Diff Library
227 type = lib
228 path = subversion/libsvn_diff
229 libs = libsvn_subr apriconv apr
230 install = lib
231 msvc-export = svn_diff.h
233 # The repository filesystem library
234 [libsvn_fs]
235 description = Subversion Repository Filesystem Library
236 type = lib
237 path = subversion/libsvn_fs
238 install = ramod-lib
239 libs = libsvn_subr fs-libs apr sqlite
240 # conditionally add more dependencies
241 add-deps = $(SVN_FS_LIB_DEPS)
242 add-install-deps = $(SVN_FS_LIB_INSTALL_DEPS)
243 msvc-export = svn_fs.h
245 [libsvn_fs_base]
246 type = fs-module
247 path = subversion/libsvn_fs_base
248 sources = *.c bdb/*.c util/*.c
249 install = bdb-lib
250 libs = libsvn_delta libsvn_subr aprutil apriconv apr bdb libsvn_fs_util
251 msvc-static = yes
253 [libsvn_fs_fs]
254 type = fs-module
255 path = subversion/libsvn_fs_fs
256 install = fsmod-lib
257 libs = libsvn_delta libsvn_subr aprutil apriconv apr libsvn_fs_util
258 msvc-static = yes
260 # General API for accessing repositories
261 [libsvn_ra]
262 description = Subversion Repository Access Library
263 type = lib
264 path = subversion/libsvn_ra
265 libs = libsvn_subr ra-libs apriconv apr
266 # conditionally add more dependencies
267 add-deps = $(SVN_RA_LIB_DEPS)
268 add-install-deps = $(SVN_RA_LIB_INSTALL_DEPS)
269 install = lib
270 msvc-export = svn_ra.h private\svn_ra_private.h
272 # Accessing repositories via DAV through neon
273 [libsvn_ra_neon]
274 type = ra-module
275 path = subversion/libsvn_ra_neon
276 install = neon-lib
277 libs = libsvn_delta libsvn_subr aprutil apriconv apr neon
278 msvc-static = yes
280 # Accessing repositories via DAV through serf
281 [libsvn_ra_serf]
282 type = ra-module
283 path = subversion/libsvn_ra_serf
284 install = serf-lib
285 libs = libsvn_delta libsvn_subr aprutil apriconv apr serf
286 msvc-static = yes
288 # Accessing repositories via SVN
289 [libsvn_ra_svn]
290 type = ra-module
291 path = subversion/libsvn_ra_svn
292 install = ramod-lib
293 libs = libsvn_delta libsvn_subr aprutil apriconv apr sasl
294 msvc-static = yes
296 # Accessing repositories via direct libsvn_fs
297 [libsvn_ra_local]
298 type = ra-module
299 path = subversion/libsvn_ra_local
300 install = ramod-lib
301 libs = libsvn_repos libsvn_fs libsvn_delta libsvn_subr apriconv apr
302 msvc-static = yes
304 # Routines built on top of libsvn_fs
305 [libsvn_repos]
306 description = Subversion Repository Library
307 type = lib
308 path = subversion/libsvn_repos
309 install = ramod-lib
310 libs = libsvn_fs libsvn_delta libsvn_subr apriconv apr
311 msvc-export = svn_repos.h
313 # Low-level grab bag of utilities
314 [libsvn_subr]
315 description = Subversion General Utility Library
316 type = lib
317 install = fsmod-lib
318 path = subversion/libsvn_subr
319 libs = aprutil apriconv apr xml zlib
320 msvc-libs = advapi32.lib shfolder.lib ole32.lib
321 msvc-export = svn_auth.h svn_base64.h svn_cmdline.h svn_compat.h svn_config.h svn_ctype.h svn_dso.h svn_error.h svn_hash.h svn_io.h svn_md5.h svn_nls.h svn_opt.h svn_mergeinfo.h svn_path.h svn_pools.h svn_props.h svn_quoprint.h svn_sorts.h svn_string.h svn_subst.h svn_time.h svn_types.h svn_user.h svn_utf.h svn_version.h svn_xml.h private\svn_atomic.h private\svn_mergeinfo_private.h svn_iter.h
323 # Low-level grab bag of utilities
324 [libsvn_fs_util]
325 type = lib
326 install = fsmod-lib
327 path = subversion/libsvn_fs_util
328 libs = libsvn_subr aprutil apriconv apr sqlite
329 msvc-libs = advapi32.lib shfolder.lib
330 msvc-static = yes
332 # Working copy management lib
333 [libsvn_wc]
334 description = Subversion Working Copy Library
335 type = lib
336 path = subversion/libsvn_wc
337 libs = libsvn_delta libsvn_diff libsvn_subr aprutil apriconv apr
338 install = lib
339 msvc-export = svn_wc.h private\svn_wc_private.h
341 # Subversion plugin for Apache's mod_dav
342 [mod_dav_svn]
343 description = Subversion plug-in for the Apache DAV module
344 type = apache-mod
345 path = subversion/mod_dav_svn
346 sources = *.c reports/*.c
347 libs = libsvn_repos libsvn_fs libsvn_delta libsvn_subr
348 nonlibs = apr aprutil
349 install = apache-mod
350 msvc-libs = mod_dav.lib libhttpd.lib
352 [mod_authz_svn]
353 description = Subversion path-based authorization module for Apache
354 type = apache-mod
355 path = subversion/mod_authz_svn
356 nonlibs = mod_dav_svn apr aprutil
357 libs = libsvn_repos libsvn_subr
358 install = apache-mod
359 msvc-libs = libhttpd.lib
361 # ----------------------------------------------------------------------------
363 # TARGETS FOR I18N SUPPORT
365 [locale]
366 type = i18n
367 path = subversion/po
368 install = locale
369 external-project = build/win32/svn_locale
371 # ----------------------------------------------------------------------------
373 # TARGETS FOR SWIG SUPPORT
376 [swig_core]
377 type = swig
378 path = subversion/bindings/swig
379 sources = core.i
380 libs = libsvn_swig_py libsvn_swig_perl libsvn_swig_ruby
381        libsvn_diff libsvn_subr apr
382 description = Subversion core library bindings
383 include-runtime = yes
385 [swig_client]
386 type = swig
387 path = subversion/bindings/swig
388 sources = svn_client.i
389 libs = libsvn_swig_py libsvn_swig_perl libsvn_swig_ruby
390        libsvn_client libsvn_subr apr
391 nonlibs = swig_core
392 description = Subversion client library bindings
394 [swig_delta]
395 type = swig
396 path = subversion/bindings/swig
397 sources = svn_delta.i
398 libs = libsvn_swig_py libsvn_swig_perl libsvn_swig_ruby
399        libsvn_delta libsvn_subr apr
400 nonlibs = swig_core
401 description = Subversion delta library bindings
403 [swig_fs]
404 type = swig
405 path = subversion/bindings/swig
406 sources = svn_fs.i
407 libs = libsvn_swig_py libsvn_swig_perl libsvn_swig_ruby
408        libsvn_fs libsvn_subr apr
409 nonlibs = swig_core
410 description = Subversion FS library bindings
412 [swig_ra]
413 type = swig
414 path = subversion/bindings/swig
415 sources = svn_ra.i
416 libs = libsvn_swig_py libsvn_swig_perl libsvn_swig_ruby
417        libsvn_ra libsvn_subr apr
418 nonlibs = swig_core
419 description = Subversion RA library bindings
421 [swig_repos]
422 type = swig
423 path = subversion/bindings/swig
424 sources = svn_repos.i
425 libs = libsvn_swig_py libsvn_swig_perl libsvn_swig_ruby
426        libsvn_repos libsvn_subr apr
427 nonlibs = swig_core
428 description = Subversion repository library bindings
430 [swig_wc]
431 type = swig
432 path = subversion/bindings/swig
433 sources = svn_wc.i
434 libs = libsvn_swig_py libsvn_swig_perl libsvn_swig_ruby
435        libsvn_wc libsvn_subr apr
436 nonlibs = swig_core
437 description = Subversion WC library bindings
439 # SWIG utility library for Python modules
440 [libsvn_swig_py]
441 type = swig_lib
442 lang = python
443 path = subversion/bindings/swig/python/libsvn_swig_py
444 libs = libsvn_client libsvn_wc libsvn_ra libsvn_delta libsvn_subr apriconv apr
445 link-cmd = $(LINK) $(SWIG_PY_LIBS)
446 install = swig-py-lib
447 # need special build rule to include -DSWIGPYTHON
448 compile-cmd = $(COMPILE_SWIG_PY)
449 msvc-static = no
451 # SWIG utility library for Perl modules
452 [libsvn_swig_perl]
453 type = swig_lib
454 lang = perl
455 path = subversion/bindings/swig/perl/libsvn_swig_perl
456 libs = libsvn_delta libsvn_subr apriconv apr
457 install = swig-pl-lib
458 # need special build rule to include
459 compile-cmd = $(COMPILE_SWIG_PL)
460 msvc-static = yes
462 # SWIG utility library for Ruby modules
463 [libsvn_swig_ruby]
464 type = swig_lib
465 lang = ruby
466 path = subversion/bindings/swig/ruby/libsvn_swig_ruby
467 libs = libsvn_client libsvn_wc libsvn_delta libsvn_subr apriconv apr
468 link-cmd = $(LINK) $(SWIG_RB_LIBS)
469 install = swig-rb-lib
470 # need special build rule to include
471 compile-cmd = $(COMPILE_SWIG_RB)
472 msvc-static = no
474 # ----------------------------------------------------------------------------
476 # JavaHL targets
478 [javahl-java]
479 type = java
480 path = subversion/bindings/javahl/src/org/tigris/subversion/javahl
481 sources = *.java
482 install = javahl-java
483 link-cmd = $(COMPILE_JAVAHL_JAVAC)
484 classes = subversion/bindings/javahl/classes
485 ### Replace JAR call in INSTALL_EXTRA_JAVAHL_JAVA macro Makefile.in.
486 #jar = svn-javahl.jar
487 package-roots = org
489 [javahl-tests]
490 type = java
491 path = subversion/bindings/javahl/tests/org/tigris/subversion/javahl
492 sources = *.java
493 install = javahl-java
494 link-cmd = $(COMPILE_JAVAHL_JAVAC)
495 classes = subversion/bindings/javahl/classes
496 package-roots = org
497 ### Java targets don't do up-to-date checks yet.
498 #add-deps = javahl-java
500 [javahl-javah]
501 type = javah 
502 path = subversion/bindings/javahl/src/org/tigris/subversion/javahl
503 classes = subversion/bindings/javahl/classes
504 headers = subversion/bindings/javahl/include
505 package = org.tigris.subversion.javahl
506 sources = *.java
507 add-deps = $(javahl_java_DEPS)
508 install = javahl-javah
509 link-cmd = $(COMPILE_JAVAHL_JAVAH) -force
511 [libsvnjavahl]
512 description = Subversion Java HighLevel binding
513 type = lib
514 path = subversion/bindings/javahl/native
515 libs = libsvn_repos libsvn_client libsvn_wc libsvn_ra libsvn_delta libsvn_diff 
516        libsvn_subr libsvn_fs aprutil apriconv apr neon
517 sources = *.cpp *.c
518 add-deps = $(javahl_javah_DEPS) $(javahl_java_DEPS)
519 install = javahl-lib
520 # need special build rule to include -I$(JDK)/include/jni.h
521 compile-cmd = $(COMPILE_JAVAHL_CXX)
522 link-cmd = $(LINK_JAVAHL_CXX)
524 # ----------------------------------------------------------------------------
526 # TESTING TARGETS
529 # general library:  our C testing framework
530 [libsvn_test]
531 type = lib
532 path = subversion/tests
533 install = test
534 libs = libsvn_repos libsvn_fs libsvn_delta libsvn_subr aprutil apriconv apr
535 msvc-static = yes
536 undefined-lib-symbols = yes
538 # ----------------------------------------------------------------------------
539 # Tests for libsvn_fs_base
541 [fs-base-test]
542 description = Tests for *public* fs API (svn_fs.h)
543 type = exe
544 path = subversion/tests/libsvn_fs_base
545 sources = fs-base-test.c
546 install = bdb-test
547 libs = libsvn_test libsvn_fs libsvn_fs_base libsvn_delta
548        libsvn_fs_util libsvn_subr apriconv apr
550 [skel-test]
551 description = Test skels in libsvn_fs_base
552 type = exe
553 path = subversion/tests/libsvn_fs_base
554 sources = skel-test.c
555 install = bdb-test
556 libs = libsvn_test libsvn_fs_base libsvn_subr apriconv apr
558 [key-test]
559 description = Test keygen funcs in libsvn_fs_base
560 type = exe
561 path = subversion/tests/libsvn_fs_base
562 sources = key-test.c
563 install = bdb-test
564 libs = libsvn_test libsvn_fs_base libsvn_subr apriconv apr 
566 [strings-reps-test]
567 description = Test strings/reps in libsvn_fs_base
568 type = exe
569 path = subversion/tests/libsvn_fs_base
570 sources = strings-reps-test.c
571 install = bdb-test
572 libs = libsvn_test libsvn_fs libsvn_fs_base libsvn_delta
573        libsvn_subr apriconv apr
575 [changes-test]
576 description = Test changes in libsvn_fs_base
577 type = exe
578 path = subversion/tests/libsvn_fs_base
579 sources = changes-test.c
580 install = bdb-test
581 libs = libsvn_test libsvn_fs libsvn_fs_base libsvn_delta
582        libsvn_subr apriconv apr
584 # ----------------------------------------------------------------------------
585 # Tests for libsvn_fs
587 [locks-test]
588 description = Test locks in libsvn_fs
589 type = exe
590 path = subversion/tests/libsvn_fs
591 sources = locks-test.c
592 install = test
593 libs = libsvn_test libsvn_fs libsvn_delta libsvn_subr apriconv apr
595 [fs-test]
596 description = Test locks in libsvn_fs
597 type = exe
598 path = subversion/tests/libsvn_fs
599 sources = fs-test.c
600 install = test
601 libs = libsvn_test libsvn_fs libsvn_delta
602        libsvn_subr aprutil apriconv apr
604 # ----------------------------------------------------------------------------
605 # Tests for libsvn_repos
607 [repos-test]
608 description = Test svn_repos_update() is libsvn_repos
609 type = exe
610 path = subversion/tests/libsvn_repos
611 sources = repos-test.c dir-delta-editor.c
612 install = test
613 libs = libsvn_test libsvn_repos libsvn_fs libsvn_delta libsvn_subr apriconv apr
615 # ----------------------------------------------------------------------------
616 # Tests for libsvn_subr
618 [compat-test]
619 description = Test compatibility functions
620 type = exe
621 path = subversion/tests/libsvn_subr
622 sources = compat-test.c
623 install = test
624 libs = libsvn_test libsvn_subr apr
626 [config-test]
627 description = Test svn_config utilities
628 type = exe
629 path = subversion/tests/libsvn_subr
630 sources = config-test.c
631 install = test
632 libs = libsvn_test libsvn_subr apriconv apr
634 [error-test]
635 description = Test error library
636 type = exe
637 path = subversion/tests/libsvn_subr
638 sources = error-test.c
639 install = test
640 libs = libsvn_test libsvn_subr apriconv apr
642 [hashdump-test]
643 description = Test hashfile format for props
644 type = exe
645 path = subversion/tests/libsvn_subr
646 sources = hashdump-test.c
647 install = test
648 libs = libsvn_test libsvn_subr apriconv apr
650 [opt-test]
651 description = Test options library
652 type = exe
653 path = subversion/tests/libsvn_subr
654 sources = opt-test.c
655 install = test
656 libs = libsvn_test libsvn_subr apr
658 [mergeinfo-test]
659 description = Test mergeinfo library
660 type = exe
661 path = subversion/tests/libsvn_subr
662 sources = mergeinfo-test.c
663 install = test
664 libs = libsvn_test libsvn_subr apr
666 [path-test]
667 description = Test path library
668 type = exe
669 path = subversion/tests/libsvn_subr
670 sources = path-test.c
671 install = test
672 libs = libsvn_test libsvn_subr apriconv apr
674 [revision-test]
675 description = Test revision library
676 type = exe
677 path = subversion/tests/libsvn_subr
678 sources = revision-test.c
679 install = test
680 libs = libsvn_test libsvn_subr apr
682 [stream-test]
683 description = Test stream library
684 type = exe
685 path = subversion/tests/libsvn_subr
686 sources = stream-test.c
687 install = test
688 libs = libsvn_test libsvn_subr apriconv apr
690 [string-test]
691 description = Test svn_stringbuf_t utilities
692 type = exe
693 path = subversion/tests/libsvn_subr
694 sources = string-test.c
695 install = test
696 libs = libsvn_test libsvn_subr apriconv apr
698 [time-test]
699 description = Test time functions
700 type = exe
701 path = subversion/tests/libsvn_subr
702 sources = time-test.c
703 install = test
704 libs = libsvn_test libsvn_subr apriconv apr
706 [utf-test]
707 description = Test UTF-8 functions
708 type = exe
709 path = subversion/tests/libsvn_subr
710 sources = utf-test.c
711 install = test
712 libs = libsvn_test libsvn_subr apriconv apr
714 [target-test]
715 description = Utility used by target-test.py to test svn_path_condense_targets()
716 type = exe
717 path = subversion/tests/libsvn_subr
718 sources = target-test.c
719 install = test
720 libs = libsvn_subr apriconv apr
721 # target-test.py will run this for us
722 testing = skip
724 [translate-test]
725 description = Test eol conversion and keyword substitution routines
726 type = exe
727 path = subversion/tests/libsvn_subr
728 sources = translate-test.c
729 install = test
730 libs = libsvn_test libsvn_subr apriconv apr
732 # ----------------------------------------------------------------------------
733 # Tests for libsvn_delta
735 [random-test]
736 description = Use random data to test delta processing
737 type = exe
738 path = subversion/tests/libsvn_delta
739 sources = random-test.c
740 install = test
741 libs = libsvn_test libsvn_delta libsvn_subr apriconv apr
743 # ----------------------------------------------------------------------------
744 # Tests for libsvn_diff
746 [diff-diff3-test]
747 description = Test the diff/diff3 library
748 type = exe
749 path = subversion/tests/libsvn_diff
750 sources = diff-diff3-test.c
751 install = test
752 libs = libsvn_test libsvn_diff libsvn_subr apriconv apr
754 # ----------------------------------------------------------------------------
755 # Tests for libsvn_ra_local
757 [ra-local-test]
758 description = Test a few things in libsvn_ra_local
759 type = exe
760 path = subversion/tests/libsvn_ra_local
761 sources = ra-local-test.c
762 install = test
763 libs = libsvn_test libsvn_ra_local libsvn_ra libsvn_fs libsvn_delta libsvn_subr
764        apriconv apr neon
766 # ----------------------------------------------------------------------------
767 # These are not unit tests at all, they are small programs that exercise
768 # parts of the libsvn_delta API from the command line.  They are stuck here
769 # because of some historical association with the test-suite, but should
770 # really be put somewhere else.
772 # test our textdelta encoding
773 [svndiff-test]
774 type = exe
775 path = subversion/tests/libsvn_delta
776 sources = svndiff-test.c
777 install = test
778 libs = libsvn_delta libsvn_subr apriconv apr
779 testing = skip
781 # compare two files, print txdelta windows
782 [vdelta-test]
783 type = exe
784 path = subversion/tests/libsvn_delta
785 sources = vdelta-test.c
786 install = test
787 libs = libsvn_delta libsvn_subr apriconv apr
788 testing = skip
791 # ----------------------------------------------------------------------------
793 # EXTERNAL TARGETS (NO BUILD NEEDED)
796 [apr]
797 type = lib
798 external-lib = $(SVN_APR_LIBS)
800 [aprutil]
801 type = lib
802 external-lib = $(SVN_APRUTIL_LIBS)
804 [apriconv]
805 type = lib
806 external-lib = $(SVN_APRUTIL_LIBS)
808 [bdb]
809 type = lib
810 external-lib = $(SVN_DB_LIBS)
812 [sasl]
813 type = lib
814 external-lib = $(SVN_SASL_LIBS)
816 [zlib]
817 type = lib
818 external-lib = $(SVN_ZLIB_LIBS)
819 external-project = build/win32/zlib
820 msvc-static = yes
822 [neon]
823 type = lib
824 external-lib = $(NEON_LIBS)
825 external-project = neon/neon
826 libs = xml
827 msvc-libs = ws2_32.lib
828 msvc-static = yes
830 [sqlite]
831 type = lib
832 external-lib = $(SVN_SQLITE_LIBS)
834 [serf]
835 type = lib
836 external-lib = $(SVN_SERF_LIBS)
837 external-project = serf/serf
838 libs = apr aprutil xml
839 msvc-static = yes
841 [xml]
842 type = lib
843 external-lib = $(SVN_XML_LIBS)
845 [ra-libs]
846 type = lib
847 external-lib = $(SVN_RA_LIB_LINK)
848 libs = libsvn_ra_neon libsvn_ra_serf libsvn_ra_local libsvn_ra_svn
850 [fs-libs]
851 type = lib
852 external-lib = $(SVN_FS_LIB_LINK)
853 libs = libsvn_fs_base libsvn_fs_fs
855 [__ALL__]
856 type = project
857 path = build/win32
858 libs = svn svnserve svnadmin svnlook svnversion svndumpfilter
859        mod_authz_svn mod_dav_svn svnsync
861 [__ALL_TESTS__]
862 type = project
863 path = build/win32
864 libs = __ALL__
865        fs-test fs-base-test skel-test key-test strings-reps-test changes-test locks-test
866        repos-test
867        compat-test config-test hashdump-test mergeinfo-test opt-test path-test stream-test
868        string-test time-test utf-test target-test error-test
869        revision-test
870        translate-test
871        random-test
872        diff-diff3-test
873        ra-local-test
874        svndiff-test vdelta-test
875        diff-test diff3-test diff4-test
877 [__LIBS__]
878 type = project
879 path = build/win32
880 libs = fs-libs ra-libs libsvn_client libsvn_subr libsvn_wc
881        aprutil apriconv apr neon
883 [__CONFIG__]
884 type = lib
885 external-project = build/win32/svn_config
887 [__SWIG_PYTHON__]
888 type = swig_project
889 path = build/win32
890 libs = swig_client swig_delta swig_fs swig_ra swig_repos swig_wc swig_core
891 lang = python
893 [__SWIG_PERL__]
894 type = swig_project
895 path = build/win32
896 libs = swig_client swig_delta swig_fs swig_ra swig_repos swig_wc swig_core
897 lang = perl
899 [__SWIG_RUBY__]
900 type = swig_project
901 path = build/win32
902 libs = swig_client swig_delta swig_fs swig_ra swig_repos swig_wc swig_core
903 lang = ruby
905 [__JAVAHL__]
906 type = project
907 path = build/win32
908 libs = javahl-java javahl-javah libsvnjavahl
910 # ----------------------------------------------------------------------------
911 # Contrib and tools
913 [svn-push]
914 type = exe
915 path = contrib/client-side/svn-push
916 sources = svn-push.c
917 install = contrib
918 libs = libsvn_ra libsvn_delta libsvn_subr apriconv apr neon
920 [svnmucc]
921 type = exe
922 path = contrib/client-side/svnmucc
923 sources = svnmucc.c
924 install = tools
925 libs = libsvn_client libsvn_ra libsvn_subr libsvn_delta apriconv apr neon
927 [diff]
928 type = exe
929 path = tools/diff
930 sources = diff.c
931 install = contrib
932 libs = libsvn_diff libsvn_subr apriconv apr
934 [diff3]
935 type = exe
936 path = tools/diff
937 sources = diff3.c
938 install = contrib
939 libs = libsvn_diff libsvn_subr apriconv apr
941 [diff4]
942 type = exe
943 path = tools/diff
944 sources = diff4.c
945 install = contrib
946 libs = libsvn_diff libsvn_subr apriconv apr
948 [svnauthz-validate]
949 description = Authz config file validator
950 type = exe
951 path = tools/server-side
952 sources = svnauthz-validate.c
953 install = contrib
954 libs = libsvn_repos libsvn_subr apr
956 [svn-populate-node-origins-index]
957 type = exe
958 path = tools/server-side
959 sources = svn-populate-node-origins-index.c
960 install = tools
961 libs = libsvn_repos libsvn_fs libsvn_subr apr