]> CyberLeo.Net >> Repos - FreeBSD/stable/10.git/blob - contrib/subversion/configure.ac
MFC r257129,257936,258084,258569,258602,262250,262251
[FreeBSD/stable/10.git] / contrib / subversion / configure.ac
1 dnl     Licensed to the Apache Software Foundation (ASF) under one
2 dnl     or more contributor license agreements.  See the NOTICE file
3 dnl     distributed with this work for additional information
4 dnl     regarding copyright ownership.  The ASF licenses this file
5 dnl     to you under the Apache License, Version 2.0 (the
6 dnl     "License"); you may not use this file except in compliance
7 dnl     with the License.  You may obtain a copy of the License at
8 dnl    
9 dnl       http://www.apache.org/licenses/LICENSE-2.0
10 dnl    
11 dnl     Unless required by applicable law or agreed to in writing,
12 dnl     software distributed under the License is distributed on an
13 dnl     "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14 dnl     KIND, either express or implied.  See the License for the
15 dnl     specific language governing permissions and limitations
16 dnl     under the License.
17
18 dnl configure.ac: Autoconfiscation for Subversion
19 dnl Process this file with autoconf to produce a configure script.
20
21 AC_PREREQ(2.59)
22
23 dnl Get the version of Subversion, using m4's esyscmd() command to do this
24 dnl at m4-time, since AC_INIT() requires it then.
25 AC_INIT([subversion],
26      [esyscmd(python build/getversion.py SVN subversion/include/svn_version.h)],
27      [http://subversion.apache.org/])
28
29 AC_CONFIG_SRCDIR(subversion/include/svn_types.h)
30 AC_CONFIG_AUX_DIR([build])
31
32 AC_MSG_NOTICE([Configuring Subversion ]AC_PACKAGE_VERSION)
33
34 AC_SUBST([abs_srcdir], ["`cd $srcdir && pwd`"])
35 AC_SUBST([abs_builddir], ["`pwd`"])
36 if test "$abs_srcdir" = "$abs_builddir"; then
37   canonicalized_srcdir=""
38 else
39   canonicalized_srcdir="$srcdir/"
40 fi
41 AC_SUBST([canonicalized_srcdir])
42
43 SWIG_LDFLAGS="$LDFLAGS"
44 AC_SUBST([SWIG_LDFLAGS])
45
46 # Generate config.nice early (before the arguments are munged)
47 SVN_CONFIG_NICE(config.nice)
48
49 # ==== Check for programs ====================================================
50
51 # Look for a C compiler (before anything can set CFLAGS)
52 CMAINTAINERFLAGS="$CUSERFLAGS"
53 CUSERFLAGS="$CFLAGS"
54 AC_PROG_CC
55 SVN_CC_MODE_SETUP
56
57 # Look for a C++ compiler (before anything can set CXXFLAGS)
58 CXXMAINTAINERFLAGS="$CXXUSERFLAGS"
59 CXXUSERFLAGS="$CXXFLAGS"
60 AC_PROG_CXX
61 SVN_CXX_MODE_SETUP
62
63 # Look for a C pre-processor
64 AC_PROG_CPP
65
66 # Look for a good sed
67 # AC_PROG_SED was introduced in Autoconf 2.59b
68 m4_ifdef([AC_PROG_SED], [AC_PROG_SED], [SED="${SED:-sed}"])
69
70 # Grab target_cpu, so we can use it in the Solaris pkginfo file
71 AC_CANONICAL_TARGET
72
73 # Look for an extended grep
74 AC_PROG_EGREP
75
76 AC_PROG_LN_S
77
78 AC_PROG_INSTALL
79 # If $INSTALL is relative path to our fallback install-sh, then convert
80 # to an absolute path, as in some cases (e.g. Solaris VPATH build), libtool
81 # may try to use it from a changed working directory.
82 if test "$INSTALL" = "build/install-sh -c"; then
83   INSTALL="$abs_srcdir/$INSTALL"
84 fi
85
86 if test -z "$MKDIR"; then
87   MKDIR="$INSTALL -d"
88 fi
89 AC_SUBST([MKDIR])
90
91 # ==== Libraries, for which we may have source to build ======================
92
93 dnl verify apr version and set apr flags
94 dnl These regular expressions should not contain "\(" and "\)".
95 dnl The specific reason we require APR 0.9.7 is:
96 dnl   It contains fixes to its file writing routines
97 dnl   now generating errors instead of silently ignoring
98 dnl   them.  Only .7 and later can guarantee repository
99 dnl   integrity with FSFS.
100
101 APR_VER_REGEXES=["0\.9\.[7-9] 0\.9\.1[0-9] 1\. 2\."]
102
103 SVN_LIB_APR($APR_VER_REGEXES)
104
105 if test `expr $apr_version : 2` -ne 0; then
106   dnl Bump the library so-version to 2 if using APR-2
107   dnl (Debian uses so-version 1 for APR-1-with-largefile)
108   svn_lib_ver=2
109   dnl APR-2 provides APRUTIL
110   apu_config=$apr_config
111   AC_SUBST(SVN_APRUTIL_INCLUDES)
112   AC_SUBST(SVN_APRUTIL_CONFIG, ["$apu_config"])
113   AC_SUBST(SVN_APRUTIL_LIBS)
114 else
115   svn_lib_ver=0
116   APU_VER_REGEXES=["0\.9\.[7-9] 0\.9\.1[0-9] 1\."]
117   SVN_LIB_APRUTIL($APU_VER_REGEXES)
118 fi
119 SVN_LT_SOVERSION="-version-info $svn_lib_ver"
120 AC_SUBST(SVN_LT_SOVERSION)
121 AC_DEFINE_UNQUOTED(SVN_SOVERSION, $svn_lib_ver,
122                    [Subversion library major verson])
123
124 dnl Search for pkg-config
125 AC_PATH_PROG(PKG_CONFIG, pkg-config)
126
127 dnl Search for serf
128 SVN_LIB_SERF(1,2,1)
129
130 if test "$svn_lib_serf" = "yes"; then
131   AC_DEFINE([SVN_HAVE_SERF], 1,
132             [Defined if support for Serf is enabled])
133 fi
134
135 dnl Search for apr_memcache (only affects fs_fs)
136 SVN_LIB_APR_MEMCACHE
137
138 if test "$svn_lib_apr_memcache" = "yes"; then
139   AC_DEFINE(SVN_HAVE_MEMCACHE, 1,
140             [Defined if apr_memcache (standalone or in apr-util) is present])
141 fi
142
143
144 dnl Find Apache with a recent-enough magic module number
145 SVN_FIND_APACHE(20020903)
146
147 dnl Search for SQLite.  If you change SQLITE_URL from a .zip to
148 dnl something else also update build/ac-macros/sqlite.m4 to reflect
149 dnl the correct command to unpack the downloaded file.
150 SQLITE_MINIMUM_VER="3.7.12"
151 SQLITE_RECOMMENDED_VER="3.7.15.1"
152 SQLITE_URL="http://www.sqlite.org/sqlite-amalgamation-$(printf %d%02d%02d%02d $(echo ${SQLITE_RECOMMENDED_VER} | sed -e 's/\./ /g')).zip"
153
154 SVN_LIB_SQLITE(${SQLITE_MINIMUM_VER}, ${SQLITE_RECOMMENDED_VER},
155                ${SQLITE_URL})
156
157 AC_ARG_ENABLE(sqlite-compatibility-version,
158   AS_HELP_STRING([--enable-sqlite-compatibility-version=X.Y.Z],
159                  [Allow binary to run against SQLite as old as ARG]),
160   [sqlite_compat_ver=$enableval],[sqlite_compat_ver=no])
161
162 if test -n "$sqlite_compat_ver" && test "$sqlite_compat_ver" != no; then
163   SVN_SQLITE_VERNUM_PARSE([$sqlite_compat_ver],
164                           [sqlite_compat_ver_num])
165   CFLAGS="-DSVN_SQLITE_MIN_VERSION='\"$sqlite_compat_ver\"' $CFLAGS"
166   CFLAGS="-DSVN_SQLITE_MIN_VERSION_NUMBER=$sqlite_compat_ver_num $CFLAGS"
167 fi
168
169 SVN_CHECK_FOR_ATOMIC_BUILTINS
170
171 if test "$svn_cv_atomic_builtins" = "yes"; then
172     AC_DEFINE(SVN_HAS_ATOMIC_BUILTINS, 1, [Define if compiler provides atomic builtins])
173 fi
174
175 dnl Set up a number of directories ---------------------
176
177 dnl Create SVN_BINDIR for proper substitution
178 if test "${bindir}" = '${exec_prefix}/bin'; then
179         if test "${exec_prefix}" = "NONE"; then
180                 if test "${prefix}" = "NONE"; then
181                         SVN_BINDIR="${ac_default_prefix}/bin"
182                 else
183                         SVN_BINDIR="${prefix}/bin"
184                 fi
185         else
186                 SVN_BINDIR="${exec_prefix}/bin"
187         fi
188 else
189         SVN_BINDIR="${bindir}"
190 fi
191
192 dnl fully evaluate this value. when we substitute it into our tool scripts,
193 dnl they will not have things such as ${bindir} available
194 SVN_BINDIR="`eval echo ${SVN_BINDIR}`"
195 AC_SUBST(SVN_BINDIR)
196
197 dnl provide ${bindir} in svn_private_config.h for use in compiled code
198 AC_DEFINE_UNQUOTED(SVN_BINDIR, "${SVN_BINDIR}",
199         [Defined to be the path to the installed binaries])
200
201 dnl This purposely does *not* allow for multiple parallel installs.
202 dnl However, it is compatible with most gettext usages.
203 localedir='${datadir}/locale'
204 AC_SUBST(localedir)
205
206 dnl For SVN_LOCALE_DIR, we have to expand it to something.  See SVN_BINDIR.
207 if test "${datadir}" = '${prefix}/share' && test "${prefix}" = "NONE"; then
208   exp_localedir='${ac_default_prefix}/share/locale'
209 else
210   exp_localedir=$localedir
211 fi
212 SVN_EXPAND_VAR(svn_localedir, "${exp_localedir}")
213 AC_DEFINE_UNQUOTED(SVN_LOCALE_DIR, "${svn_localedir}",
214                    [Defined to be the path to the installed locale dirs])
215
216 dnl Check for libtool -- we'll definitely need it for all our shared libs!
217 AC_MSG_NOTICE([configuring libtool now])
218 ifdef([LT_INIT], [LT_INIT], [AC_PROG_LIBTOOL])
219 AC_ARG_ENABLE(experimental-libtool,
220   AS_HELP_STRING([--enable-experimental-libtool],[Use APR's libtool]),
221   [experimental_libtool=$enableval],[experimental_libtool=no])
222
223 if test "$experimental_libtool" = "yes"; then
224   echo "using APR's libtool"
225   sh_libtool="`$apr_config --apr-libtool`"
226   LIBTOOL="$sh_libtool"
227   SVN_LIBTOOL="$sh_libtool"
228 else
229   sh_libtool="$abs_builddir/libtool"
230   SVN_LIBTOOL="\$(SHELL) $sh_libtool"
231 fi
232 AC_SUBST(SVN_LIBTOOL)
233
234 dnl Determine the libtool version
235 changequote(, )dnl
236 lt_pversion=`$LIBTOOL --version 2>/dev/null|$SED -e 's/([^)]*)//g;s/^[^0-9]*//;s/[- ].*//g;q'`
237 lt_version=`echo $lt_pversion|$SED -e 's/\([a-z]*\)$/.\1/'`
238 lt_major_version=`echo $lt_version | cut -d'.' -f 1`
239 changequote([, ])dnl
240
241 dnl set the default parameters
242 svn_enable_static=yes
243 svn_enable_shared=yes
244
245 dnl check for --enable-static option
246 AC_ARG_ENABLE(static,
247   AS_HELP_STRING([--enable-static],
248                  [Build static libraries]),
249   [svn_enable_static="$enableval"], [svn_enable_static="yes"])
250
251 dnl check for --enable-shared option
252 AC_ARG_ENABLE(shared,
253   AS_HELP_STRING([--enable-shared],
254                  [Build shared libraries]),
255   [svn_enable_shared="$enableval"], [svn_enable_shared="yes"])
256
257 if test "$svn_enable_static" = "yes" && test "$svn_enable_shared" = "yes" ; then
258   AC_MSG_NOTICE([building both shared and static libraries])
259 elif test "$svn_enable_static" = "yes" ; then
260   AC_MSG_NOTICE([building static libraries only])
261   LT_CFLAGS="-static $LT_CFLAGS"
262   LT_LDFLAGS="-static $LT_LDFLAGS"
263 elif test "$svn_enable_shared" = "yes" ; then
264   AC_MSG_NOTICE([building shared libraries only])
265   if test "$lt_major_version" = "1" ; then
266     LT_CFLAGS="-prefer-pic $LT_CFLAGS"
267   elif test "$lt_major_version" = "2" ; then
268     LT_CFLAGS="-shared $LT_CFLAGS"
269   fi
270   LT_LDFLAGS="-shared $LT_LDFLAGS"
271 else
272   AC_MSG_ERROR([cannot disable both shared and static libraries])
273 fi
274
275 dnl Check for --enable-all-static option
276 AC_ARG_ENABLE(all-static,
277   AS_HELP_STRING([--enable-all-static],
278                  [Build completely static (standalone) binaries.]),
279   [
280     if test "$enableval" = "yes" ; then
281       LT_LDFLAGS="-all-static $LT_LDFLAGS"
282     elif test "$enableval" != "no" ; then
283       AC_MSG_ERROR([--enable-all-static doesn't accept argument])
284     fi
285 ])
286
287 AC_SUBST(LT_CFLAGS)
288 AC_SUBST(LT_LDFLAGS)
289
290 AC_ARG_ENABLE(local-library-preloading,
291   AS_HELP_STRING([--enable-local-library-preloading], 
292                  [Enable preloading of locally built libraries in locally
293                   built executables.  This may be necessary for testing
294                   prior to installation on some platforms.  It does not
295                   work on some platforms (Darwin, OpenBSD, ...).]),
296   [
297   if test "$enableval" != "no"; then
298     if test "$svn_enable_shared" = "yes"; then
299       TRANSFORM_LIBTOOL_SCRIPTS="transform-libtool-scripts"
300     else
301       AC_MSG_ERROR([--enable-local-library-preloading conflicts with --disable-shared])
302     fi
303   else
304     TRANSFORM_LIBTOOL_SCRIPTS=""
305   fi
306   ], [
307   TRANSFORM_LIBTOOL_SCRIPTS=""
308 ])
309 AC_SUBST(TRANSFORM_LIBTOOL_SCRIPTS)
310
311 dnl Check if -no-undefined is needed for the platform.
312 dnl It should always work but with libtool 1.4.3 on OS X it breaks the build.
313 dnl So we only turn it on for platforms where we know we really need it.
314 AC_MSG_CHECKING([whether libtool needs -no-undefined])
315 case $host in
316   *-*-cygwin*)
317     AC_MSG_RESULT([yes])
318     LT_NO_UNDEFINED="-no-undefined"
319     ;;
320   *)
321     AC_MSG_RESULT([no])
322     LT_NO_UNDEFINED=""
323     ;;
324 esac
325 AC_SUBST(LT_NO_UNDEFINED)
326
327 AC_MSG_CHECKING([whether to avoid circular linkage at all costs])
328 case $host in
329   *-*-cygwin*)
330     AC_MSG_RESULT([yes])
331     AC_DEFINE([SVN_AVOID_CIRCULAR_LINKAGE_AT_ALL_COSTS_HACK], 1,
332               [Define if circular linkage is not possible on this platform.])
333     ;;
334   *)
335     AC_MSG_RESULT([no])
336     ;;
337 esac
338
339 dnl Check for trang.
340 trang=yes
341 AC_ARG_WITH(trang,
342 AS_HELP_STRING([--with-trang=PATH],
343                [Specify the command to run the trang schema converter]),
344 [
345     trang="$withval"
346 ])
347 if test "$trang" = "yes"; then
348     AC_PATH_PROG(TRANG, trang, none)
349 else
350     TRANG="$trang"
351     AC_SUBST(TRANG)
352 fi
353
354 dnl Check for doxygen
355 doxygen=yes
356 AC_ARG_WITH(doxygen,
357 AC_HELP_STRING([--with-doxygen=PATH],
358                [Specify the command to run doxygen]),
359 [
360     doxygen="$withval"
361 ])
362 if test "$doxygen" = "yes"; then
363     AC_PATH_PROG(DOXYGEN, doxygen, none)
364 else
365     DOXYGEN="$doxygen"
366     AC_SUBST(DOXYGEN)
367 fi
368
369
370 dnl Check for libraries --------------------
371
372 dnl Expat -------------------
373
374 AC_ARG_WITH(expat,
375   AS_HELP_STRING([--with-expat=INCLUDES:LIB_SEARCH_DIRS:LIBS], 
376                  [Specify location of Expat]),
377                  [svn_lib_expat="$withval"],
378                  [svn_lib_expat="::expat"])
379
380 # APR-util accepts "builtin" as an argument to this option so if the user
381 # passed "builtin" pretend the user didn't specify the --with-expat option
382 # at all. Expat will (hopefully) be found in apr-util.
383 test "_$svn_lib_expat" = "_builtin" && svn_lib_expat="::expat"
384
385 AC_MSG_CHECKING([for Expat])
386 if test -n "`echo "$svn_lib_expat" | $EGREP ":.*:"`"; then
387   SVN_XML_INCLUDES=""
388   for i in [`echo "$svn_lib_expat" | $SED -e "s/\([^:]*\):.*/\1/"`]; do
389     SVN_XML_INCLUDES="$SVN_XML_INCLUDES -I$i"
390   done
391   SVN_XML_INCLUDES="${SVN_XML_INCLUDES## }"
392   for l in [`echo "$svn_lib_expat" | $SED -e "s/.*:\([^:]*\):.*/\1/"`]; do
393     LDFLAGS="$LDFLAGS -L$l"
394   done
395   for l in [`echo "$svn_lib_expat" | $SED -e "s/.*:\([^:]*\)/\1/"`]; do
396     SVN_XML_LIBS="$SVN_XML_LIBS -l$l"
397   done
398   SVN_XML_LIBS="${SVN_XML_LIBS## }"
399   old_CPPFLAGS="$CPPFLAGS"
400   old_LIBS="$LIBS"
401   CPPFLAGS="$CPPFLAGS $SVN_XML_INCLUDES"
402   LIBS="$LIBS $SVN_XML_LIBS"
403   AC_LINK_IFELSE([AC_LANG_SOURCE([[
404 #include <expat.h>
405 int main()
406 {XML_ParserCreate(NULL);}]])], svn_lib_expat="yes", svn_lib_expat="no")
407   LIBS="$old_LIBS"
408   if test "$svn_lib_expat" = "yes"; then
409     AC_MSG_RESULT([yes])
410   else
411     SVN_XML_INCLUDES=""
412     SVN_XML_LIBS=""
413     CPPFLAGS="$CPPFLAGS $SVN_APRUTIL_INCLUDES"
414     if test "$enable_all_static" != "yes"; then
415       SVN_APRUTIL_LIBS="$SVN_APRUTIL_LIBS `$apu_config --libs`"
416     fi
417     AC_COMPILE_IFELSE([AC_LANG_SOURCE([[
418 #include <expat.h>
419 int main()
420 {XML_ParserCreate(NULL);}]])], svn_lib_expat="yes", svn_lib_expat="no")
421     if test "$svn_lib_expat" = "yes"; then
422       AC_MSG_RESULT([yes])
423       AC_MSG_WARN([Expat found amongst libraries used by APR-Util, but Subversion libraries might be needlessly linked against additional unused libraries. It can be avoided by specifying exact location of Expat in argument of --with-expat option.])
424     else
425       AC_MSG_RESULT([no])
426       AC_MSG_ERROR([Expat not found])
427     fi
428   fi
429   CPPFLAGS="$old_CPPFLAGS"
430 else
431   AC_MSG_RESULT([no])
432   if test "$svn_lib_expat" = "yes"; then
433     AC_MSG_ERROR([--with-expat option requires argument])
434   elif test "$svn_lib_expat" = "no"; then
435     AC_MSG_ERROR([Expat is required])
436   else
437     AC_MSG_ERROR([Invalid syntax of argument of --with-expat option])
438   fi
439 fi
440 AC_SUBST(SVN_XML_INCLUDES)
441 AC_SUBST(SVN_XML_LIBS)
442
443 dnl Berkeley DB -------------------
444
445 # Berkeley DB on SCO OpenServer needs -lsocket
446 AC_CHECK_LIB(socket, socket)
447
448 # Build the BDB filesystem library only if we have an appropriate
449 # version of Berkeley DB.
450 case "$host" in
451 powerpc-apple-darwin*)
452     # Berkeley DB 4.0 does not work on OS X.
453     SVN_FS_WANT_DB_MAJOR=4
454     SVN_FS_WANT_DB_MINOR=1
455     SVN_FS_WANT_DB_PATCH=25
456     ;;
457 *)
458     SVN_FS_WANT_DB_MAJOR=4
459     SVN_FS_WANT_DB_MINOR=0
460     SVN_FS_WANT_DB_PATCH=14
461     ;;
462 esac
463 db_alt_version="5.x"
464 # Look for libdb4.so first:
465 SVN_LIB_BERKELEY_DB($SVN_FS_WANT_DB_MAJOR, $SVN_FS_WANT_DB_MINOR,
466                     $SVN_FS_WANT_DB_PATCH, [db4 db])
467
468 AC_DEFINE_UNQUOTED(SVN_FS_WANT_DB_MAJOR, $SVN_FS_WANT_DB_MAJOR,
469                    [The desired major version for the Berkeley DB])
470 AC_DEFINE_UNQUOTED(SVN_FS_WANT_DB_MINOR, $SVN_FS_WANT_DB_MINOR,
471                    [The desired minor version for the Berkeley DB])
472 AC_DEFINE_UNQUOTED(SVN_FS_WANT_DB_PATCH, $SVN_FS_WANT_DB_PATCH,
473                    [The desired patch version for the Berkeley DB])
474
475 AC_SUBST(SVN_DB_INCLUDES)
476 AC_SUBST(SVN_DB_LIBS)
477
478 SVN_LIB_SASL
479
480 if test "$svn_lib_sasl" = "yes"; then
481   AC_DEFINE(SVN_HAVE_SASL, 1,
482             [Defined if Cyrus SASL v2 is present on the system])
483 fi
484
485 dnl Mac OS specific features -------------------
486
487 SVN_LIB_MACHO_ITERATE
488 SVN_LIB_MACOS_PLIST
489 SVN_LIB_MACOS_KEYCHAIN
490
491 dnl APR_HAS_DSO -------------------
492
493 AC_MSG_CHECKING([whether APR has support for DSOs])
494 old_CPPFLAGS="$CPPFLAGS"
495 CPPFLAGS="$CPPFLAGS $SVN_APR_INCLUDES"
496 AC_PREPROC_IFELSE([AC_LANG_SOURCE([[
497 #include <apr.h>
498 #if !APR_HAS_DSO
499 #error
500 #endif]])],
501   APR_HAS_DSO="yes"
502   AC_MSG_RESULT([yes]),
503   APR_HAS_DSO="no"
504   AC_MSG_RESULT([no]))
505 CPPFLAGS="$old_CPPFLAGS"
506
507
508 dnl D-Bus (required for support for KWallet) -------------------
509
510 if test -n "$PKG_CONFIG"; then
511   AC_MSG_CHECKING([for D-Bus .pc file])
512   if $PKG_CONFIG --exists dbus-1; then
513     AC_MSG_RESULT([yes])
514     old_CPPFLAGS="$CPPFLAGS"
515     old_LIBS="$LIBS"
516     DBUS_CPPFLAGS="`$PKG_CONFIG --cflags dbus-1`"
517     AC_MSG_CHECKING([D-Bus version])
518     DBUS_VERSION="`$PKG_CONFIG --modversion dbus-1`"
519     AC_MSG_RESULT([$DBUS_VERSION])
520     # D-Bus 0.* requires DBUS_API_SUBJECT_TO_CHANGE
521     if test -n ["`echo "$DBUS_VERSION" | $EGREP '^0\.[[:digit:]]+'`"]; then
522       DBUS_CPPFLAGS="$DBUS_CPPFLAGS -DDBUS_API_SUBJECT_TO_CHANGE"
523     fi
524     DBUS_LIBS="`$PKG_CONFIG --libs dbus-1`"
525     CPPFLAGS="$CPPFLAGS $DBUS_CPPFLAGS"
526     LIBS="$LIBS $DBUS_LIBS"
527     AC_MSG_CHECKING([for D-Bus])
528     AC_LINK_IFELSE([AC_LANG_SOURCE([[
529 #include <dbus/dbus.h>
530 int main()
531 {dbus_bus_get(DBUS_BUS_SESSION, NULL);}]])], HAVE_DBUS="yes", HAVE_DBUS="no")
532     if test "$HAVE_DBUS" = "yes"; then
533       AC_MSG_RESULT([yes])
534     else
535       AC_MSG_RESULT([no])
536     fi
537     CPPFLAGS="$old_CPPFLAGS"
538     LIBS="$old_LIBS"
539   else
540     AC_MSG_RESULT([no])
541   fi
542 fi
543
544 dnl GPG Agent -------------------
545
546 AC_ARG_WITH(gpg_agent,
547 AS_HELP_STRING([--without-gpg-agent], 
548                [Disable support for GPG-Agent]),
549                [], [with_gpg_agent=yes])
550 AC_MSG_CHECKING([whether to support GPG-Agent])
551 if test "$with_gpg_agent" = "yes"; then
552   AC_MSG_RESULT([yes])
553   AC_DEFINE([SVN_HAVE_GPG_AGENT], [1], 
554             [Is GPG Agent support enabled?])
555 else
556   AC_MSG_RESULT([no])
557 fi
558
559 AC_SUBST(SVN_HAVE_GPG_AGENT)
560
561 dnl GNOME Keyring -------------------
562
563 AC_ARG_WITH(gnome_keyring,
564   AS_HELP_STRING([--with-gnome-keyring], 
565                  [Enable use of GNOME Keyring for auth credentials (enabled by default if found)]),
566                  [with_gnome_keyring="$withval"],
567                  [with_gnome_keyring=auto])
568
569 found_gnome_keyring=no
570 AC_MSG_CHECKING([whether to look for GNOME Keyring])
571 if test "$with_gnome_keyring" != "no"; then
572   AC_MSG_RESULT([yes])
573   if test "$svn_enable_shared" = "yes"; then
574     if test "$APR_HAS_DSO" = "yes"; then
575       if test -n "$PKG_CONFIG"; then
576         AC_MSG_CHECKING([for GLib and GNOME Keyring .pc files])
577         if $PKG_CONFIG --exists glib-2.0 gnome-keyring-1; then
578           AC_MSG_RESULT([yes])
579           old_CPPFLAGS="$CPPFLAGS"
580           SVN_GNOME_KEYRING_INCLUDES="`$PKG_CONFIG --cflags glib-2.0 gnome-keyring-1`"
581           CPPFLAGS="$CPPFLAGS $SVN_GNOME_KEYRING_INCLUDES"
582           AC_CHECK_HEADER(gnome-keyring.h, found_gnome_keyring=yes, found_gnome_keyring=no)
583           AC_MSG_CHECKING([for GNOME Keyring])
584           if test "$found_gnome_keyring" = "yes"; then
585             AC_MSG_RESULT([yes])
586             AC_DEFINE([SVN_HAVE_GNOME_KEYRING], [1], 
587                       [Is GNOME Keyring support enabled?])
588             CPPFLAGS="$old_CPPFLAGS"
589             SVN_GNOME_KEYRING_LIBS="`$PKG_CONFIG --libs glib-2.0 gnome-keyring-1`"
590           else
591             AC_MSG_RESULT([no])
592             if test "$with_gnome_keyring" = "yes"; then
593               AC_MSG_ERROR([cannot find GNOME Keyring])
594             fi
595           fi
596         else
597           AC_MSG_RESULT([no])
598           if test "$with_gnome_keyring" = "yes"; then
599             AC_MSG_ERROR([cannot find GLib and GNOME Keyring .pc files.])
600           else
601             with_gnome_keyring=no
602           fi
603         fi
604       else
605         if test "$with_gnome_keyring" = "yes"; then
606           AC_MSG_ERROR([cannot find pkg-config. GNOME Keyring requires this.])
607         else
608           with_gnome_keyring=no
609         fi
610       fi
611     else
612       if test "$with_gnome_keyring" = "yes"; then
613         AC_MSG_ERROR([APR does not have support for DSOs. GNOME Keyring requires this.])
614       else
615         with_gnome_keyring=no
616       fi
617     fi
618   else
619     if test "$with_gnome_keyring" = "yes"; then
620       AC_MSG_ERROR([--with-gnome-keyring conflicts with --disable-shared])
621     else
622       with_gnome_keyring=no
623     fi
624   fi
625 else
626   AC_MSG_RESULT([no])
627 fi
628 AC_SUBST(SVN_GNOME_KEYRING_INCLUDES)
629 AC_SUBST(SVN_GNOME_KEYRING_LIBS)
630
631
632 dnl Ev2 experimental features ----------------------
633 dnl Note: The Ev2 implementations will be built unconditionally, but by
634 dnl providing this flag, users can choose to use the currently-shimmed Ev2
635 dnl editor implementations for various operations.  This will probably
636 dnl negatively impact performance, but is useful for testing.
637 AC_ARG_ENABLE(ev2-impl,
638   AS_HELP_STRING([--enable-ev2-impl],
639                  [Use Ev2 implementations, where available [EXPERIMENTAL]]),
640   [enable_ev2_impl=$enableval],[enable_ev2_impl=no])
641 if test "$enable_ev2_impl" = "yes"; then
642   AC_DEFINE(ENABLE_EV2_IMPL, 1,
643             [Define to 1 if Ev2 implementations should be used.])
644 fi
645
646
647 dnl I18n -------------------
648
649 AC_ARG_ENABLE(nls,
650   AS_HELP_STRING([--disable-nls],[Disable gettext functionality]),
651   [enable_nls=$enableval],[enable_nls=yes])
652
653 USE_NLS="no"
654 if test "$enable_nls" = "yes"; then
655   dnl First, check to see if there is a working msgfmt.
656   AC_PATH_PROG(MSGFMT, msgfmt, none)
657   AC_PATH_PROG(MSGMERGE, msgmerge, none)
658   AC_PATH_PROG(XGETTEXT, xgettext, none)
659   if test "$MSGFMT" != "none"; then
660     AC_SEARCH_LIBS(bindtextdomain, [intl], [],
661                    [
662                     enable_nls="no"
663                    ])
664     if test "$enable_nls" = "no"; then
665       # Destroy the cached result so we can test again
666       unset ac_cv_search_bindtextdomain
667       # On some systems, libintl needs libiconv to link properly,
668       # so try again with -liconv.
669       AC_SEARCH_LIBS(bindtextdomain, [intl],
670                      [
671                       enable_nls="yes"
672                       # This is here so that -liconv ends up in LIBS
673                       # if it worked with -liconv.
674                       AC_CHECK_LIB(iconv, libiconv_open)
675                      ], 
676                      [
677                       AC_MSG_WARN([bindtextdomain() not found.  Disabling NLS.])
678                       enable_nls="no"
679                      ], -liconv)
680     fi
681     if test "$enable_nls" = "yes"; then
682       AC_DEFINE(ENABLE_NLS, 1,
683                 [Define to 1 if translation of program messages to the user's
684                  native language is requested.])
685       USE_NLS="yes"
686     fi
687   fi
688 fi
689
690 AH_BOTTOM([
691 /* Indicate to translators that string X should be translated.  Do not look
692    up the translation at run time; just expand to X.  This macro is suitable
693    for use where a constant string is required at compile time. */
694 #define N_(x) x
695 /* Indicate to translators that we have decided the string X should not be
696    translated.  Expand to X. */
697 #define U_(x) x
698 #ifdef ENABLE_NLS
699 #include <locale.h>
700 #include <libintl.h>
701 /* Indicate to translators that string X should be translated.  At run time,
702    look up and return the translation of X. */
703 #define _(x) dgettext(PACKAGE_NAME, x)
704 /* Indicate to translators that strings X1 and X2 are singular and plural
705    forms of the same message, and should be translated.  At run time, return
706    an appropriate translation depending on the number N. */
707 #define Q_(x1, x2, n) dngettext(PACKAGE_NAME, x1, x2, n)
708 #else
709 #define _(x) (x)
710 #define Q_(x1, x2, n) (((n) == 1) ? x1 : x2)
711 #define gettext(x) (x)
712 #define dgettext(domain, x) (x)
713 #endif
714 ])
715
716 dnl Used to simulate makefile conditionals.
717 GETTEXT_CODESET=\#
718 NO_GETTEXT_CODESET=\#
719 if test $USE_NLS = "yes"; then
720    AC_CHECK_FUNCS(bind_textdomain_codeset,
721                   [ GETTEXT_CODESET="" ],
722                   [ NO_GETTEXT_CODESET="" ])
723 fi
724 AC_SUBST(GETTEXT_CODESET)
725 AC_SUBST(NO_GETTEXT_CODESET)
726
727 # Check if we are using GNU gettext.
728 GNU_GETTEXT=no
729 MSGFMTFLAGS=''
730 if test $USE_NLS = "yes"; then
731    AC_MSG_CHECKING(if we are using GNU gettext)
732    if $MSGFMT --version 2>&1 | $EGREP GNU > /dev/null; then
733       GNU_GETTEXT=yes
734       MSGFMTFLAGS='-c'
735    fi
736    AC_MSG_RESULT($GNU_GETTEXT)
737 fi
738 AC_SUBST(MSGFMTFLAGS)
739
740 dnl libmagic -------------------
741
742 libmagic_found=no
743
744 AC_ARG_WITH(libmagic,AS_HELP_STRING([--with-libmagic=PREFIX],
745                                 [libmagic filetype detection library]),
746 [
747   if test "$withval" = "yes" ; then
748     AC_CHECK_HEADER(magic.h, [
749       AC_CHECK_LIB(magic, magic_open, [libmagic_found="builtin"])
750     ])
751     libmagic_prefix="the default locations"
752   elif test "$withval" != "no"; then
753     libmagic_prefix=$withval
754     save_cppflags="$CPPFLAGS"
755     CPPFLAGS="$CPPFLAGS -I$libmagic_prefix/include"
756     AC_CHECK_HEADERS(magic.h,[
757       save_ldflags="$LDFLAGS"
758       LDFLAGS="-L$libmagic_prefix/lib"
759       AC_CHECK_LIB(magic, magic_open, [libmagic_found="yes"])
760       LDFLAGS="$save_ldflags"
761     ])
762     CPPFLAGS="$save_cppflags"
763   fi
764   if test "$withval" != "no" && test "$libmagic_found" = "no"; then
765     AC_MSG_ERROR([[--with-libmagic requested, but libmagic not found at $libmagic_prefix]])
766   fi
767 ],
768 [
769   AC_CHECK_HEADER(magic.h, [
770     AC_CHECK_LIB(magic, magic_open, [libmagic_found="builtin"])
771   ])
772 ])
773
774 if test "$libmagic_found" != "no"; then
775   AC_DEFINE([SVN_HAVE_LIBMAGIC], [1], [Defined if libmagic support is enabled])
776   SVN_MAGIC_LIBS="-lmagic"
777 fi
778
779 if test "$libmagic_found" = "yes"; then
780   SVN_MAGIC_INCLUDES="-I$libmagic_prefix/include"
781   LDFLAGS="$LDFLAGS `SVN_REMOVE_STANDARD_LIB_DIRS(-L$libmagic_prefix/lib)`"
782 fi
783
784 AC_SUBST(SVN_MAGIC_INCLUDES)
785 AC_SUBST(SVN_MAGIC_LIBS)
786
787 dnl KWallet -------------------
788 SVN_LIB_KWALLET
789
790 if test "$svn_lib_kwallet" = "yes"; then
791   AC_DEFINE([SVN_HAVE_KWALLET], 1,
792             [Defined if KWallet support is enabled])
793 fi
794
795 dnl plaintext passwords -------------------
796 AC_ARG_ENABLE(plaintext-password-storage,
797 AS_HELP_STRING([--disable-plaintext-password-storage],
798                [Disable on-disk caching of plaintext passwords and passphrases.
799                 (Leaving this functionality enabled will not force Subversion
800                 to store passwords in plaintext, but does permit users to
801                 explicitly allow that behavior via runtime configuration.)]),
802 [
803    if test "$enableval" = "no"; then
804       AC_MSG_NOTICE([Disabling plaintext password/passphrase storage])
805       AC_DEFINE(SVN_DISABLE_PLAINTEXT_PASSWORD_STORAGE, 1,
806                 [Defined if plaintext password/passphrase storage is disabled])
807    fi
808 ])
809
810 dnl Build and install rules -------------------
811
812 INSTALL_STATIC_RULES="install-bin install-docs"
813 INSTALL_RULES="install-fsmod-lib install-ramod-lib install-lib install-include install-static"
814 INSTALL_RULES="$INSTALL_RULES $INSTALL_APACHE_RULE"
815 BUILD_RULES="fsmod-lib ramod-lib lib bin test sub-test $BUILD_APACHE_RULE tools"
816
817 if test "$svn_lib_berkeley_db" = "yes"; then
818   BUILD_RULES="$BUILD_RULES bdb-lib bdb-test"
819   INSTALL_RULES="`echo $INSTALL_RULES | $SED 's/install-fsmod-lib/install-fsmod-lib install-bdb-lib/'`"
820   INSTALL_STATIC_RULES="$INSTALL_STATIC_RULES install-bdb-lib"
821   BDB_TEST_DEPS="\$(BDB_TEST_DEPS)"
822   BDB_TEST_PROGRAMS="\$(BDB_TEST_PROGRAMS)"
823 fi
824
825 if test "$svn_lib_serf" = "yes"; then
826   BUILD_RULES="$BUILD_RULES serf-lib"
827   INSTALL_RULES="`echo $INSTALL_RULES | $SED 's/install-ramod-lib/install-ramod-lib install-serf-lib/'`"
828   INSTALL_STATIC_RULES="$INSTALL_STATIC_RULES install-serf-lib"
829 fi
830
831 if test "$svn_lib_kwallet" = "yes"; then
832   BUILD_RULES="$BUILD_RULES kwallet-lib"
833   INSTALL_RULES="`echo $INSTALL_RULES | $SED 's/install-lib/install-lib install-kwallet-lib/'`"
834   INSTALL_STATIC_RULES="$INSTALL_STATIC_RULES install-kwallet-lib"
835 fi
836
837 if test "$found_gnome_keyring" = "yes"; then
838   BUILD_RULES="$BUILD_RULES gnome-keyring-lib"
839   INSTALL_RULES="`echo $INSTALL_RULES | $SED 's/install-lib/install-lib install-gnome-keyring-lib/'`"
840   INSTALL_STATIC_RULES="$INSTALL_STATIC_RULES install-gnome-keyring-lib"
841 fi
842
843 if test "$USE_NLS" = "yes"; then
844   BUILD_RULES="$BUILD_RULES locale"
845   INSTALL_RULES="$INSTALL_RULES install-locale"
846 fi
847
848 AC_SUBST(BUILD_RULES)
849 AC_SUBST(INSTALL_STATIC_RULES)
850 AC_SUBST(INSTALL_RULES)
851 AC_SUBST(BDB_TEST_DEPS)
852 AC_SUBST(BDB_TEST_PROGRAMS)
853
854 dnl Check for header files ----------------
855
856 dnl Standard C headers
857 AC_HEADER_STDC
858
859 dnl Check for typedefs, structures, and compiler characteristics ----------
860
861 dnl if compiler doesn't understand `const', then define it empty
862 AC_C_CONST
863
864 dnl if non-existent, define size_t to be `unsigned'
865 AC_TYPE_SIZE_T
866
867
868 dnl Check for library functions ----------
869
870 AC_FUNC_MEMCMP
871
872 dnl svn_error's default warning handler uses vfprintf()
873 AC_FUNC_VPRINTF
874
875 dnl check for functions needed in special file handling
876 AC_CHECK_FUNCS(symlink readlink)
877
878 dnl check for uname
879 AC_CHECK_HEADERS(sys/utsname.h, [AC_CHECK_FUNCS(uname)], [])
880
881 dnl check for termios
882 AC_CHECK_HEADER(termios.h,[
883   AC_CHECK_FUNCS(tcgetattr tcsetattr,[
884     AC_DEFINE(HAVE_TERMIOS_H,1,[Defined if we have a usable termios library.])
885   ])
886 ])
887
888 dnl Process some configuration options ----------
889
890 AC_ARG_WITH(openssl,
891 AS_HELP_STRING([--with-openssl],
892                [This option does NOT affect the Subversion build process in any
893                 way. It tells an integrated Serf HTTP client library build
894                 process where to locate the OpenSSL library when (and only when)
895                 building Serf as an integrated part of the Subversion build
896                 process. When linking to a previously installed version of Serf
897                 instead, you do not need to use this option.]),
898 [])
899
900 AC_ARG_ENABLE(debug,
901 AS_HELP_STRING([--enable-debug],
902                [Turn on debugging]),
903 [
904     if test "$enableval" = "yes" ; then
905       enable_debugging="yes"
906     else
907       enable_debugging="no"
908     fi
909 ],
910 [
911     # Neither --enable-debug nor --disable-debug was passed.
912     enable_debugging="maybe"
913 ])
914
915 AC_ARG_ENABLE(optimize,
916 AS_HELP_STRING([--enable-optimize],
917                [Turn on optimizations]),
918 [
919     if test "$enableval" = "yes" ; then
920       enable_optimization="yes"
921     else
922       enable_optimization="no"
923     fi
924 ],
925 [
926     # Neither --enable-optimize nor --disable-optimize was passed.
927     enable_optimization="maybe"
928 ])
929
930 dnl Use -Wl,--no-undefined during linking of some libraries
931 AC_ARG_ENABLE(disallowing-of-undefined-references,
932   [AS_HELP_STRING([--enable-disallowing-of-undefined-references],
933                   [Use -Wl,--no-undefined flag during linking of some libraries to disallow undefined references])])
934 if test "$enable_disallowing_of_undefined_references" != "yes" && test "`uname`" != "Linux"; then
935   enable_disallowing_of_undefined_references="no"
936 fi
937 if test "$enable_disallowing_of_undefined_references" != "no"; then
938   AC_MSG_CHECKING([for -Wl,--no-undefined])
939   old_LDFLAGS="$LDFLAGS"
940   LDFLAGS="$LDFLAGS -Wl,--no-undefined"
941   AC_LINK_IFELSE([AC_LANG_SOURCE([[int main(){;}]])], [svn_wl_no_undefined="yes"], [svn_wl_no_undefined="no"])
942   LDFLAGS="$old_LDFLAGS"
943   if test "$svn_wl_no_undefined" = "yes"; then
944     AC_MSG_RESULT([yes])
945     for library_dir in "$abs_srcdir/subversion/libsvn_"*; do
946       eval "`basename $library_dir`_LDFLAGS=-Wl,--no-undefined"
947     done
948   else
949     AC_MSG_RESULT([no])
950     if test "$enable_disallowing_of_undefined_references" = "yes"; then
951       AC_MSG_ERROR([--enable-disallowing-of-undefined-references explicitly requested, but -Wl,--no-undefined not supported])
952     fi
953   fi
954 fi
955 AC_SUBST([libsvn_auth_gnome_keyring_LDFLAGS])
956 AC_SUBST([libsvn_auth_kwallet_LDFLAGS])
957 AC_SUBST([libsvn_client_LDFLAGS])
958 AC_SUBST([libsvn_delta_LDFLAGS])
959 AC_SUBST([libsvn_diff_LDFLAGS])
960 AC_SUBST([libsvn_fs_LDFLAGS])
961 AC_SUBST([libsvn_fs_base_LDFLAGS])
962 AC_SUBST([libsvn_fs_fs_LDFLAGS])
963 AC_SUBST([libsvn_fs_util_LDFLAGS])
964 AC_SUBST([libsvn_ra_LDFLAGS])
965 AC_SUBST([libsvn_ra_local_LDFLAGS])
966 AC_SUBST([libsvn_ra_serf_LDFLAGS])
967 AC_SUBST([libsvn_ra_svn_LDFLAGS])
968 AC_SUBST([libsvn_repos_LDFLAGS])
969 AC_SUBST([libsvn_subr_LDFLAGS])
970 AC_SUBST([libsvn_wc_LDFLAGS])
971
972
973 AC_ARG_ENABLE(maintainer-mode,
974 AS_HELP_STRING([--enable-maintainer-mode],
975                [Turn on debugging and very strict compile-time warnings]),
976 [
977     if test "$enableval" = "yes" ; then
978       if test "$enable_debugging" = "no" ; then
979         AC_MSG_ERROR([Can't have --disable-debug and --enable-maintainer-mode])
980       fi
981       enable_debugging=yes
982
983       dnl Enable some extra warnings. Put these before the user's flags
984       dnl so the user can specify flags that override these.
985       if test "$GCC" = "yes"; then
986         AC_MSG_NOTICE([maintainer-mode: adding GCC warning flags])
987
988         dnl some additional flags that can be handy for an occasional review,
989         dnl but throw too many warnings in svn code, of too little importance,
990         dnl to keep these enabled. Remove the "dnl" to do a run with these
991         dnl switches enabled.
992         dnl ./configure CUSERFLAGS="-Wswitch-enum -Wswitch-default"
993
994         dnl Add each of the following flags only if the C compiler accepts it.
995         CFLAGS_KEEP="$CFLAGS"
996         CFLAGS=""
997
998         SVN_CFLAGS_ADD_IFELSE([-Werror=implicit-function-declaration])
999         SVN_CFLAGS_ADD_IFELSE([-Werror=declaration-after-statement])
1000         SVN_CFLAGS_ADD_IFELSE([-Wextra-tokens])
1001         SVN_CFLAGS_ADD_IFELSE([-Wnewline-eof])
1002         SVN_CFLAGS_ADD_IFELSE([-Wshorten-64-to-32])
1003         SVN_CFLAGS_ADD_IFELSE([-Wold-style-definition])
1004         SVN_CFLAGS_ADD_IFELSE([-Wno-system-headers])
1005         SVN_CFLAGS_ADD_IFELSE([-Wno-format-nonliteral])
1006
1007         CMAINTAINERFLAGS="$CFLAGS $CMAINTAINERFLAGS"
1008         CFLAGS="$CFLAGS_KEEP"
1009
1010         dnl Add flags that all versions of GCC (should) support
1011         CMAINTAINERFLAGS="-Wall -Wpointer-arith -Wwrite-strings -Wshadow -Wformat=2 -Wunused -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wno-multichar -Wredundant-decls -Wnested-externs -Winline -Wno-long-long $CMAINTAINERFLAGS"
1012       fi
1013       if test "$GXX" = "yes"; then
1014         AC_MSG_NOTICE([maintainer-mode: adding G++ warning flags])
1015
1016         dnl Add each of the following flags only if the C++ compiler accepts it.
1017         CXXFLAGS_KEEP="$CXXFLAGS"
1018         CXXFLAGS=""
1019
1020         SVN_CXXFLAGS_ADD_IFELSE([-Wextra-tokens])
1021         SVN_CXXFLAGS_ADD_IFELSE([-Wnewline-eof])
1022         SVN_CXXFLAGS_ADD_IFELSE([-Wshorten-64-to-32])
1023         SVN_CXXFLAGS_ADD_IFELSE([-Wno-system-headers])
1024
1025         CXXMAINTAINERFLAGS="$CXXFLAGS $CXXMAINTAINERFLAGS"
1026         CXXFLAGS="$CXXFLAGS_KEEP"
1027
1028         dnl Add flags that all versions of G++ (should) support
1029         CXXMAINTAINERFLAGS="-Wall -Wpointer-arith -Wwrite-strings -Wshadow -Wunused -Wunreachable-code $CXXMAINTAINERFLAGS"
1030       fi
1031     fi
1032 ])
1033
1034 if test "$enable_debugging" = "yes" ; then
1035   dnl At the moment, we don't want optimization, because we're
1036   dnl debugging. Unless optiization was explicitly enabled.
1037   if test "$enable_optimization" != "yes"; then
1038     AC_MSG_NOTICE([Disabling optimizations for debugging])
1039     CFLAGS=["`echo $CFLAGS' ' | $SED -e 's/-O[^ ]* //g'`"]
1040     CXXFLAGS=["`echo $CXXFLAGS' ' | $SED -e 's/-O[^ ]* //g'`"]
1041   fi
1042   dnl Add debugging flags, unless they were set by the user
1043   if test -z ["`echo $CUSERFLAGS' ' | $EGREP -- '-g[0-9]? '`"]; then
1044     AC_MSG_NOTICE([Enabling debugging for C])
1045     CFLAGS=["`echo $CFLAGS' ' | $SED -e 's/-g[0-9] //g' -e 's/-g //g'`"]
1046     SVN_CFLAGS_ADD_IFELSE([-fno-inline])
1047     SVN_CFLAGS_ADD_IFELSE([-fno-omit-frame-pointer])
1048     SVN_CFLAGS_ADD_IFELSE([-g3],[],[
1049       SVN_CFLAGS_ADD_IFELSE([-g2],[],[
1050         SVN_CFLAGS_ADD_IFELSE([-g])])])
1051   fi
1052   if test -z ["`echo $CXXUSERFLAGS' ' | $EGREP -- '-g[0-9]? '`"]; then
1053     AC_MSG_NOTICE([Enabling debugging for C++])
1054     CXXFLAGS=["`echo $CXXFLAGS' ' | $SED -e 's/-g[0-9] //g' -e 's/-g //g'`"]
1055     SVN_CXXFLAGS_ADD_IFELSE([-fno-inline])
1056     SVN_CXXFLAGS_ADD_IFELSE([-fno-omit-frame-pointer])
1057     SVN_CXXFLAGS_ADD_IFELSE([-g3],[],[
1058       SVN_CXXFLAGS_ADD_IFELSE([-g2],[],[
1059         SVN_CXXFLAGS_ADD_IFELSE([-g])])])
1060   fi
1061   dnl SVN_DEBUG enables specific features for developer builds
1062   dnl AP_DEBUG enables specific (Apache) features for developer builds
1063   CFLAGS="$CFLAGS -DSVN_DEBUG -DAP_DEBUG"
1064   CXXFLAGS="$CXXFLAGS -DSVN_DEBUG -DAP_DEBUG"
1065 elif test "$enable_debugging" = "no" ; then
1066   AC_MSG_NOTICE([Disabling debugging])
1067   CFLAGS=["`echo $CFLAGS' ' | $SED -e 's/-g[0-9] //g' -e 's/-g //g'`"]
1068   CXXFLAGS=["`echo $CXXFLAGS' ' | $SED -e 's/-g[0-9] //g' -e 's/-g //g'`"]
1069   dnl Compile with NDEBUG to get rid of assertions
1070   CFLAGS="$CFLAGS -DNDEBUG"
1071   CXXFLAGS="$CXXFLAGS -DNDEBUG"
1072 # elif test "$enable_debugging" = "maybe" ; then
1073 #   # do nothing
1074 fi
1075
1076 if test "$enable_optimization" = "yes"; then
1077   dnl Add optimization flags, unless they were set by the user
1078   if test -z ["`echo $CUSERFLAGS' ' | $EGREP -- '-O[^ ]* '`"]; then
1079     CFLAGS=["`echo $CFLAGS' ' | $SED -e 's/-O[^ ]* //g'`"]
1080     if test "$enable_debugging" = "yes"; then
1081       AC_MSG_NOTICE([Enabling optimizations for C (with debugging enabled)])
1082       SVN_CFLAGS_ADD_IFELSE([-O1],[],[
1083         SVN_CFLAGS_ADD_IFELSE([-O])])
1084     else
1085       AC_MSG_NOTICE([Enabling optimizations for C])
1086       SVN_CFLAGS_ADD_IFELSE([-O3],[],[
1087         SVN_CFLAGS_ADD_IFELSE([-O2],[],[
1088           SVN_CFLAGS_ADD_IFELSE([-O1],[],[
1089             SVN_CFLAGS_ADD_IFELSE([-O])])])])
1090       SVN_CFLAGS_ADD_IFELSE([-Wno-clobbered])
1091       SVN_CFLAGS_ADD_IFELSE([-flto])
1092     fi
1093   fi
1094   if test -z ["`echo $CXXUSERFLAGS' ' | $EGREP -- '-O[^ ]* '`"]; then
1095     CXXFLAGS=["`echo $CXXFLAGS' ' | $SED -e 's/-O[^ ]* //g'`"]
1096     if test "$enable_debugging" = "yes"; then
1097       AC_MSG_NOTICE([Enabling optimizations for C++ (with debugging enabled)])
1098       SVN_CXXFLAGS_ADD_IFELSE([-O1],[],[
1099         SVN_CXXFLAGS_ADD_IFELSE([-O])])
1100     else
1101       AC_MSG_NOTICE([Enabling optimizations for C++])
1102       SVN_CXXFLAGS_ADD_IFELSE([-O3],[],[
1103         SVN_CXXFLAGS_ADD_IFELSE([-O2],[],[
1104           SVN_CXXFLAGS_ADD_IFELSE([-O1],[],[
1105             SVN_CXXFLAGS_ADD_IFELSE([-O])])])])
1106       SVN_CXXFLAGS_ADD_IFELSE([-Wno-clobbered])
1107       SVN_CXXFLAGS_ADD_IFELSE([-flto])
1108     fi
1109   fi
1110 elif test "$enable_optimization" = "no"; then
1111   dnl Remove all optimization flags
1112   AC_MSG_NOTICE([Disabling optimizations])
1113   CFLAGS=["`echo $CFLAGS' ' | $SED -e 's/-O[^ ]* //g'`"]
1114   CXXFLAGS=["`echo $CXXFLAGS' ' | $SED -e 's/-O[^ ]* //g'`"]
1115 # elif test "$enable_optimization" = "maybe" ; then
1116 #   # do nothing
1117 fi
1118
1119 dnl Dump the current compiler options
1120 AC_MSG_NOTICE([C compiler flags: $CFLAGS])
1121 AC_MSG_NOTICE([    user-defined: $CUSERFLAGS])
1122 AC_MSG_NOTICE([ maintainer-mode: $CMAINTAINERFLAGS])
1123 AC_MSG_NOTICE([C++ compiler flags: $CXXFLAGS])
1124 AC_MSG_NOTICE([      user-defined: $CXXUSERFLAGS])
1125 AC_MSG_NOTICE([   maintainer-mode: $CXXMAINTAINERFLAGS])
1126
1127 AC_ARG_ENABLE(full-version-match,
1128 AS_HELP_STRING([--disable-full-version-match],
1129                [Disable the full version match rules when checking
1130                 Subversion library compatibility.]),
1131 [
1132     if test "$enableval" = "no" ; then
1133       AC_MSG_NOTICE([Disabling svn full version matching])
1134       AC_DEFINE(SVN_DISABLE_FULL_VERSION_MATCH, 1,
1135                 [Defined if the full version matching rules are disabled])
1136     fi
1137 ])
1138
1139 AC_ARG_WITH(editor,
1140 AS_HELP_STRING([--with-editor=PATH],
1141                [Specify a default editor for the subversion client.]),
1142 [
1143
1144     if test "$withval" = "yes" ; then
1145       AC_MSG_ERROR([--with-editor requires an argument.])
1146     else
1147       SVN_CLIENT_EDITOR=$withval
1148       AC_DEFINE_UNQUOTED(SVN_CLIENT_EDITOR, "$SVN_CLIENT_EDITOR",
1149                          [The path of a default editor for the client.])
1150
1151     fi
1152
1153 ])
1154
1155 SVN_LIB_Z
1156
1157 MOD_ACTIVATION=""
1158 AC_ARG_ENABLE(mod-activation,
1159 AS_HELP_STRING([--enable-mod-activation],
1160                [Enable mod_dav_svn in httpd.conf]),
1161 [
1162     if test "$enableval" = "yes" ; then
1163       MOD_ACTIVATION="-a"
1164       AC_MSG_NOTICE([Enabling apache module activation])
1165     else
1166       AC_MSG_NOTICE([Disabling apache module activation])
1167     fi
1168 ])
1169 AC_SUBST(MOD_ACTIVATION)
1170
1171
1172
1173 AC_ARG_ENABLE(gcov,
1174 AC_HELP_STRING([--enable-gcov],
1175                [Turn on gcov coverage testing (GCC only).]),
1176 [
1177     if test "$enableval" = "yes" ; then
1178       dnl Probably other compilers support something similar;
1179       dnl feel free to extend this to include them.
1180       if test "$GCC" = "yes"; then
1181         if test "$svn_enable_shared" = "yes" ; then
1182           AC_MSG_ERROR([Can't have --enable-gcov without --disable-shared (we
1183                         recommend also using --enable-all-static).])
1184         fi
1185         if test ! "$enable_all_static" = "yes" ; then
1186           AC_MSG_WARN(We recommend --enable-all-static with --enable-gcov.)
1187         fi
1188         AC_MSG_NOTICE([Enabling gcov coverage testing.])
1189         CFLAGS="$CFLAGS -fprofile-arcs -ftest-coverage"
1190         CXXFLAGS="$CXXFLAGS -fprofile-arcs -ftest-coverage"
1191       else
1192         AC_MSG_ERROR([We only support --enable-gcov with GCC right now.])
1193       fi
1194     fi
1195 ])
1196
1197 AC_ARG_ENABLE(gprof,
1198 AS_HELP_STRING([--enable-gprof],
1199                [Produce gprof profiling data in 'gmon.out' (GCC only).]),
1200 [
1201     if test "$enableval" = "yes" ; then
1202       dnl Probably other compilers support -pg or something similar;
1203       dnl feel free to extend this to include them.
1204       if test "$GCC" = "yes"; then
1205         if test "$svn_enable_shared" = "yes" ; then
1206           AC_MSG_ERROR([Can't have --enable-gprof without --disable-shared (we
1207                         recommend also using --enable-all-static).])
1208         fi
1209         if test ! "$enable_all_static" = "yes" ; then
1210           AC_MSG_WARN(We recommend --enable-all-static with --enable-gprof.)
1211         fi
1212         AC_MSG_NOTICE([Enabling gprof profiling data (to gmon.out).])
1213         CFLAGS="$CFLAGS -pg"
1214         CXXFLAGS="$CXXFLAGS -pg"
1215         LT_LDFLAGS="$LT_LDFLAGS -pg"
1216       else
1217         AC_MSG_ERROR([We only support --enable-gprof with GCC right now.])
1218       fi
1219     fi
1220 ])
1221
1222
1223 # Scripting and Bindings languages
1224
1225 # Python: Used for testsuite, and bindings
1226
1227
1228 PYTHON="`$abs_srcdir/build/find_python.sh`"
1229 if test -z "$PYTHON"; then
1230   AC_MSG_WARN([Python 2.5 or later is required to run the testsuite])
1231   AC_MSG_WARN([or to use the Subversion Python bindings])
1232   AC_MSG_WARN([])
1233   AC_MSG_WARN([If you have a suitable Python installed, but not on the])
1234   AC_MSG_WARN([PATH, set the environment variable PYTHON to the full path])
1235   AC_MSG_WARN([to the Python executable, and re-run configure])
1236 fi
1237 AC_PATH_PROGS(PYTHON, "$PYTHON", none)
1238
1239 # The minimum version for the JVM runtime for our Java bytecode.
1240 JAVA_OLDEST_WORKING_VER='1.5'
1241 # SVN_CHECK_JDK sets $JAVA_CLASSPATH
1242 SVN_CHECK_JDK($JAVA_OLDEST_WORKING_VER)
1243
1244 AC_PATH_PROG(PERL, perl, none)
1245
1246 if test -n "$RUBY"; then
1247   AC_PATH_PROG(RUBY, "$RUBY", none)
1248 else
1249   AC_PATH_PROGS(RUBY, ruby ruby1.8 ruby18 ruby1.9 ruby1 ruby1.9.3 ruby193, none)
1250 fi
1251 if test "$RUBY" != "none"; then
1252   AC_MSG_CHECKING([rb_hash_foreach])
1253   if "$RUBY" -r mkmf -e 'exit(have_func("rb_hash_foreach") ? 0 : 1)' >/dev/null; then
1254     AC_MSG_RESULT([yes])
1255     if test -n "$RDOC"; then
1256       AC_PATH_PROG(RDOC, "$RDOC", none)
1257     else
1258       AC_PATH_PROGS(RDOC, rdoc rdoc1.8 rdoc18 rdoc1.9 rdoc19 rdoc1.9.3 rdoc193, none)
1259     fi
1260     AC_CACHE_CHECK([for Ruby major version], [svn_cv_ruby_major],[
1261     svn_cv_ruby_major="`$RUBY -rrbconfig -e 'print RbConfig::CONFIG.fetch(%q(MAJOR))'`"
1262     ])
1263     RUBY_MAJOR="$svn_cv_ruby_major"
1264
1265     AC_CACHE_CHECK([for Ruby minor version], [svn_cv_ruby_minor],[
1266     svn_cv_ruby_minor="`$RUBY -rrbconfig -e 'print RbConfig::CONFIG.fetch(%q(MINOR))'`"
1267     ])
1268     RUBY_MINOR="$svn_cv_ruby_minor"
1269
1270     AC_CACHE_CHECK([for Ruby teeny version], [svn_cv_ruby_teeny],[
1271     svn_cv_ruby_teeny="`$RUBY -rrbconfig -e 'major, minor, teeny = RUBY_VERSION.split("."); print teeny;'`"
1272     ])
1273     RUBY_TEENY="$svn_cv_ruby_teeny"
1274     
1275     AC_SUBST(RUBY_MAJOR)
1276     AC_SUBST(RUBY_MINOR)
1277     AC_SUBST(RUBY_TEENY)
1278     if test \( "$RUBY_MAJOR" -eq "1" -a "$RUBY_MINOR" -gt "8" -a "$RUBY_TEENY" -lt "3" \); then
1279       # Disallow Ruby between 1.8.7 and 1.9.3
1280       RUBY="none"
1281       AC_MSG_WARN([The detected Ruby is between 1.9 and 1.9.3])
1282       AC_MSG_WARN([Only 1.8.x and 1.9.3 releases are supported at this time])
1283     elif test \(  "$RUBY_MAJOR" -eq "1" -a "$RUBY_MINOR" -eq "9" -a "$RUBY_TEENY" -eq "3" \); then
1284       #Warn about 1.9.3 support
1285       AC_MSG_WARN([WARNING: The detected Ruby is 1.9.3])
1286       AC_MSG_WARN([WARNING: Only 1.8.x releases are fully supported, 1.9.3 support is new])
1287     fi
1288   else
1289     AC_MSG_RESULT([no])
1290     RUBY="none"
1291     AC_MSG_WARN([The detected Ruby is too old for Subversion to use])
1292     AC_MSG_WARN([A Ruby which has rb_hash_foreach is required to use the])
1293     AC_MSG_WARN([Subversion Ruby bindings])
1294     AC_MSG_WARN([Upgrade to the official 1.8.2 release, or later])
1295   fi
1296 fi
1297
1298 SVN_CHECK_SWIG
1299
1300 SVN_CHECK_CTYPESGEN
1301
1302 dnl decide whether we want to link against the RA/FS libraries
1303 AC_ARG_ENABLE(runtime-module-search,
1304 AS_HELP_STRING([--enable-runtime-module-search],
1305                [Turn on dynamic loading of RA/FS libraries including
1306                 third-party FS libraries]),
1307 [
1308     if test "$enableval" = "yes"; then
1309       use_dso=yes
1310       if test "$svn_enable_shared" = "no"; then
1311         AC_MSG_ERROR([--enable-runtime-module-search conflicts with --disable-shared])
1312       fi
1313       AC_DEFINE(SVN_USE_DSO, 1,
1314                 [Defined if svn should try to load DSOs])
1315     fi
1316 ])
1317
1318 if test "$svn_enable_shared" = "no" || test "$use_dso" != "yes"; then
1319   AC_DEFINE(SVN_LIBSVN_CLIENT_LINKS_RA_LOCAL, 1,
1320       [Defined if libsvn_client should link against libsvn_ra_local])
1321   svn_ra_lib_deps="\$(RA_LOCAL_DEPS)"
1322   svn_ra_lib_install_deps="install-ramod-lib"
1323   svn_ra_lib_link="\$(RA_LOCAL_LINK)"
1324
1325   AC_DEFINE(SVN_LIBSVN_CLIENT_LINKS_RA_SVN, 1,
1326       [Defined if libsvn_client should link against libsvn_ra_svn])
1327   svn_ra_lib_deps="$svn_ra_lib_deps \$(RA_SVN_DEPS)"
1328   svn_ra_lib_link="$svn_ra_lib_link \$(RA_SVN_LINK)"
1329
1330   if test "$svn_lib_serf" = "yes"; then
1331     AC_DEFINE(SVN_LIBSVN_CLIENT_LINKS_RA_SERF, 1,
1332           [Defined if libsvn_client should link against libsvn_ra_serf])
1333     svn_ra_lib_deps="$svn_ra_lib_deps \$(RA_SERF_DEPS)"
1334     svn_ra_lib_install_deps="$svn_ra_lib_install_deps install-serf-lib"
1335     svn_ra_lib_link="$svn_ra_lib_link \$(RA_SERF_LINK)"
1336   fi
1337
1338   SVN_RA_LIB_DEPS=$svn_ra_lib_deps
1339   SVN_RA_LIB_INSTALL_DEPS=$svn_ra_lib_install_deps
1340   SVN_RA_LIB_LINK=$svn_ra_lib_link
1341
1342   AC_DEFINE(SVN_LIBSVN_FS_LINKS_FS_FS, 1,
1343       [Defined if libsvn_fs should link against libsvn_fs_fs])
1344   svn_fs_lib_deps="\$(FS_FS_DEPS)"
1345   svn_fs_lib_install_deps="install-fsmod-lib"
1346   svn_fs_lib_link="\$(FS_FS_LINK)"
1347
1348   if test "$svn_lib_berkeley_db" = "yes"; then
1349   AC_DEFINE(SVN_LIBSVN_FS_LINKS_FS_BASE, 1,
1350       [Defined if libsvn_fs should link against libsvn_fs_base])
1351     svn_fs_lib_deps="$svn_fs_lib_deps \$(FS_BASE_DEPS)"
1352     svn_fs_lib_install_deps="$svn_fs_lib_install_deps install-bdb-lib"
1353     svn_fs_lib_link="$svn_fs_lib_link \$(FS_BASE_LINK)"
1354   fi
1355
1356   SVN_FS_LIB_DEPS=$svn_fs_lib_deps
1357   SVN_FS_LIB_INSTALL_DEPS=$svn_fs_lib_install_deps
1358   SVN_FS_LIB_LINK=$svn_fs_lib_link
1359 fi
1360
1361 AC_SUBST(SVN_RA_LIB_DEPS)
1362 AC_SUBST(SVN_RA_LIB_INSTALL_DEPS)
1363 AC_SUBST(SVN_RA_LIB_LINK)
1364 AC_SUBST(SVN_FS_LIB_DEPS)
1365 AC_SUBST(SVN_FS_LIB_INSTALL_DEPS)
1366 AC_SUBST(SVN_FS_LIB_LINK)
1367
1368 # ==== JavaHL ================================================================
1369
1370 dnl Possibly compile JavaHL
1371 do_javahl_build=no
1372 AC_ARG_ENABLE(javahl,
1373   AS_HELP_STRING([--enable-javahl],
1374              [Enable compilation of Java high-level bindings (requires C++)]),
1375   [ if test "$enableval" = "yes" ; then
1376         do_javahl_build="yes"
1377     fi
1378   ])
1379
1380 JAVAHL_OBJDIR=""
1381 INSTALL_EXTRA_JAVAHL_LIB=""
1382 FIX_JAVAHL_LIB=""
1383 JAVAHL_TESTS_TARGET=""
1384 JAVAHL_COMPAT_TESTS_TARGET=""
1385 LT_CXX_LIBADD=""
1386 if test "$do_javahl_build" = "yes"; then
1387   dnl Check for suitable JDK
1388   if test "$JDK_SUITABLE" = "no"; then
1389     AC_MSG_ERROR([Cannot compile JavaHL without a suitable JDK. 
1390                   Please specify a suitable JDK using the --with-jdk option.])
1391   fi
1392   
1393   dnl The temporary directory where libtool compiles libsvnjavahl.
1394   JAVAHL_OBJDIR='$(libsvnjavahl_PATH)/.libs'
1395   
1396   os_arch=`uname`
1397   if test "$os_arch" = "Darwin"; then
1398     dnl On Darwin, JNI libs must be installed as .jnilib
1399     INSTALL_EXTRA_JAVAHL_LIB='ln -sf $(libdir)/libsvnjavahl-1.dylib $(libdir)/libsvnjavahl-1.jnilib'
1400     FIX_JAVAHL_LIB="ln -sf libsvnjavahl-1.dylib $JAVAHL_OBJDIR/libsvnjavahl-1.jnilib"
1401   fi
1402   # This segment (and the rest of r10800) is very likely unnecessary
1403   # with libtool 1.5, which automatically adds libstdc++ as a
1404   # dependency to the C++ libraries it builds.  So at some future time
1405   # when autogen.sh requires libtool 1.5 or higher, we can get rid of
1406   # it.
1407   AC_MSG_CHECKING([for additional flags to link C++ libraries])
1408   if test "x$ac_compiler_gnu" = "xyes"; then
1409     LT_CXX_LIBADD="-lstdc++"
1410     AC_MSG_RESULT([$LT_CXX_LIBADD])
1411   else
1412     AC_MSG_RESULT([none needed])
1413   fi
1414 fi
1415 AC_SUBST(INSTALL_EXTRA_JAVAHL_LIB)
1416 AC_SUBST(JAVAHL_OBJDIR)
1417 AC_SUBST(FIX_JAVAHL_LIB)
1418 AC_SUBST(LT_CXX_LIBADD)
1419
1420 AC_ARG_WITH(junit,
1421 AS_HELP_STRING([--with-junit=PATH],
1422                [Specify a path to the junit JAR file.]),
1423 [
1424     if test "$withval" != "no"; then
1425       if test -n "$JAVA_CLASSPATH"; then
1426         JAVA_CLASSPATH="$withval:$JAVA_CLASSPATH"
1427       else
1428         JAVA_CLASSPATH="$withval"
1429       fi
1430       JAVAHL_TESTS_TARGET="javahl-tests"
1431       JAVAHL_COMPAT_TESTS_TARGET="javahl-compat-tests"
1432     fi
1433 ])
1434 AC_SUBST(JAVA_CLASSPATH)
1435 AC_SUBST(JAVAHL_TESTS_TARGET)
1436 AC_SUBST(JAVAHL_COMPAT_TESTS_TARGET)
1437
1438 # ==== Miscellaneous bits ====================================================
1439
1440 # Strip '-no-cpp-precomp' from CPPFLAGS for the clang compiler
1441 ### I think we get this flag from APR, so the fix probably belongs there
1442 if test "$CC" = "clang"; then
1443   SVN_STRIP_FLAG(CPPFLAGS, [-no-cpp-precomp ])
1444 fi
1445
1446 # Need to strip '-no-cpp-precomp' from CPPFLAGS for SWIG as well.
1447 SWIG_CPPFLAGS="$CPPFLAGS"
1448 SVN_STRIP_FLAG(SWIG_CPPFLAGS, [-no-cpp-precomp ])
1449 AC_SUBST([SWIG_CPPFLAGS])
1450
1451 dnl Since this is used only on Unix-y systems, define the path separator as '/'
1452 AC_DEFINE_UNQUOTED(SVN_PATH_LOCAL_SEPARATOR, '/',
1453         [Defined to be the path separator used on your local filesystem])
1454
1455 AC_DEFINE_UNQUOTED(SVN_NULL_DEVICE_NAME, "/dev/null",
1456         [Defined to be the null device for the system])
1457
1458 DEFAULT_FS_TYPE="fsfs"
1459 AC_DEFINE_UNQUOTED(DEFAULT_FS_TYPE, "$DEFAULT_FS_TYPE",
1460                    [The fs type to use by default])
1461
1462 DEFAULT_HTTP_LIBRARY="serf"
1463 AC_DEFINE_UNQUOTED(DEFAULT_HTTP_LIBRARY, "$DEFAULT_HTTP_LIBRARY",
1464                    [The http library to use by default])
1465
1466 # BSD/OS (BSDi) needs to use a different include syntax in Makefile
1467 INCLUDE_OUTPUTS="include \$(top_srcdir)/build-outputs.mk"
1468 case "$host" in
1469   *bsdi*)
1470     # Check whether they've installed GNU make
1471     if ! make --version > /dev/null 2>&1; then 
1472       # BSDi make
1473       INCLUDE_OUTPUTS=".include \"\$(top_srcdir)/build-outputs.mk\""
1474     fi
1475     ;;
1476 esac
1477 AC_SUBST(INCLUDE_OUTPUTS)
1478
1479 # ==== Detection complete - output and run config.status =====================
1480
1481 AC_CONFIG_HEADERS(subversion/svn_private_config.h.tmp:subversion/svn_private_config.h.in)
1482 AC_CONFIG_COMMANDS([svn_private_config.h.tmp],
1483                    [svn_cf=subversion/svn_private_config.h;
1484                     $SED -e "s/@SVN_DB_HEADER@/$SVN_DB_HEADER/" $svn_cf.tmp > $svn_cf.tmp.new
1485                     cmp -s $svn_cf.tmp.new $svn_cf || mv -f $svn_cf.tmp.new $svn_cf
1486                     rm -f $svn_cf.tmp.new $svn_cf.tmp],
1487                    [SED="$SED"
1488                     SVN_DB_HEADER="$SVN_DB_HEADER"])
1489 AC_CONFIG_FILES([Makefile])
1490
1491 SVN_CONFIG_SCRIPT(tools/backup/hot-backup.py)
1492 SVN_CONFIG_SCRIPT(tools/hook-scripts/commit-access-control.pl)
1493 SVN_CONFIG_SCRIPT(subversion/bindings/swig/perl/native/Makefile.PL)
1494 if test -e packages/solaris/pkginfo.in; then
1495   SVN_CONFIG_SCRIPT(packages/solaris/pkginfo)
1496 fi
1497 AC_SUBST(SVN_CONFIG_SCRIPT_FILES)
1498
1499 # Ensure that SWIG is checked after reconfiguration.
1500 rm -f .swig_checked
1501
1502 dnl Provide ${host} for use in compiled code (for svn --version)
1503 AC_DEFINE_UNQUOTED([SVN_BUILD_HOST], "${host}",
1504                    [Defined to the config.guess name of the build system])
1505
1506 dnl Provide ${target} for use in compiled code (for user-agent string)
1507 AC_DEFINE_UNQUOTED([SVN_BUILD_TARGET], "${target}",
1508                    [Defined to the config.guess name of the build target])
1509
1510 AC_OUTPUT
1511
1512 # ==== Print final messages to user ==========================================
1513
1514 dnl Configure is long - users tend to miss warnings printed during it.
1515 dnl Hence, print a warnings about what we did and didn't configure at the 
1516 dnl end, where people will actually see them.
1517
1518 if test "$svn_have_berkeley_db" = "no6" && test "$enable_bdb6" != "no"; then
1519   AC_MSG_WARN([We have configured without BDB filesystem support
1520
1521
1522 Berkeley DB 6 was found, but not used.  Please re-run configure (see
1523 ./config.nice) with the '--enable-bdb6' flag to use it,
1524 or explicitly specify '--disable-bdb6' or '--without-berkeley-db'
1525 to silence this warning.
1526
1527 Please note that some versions of Berkeley DB 6+ are under the GNU Affero
1528 General Public License, version 3:
1529 https://oss.oracle.com/pipermail/bdb/2013-June/000056.html
1530
1531 The AGPL-3.0 licence may impose special requirements for making available
1532 source code of server-side software.  The text of the licence is:
1533 https://www.gnu.org/licenses/agpl-3.0.html
1534 http://opensource.org/licenses/AGPL-3.0
1535
1536 The Berkeley DB backend to Subversion is deprecated; see
1537 http://subversion.apache.org/docs/release-notes/1.8#bdb-deprecated
1538
1539 The Subversion developers have not tested Subversion with Berkeley DB 6 for
1540 technical problems or bugs.
1541 ])
1542 fi