configure: Look for both Xapian 1.1 and 1.0 and allow user override.
authorCarl Worth <cworth@cworth.org>
Sun, 13 Dec 2009 23:17:35 +0000 (15:17 -0800)
committerCarl Worth <cworth@cworth.org>
Wed, 6 Jan 2010 18:31:09 +0000 (10:31 -0800)
The in-development version of Xapian provides a config program named
xapian-config-1.1 while the released version provides a program named
xapian-config instead. By default, we now try each of these in turn,
and we also allow the user to set a XAPIAN_CONFIG environment variable
to explicitly specify a particular program.

configure

index fa8e142bb786e0450992abe823c6a9ee26bffb9e..d240b6acf8bda20b033e62ef1beda4c3cebe38d3 100755 (executable)
--- a/configure
+++ b/configure
@@ -6,6 +6,7 @@ CC=${CC:-gcc}
 CXX=${CXX:-g++}
 CFLAGS=${CFLAGS:--O2}
 CXXFLAGS=${CXXFLAGS:-\$(CFLAGS)}
+XAPIAN_CONFIG=${XAPIAN_CONFIG:-xapian-config-1.1 xapian-config}
 
 # Set the defaults for values the user can specify with command-line
 # options.
@@ -37,6 +38,13 @@ First, some common variables can specified via environment variables:
 Each of these values can further be controlled by specifying them
 later on the "make" command line.
 
+Other environment variables can be used to control configure itself,
+(and for which there is no equivalent build-time control):
+
+       XAPIAN_CONFIG   The program to use to determine flags for
+                       compiling and linking against the Xapian
+                       library. [$XAPIAN_CONFIG]
+
 Additionally, various options can be specified on the configure
 command line.
 
@@ -97,14 +105,18 @@ else
 fi
 
 printf "Checking for Xapian development files... "
-if xapian-config --version > /dev/null 2>&1; then
-    printf "Yes.\n"
-    have_xapian=1
-    xapian_cxxflags=$(xapian-config --cxxflags)
-    xapian_ldflags=$(xapian-config --libs)
-else
+have_xapian=0
+for xapian_config in ${XAPIAN_CONFIG}; do
+    if ${xapian_config} --version > /dev/null 2>&1; then
+       printf "Yes.\n"
+       have_xapian=1
+       xapian_cxxflags=$(${xapian_config} --cxxflags)
+       xapian_ldflags=$(${xapian_config} --libs)
+       break
+    fi
+done
+if [ ${have_xapian} = "0" ]; then
     printf "No.\n"
-    have_xapian=0
     errors=$((errors + 1))
 fi