Commit 66d308edfd393bde6613a5d14897fdb06331ff0c

suzuki toshiya 2009-06-27T14:33:06

Filter --srcdir= option before invoking builds/unix/configure.

diff --git a/ChangeLog b/ChangeLog
index 0438693..6d33256 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,15 @@
 2009-06-27  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
 
+	Filter --srcdir= option before invoking builds/unix/configure.
+
+	* configure: When builds/unix/configure is invoked with --srcdir
+	option, the option should take "builds/unix" directory instead
+	of the top source directory.  Thus configure in the top directory
+	should modify --srcdir= option when builds/unix/configure is
+	invoked.
+
+2009-06-27  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
+
 	Improve configure.raw for cross-building on exe-suffixed systems.
 
 	* builds/unix/configure.raw: Fix a bug in sed script to extract
diff --git a/configure b/configure
index b59d35d..008aa3e 100644
--- a/configure
+++ b/configure
@@ -67,6 +67,17 @@ ft2_dir=`(dirname "$0") 2>/dev/null                         ||
 abs_curr_dir=`pwd`
 abs_ft2_dir=`cd "$ft2_dir" && pwd`
 
+# "--srcdir=" option can override abs_ft2_dir.
+
+if test $# -gt 0; then
+  for x in "$@"; do
+    case x"$x" in
+    x--srcdir=*)
+      abs_ft2_dir=`echo $x | sed 's/^--srcdir=//'` ;;
+    esac
+  done
+fi
+
 # build a dummy Makefile if we are not building in the source tree
 
 if test "$abs_curr_dir" != "$abs_ft2_dir"; then
@@ -96,7 +107,10 @@ CFG=
 case $# in
 0) ;;
 *) for x in "$@"; do
-     CFG="$CFG '$x'"
+     case x"$x" in
+     x--srcdir=* ) CFG="$CFG '$x'/builds/unix" ;;
+     *) CFG="$CFG '$x'" ;;
+     esac
    done ;;
 esac
 CFG=$CFG $GNUMAKE setup unix