Commit 53a1edd42bc497119be9d9f94a355a6658c71e69

Werner Lemberg 2004-02-08T22:45:48

* builds/unix/configure.in: Call AC_SUBST for `enable_shared', `hardcode_libdir_flag_spec', and `wl'. * builds/unix/configure: Regenerated. * builds/unix/freetype-config.in: Make --prefix and --exec-prefix actually work. Report a proper --rpath (or -R) value for --libs argument if a shared library has been built. * docs/CHANGES: Updated.

diff --git a/ChangeLog b/ChangeLog
index 3df5e4f..7380725 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,16 @@
+2003-02-08  Werner Lemberg  <wl@gnu.org>
+
+	* builds/unix/configure.in: Call AC_SUBST for `enable_shared',
+	`hardcode_libdir_flag_spec', and `wl'.
+	* builds/unix/configure: Regenerated.
+
+	* builds/unix/freetype-config.in: Make --prefix and --exec-prefix
+	actually work.
+	Report a proper --rpath (or -R) value for --libs argument if a
+	shared library has been built.
+
+	* docs/CHANGES: Updated.
+
 2003-02-07  Keith Packard  <keithp@keithp.com>
 
 	* src/bdf/bdfdrivr.c (BDF_Face_Init, BDF_Set_Pixel_Size): Fix
diff --git a/builds/unix/configure b/builds/unix/configure
index 251f9e5..1b70857 100644
--- a/builds/unix/configure
+++ b/builds/unix/configure
@@ -463,7 +463,7 @@ ac_includes_default="\
 # include <unistd.h>
 #endif"
 
-ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS version_info ft_version build build_cpu build_vendor build_os host host_cpu host_vendor host_os target target_cpu target_vendor target_os CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT CPP XX_CFLAGS XX_ANSIFLAGS RMF RMDIR INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA EGREP FTSYS_SRC LIBZ SYSTEM_ZLIB LN_S ECHO AR ac_ct_AR RANLIB ac_ct_RANLIB STRIP ac_ct_STRIP CXX CXXFLAGS ac_ct_CXX CXXCPP F77 FFLAGS ac_ct_F77 LIBTOOL LIBOBJS LTLIBOBJS'
+ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS version_info ft_version build build_cpu build_vendor build_os host host_cpu host_vendor host_os target target_cpu target_vendor target_os CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT CPP XX_CFLAGS XX_ANSIFLAGS RMF RMDIR INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA EGREP FTSYS_SRC LIBZ SYSTEM_ZLIB LN_S ECHO AR ac_ct_AR RANLIB ac_ct_RANLIB STRIP ac_ct_STRIP CXX CXXFLAGS ac_ct_CXX CXXCPP F77 FFLAGS ac_ct_F77 LIBTOOL enable_shared hardcode_libdir_flag_spec wl LIBOBJS LTLIBOBJS'
 ac_subst_files=''
 
 # Initialize some variables set by options.
@@ -20351,6 +20351,10 @@ LIBTOOL='$(SHELL) $(top_builddir)/libtool'
 
 
 
+# urgh -- these are internal libtool variables...
+
+
+
 
 
 # configuration file -- stay in 8.3 limit
@@ -21034,6 +21038,9 @@ s,@F77@,$F77,;t t
 s,@FFLAGS@,$FFLAGS,;t t
 s,@ac_ct_F77@,$ac_ct_F77,;t t
 s,@LIBTOOL@,$LIBTOOL,;t t
+s,@enable_shared@,$enable_shared,;t t
+s,@hardcode_libdir_flag_spec@,$hardcode_libdir_flag_spec,;t t
+s,@wl@,$wl,;t t
 s,@LIBOBJS@,$LIBOBJS,;t t
 s,@LTLIBOBJS@,$LTLIBOBJS,;t t
 CEOF
diff --git a/builds/unix/configure.ac b/builds/unix/configure.ac
index 89ba574..5498e57 100644
--- a/builds/unix/configure.ac
+++ b/builds/unix/configure.ac
@@ -146,6 +146,10 @@ AC_SUBST([SYSTEM_ZLIB])
 
 
 AC_PROG_LIBTOOL
+# urgh -- these are internal libtool variables...
+AC_SUBST([enable_shared])
+AC_SUBST([hardcode_libdir_flag_spec])
+AC_SUBST([wl])
 
 
 # configuration file -- stay in 8.3 limit
diff --git a/builds/unix/freetype-config.in b/builds/unix/freetype-config.in
index 5091723..331e2a8 100644
--- a/builds/unix/freetype-config.in
+++ b/builds/unix/freetype-config.in
@@ -2,6 +2,12 @@
 
 prefix=@prefix@
 exec_prefix=@exec_prefix@
+exec_prefix_set=no
+includedir=@includedir@
+libdir=@libdir@
+enable_shared=@enable_shared@
+wl=@wl@
+hardcode_libdir_flag_spec='@hardcode_libdir_flag_spec@'
 
 usage()
 {
@@ -24,8 +30,12 @@ fi
 
 while test $# -gt 0 ; do
   case "$1" in
-  -*=*) optarg=`echo "$1" | sed 's/[-_a-zA-Z0-9]*=//'` ;;
-  *) optarg= ;;
+  -*=*)
+    optarg=`echo "$1" | sed 's/[-_a-zA-Z0-9]*=//'`
+    ;;
+  *)
+    optarg=
+    ;;
   esac
 
   case $1 in
@@ -65,40 +75,53 @@ while test $# -gt 0 ; do
 done
 
 if test "$local_prefix" = "yes" ; then
-    if test "$exec_prefix_set" != "yes" ; then
-      exec_prefix=$prefix
-    fi
+  if test "$exec_prefix_set" != "yes" ; then
+    exec_prefix=$prefix
+  fi
 fi
 
 if test "$echo_prefix" = "yes" ; then
- echo $prefix
+  echo $prefix
 fi
 
 if test "$echo_exec_prefix" = "yes" ; then
- echo $exec_prefix
+  echo $exec_prefix
+fi
+
+if test "$exec_prefix_set" = "yes" ; then
+  libdir=$exec_prefix/lib
+else
+  if test "$local_prefix" = "yes" ; then
+    includedir=$prefix/include
+    libdir=$prefix/lib
+  fi
 fi
 
 if test "$echo_cflags" = "yes" ; then
- cflags="-I@includedir@/freetype2"
- if test "@includedir@" != "/usr/include" ; then
-  echo $cflags -I@includedir@
- else
-  echo $cflags
- fi
+  cflags="-I$includedir/freetype2"
+  if test "$includedir" != "/usr/include" ; then
+    echo $cflags -I$includedir
+  else
+    echo $cflags
+  fi
 fi
 
 if test "$echo_libs" = "yes" ; then
- libs="-lfreetype @LIBZ@"
- if test "@libdir@" != "/usr/lib" ; then
-  echo -L@libdir@ $libs
- else
-  echo $libs
- fi
+  rpath=
+  if test "$enable_shared" = "yes" ; then
+    eval "rpath=\"$hardcode_libdir_flag_spec\""
+  fi
+  libs="-lfreetype @LIBZ@"
+  if test "$libdir" != "/usr/lib" ; then
+    echo -L$libdir $rpath $libs
+  else
+    echo $libs
+  fi
 fi
 
 if test "$echo_libtool" = "yes" ; then
- convlib="libfreetype.la"
- echo @libdir@/$convlib
+  convlib="libfreetype.la"
+  echo $libdir/$convlib
 fi
 
 # EOF
diff --git a/docs/CHANGES b/docs/CHANGES
index a1e6c70..3369d7e 100644
--- a/docs/CHANGES
+++ b/docs/CHANGES
@@ -34,6 +34,10 @@ LATEST CHANGES BETWEEN 2.1.8 and 2.1.7
 
     - Metrics for BDF and PCF bitmap font formats have been fixed.
 
+    - The   `freetype-config'   script   now  handles   --prefix   and
+      --exec-prefix correctly; it also  returns the proper --rpath (or
+      -R) value if FreeType has been built as a shared library.
+
 
   II. IMPORTANT CHANGES