2 # build.conf -- configuration information for building Subversion
4 ######################################################################
5 # Licensed to the Apache Software Foundation (ASF) under one
6 # or more contributor license agreements. See the NOTICE file
7 # distributed with this work for additional information
8 # regarding copyright ownership. The ASF licenses this file
9 # to you under the Apache License, Version 2.0 (the
10 # "License"); you may not use this file except in compliance
11 # with the License. You may obtain a copy of the License at
13 # http://www.apache.org/licenses/LICENSE-2.0
15 # Unless required by applicable law or agreed to in writing,
16 # software distributed under the License is distributed on an
17 # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
18 # KIND, either express or implied. See the License for the
19 # specific language governing permissions and limitations
21 ######################################################################
23 # This file is processed by gen-make.py, creating build-outputs.mk
26 # ----------------------------------------------------------------------------
30 # This [options] section is global in scope, providing information to the
31 # process, rather than defining a build target, as all other sections do.
35 includes = subversion/include/*.h
36 include-wildcards = *.h *.i *.swg
38 subversion/include/private/*.h
39 subversion/bindings/swig/include/*.swg
40 subversion/libsvn_delta/compose_delta.c
41 subversion/bindings/cxxhl/include/*.hpp
42 subversion/bindings/cxxhl/include/svncxxhl/*.hpp
43 subversion/bindings/cxxhl/src/*.hpp
44 subversion/bindings/cxxhl/src/aprwrap/*.hpp
45 subversion/bindings/cxxhl/src/private/*.hpp
46 subversion/bindings/javahl/native/*.hpp
47 subversion/bindings/javahl/native/jniwrapper/jni_*.hpp
48 subversion/libsvn_subr/utf8proc/utf8proc.h
49 subversion/libsvn_subr/utf8proc/utf8proc.c
50 subversion/libsvn_subr/utf8proc/utf8proc_data.c
51 private-built-includes =
52 subversion/svn_private_config.h
53 subversion/libsvn_fs_fs/rep-cache-db.h
54 subversion/libsvn_fs_x/rep-cache-db.h
55 subversion/libsvn_wc/wc-metadata.h
56 subversion/libsvn_wc/wc-queries.h
57 subversion/libsvn_wc/wc-checks.h
58 subversion/libsvn_subr/internal_statements.h
59 subversion/tests/libsvn_wc/wc-test-queries.h
60 subversion/bindings/swig/proxy/swig_python_external_runtime.swg
61 subversion/bindings/swig/proxy/swig_perl_external_runtime.swg
62 subversion/bindings/swig/proxy/swig_ruby_external_runtime.swg
63 subversion/bindings/swig/proxy/rubyhead.swg
64 subversion/bindings/javahl/include/org_apache_subversion_javahl_CommitItemStateFlags.h
65 subversion/bindings/javahl/include/org_apache_subversion_javahl_NativeResources.h
66 subversion/bindings/javahl/include/org_apache_subversion_javahl_Path.h
67 subversion/bindings/javahl/include/org_apache_subversion_javahl_SVNRepos.h
68 subversion/bindings/javahl/include/org_apache_subversion_javahl_SVNClient.h
69 subversion/bindings/javahl/include/org_apache_subversion_javahl_types_NativeInputStream.h
70 subversion/bindings/javahl/include/org_apache_subversion_javahl_types_NativeOutputStream.h
71 subversion/bindings/javahl/include/org_apache_subversion_javahl_types_Version.h
72 subversion/bindings/javahl/include/org_apache_subversion_javahl_types_VersionExtended.h
73 subversion/bindings/javahl/include/org_apache_subversion_javahl_types_VersionExtended_LinkedLib.h
74 subversion/bindings/javahl/include/org_apache_subversion_javahl_types_VersionExtended_LinkedLibIterator.h
75 subversion/bindings/javahl/include/org_apache_subversion_javahl_types_VersionExtended_LoadedLib.h
76 subversion/bindings/javahl/include/org_apache_subversion_javahl_types_VersionExtended_LoadedLibIterator.h
77 subversion/bindings/javahl/include/org_apache_subversion_javahl_types_RuntimeVersion.h
78 subversion/bindings/javahl/include/org_apache_subversion_javahl_types_Revision.h
79 subversion/bindings/javahl/include/org_apache_subversion_javahl_types_RevisionRangeList.h
80 subversion/bindings/javahl/include/org_apache_subversion_javahl_callback_UserPasswordCallback.h
81 subversion/bindings/javahl/include/org_apache_subversion_javahl_remote_RemoteSession.h
82 subversion/bindings/javahl/include/org_apache_subversion_javahl_remote_RemoteFactory.h
83 subversion/bindings/javahl/include/org_apache_subversion_javahl_remote_CommitEditor.h
84 subversion/bindings/javahl/include/org_apache_subversion_javahl_remote_StateReporter.h
85 subversion/bindings/javahl/include/org_apache_subversion_javahl_util_ConfigImpl_Category.h
86 subversion/bindings/javahl/include/org_apache_subversion_javahl_util_ConfigLib.h
87 subversion/bindings/javahl/include/org_apache_subversion_javahl_util_DiffLib.h
88 subversion/bindings/javahl/include/org_apache_subversion_javahl_util_PropLib.h
89 subversion/bindings/javahl/include/org_apache_subversion_javahl_util_SubstLib.h
90 subversion/bindings/javahl/include/org_apache_subversion_javahl_util_TunnelChannel.h
91 subversion/bindings/javahl/include/org_apache_subversion_javahl_util_RequestChannel.h
92 subversion/bindings/javahl/include/org_apache_subversion_javahl_util_ResponseChannel.h
95 subversion/tests/cmdline/*_tests.py
99 swig-python-opts = $(SWIG_CPPFLAGS) -python -classic
100 swig-perl-opts = $(SWIG_CPPFLAGS) -perl -nopm -noproxy
101 swig-ruby-opts = $(SWIG_CPPFLAGS) -ruby
102 swig-languages = python perl ruby
104 subversion/bindings/swig/python
105 subversion/bindings/swig/perl
106 subversion/bindings/swig/ruby
107 subversion/bindings/swig/proxy
109 swig-proxy-dir = subversion/bindings/swig/proxy
110 swig-checkout-files = common.swg swigrun.swg runtime.swg
111 ruby/rubydef.swg ruby/rubyhead.swg ruby/rubytracking.swg
112 perl5/perlrun.swg python/pyrun.swg python/python.swg
114 # ----------------------------------------------------------------------------
119 # description - optional build target description
120 # type - the target type, defines how to build it
121 # when - the name of an autoconf-substed variable that muset be
122 # defined to either "true" or "false", that determines
123 # whether this target should be built and installed.
124 # path - relative path to target sources
125 # sources - explicit list of target sources
126 # install - the installation group/type
127 # manpages - the man pages associated with this target
128 # libs - libraries that this target depends on
129 # nonlibs - dependencies that are not linked into the target
130 # lang - bindings for language $(lang)
131 # msvc-libs - additional libraries to link with on Windows
132 # msvc-export - additional list of files to expose in dsp/vc(x)proj
133 # msvc-static - visual studio target produces only a static lib
134 # msvc-force-static- visual studio always uses static libraries for svn libs
135 # add-deps - expands to additional autoconf-defined dependencies
136 # add-install-deps - like add-deps, but for the install step
137 # external-lib - expands to additional autoconf-defined libs
138 # external-project - visual studio project to depend on
141 # The subversion command-line client
143 description = Subversion Client
145 path = subversion/svn
146 libs = libsvn_client libsvn_wc libsvn_ra libsvn_delta libsvn_diff libsvn_subr
148 manpages = subversion/svn/svn.1
150 msvc-libs = setargv.obj
152 # The subversion repository administration tool
154 description = Subversion Repository Administrator
156 path = subversion/svnadmin
158 manpages = subversion/svnadmin/svnadmin.1
159 libs = libsvn_repos libsvn_fs libsvn_delta libsvn_subr apriconv apr
160 msvc-libs = setargv.obj
162 # The subversion repository dump filtering tool
164 description = Subversion Dumpfile Filter
166 path = subversion/svndumpfilter
168 manpages = subversion/svndumpfilter/svndumpfilter.1
169 libs = libsvn_repos libsvn_fs libsvn_delta libsvn_subr apriconv apr
171 # The subversion repository inspection tool
173 description = Subversion Repository Browser
175 path = subversion/svnlook
177 manpages = subversion/svnlook/svnlook.1
178 libs = libsvn_repos libsvn_fs libsvn_delta libsvn_diff libsvn_subr apriconv apr
181 description = Subversion Server
183 path = subversion/svnserve
185 manpages = subversion/svnserve/svnserve.8 subversion/svnserve/svnserve.conf.5
186 libs = libsvn_repos libsvn_fs libsvn_delta libsvn_subr libsvn_ra_svn
188 msvc-libs = advapi32.lib ws2_32.lib
191 description = Subversion repository replicator
193 path = subversion/svnsync
194 libs = libsvn_ra libsvn_delta libsvn_subr apr
196 manpages = subversion/svnsync/svnsync.1
199 description = Subversion Revision Extractor
201 path = subversion/svnversion
202 libs = libsvn_wc libsvn_subr apriconv apr
204 manpages = subversion/svnversion/svnversion.1
207 description = Subversion remote repository dumper and loader
209 path = subversion/svnrdump
210 libs = libsvn_client libsvn_ra libsvn_repos libsvn_delta libsvn_subr aprutil apr
212 manpages = subversion/svnrdump/svnrdump.1
215 description = Subversion Multiple URL Command Client
217 path = subversion/svnmucc
218 libs = libsvn_client libsvn_ra libsvn_subr libsvn_delta apriconv apr
220 manpages = subversion/svnmucc/svnmucc.1
222 # Support for GNOME Keyring
223 [libsvn_auth_gnome_keyring]
224 description = Subversion GNOME Keyring Library
226 install = gnome-keyring-lib
227 path = subversion/libsvn_auth_gnome_keyring
228 libs = libsvn_subr apr gnome-keyring
230 # Support for KWallet
231 [libsvn_auth_kwallet]
232 description = Subversion KWallet Library
234 install = kwallet-lib
235 path = subversion/libsvn_auth_kwallet
236 libs = libsvn_subr apr kwallet
237 link-cmd = $(LINK_CXX_LIB)
239 # Library needed by all subversion clients
241 description = Subversion Client Library
243 path = subversion/libsvn_client
244 libs = libsvn_wc libsvn_ra libsvn_delta libsvn_diff libsvn_subr apriconv apr
246 msvc-export = svn_client.h private/svn_client_mtcc.h private/svn_client_private.h
248 # Routines for binary diffing and tree-deltas
250 description = Subversion Delta Library
253 path = subversion/libsvn_delta
254 libs = libsvn_subr aprutil apriconv apr zlib
255 msvc-export = svn_delta.h private/svn_editor.h private/svn_delta_private.h
257 # Routines for diffing
259 description = Subversion Diff Library
261 path = subversion/libsvn_diff
262 libs = libsvn_subr apriconv apr zlib
264 msvc-export = svn_diff.h private/svn_diff_private.h private/svn_diff_tree.h
266 # The repository filesystem library
268 description = Subversion Repository Filesystem Library
270 path = subversion/libsvn_fs
272 libs = libsvn_fs_util libsvn_delta libsvn_subr fs-libs aprutil apr
273 # conditionally add more dependencies
274 add-deps = $(SVN_FS_LIB_DEPS)
275 add-install-deps = $(SVN_FS_LIB_INSTALL_DEPS)
276 msvc-export = svn_fs.h private/svn_fs_private.h
279 description = Subversion Filesystem Base Library
281 path = subversion/libsvn_fs_base
282 sources = *.c bdb/*.c util/*.c
284 libs = libsvn_delta libsvn_subr aprutil apriconv apr bdb libsvn_fs_util
288 description = Subversion FSFS Repository Filesystem Library
290 path = subversion/libsvn_fs_fs
292 libs = libsvn_delta libsvn_subr aprutil apriconv apr libsvn_fs_util
296 description = Subversion FSX Repository Filesystem Library
298 path = subversion/libsvn_fs_x
300 libs = libsvn_delta libsvn_subr aprutil apriconv apr libsvn_fs_util
303 # Low-level grab bag of utilities
305 description = Subversion Filesystem Utility Library
308 path = subversion/libsvn_fs_util
309 libs = libsvn_subr aprutil apriconv apr
310 msvc-libs = advapi32.lib shfolder.lib
313 # General API for accessing repositories
315 description = Subversion General Repository Access Library
317 path = subversion/libsvn_ra
318 libs = libsvn_delta libsvn_subr ra-libs apriconv apr
319 # conditionally add more dependencies
320 add-deps = $(SVN_RA_LIB_DEPS)
321 add-install-deps = $(SVN_RA_LIB_INSTALL_DEPS)
323 msvc-export = svn_ra.h private\svn_ra_private.h
325 # Accessing repositories via DAV through serf
327 description = Subversion HTTP/WebDAV Protocol Repository Access Library
329 path = subversion/libsvn_ra_serf
331 libs = libsvn_delta libsvn_subr aprutil apriconv apr serf xml zlib
334 # Accessing repositories via SVN
336 description = Subversion SVN Protocol Repository Access Library
338 path = subversion/libsvn_ra_svn
340 libs = libsvn_delta libsvn_subr aprutil apriconv apr sasl
343 # Accessing repositories via direct libsvn_fs
345 description = Subversion Local Repository Access Library
347 path = subversion/libsvn_ra_local
349 libs = libsvn_repos libsvn_fs libsvn_delta libsvn_subr apriconv apr
352 # Routines built on top of libsvn_fs
354 description = Subversion Repository Library
356 path = subversion/libsvn_repos
358 libs = libsvn_fs libsvn_delta libsvn_subr apriconv apr
359 msvc-export = svn_repos.h private/svn_repos_private.h
361 # Low-level grab bag of utilities
363 description = Subversion General Utility Library
366 path = subversion/libsvn_subr
367 libs = aprutil apriconv apr xml zlib apr_memcache sqlite magic intl
368 msvc-libs = kernel32.lib advapi32.lib shfolder.lib ole32.lib
369 crypt32.lib version.lib
371 svn_auth.h svn_base64.h svn_cache_config.h svn_checksum.h svn_cmdline.h
372 svn_compat.h svn_config.h svn_ctype.h svn_dirent_uri.h svn_dso.h
373 svn_error.h svn_hash.h svn_io.h svn_iter.h svn_md5.h svn_mergeinfo.h
374 svn_nls.h svn_opt.h svn_path.h svn_pools.h svn_props.h svn_quoprint.h
375 svn_sorts.h svn_string.h svn_subst.h svn_time.h svn_types.h svn_user.h
376 svn_utf.h svn_version.h svn_xml.h svn_x509.h
377 private\svn_atomic.h private\svn_cache.h private\svn_cmdline_private.h
378 private\svn_debug.h private\svn_error_private.h private\svn_fspath.h
379 private\svn_log.h private\svn_mergeinfo_private.h
380 private\svn_opt_private.h private\svn_skel.h private\svn_sqlite.h
381 private\svn_utf_private.h private\svn_eol_private.h
382 private\svn_token.h private\svn_adler32.h
383 private\svn_temp_serializer.h private\svn_io_private.h
384 private\svn_sorts_private.h private\svn_auth_private.h
385 private\svn_string_private.h private\svn_magic.h
386 private\svn_subr_private.h private\svn_mutex.h
387 private\svn_packed_data.h private\svn_object_pool.h private\svn_cert.h
389 # Working copy management lib
391 description = Subversion Working Copy Library
393 path = subversion/libsvn_wc
394 libs = libsvn_delta libsvn_diff libsvn_subr aprutil apriconv apr
396 msvc-export = svn_wc.h private\svn_wc_private.h
398 # Subversion plugin for Apache's mod_dav
400 description = Subversion plug-in for the Apache DAV module
401 when = INSTALL_APACHE_MODS
403 path = subversion/mod_dav_svn
404 sources = *.c reports/*.c posts/*.c
405 libs = libsvn_repos libsvn_fs libsvn_delta libsvn_subr libhttpd mod_dav
406 nonlibs = apr aprutil
410 description = Subversion path-based authorization module for Apache
411 when = INSTALL_APACHE_MODS
413 path = subversion/mod_authz_svn
414 nonlibs = mod_dav_svn apr aprutil
415 libs = libsvn_repos libsvn_subr libhttpd
419 description = Apache Httpd module to block certain kinds of Apache Subversion requests
420 when = INSTALL_APACHE_MODS
422 path = tools/server-side/mod_dontdothat
423 nonlibs = mod_dav_svn apr aprutil
424 libs = libsvn_subr xml libhttpd
427 # The Subversion FSFS repository manipulation tool
429 description = Subversion FSFS Repository Manipulation Tool
431 path = subversion/svnfsfs
433 libs = libsvn_repos libsvn_fs libsvn_fs_fs libsvn_delta libsvn_subr apriconv apr
434 msvc-libs = setargv.obj
436 # ----------------------------------------------------------------------------
438 # CONSTRUCTED HEADERS
442 description = Schema for the FSFS rep-sharing feature
444 path = subversion/libsvn_fs_fs
445 sources = rep-cache-db.sql
448 description = Schema for the FSX rep-sharing feature
450 path = subversion/libsvn_fs_x
451 sources = rep-cache-db.sql
454 desription = Queries on the WC database
456 path = subversion/libsvn_wc
457 sources = wc-queries.sql
460 description = Internal statements for SQLite interface
462 path = subversion/libsvn_subr
463 sources = internal_statements.sql
466 description = Queries using working copy tests
468 path = subversion/tests/libsvn_wc
469 sources = wc-test-queries.sql
471 # ----------------------------------------------------------------------------
473 # TARGETS FOR I18N SUPPORT
479 external-project = svn_locale
481 # ----------------------------------------------------------------------------
483 # TARGETS FOR SWIG SUPPORT
488 path = subversion/bindings/swig
490 libs = libsvn_swig_py libsvn_swig_perl libsvn_swig_ruby
491 libsvn_diff libsvn_subr apr
492 description = Subversion core library bindings
496 path = subversion/bindings/swig
497 sources = svn_client.i
498 libs = libsvn_swig_py libsvn_swig_perl libsvn_swig_ruby
499 libsvn_client libsvn_subr apr
501 description = Subversion client library bindings
505 path = subversion/bindings/swig
506 sources = svn_delta.i
507 libs = libsvn_swig_py libsvn_swig_perl libsvn_swig_ruby
508 libsvn_delta libsvn_subr apr
510 description = Subversion delta library bindings
514 path = subversion/bindings/swig
516 libs = libsvn_swig_py libsvn_swig_perl libsvn_swig_ruby
517 libsvn_diff libsvn_subr apr
519 description = Subversion diff library bindings
523 path = subversion/bindings/swig
525 libs = libsvn_swig_py libsvn_swig_perl libsvn_swig_ruby
526 libsvn_fs libsvn_subr apr
528 description = Subversion FS library bindings
532 path = subversion/bindings/swig
534 libs = libsvn_swig_py libsvn_swig_perl libsvn_swig_ruby
535 libsvn_ra libsvn_subr apr
537 description = Subversion RA library bindings
541 path = subversion/bindings/swig
542 sources = svn_repos.i
543 libs = libsvn_swig_py libsvn_swig_perl libsvn_swig_ruby
544 libsvn_repos libsvn_subr apr
546 description = Subversion repository library bindings
550 path = subversion/bindings/swig
552 libs = libsvn_swig_py libsvn_swig_perl libsvn_swig_ruby
553 libsvn_wc libsvn_subr apr
555 description = Subversion WC library bindings
557 # SWIG utility library for Python modules
561 path = subversion/bindings/swig/python/libsvn_swig_py
562 libs = libsvn_client libsvn_wc libsvn_ra libsvn_delta libsvn_subr
563 apriconv apr python swig
565 install = swig-py-lib
566 # need special build rule to include -DSWIGPYTHON
567 compile-cmd = $(COMPILE_SWIG_PY)
569 msvc-export = ../bindings/swig/python/libsvn_swig_py/swigutil_py.h
571 # SWIG utility library for Perl modules
575 path = subversion/bindings/swig/perl/libsvn_swig_perl
576 libs = libsvn_delta libsvn_subr apriconv apr perl swig
577 install = swig-pl-lib
578 # need special build rule to include
579 compile-cmd = $(COMPILE_SWIG_PL)
581 msvc-export = ../bindings/swig/perl/libsvn_swig_perl/swigutil_pl.h
583 # SWIG utility library for Ruby modules
587 path = subversion/bindings/swig/ruby/libsvn_swig_ruby
588 libs = libsvn_client libsvn_wc libsvn_delta libsvn_subr apriconv apr ruby swig
589 link-cmd = $(LINK) $(SWIG_RB_LIBS)
590 install = swig-rb-lib
591 # need special build rule to include
592 compile-cmd = $(COMPILE_SWIG_RB)
594 msvc-export = ../bindings/swig/ruby/libsvn_swig_ruby/swigutil_rb.h
596 # ----------------------------------------------------------------------------
602 path = subversion/bindings/javahl/src/org/apache/subversion/javahl
603 subversion/bindings/javahl/src/org/apache/subversion/javahl/callback
604 subversion/bindings/javahl/src/org/apache/subversion/javahl/remote
605 subversion/bindings/javahl/src/org/apache/subversion/javahl/types
606 subversion/bindings/javahl/src/org/apache/subversion/javahl/util
607 src-root = subversion/bindings/javahl/src
609 install = javahl-java
610 link-cmd = $(COMPILE_JAVAHL_JAVAC)
611 classes = subversion/bindings/javahl/classes
616 path = subversion/bindings/javahl/src/org/tigris/subversion/javahl
618 install = javahl-java
619 link-cmd = $(COMPILE_JAVAHL_COMPAT_JAVAC)
620 classes = subversion/bindings/javahl/classes
621 add-deps = $(javahl_java_DEPS)
622 ### Replace JAR call in INSTALL_EXTRA_JAVAHL_JAVA macro Makefile.in.
623 #jar = svn-javahl.jar
628 path = subversion/bindings/javahl/tests/org/apache/subversion/javahl
630 install = javahl-java
631 link-cmd = $(COMPILE_JAVAHL_JAVAC)
632 classes = subversion/bindings/javahl/classes
634 ### Java targets don't do up-to-date checks yet.
635 #add-deps = javahl-java
636 add-deps = $(javahl_java_DEPS)
638 [javahl-compat-tests]
640 path = subversion/bindings/javahl/tests/org/tigris/subversion/javahl
642 install = javahl-java
643 link-cmd = $(COMPILE_JAVAHL_COMPAT_JAVAC)
644 classes = subversion/bindings/javahl/classes
646 ### Java targets don't do up-to-date checks yet.
647 #add-deps = javahl-compat-java
648 add-deps = $(javahl_compat_java_DEPS)
650 [javahl-callback-javah]
652 path = subversion/bindings/javahl/src/org/apache/subversion/javahl/callback
653 classes = subversion/bindings/javahl/classes
654 headers = subversion/bindings/javahl/include
655 package = org.apache.subversion.javahl.callback
657 add-deps = $(javahl_java_DEPS)
658 install = javahl-javah
659 link-cmd = $(COMPILE_JAVAHL_JAVAH) -force
661 [javahl-remote-javah]
663 path = subversion/bindings/javahl/src/org/apache/subversion/javahl/remote
664 classes = subversion/bindings/javahl/classes
665 headers = subversion/bindings/javahl/include
666 package = org.apache.subversion.javahl.remote
668 add-deps = $(javahl_java_DEPS)
669 install = javahl-javah
670 link-cmd = $(COMPILE_JAVAHL_JAVAH) -force
674 path = subversion/bindings/javahl/src/org/apache/subversion/javahl/types
675 classes = subversion/bindings/javahl/classes
676 headers = subversion/bindings/javahl/include
677 package = org.apache.subversion.javahl.types
679 add-deps = $(javahl_java_DEPS)
680 install = javahl-javah
681 link-cmd = $(COMPILE_JAVAHL_JAVAH) -force
685 path = subversion/bindings/javahl/src/org/apache/subversion/javahl/util
686 classes = subversion/bindings/javahl/classes
687 headers = subversion/bindings/javahl/include
688 package = org.apache.subversion.javahl.util
690 add-deps = $(javahl_java_DEPS)
691 install = javahl-javah
692 link-cmd = $(COMPILE_JAVAHL_JAVAH) -force
696 path = subversion/bindings/javahl/src/org/apache/subversion/javahl
697 classes = subversion/bindings/javahl/classes
698 headers = subversion/bindings/javahl/include
699 package = org.apache.subversion.javahl
701 add-deps = $(javahl_java_DEPS)
702 install = javahl-javah
703 link-cmd = $(COMPILE_JAVAHL_JAVAH) -force
706 description = Subversion Java HighLevel binding
708 path = subversion/bindings/javahl/native
709 libs = libsvn_repos libsvn_client libsvn_wc libsvn_ra libsvn_delta libsvn_diff
710 libsvn_subr libsvn_fs aprutil apriconv apr java-sdk
711 sources = *.cpp jniwrapper/*.cpp
712 add-deps = $(javahl_java_DEPS) $(javahl_callback_javah_DEPS)
713 $(javahl_remote_javah_DEPS) $(javahl_types_javah_DEPS)
714 $(javahl_util_javah_DEPS) $(javahl_javah_DEPS)
716 # need special build rule to include -I$(JDK)/include/jni.h
717 compile-cmd = $(COMPILE_JAVAHL_CXX)
718 link-cmd = $(LINK_JAVAHL_CXX)
720 # ----------------------------------------------------------------------------
726 description = Subversion C++ HighLevel bindings
728 path = subversion/bindings/cxxhl
729 libs = libsvn_repos libsvn_client libsvn_wc libsvn_ra libsvn_delta libsvn_diff
730 libsvn_subr libsvn_fs aprutil apriconv apr
731 sources = src/*.cpp src/aprwrap/*.cpp
734 compile-cmd = $(COMPILE_CXXHL_CXX)
735 link-cmd = $(LINK_CXX_LIB)
738 description = Unit tests for Subversion C++ HighLevel bindings
741 path = subversion/bindings/cxxhl
742 libs = libsvncxxhl libgmock libsvn_subr apr
743 sources = tests/*.cpp
745 compile-cmd = $(COMPILE_CXXHL_GMOCK_CXX)
746 link-cmd = $(LINK_CXX)
749 # ----------------------------------------------------------------------------
755 description = Googlemock Library
759 sources = gmock-gtest-all.cc
762 compile-cmd = $(COMPILE_GMOCK_CXX)
763 link-cmd = $(LINK_CXX_LIB)
765 # ----------------------------------------------------------------------------
770 # general library: our C testing framework
773 path = subversion/tests
775 libs = libsvn_repos libsvn_fs libsvn_delta libsvn_subr aprutil apriconv apr
777 undefined-lib-symbols = yes
779 # ----------------------------------------------------------------------------
780 # Tests for libsvn_fs_base
783 description = Tests for *public* fs API (svn_fs.h)
785 path = subversion/tests/libsvn_fs_base
786 sources = fs-base-test.c
788 libs = libsvn_test libsvn_fs libsvn_fs_base libsvn_delta
789 libsvn_fs_util libsvn_subr apriconv apr
792 description = Test strings/reps in libsvn_fs_base
794 path = subversion/tests/libsvn_fs_base
795 sources = strings-reps-test.c
797 libs = libsvn_test libsvn_fs libsvn_fs_base libsvn_delta
798 libsvn_subr apriconv apr
801 description = Test changes in libsvn_fs_base
803 path = subversion/tests/libsvn_fs_base
804 sources = changes-test.c
806 libs = libsvn_test libsvn_fs libsvn_fs_base libsvn_delta
807 libsvn_subr apriconv apr
809 # ----------------------------------------------------------------------------
810 # Tests for libsvn_fs_fs
812 description = Test fsfs packing in libsvn_fs_fs
814 path = subversion/tests/libsvn_fs_fs
815 sources = fs-fs-pack-test.c
817 libs = libsvn_test libsvn_fs libsvn_fs_fs libsvn_delta
818 libsvn_subr apriconv apr
821 description = Use fuzzying to test FSFS corruption resilience
823 path = subversion/tests/libsvn_fs_fs
824 sources = fs-fs-fuzzy-test.c
826 libs = libsvn_test libsvn_fs libsvn_fs_fs libsvn_delta
827 libsvn_repos libsvn_subr apriconv apr
830 description = Test FSSF private API
832 path = subversion/tests/libsvn_fs_fs
833 sources = fs-fs-private-test.c
835 libs = libsvn_test libsvn_fs libsvn_fs_fs libsvn_delta
836 libsvn_repos libsvn_subr apriconv apr
838 # ----------------------------------------------------------------------------
839 # Tests for libsvn_fs_x
841 description = Test fsx packing in libsvn_fs_x
843 path = subversion/tests/libsvn_fs_x
844 sources = fs-x-pack-test.c
846 libs = libsvn_test libsvn_fs libsvn_fs_x libsvn_delta
847 libsvn_subr apriconv apr
850 description = Test fsfs string tables
852 path = subversion/tests/libsvn_fs_x
853 sources = string-table-test.c
855 libs = libsvn_test libsvn_fs_x libsvn_subr apr
857 # ----------------------------------------------------------------------------
858 # Tests for libsvn_fs
861 description = Test locks in libsvn_fs
863 path = subversion/tests/libsvn_fs
864 sources = locks-test.c
866 libs = libsvn_test libsvn_fs libsvn_delta libsvn_subr apriconv apr
867 msvc-force-static = yes
870 description = Test locks in libsvn_fs
872 path = subversion/tests/libsvn_fs
875 libs = libsvn_test libsvn_fs libsvn_delta
876 libsvn_fs_util libsvn_subr aprutil apriconv apr
878 # ----------------------------------------------------------------------------
879 # Tests for libsvn_repos
882 description = Test delta editor in libsvn_repos
884 path = subversion/tests/libsvn_repos
885 sources = repos-test.c dir-delta-editor.c
887 libs = libsvn_test libsvn_repos libsvn_fs libsvn_delta libsvn_subr apriconv apr
890 description = Test dumping/loading repositories in libsvn_repos
892 path = subversion/tests/libsvn_repos
893 sources = dump-load-test.c
895 libs = libsvn_test libsvn_repos libsvn_fs libsvn_delta libsvn_subr apriconv apr
897 # ----------------------------------------------------------------------------
898 # Tests for libsvn_subr
901 description = Test platform-specific auth provider access
903 path = subversion/tests/libsvn_subr
904 sources = auth-test.c
906 libs = libsvn_test libsvn_subr apr
909 description = Test packed bit arrays
911 path = subversion/tests/libsvn_subr
912 sources = bit-array-test.c
914 libs = libsvn_test libsvn_subr apr
917 description = Test in-memory cache
919 path = subversion/tests/libsvn_subr
920 sources = cache-test.c
922 libs = libsvn_test libsvn_subr apr
925 description = Test checksum functions
927 path = subversion/tests/libsvn_subr
928 sources = checksum-test.c
930 libs = libsvn_test libsvn_subr apr zlib
931 msvc-force-static = yes
934 description = Test compatibility functions
936 path = subversion/tests/libsvn_subr
937 sources = compat-test.c
939 libs = libsvn_test libsvn_subr apr
942 description = Test svn_config utilities
944 path = subversion/tests/libsvn_subr
945 sources = config-test.c
947 libs = libsvn_test libsvn_subr apriconv apr
950 description = Test svn_crypto utilities
952 path = subversion/tests/libsvn_subr
953 sources = crypto-test.c
955 libs = libsvn_test libsvn_subr aprutil apr
956 msvc-force-static = yes
959 description = Test dirent_uri library
961 path = subversion/tests/libsvn_subr
962 sources = dirent_uri-test.c
964 libs = libsvn_test libsvn_subr apriconv apr
967 description = Test error library
969 path = subversion/tests/libsvn_subr
970 sources = error-test.c
972 libs = libsvn_test libsvn_subr apriconv apr
975 description = Test error library
977 path = subversion/tests/libsvn_subr
978 sources = error-code-test.c
980 libs = libsvn_test libsvn_subr apriconv apr
983 description = Test hashfile format for props
985 path = subversion/tests/libsvn_subr
986 sources = hashdump-test.c
988 libs = libsvn_test libsvn_subr apriconv apr
991 description = Test I/O Operations
993 path = subversion/tests/libsvn_subr
996 libs = libsvn_test libsvn_subr apriconv apr
999 description = Test options library
1001 path = subversion/tests/libsvn_subr
1002 sources = opt-test.c
1004 libs = libsvn_test libsvn_subr apr
1007 description = Test mergeinfo library
1009 path = subversion/tests/libsvn_subr
1010 sources = mergeinfo-test.c
1012 libs = libsvn_test libsvn_subr apr
1015 description = Test path library
1017 path = subversion/tests/libsvn_subr
1018 sources = packed-data-test.c
1020 libs = libsvn_test libsvn_subr apriconv apr
1023 description = Test path library
1025 path = subversion/tests/libsvn_subr
1026 sources = path-test.c
1028 libs = libsvn_test libsvn_subr apriconv apr
1030 [prefix-string-test]
1031 description = Test path library
1033 path = subversion/tests/libsvn_subr
1034 sources = prefix-string-test.c
1036 libs = libsvn_test libsvn_subr apriconv apr
1038 [priority-queue-test]
1039 description = Test path library
1041 path = subversion/tests/libsvn_subr
1042 sources = priority-queue-test.c
1044 libs = libsvn_test libsvn_subr apriconv apr
1047 description = Test revision library
1049 path = subversion/tests/libsvn_subr
1050 sources = revision-test.c
1052 libs = libsvn_test libsvn_subr apr
1055 description = Test time functions
1057 path = subversion/tests/libsvn_subr
1058 sources = root-pools-test.c
1060 libs = libsvn_test libsvn_subr apriconv apr
1063 description = Test skels in libsvn_subr
1065 path = subversion/tests/libsvn_subr
1066 sources = skel-test.c
1068 libs = libsvn_test libsvn_subr apriconv apr
1071 description = Test spillbuf in libsvn_subr
1073 path = subversion/tests/libsvn_subr
1074 sources = spillbuf-test.c
1076 libs = libsvn_test libsvn_subr apriconv apr
1079 description = Test stream library
1081 path = subversion/tests/libsvn_subr
1082 sources = stream-test.c
1084 libs = libsvn_test libsvn_subr apriconv apr
1087 description = Test svn_stringbuf_t utilities
1089 path = subversion/tests/libsvn_subr
1090 sources = string-test.c
1092 libs = libsvn_test libsvn_subr apriconv apr
1095 description = Test stream library
1097 path = subversion/tests/libsvn_subr
1098 sources = sqlite-test.c
1100 libs = libsvn_test libsvn_subr apriconv apr
1103 description = Test time functions
1105 path = subversion/tests/libsvn_subr
1106 sources = time-test.c
1108 libs = libsvn_test libsvn_subr apriconv apr
1111 description = Test UTF-8 functions
1113 path = subversion/tests/libsvn_subr
1114 sources = utf-test.c
1116 libs = libsvn_test libsvn_subr apriconv apr
1118 [subst_translate-test]
1119 description = Test the svn_subst_translate* functions
1121 path = subversion/tests/libsvn_subr
1122 sources = subst_translate-test.c
1124 libs = libsvn_test libsvn_subr apriconv apr
1127 description = Test eol conversion and keyword substitution routines
1129 path = subversion/tests/libsvn_subr
1130 sources = translate-test.c
1132 libs = libsvn_test libsvn_subr apriconv apr
1135 description = Test x509 parser
1137 path = subversion/tests/libsvn_subr
1138 sources = x509-test.c
1140 libs = libsvn_test libsvn_subr apriconv apr
1143 # ----------------------------------------------------------------------------
1144 # Tests for libsvn_delta
1147 description = Use random data to test delta processing
1149 path = subversion/tests/libsvn_delta
1150 sources = random-test.c
1152 libs = libsvn_test libsvn_delta libsvn_subr apriconv apr
1155 description = Test delta window generation
1157 path = subversion/tests/libsvn_delta
1158 sources = window-test.c
1160 libs = libsvn_test libsvn_delta libsvn_subr apriconv apr
1162 # ----------------------------------------------------------------------------
1163 # Tests for libsvn_client
1166 description = Test low-level functionality in libsvn_client
1168 path = subversion/tests/libsvn_client
1169 sources = client-test.c
1171 libs = libsvn_test libsvn_client libsvn_wc libsvn_repos libsvn_ra libsvn_fs libsvn_delta libsvn_subr apriconv apr
1172 msvc-force-static = yes
1175 description = Test Multi Command Context
1177 path = subversion/tests/libsvn_client
1178 sources = mtcc-test.c
1180 libs = libsvn_test libsvn_client libsvn_wc libsvn_repos libsvn_ra libsvn_fs libsvn_delta libsvn_subr apriconv apr
1182 # ----------------------------------------------------------------------------
1183 # Tests for libsvn_diff
1186 description = Test the diff/diff3 library
1188 path = subversion/tests/libsvn_diff
1189 sources = diff-diff3-test.c
1191 libs = libsvn_test libsvn_diff libsvn_subr apriconv apr
1194 description = Test unidiff parsing
1196 path = subversion/tests/libsvn_diff
1197 sources = parse-diff-test.c
1199 libs = libsvn_test libsvn_diff libsvn_subr apriconv apr
1201 # ----------------------------------------------------------------------------
1202 # Tests for libsvn_ra
1205 description = Test a few things in libsvn_ra
1207 path = subversion/tests/libsvn_ra
1210 libs = libsvn_test libsvn_ra libsvn_ra_svn libsvn_fs libsvn_delta libsvn_subr
1213 # ----------------------------------------------------------------------------
1214 # Tests for libsvn_ra_local
1217 description = Test a few things in libsvn_ra_local
1219 path = subversion/tests/libsvn_ra_local
1220 sources = ra-local-test.c
1222 libs = libsvn_test libsvn_ra_local libsvn_ra libsvn_fs libsvn_delta libsvn_subr
1225 # ----------------------------------------------------------------------------
1226 # Tests for libsvn_wc
1228 [conflict-data-test]
1229 description = Test the storage of tree conflict data
1231 path = subversion/tests/libsvn_wc
1232 sources = conflict-data-test.c utils.c
1234 libs = libsvn_client libsvn_test libsvn_wc libsvn_subr apriconv apr
1235 msvc-force-static = yes
1238 description = Test the wc-ng database subsystem
1240 path = subversion/tests/libsvn_wc
1241 sources = db-test.c utils.c
1243 libs = libsvn_client libsvn_test libsvn_wc libsvn_subr apriconv apr
1244 msvc-force-static = yes
1246 [pristine-store-test]
1247 description = Test the wc-ng pristine text storage subsystem
1249 path = subversion/tests/libsvn_wc
1250 sources = pristine-store-test.c utils.c
1252 libs = libsvn_client libsvn_test libsvn_wc libsvn_subr apriconv apr
1253 msvc-force-static = yes
1255 [entries-compat-test]
1256 description = Test backwards compat for the entry interface
1258 path = subversion/tests/libsvn_wc
1259 sources = entries-compat.c utils.c
1261 libs = libsvn_client libsvn_test libsvn_wc libsvn_subr apriconv apr
1262 msvc-force-static = yes
1265 description = Test layered tree changes
1267 path = subversion/tests/libsvn_wc
1268 sources = op-depth-test.c utils.c
1270 libs = libsvn_client libsvn_test libsvn_wc libsvn_subr apriconv apr
1271 msvc-force-static = yes
1274 description = Test Sqlite query evaluation
1276 path = subversion/tests/libsvn_wc
1277 sources = wc-queries-test.c ../../libsvn_subr/sqlite3wrapper.c
1279 libs = libsvn_test libsvn_subr apriconv apr sqlite
1282 description = Test the main WC API functions
1284 path = subversion/tests/libsvn_wc
1285 sources = wc-test.c utils.c
1287 libs = libsvn_client libsvn_test libsvn_wc libsvn_subr apriconv apr
1288 msvc-force-static = yes
1290 # ----------------------------------------------------------------------------
1291 # These are not unit tests at all, they are small programs that exercise
1292 # parts of the libsvn_delta API from the command line. They are stuck here
1293 # because of some historical association with the test-suite, but should
1294 # really be put somewhere else.
1296 # test our textdelta encoding
1299 path = subversion/tests/libsvn_delta
1300 sources = svndiff-test.c
1302 libs = libsvn_delta libsvn_subr apriconv apr
1305 # compare two files, print txdelta windows
1308 path = subversion/tests/libsvn_delta
1309 sources = vdelta-test.c
1311 libs = libsvn_delta libsvn_subr apriconv apr
1316 path = subversion/tests/cmdline
1317 sources = entries-dump.c
1319 libs = libsvn_wc libsvn_subr apriconv apr
1320 msvc-force-static = yes
1323 [atomic-ra-revprop-change]
1325 path = subversion/tests/cmdline
1326 sources = atomic-ra-revprop-change.c
1328 libs = libsvn_ra libsvn_subr apriconv apr
1333 path = subversion/tests/cmdline
1334 sources = lock-helper.c
1336 libs = libsvn_fs libsvn_subr apriconv apr
1341 path = subversion/tests/libsvn_wc
1342 sources = wc-lock-tester.c
1344 libs = libsvn_wc libsvn_subr apriconv apr
1345 msvc-force-static = yes
1348 [wc-incomplete-tester]
1350 path = subversion/tests/libsvn_wc
1351 sources = wc-incomplete-tester.c
1353 libs = libsvn_wc libsvn_subr apriconv apr
1354 msvc-force-static = yes
1359 path = tools/dev/wc-ng
1360 sources = svn-wc-db-tester.c
1362 libs = libsvn_wc libsvn_subr apr
1363 msvc-force-static = yes
1366 # ----------------------------------------------------------------------------
1368 # EXTERNAL TARGETS (NO BUILD NEEDED)
1373 external-lib = $(SVN_APR_LIBS)
1374 msvc-libs = ws2_32.lib rpcrt4.lib mswsock.lib
1375 pkg-config = apr-@SVN_APR_MAJOR_VERSION@
1379 external-lib = $(SVN_APRUTIL_LIBS)
1380 pkg-config = apr-util-@SVN_APR_MAJOR_VERSION@
1384 external-lib = $(SVN_APRUTIL_LIBS)
1388 external-lib = $(SVN_HTTPD_LIBS)
1392 external-lib = $(SVN_MOD_DAV_LIBS)
1396 external-lib = $(SVN_DB_LIBS)
1400 external-lib = $(SVN_GNOME_KEYRING_LIBS)
1401 pkg-config = gnome-keyring-1
1405 external-lib = $(SVN_KWALLET_LIBS)
1409 external-lib = $(SVN_MAGIC_LIBS)
1413 external-lib = $(SVN_SASL_LIBS)
1417 external-lib = $(SVN_OPENSSL_LIBS)
1418 msvc-libs = ssleay32.lib libeay32.lib
1422 external-lib = $(SVN_INTL_LIBS)
1426 external-lib = $(SVN_ZLIB_LIBS)
1431 external-lib = $(SVN_APR_MEMCACHE_LIBS)
1435 external-lib = $(SVN_SERF_LIBS)
1436 libs = apr aprutil openssl xml zlib
1437 msvc-libs = secur32.lib
1439 pkg-config-private = yes
1443 external-lib = $(SVN_SQLITE_LIBS)
1444 pkg-config = sqlite3
1445 pkg-config-private = yes
1449 external-lib = $(SVN_XML_LIBS)
1453 external-lib = $(SVN_SWIG_LIBS)
1457 external-lib = $(SVN_PERL_LIBS)
1461 external-lib = $(SVN_PYTHON_LIBS)
1465 external-lib = $(SVN_RUBY_LIBS)
1469 external-lib = $(SVN_JAVA_SDK_LIBS)
1473 external-lib = $(SVN_RA_LIB_LINK)
1474 libs = libsvn_ra_serf libsvn_ra_local libsvn_ra_svn
1478 external-lib = $(SVN_FS_LIB_LINK)
1479 libs = libsvn_fs_base libsvn_fs_fs libsvn_fs_x
1484 libs = svn svnadmin svndumpfilter svnlook svnmucc svnserve svnrdump svnsync
1486 mod_authz_svn mod_dav_svn mod_dontdothat
1487 svnauthz svnauthz-validate svnraisetreeconflict
1494 fs-test fs-base-test fs-fsfs-test fs-fs-pack-test fs-fs-fuzzy-test
1495 fs-fs-private-test fs-x-pack-test string-table-test
1496 skel-test strings-reps-test changes-test locks-test
1497 repos-test dump-load-test
1498 checksum-test compat-test config-test hashdump-test mergeinfo-test
1499 opt-test packed-data-test path-test prefix-string-test
1500 priority-queue-test root-pools-test stream-test
1501 string-test time-test utf-test bit-array-test
1502 error-test error-code-test cache-test spillbuf-test crypto-test
1504 subst_translate-test io-test
1506 random-test window-test
1511 svndiff-test vdelta-test
1512 entries-dump atomic-ra-revprop-change wc-lock-tester wc-incomplete-tester
1514 client-test mtcc-test
1515 conflict-data-test db-test pristine-store-test entries-compat-test
1516 op-depth-test dirent_uri-test wc-queries-test wc-test
1518 parse-diff-test x509-test
1523 libs = __ALL_TESTS__
1524 diff diff3 diff4 fsfs-access-map svnauth
1525 svn-populate-node-origins-index x509-parser svn-wc-db-tester
1530 libs = fs-libs ra-libs libsvn_client libsvn_subr libsvn_wc
1531 aprutil apriconv apr
1535 external-project = svn_config
1540 libs = swig_client swig_delta swig_diff swig_fs swig_ra swig_repos swig_wc swig_core
1546 libs = swig_client swig_delta swig_diff swig_fs swig_ra swig_repos swig_wc swig_core
1552 libs = swig_client swig_delta swig_diff swig_fs swig_ra swig_repos swig_wc swig_core
1558 libs = javahl-java javahl-javah libsvnjavahl
1563 libs = __JAVAHL__ javahl-tests javahl-compat-tests
1565 # ----------------------------------------------------------------------------
1571 sources = fsfs-access-map.c
1573 libs = libsvn_subr apr
1580 libs = libsvn_diff libsvn_subr apriconv apr
1587 libs = libsvn_diff libsvn_subr apriconv apr
1594 libs = libsvn_diff libsvn_subr apriconv apr
1597 description = Benchmarking and diagnostics tool for the network layer
1599 path = subversion/svnbench
1601 libs = libsvn_client libsvn_wc libsvn_ra libsvn_subr libsvn_delta
1605 description = Authz config file tool
1607 path = tools/server-side
1608 sources = svnauthz.c
1610 libs = libsvn_repos libsvn_fs libsvn_subr apr
1612 # svnauthz-validate is the compat mode of the new svnauthz tool. It is
1613 # exactly the same code as svnauthz. This duplicated target is needed
1614 # in order to easily test both commands as part of the build since libtool
1615 # does not provide a way to set argv[0] different from the commands actual
1616 # name in the wrapper script.
1618 description = Authz config file validator
1620 path = tools/server-side
1621 sources = svnauthz.c
1623 libs = libsvn_repos libsvn_fs libsvn_subr apr
1625 [svn-populate-node-origins-index]
1626 description = Tool to populate the node origins index of a repository
1628 path = tools/server-side
1629 sources = svn-populate-node-origins-index.c
1631 libs = libsvn_repos libsvn_fs libsvn_subr apr
1633 [svnraisetreeconflict]
1634 description = Tool to Flag a Tree Conflict
1636 path = tools/dev/svnraisetreeconflict
1637 libs = libsvn_wc libsvn_subr apriconv apr
1641 description = Tool to verify x509 certificates
1644 sources = x509-parser.c
1646 libs = libsvn_subr apr