Commit 75eeb32a2e55ffb3e4102ee56cd913a442d1ac9a

Werner Lemberg 2010-10-03T20:17:27

Avoid `configure' issues with symbolic links. Based on a patch from Alexander Stohr <Alexander.Stohr@gmx.de>. * configure: Compare directories using `ls -id'. Check existence of `reference' subdirectory before creating it.

diff --git a/ChangeLog b/ChangeLog
index 08c845c..0a7aa22 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2010-10-03  Werner Lemberg  <wl@gnu.org>
+
+	Avoid `configure' issues with symbolic links.
+	Based on a patch from Alexander Stohr <Alexander.Stohr@gmx.de>.
+
+	* configure: Compare directories using `ls -id'.
+	Check existence of `reference' subdirectory before creating it.
+
 2010-10-02  Werner Lemberg  <wl@gnu.org>
 
 	Fix Savannah bug #31088 (sort of).
diff --git a/configure b/configure
index d05fd29..06fdc8e 100755
--- a/configure
+++ b/configure
@@ -1,6 +1,6 @@
 #!/bin/sh
 #
-# Copyright 2002, 2003, 2004, 2005, 2006, 2008, 2009 by
+# Copyright 2002, 2003, 2004, 2005, 2006, 2008, 2009, 2010 by
 # David Turner, Robert Wilhelm, and Werner Lemberg.
 #
 # This file is part of the FreeType project, and may only be used, modified,
@@ -78,10 +78,15 @@ if test $# -gt 0; then
   done
 fi
 
-# build a dummy Makefile if we are not building in the source tree
+# build a dummy Makefile if we are not building in the source tree;
+# we use inodes to avoid issues with symbolic links
+inode_src=`ls -id $abs_ft2_dir | sed 's/ .*//'`
+inode_dst=`ls -id $abs_curr_dir | sed 's/ .*//'`
 
-if test "$abs_curr_dir" != "$abs_ft2_dir"; then
-  mkdir reference
+if test $inode_src -ne $inode_dst; then
+  if test ! -d reference; then
+    mkdir reference
+  fi
   if test ! -r $abs_curr_dir/modules.cfg; then
     echo "Copying \`modules.cfg'"
     cp $abs_ft2_dir/modules.cfg $abs_curr_dir