aboutsummaryrefslogtreecommitdiffstats
path: root/recipes/gettext/gettext-0.14.1/linklib_from_0.17.patch
diff options
context:
space:
mode:
Diffstat (limited to 'recipes/gettext/gettext-0.14.1/linklib_from_0.17.patch')
-rw-r--r--recipes/gettext/gettext-0.14.1/linklib_from_0.17.patch1131
1 files changed, 1131 insertions, 0 deletions
diff --git a/recipes/gettext/gettext-0.14.1/linklib_from_0.17.patch b/recipes/gettext/gettext-0.14.1/linklib_from_0.17.patch
new file mode 100644
index 0000000000..b979b5db06
--- /dev/null
+++ b/recipes/gettext/gettext-0.14.1/linklib_from_0.17.patch
@@ -0,0 +1,1131 @@
+Index: gettext-0.14.1/autoconf-lib-link/m4/lib-ld.m4
+===================================================================
+--- gettext-0.14.1.orig/autoconf-lib-link/m4/lib-ld.m4 2008-04-15 14:32:45.000000000 +0100
++++ gettext-0.14.1/autoconf-lib-link/m4/lib-ld.m4 2008-04-15 14:32:47.000000000 +0100
+@@ -1,10 +1,8 @@
+ # lib-ld.m4 serial 3 (gettext-0.13)
+ dnl Copyright (C) 1996-2003 Free Software Foundation, Inc.
+-dnl This file is free software, distributed under the terms of the GNU
+-dnl General Public License. As a special exception to the GNU General
+-dnl Public License, this file may be distributed as part of a program
+-dnl that contains a configuration script generated by Autoconf, under
+-dnl the same distribution terms as the rest of that program.
++dnl This file is free software; the Free Software Foundation
++dnl gives unlimited permission to copy and/or distribute it,
++dnl with or without modifications, as long as this notice is preserved.
+
+ dnl Subroutines of libtool.m4,
+ dnl with replacements s/AC_/AC_LIB/ and s/lt_cv/acl_cv/ to avoid collision
+Index: gettext-0.14.1/autoconf-lib-link/m4/lib-link.m4
+===================================================================
+--- gettext-0.14.1.orig/autoconf-lib-link/m4/lib-link.m4 2008-04-15 14:32:45.000000000 +0100
++++ gettext-0.14.1/autoconf-lib-link/m4/lib-link.m4 2008-04-15 14:32:47.000000000 +0100
+@@ -1,17 +1,19 @@
+-# lib-link.m4 serial 4 (gettext-0.12)
+-dnl Copyright (C) 2001-2003 Free Software Foundation, Inc.
+-dnl This file is free software, distributed under the terms of the GNU
+-dnl General Public License. As a special exception to the GNU General
+-dnl Public License, this file may be distributed as part of a program
+-dnl that contains a configuration script generated by Autoconf, under
+-dnl the same distribution terms as the rest of that program.
++# lib-link.m4 serial 13 (gettext-0.17)
++dnl Copyright (C) 2001-2007 Free Software Foundation, Inc.
++dnl This file is free software; the Free Software Foundation
++dnl gives unlimited permission to copy and/or distribute it,
++dnl with or without modifications, as long as this notice is preserved.
+
+ dnl From Bruno Haible.
+
++AC_PREREQ(2.54)
++
+ dnl AC_LIB_LINKFLAGS(name [, dependencies]) searches for libname and
+ dnl the libraries corresponding to explicit and implicit dependencies.
+ dnl Sets and AC_SUBSTs the LIB${NAME} and LTLIB${NAME} variables and
+ dnl augments the CPPFLAGS variable.
++dnl Sets and AC_SUBSTs the LIB${NAME}_PREFIX variable to nonempty if libname
++dnl was found in ${LIB${NAME}_PREFIX}/$acl_libdirstem.
+ AC_DEFUN([AC_LIB_LINKFLAGS],
+ [
+ AC_REQUIRE([AC_LIB_PREPARE_PREFIX])
+@@ -24,13 +26,16 @@
+ ac_cv_lib[]Name[]_libs="$LIB[]NAME"
+ ac_cv_lib[]Name[]_ltlibs="$LTLIB[]NAME"
+ ac_cv_lib[]Name[]_cppflags="$INC[]NAME"
++ ac_cv_lib[]Name[]_prefix="$LIB[]NAME[]_PREFIX"
+ ])
+ LIB[]NAME="$ac_cv_lib[]Name[]_libs"
+ LTLIB[]NAME="$ac_cv_lib[]Name[]_ltlibs"
+ INC[]NAME="$ac_cv_lib[]Name[]_cppflags"
++ LIB[]NAME[]_PREFIX="$ac_cv_lib[]Name[]_prefix"
+ AC_LIB_APPENDTOVAR([CPPFLAGS], [$INC]NAME)
+ AC_SUBST([LIB]NAME)
+ AC_SUBST([LTLIB]NAME)
++ AC_SUBST([LIB]NAME[_PREFIX])
+ dnl Also set HAVE_LIB[]NAME so that AC_LIB_HAVE_LINKFLAGS can reuse the
+ dnl results of this search when this library appears as a dependency.
+ HAVE_LIB[]NAME=yes
+@@ -46,6 +51,8 @@
+ dnl LTLIB${NAME} variables and augments the CPPFLAGS variable, and
+ dnl #defines HAVE_LIB${NAME} to 1. Otherwise, it sets and AC_SUBSTs
+ dnl HAVE_LIB${NAME}=no and LIB${NAME} and LTLIB${NAME} to empty.
++dnl Sets and AC_SUBSTs the LIB${NAME}_PREFIX variable to nonempty if libname
++dnl was found in ${LIB${NAME}_PREFIX}/$acl_libdirstem.
+ AC_DEFUN([AC_LIB_HAVE_LINKFLAGS],
+ [
+ AC_REQUIRE([AC_LIB_PREPARE_PREFIX])
+@@ -82,19 +89,27 @@
+ CPPFLAGS="$ac_save_CPPFLAGS"
+ LIB[]NAME=
+ LTLIB[]NAME=
++ LIB[]NAME[]_PREFIX=
+ fi
+ AC_SUBST([HAVE_LIB]NAME)
+ AC_SUBST([LIB]NAME)
+ AC_SUBST([LTLIB]NAME)
++ AC_SUBST([LIB]NAME[_PREFIX])
+ undefine([Name])
+ undefine([NAME])
+ ])
+
+ dnl Determine the platform dependent parameters needed to use rpath:
+-dnl libext, shlibext, hardcode_libdir_flag_spec, hardcode_libdir_separator,
+-dnl hardcode_direct, hardcode_minus_L.
++dnl acl_libext,
++dnl acl_shlibext,
++dnl acl_hardcode_libdir_flag_spec,
++dnl acl_hardcode_libdir_separator,
++dnl acl_hardcode_direct,
++dnl acl_hardcode_minus_L.
+ AC_DEFUN([AC_LIB_RPATH],
+ [
++ dnl Tell automake >= 1.10 to complain if config.rpath is missing.
++ m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([config.rpath])])
+ AC_REQUIRE([AC_PROG_CC]) dnl we use $CC, $GCC, $LDFLAGS
+ AC_REQUIRE([AC_LIB_PROG_LD]) dnl we use $LD, $with_gnu_ld
+ AC_REQUIRE([AC_CANONICAL_HOST]) dnl we use $host
+@@ -107,12 +122,14 @@
+ acl_cv_rpath=done
+ ])
+ wl="$acl_cv_wl"
+- libext="$acl_cv_libext"
+- shlibext="$acl_cv_shlibext"
+- hardcode_libdir_flag_spec="$acl_cv_hardcode_libdir_flag_spec"
+- hardcode_libdir_separator="$acl_cv_hardcode_libdir_separator"
+- hardcode_direct="$acl_cv_hardcode_direct"
+- hardcode_minus_L="$acl_cv_hardcode_minus_L"
++ acl_libext="$acl_cv_libext"
++ acl_shlibext="$acl_cv_shlibext"
++ acl_libname_spec="$acl_cv_libname_spec"
++ acl_library_names_spec="$acl_cv_library_names_spec"
++ acl_hardcode_libdir_flag_spec="$acl_cv_hardcode_libdir_flag_spec"
++ acl_hardcode_libdir_separator="$acl_cv_hardcode_libdir_separator"
++ acl_hardcode_direct="$acl_cv_hardcode_direct"
++ acl_hardcode_minus_L="$acl_cv_hardcode_minus_L"
+ dnl Determine whether the user wants rpath handling at all.
+ AC_ARG_ENABLE(rpath,
+ [ --disable-rpath do not hardcode runtime library paths],
+@@ -122,19 +139,24 @@
+ dnl AC_LIB_LINKFLAGS_BODY(name [, dependencies]) searches for libname and
+ dnl the libraries corresponding to explicit and implicit dependencies.
+ dnl Sets the LIB${NAME}, LTLIB${NAME} and INC${NAME} variables.
++dnl Also, sets the LIB${NAME}_PREFIX variable to nonempty if libname was found
++dnl in ${LIB${NAME}_PREFIX}/$acl_libdirstem.
+ AC_DEFUN([AC_LIB_LINKFLAGS_BODY],
+ [
++ AC_REQUIRE([AC_LIB_PREPARE_MULTILIB])
+ define([NAME],[translit([$1],[abcdefghijklmnopqrstuvwxyz./-],
+ [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])])
++ dnl Autoconf >= 2.61 supports dots in --with options.
++ define([N_A_M_E],[m4_if(m4_version_compare(m4_defn([m4_PACKAGE_VERSION]),[2.61]),[-1],[translit([$1],[.],[_])],[$1])])
+ dnl By default, look in $includedir and $libdir.
+ use_additional=yes
+ AC_LIB_WITH_FINAL_PREFIX([
+ eval additional_includedir=\"$includedir\"
+ eval additional_libdir=\"$libdir\"
+ ])
+- AC_LIB_ARG_WITH([lib$1-prefix],
+-[ --with-lib$1-prefix[=DIR] search for lib$1 in DIR/include and DIR/lib
+- --without-lib$1-prefix don't search for lib$1 in includedir and libdir],
++ AC_LIB_ARG_WITH([lib]N_A_M_E[-prefix],
++[ --with-lib]N_A_M_E[-prefix[=DIR] search for lib$1 in DIR/include and DIR/lib
++ --without-lib]N_A_M_E[-prefix don't search for lib$1 in includedir and libdir],
+ [
+ if test "X$withval" = "Xno"; then
+ use_additional=no
+@@ -146,7 +168,7 @@
+ ])
+ else
+ additional_includedir="$withval/include"
+- additional_libdir="$withval/lib"
++ additional_libdir="$withval/$acl_libdirstem"
+ fi
+ fi
+ ])
+@@ -155,6 +177,7 @@
+ LIB[]NAME=
+ LTLIB[]NAME=
+ INC[]NAME=
++ LIB[]NAME[]_PREFIX=
+ rpathdirs=
+ ltrpathdirs=
+ names_already_handled=
+@@ -194,22 +217,55 @@
+ found_la=
+ found_so=
+ found_a=
++ eval libname=\"$acl_libname_spec\" # typically: libname=lib$name
++ if test -n "$acl_shlibext"; then
++ shrext=".$acl_shlibext" # typically: shrext=.so
++ else
++ shrext=
++ fi
+ if test $use_additional = yes; then
+- if test -n "$shlibext" && test -f "$additional_libdir/lib$name.$shlibext"; then
+- found_dir="$additional_libdir"
+- found_so="$additional_libdir/lib$name.$shlibext"
+- if test -f "$additional_libdir/lib$name.la"; then
+- found_la="$additional_libdir/lib$name.la"
+- fi
+- else
+- if test -f "$additional_libdir/lib$name.$libext"; then
+- found_dir="$additional_libdir"
+- found_a="$additional_libdir/lib$name.$libext"
+- if test -f "$additional_libdir/lib$name.la"; then
+- found_la="$additional_libdir/lib$name.la"
++ dir="$additional_libdir"
++ dnl The same code as in the loop below:
++ dnl First look for a shared library.
++ if test -n "$acl_shlibext"; then
++ if test -f "$dir/$libname$shrext"; then
++ found_dir="$dir"
++ found_so="$dir/$libname$shrext"
++ else
++ if test "$acl_library_names_spec" = '$libname$shrext$versuffix'; then
++ ver=`(cd "$dir" && \
++ for f in "$libname$shrext".*; do echo "$f"; done \
++ | sed -e "s,^$libname$shrext\\\\.,," \
++ | sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \
++ | sed 1q ) 2>/dev/null`
++ if test -n "$ver" && test -f "$dir/$libname$shrext.$ver"; then
++ found_dir="$dir"
++ found_so="$dir/$libname$shrext.$ver"
++ fi
++ else
++ eval library_names=\"$acl_library_names_spec\"
++ for f in $library_names; do
++ if test -f "$dir/$f"; then
++ found_dir="$dir"
++ found_so="$dir/$f"
++ break
++ fi
++ done
+ fi
+ fi
+ fi
++ dnl Then look for a static library.
++ if test "X$found_dir" = "X"; then
++ if test -f "$dir/$libname.$acl_libext"; then
++ found_dir="$dir"
++ found_a="$dir/$libname.$acl_libext"
++ fi
++ fi
++ if test "X$found_dir" != "X"; then
++ if test -f "$dir/$libname.la"; then
++ found_la="$dir/$libname.la"
++ fi
++ fi
+ fi
+ if test "X$found_dir" = "X"; then
+ for x in $LDFLAGS $LTLIB[]NAME; do
+@@ -217,21 +273,46 @@
+ case "$x" in
+ -L*)
+ dir=`echo "X$x" | sed -e 's/^X-L//'`
+- if test -n "$shlibext" && test -f "$dir/lib$name.$shlibext"; then
+- found_dir="$dir"
+- found_so="$dir/lib$name.$shlibext"
+- if test -f "$dir/lib$name.la"; then
+- found_la="$dir/lib$name.la"
+- fi
+- else
+- if test -f "$dir/lib$name.$libext"; then
++ dnl First look for a shared library.
++ if test -n "$acl_shlibext"; then
++ if test -f "$dir/$libname$shrext"; then
+ found_dir="$dir"
+- found_a="$dir/lib$name.$libext"
+- if test -f "$dir/lib$name.la"; then
+- found_la="$dir/lib$name.la"
++ found_so="$dir/$libname$shrext"
++ else
++ if test "$acl_library_names_spec" = '$libname$shrext$versuffix'; then
++ ver=`(cd "$dir" && \
++ for f in "$libname$shrext".*; do echo "$f"; done \
++ | sed -e "s,^$libname$shrext\\\\.,," \
++ | sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \
++ | sed 1q ) 2>/dev/null`
++ if test -n "$ver" && test -f "$dir/$libname$shrext.$ver"; then
++ found_dir="$dir"
++ found_so="$dir/$libname$shrext.$ver"
++ fi
++ else
++ eval library_names=\"$acl_library_names_spec\"
++ for f in $library_names; do
++ if test -f "$dir/$f"; then
++ found_dir="$dir"
++ found_so="$dir/$f"
++ break
++ fi
++ done
+ fi
+ fi
+ fi
++ dnl Then look for a static library.
++ if test "X$found_dir" = "X"; then
++ if test -f "$dir/$libname.$acl_libext"; then
++ found_dir="$dir"
++ found_a="$dir/$libname.$acl_libext"
++ fi
++ fi
++ if test "X$found_dir" != "X"; then
++ if test -f "$dir/$libname.la"; then
++ found_la="$dir/$libname.la"
++ fi
++ fi
+ ;;
+ esac
+ if test "X$found_dir" != "X"; then
+@@ -246,7 +327,7 @@
+ dnl Linking with a shared library. We attempt to hardcode its
+ dnl directory into the executable's runpath, unless it's the
+ dnl standard /usr/lib.
+- if test "$enable_rpath" = no || test "X$found_dir" = "X/usr/lib"; then
++ if test "$enable_rpath" = no || test "X$found_dir" = "X/usr/$acl_libdirstem"; then
+ dnl No hardcoding is needed.
+ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so"
+ else
+@@ -265,12 +346,12 @@
+ ltrpathdirs="$ltrpathdirs $found_dir"
+ fi
+ dnl The hardcoding into $LIBNAME is system dependent.
+- if test "$hardcode_direct" = yes; then
++ if test "$acl_hardcode_direct" = yes; then
+ dnl Using DIR/libNAME.so during linking hardcodes DIR into the
+ dnl resulting binary.
+ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so"
+ else
+- if test -n "$hardcode_libdir_flag_spec" && test "$hardcode_minus_L" = no; then
++ if test -n "$acl_hardcode_libdir_flag_spec" && test "$acl_hardcode_minus_L" = no; then
+ dnl Use an explicit option to hardcode DIR into the resulting
+ dnl binary.
+ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so"
+@@ -301,13 +382,13 @@
+ if test -z "$haveit"; then
+ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-L$found_dir"
+ fi
+- if test "$hardcode_minus_L" != no; then
++ if test "$acl_hardcode_minus_L" != no; then
+ dnl FIXME: Not sure whether we should use
+ dnl "-L$found_dir -l$name" or "-L$found_dir $found_so"
+ dnl here.
+ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so"
+ else
+- dnl We cannot use $hardcode_runpath_var and LD_RUN_PATH
++ dnl We cannot use $acl_hardcode_runpath_var and LD_RUN_PATH
+ dnl here, because this doesn't fit in flags passed to the
+ dnl compiler. So give up. No hardcoding. This affects only
+ dnl very old systems.
+@@ -332,8 +413,9 @@
+ dnl Assume the include files are nearby.
+ additional_includedir=
+ case "$found_dir" in
+- */lib | */lib/)
+- basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e 's,/lib/*$,,'`
++ */$acl_libdirstem | */$acl_libdirstem/)
++ basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e "s,/$acl_libdirstem/"'*$,,'`
++ LIB[]NAME[]_PREFIX="$basedir"
+ additional_includedir="$basedir/include"
+ ;;
+ esac
+@@ -350,7 +432,7 @@
+ if test "X$additional_includedir" = "X/usr/local/include"; then
+ if test -n "$GCC"; then
+ case $host_os in
+- linux*) haveit=yes;;
++ linux* | gnu* | k*bsd*-gnu) haveit=yes;;
+ esac
+ fi
+ fi
+@@ -394,12 +476,12 @@
+ dnl 3. if it's already present in $LDFLAGS or the already
+ dnl constructed $LIBNAME,
+ dnl 4. if it doesn't exist as a directory.
+- if test "X$additional_libdir" != "X/usr/lib"; then
++ if test "X$additional_libdir" != "X/usr/$acl_libdirstem"; then
+ haveit=
+- if test "X$additional_libdir" = "X/usr/local/lib"; then
++ if test "X$additional_libdir" = "X/usr/local/$acl_libdirstem"; then
+ if test -n "$GCC"; then
+ case $host_os in
+- linux*) haveit=yes;;
++ linux* | gnu* | k*bsd*-gnu) haveit=yes;;
+ esac
+ fi
+ fi
+@@ -495,18 +577,18 @@
+ done
+ done
+ if test "X$rpathdirs" != "X"; then
+- if test -n "$hardcode_libdir_separator"; then
++ if test -n "$acl_hardcode_libdir_separator"; then
+ dnl Weird platform: only the last -rpath option counts, the user must
+ dnl pass all path elements in one option. We can arrange that for a
+ dnl single library, but not when more than one $LIBNAMEs are used.
+ alldirs=
+ for found_dir in $rpathdirs; do
+- alldirs="${alldirs}${alldirs:+$hardcode_libdir_separator}$found_dir"
++ alldirs="${alldirs}${alldirs:+$acl_hardcode_libdir_separator}$found_dir"
+ done
+- dnl Note: hardcode_libdir_flag_spec uses $libdir and $wl.
++ dnl Note: acl_hardcode_libdir_flag_spec uses $libdir and $wl.
+ acl_save_libdir="$libdir"
+ libdir="$alldirs"
+- eval flag=\"$hardcode_libdir_flag_spec\"
++ eval flag=\"$acl_hardcode_libdir_flag_spec\"
+ libdir="$acl_save_libdir"
+ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$flag"
+ else
+@@ -514,7 +596,7 @@
+ for found_dir in $rpathdirs; do
+ acl_save_libdir="$libdir"
+ libdir="$found_dir"
+- eval flag=\"$hardcode_libdir_flag_spec\"
++ eval flag=\"$acl_hardcode_libdir_flag_spec\"
+ libdir="$acl_save_libdir"
+ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$flag"
+ done
+@@ -549,3 +631,79 @@
+ fi
+ done
+ ])
++
++dnl For those cases where a variable contains several -L and -l options
++dnl referring to unknown libraries and directories, this macro determines the
++dnl necessary additional linker options for the runtime path.
++dnl AC_LIB_LINKFLAGS_FROM_LIBS([LDADDVAR], [LIBSVALUE], [USE-LIBTOOL])
++dnl sets LDADDVAR to linker options needed together with LIBSVALUE.
++dnl If USE-LIBTOOL evaluates to non-empty, linking with libtool is assumed,
++dnl otherwise linking without libtool is assumed.
++AC_DEFUN([AC_LIB_LINKFLAGS_FROM_LIBS],
++[
++ AC_REQUIRE([AC_LIB_RPATH])
++ AC_REQUIRE([AC_LIB_PREPARE_MULTILIB])
++ $1=
++ if test "$enable_rpath" != no; then
++ if test -n "$acl_hardcode_libdir_flag_spec" && test "$acl_hardcode_minus_L" = no; then
++ dnl Use an explicit option to hardcode directories into the resulting
++ dnl binary.
++ rpathdirs=
++ next=
++ for opt in $2; do
++ if test -n "$next"; then
++ dir="$next"
++ dnl No need to hardcode the standard /usr/lib.
++ if test "X$dir" != "X/usr/$acl_libdirstem"; then
++ rpathdirs="$rpathdirs $dir"
++ fi
++ next=
++ else
++ case $opt in
++ -L) next=yes ;;
++ -L*) dir=`echo "X$opt" | sed -e 's,^X-L,,'`
++ dnl No need to hardcode the standard /usr/lib.
++ if test "X$dir" != "X/usr/$acl_libdirstem"; then
++ rpathdirs="$rpathdirs $dir"
++ fi
++ next= ;;
++ *) next= ;;
++ esac
++ fi
++ done
++ if test "X$rpathdirs" != "X"; then
++ if test -n ""$3""; then
++ dnl libtool is used for linking. Use -R options.
++ for dir in $rpathdirs; do
++ $1="${$1}${$1:+ }-R$dir"
++ done
++ else
++ dnl The linker is used for linking directly.
++ if test -n "$acl_hardcode_libdir_separator"; then
++ dnl Weird platform: only the last -rpath option counts, the user
++ dnl must pass all path elements in one option.
++ alldirs=
++ for dir in $rpathdirs; do
++ alldirs="${alldirs}${alldirs:+$acl_hardcode_libdir_separator}$dir"
++ done
++ acl_save_libdir="$libdir"
++ libdir="$alldirs"
++ eval flag=\"$acl_hardcode_libdir_flag_spec\"
++ libdir="$acl_save_libdir"
++ $1="$flag"
++ else
++ dnl The -rpath options are cumulative.
++ for dir in $rpathdirs; do
++ acl_save_libdir="$libdir"
++ libdir="$dir"
++ eval flag=\"$acl_hardcode_libdir_flag_spec\"
++ libdir="$acl_save_libdir"
++ $1="${$1}${$1:+ }$flag"
++ done
++ fi
++ fi
++ fi
++ fi
++ fi
++ AC_SUBST([$1])
++])
+Index: gettext-0.14.1/autoconf-lib-link/m4/lib-prefix.m4
+===================================================================
+--- gettext-0.14.1.orig/autoconf-lib-link/m4/lib-prefix.m4 2008-04-15 14:32:45.000000000 +0100
++++ gettext-0.14.1/autoconf-lib-link/m4/lib-prefix.m4 2008-04-15 14:32:47.000000000 +0100
+@@ -1,10 +1,8 @@
+-# lib-prefix.m4 serial 3 (gettext-0.13)
+-dnl Copyright (C) 2001-2003 Free Software Foundation, Inc.
+-dnl This file is free software, distributed under the terms of the GNU
+-dnl General Public License. As a special exception to the GNU General
+-dnl Public License, this file may be distributed as part of a program
+-dnl that contains a configuration script generated by Autoconf, under
+-dnl the same distribution terms as the rest of that program.
++# lib-prefix.m4 serial 5 (gettext-0.15)
++dnl Copyright (C) 2001-2005 Free Software Foundation, Inc.
++dnl This file is free software; the Free Software Foundation
++dnl gives unlimited permission to copy and/or distribute it,
++dnl with or without modifications, as long as this notice is preserved.
+
+ dnl From Bruno Haible.
+
+@@ -26,6 +24,7 @@
+ AC_BEFORE([$0], [AC_LIB_LINKFLAGS])
+ AC_REQUIRE([AC_PROG_CC])
+ AC_REQUIRE([AC_CANONICAL_HOST])
++ AC_REQUIRE([AC_LIB_PREPARE_MULTILIB])
+ AC_REQUIRE([AC_LIB_PREPARE_PREFIX])
+ dnl By default, look in $includedir and $libdir.
+ use_additional=yes
+@@ -47,7 +46,7 @@
+ ])
+ else
+ additional_includedir="$withval/include"
+- additional_libdir="$withval/lib"
++ additional_libdir="$withval/$acl_libdirstem"
+ fi
+ fi
+ ])
+@@ -71,7 +70,7 @@
+ if test "X$additional_includedir" = "X/usr/local/include"; then
+ if test -n "$GCC"; then
+ case $host_os in
+- linux*) haveit=yes;;
++ linux* | gnu* | k*bsd*-gnu) haveit=yes;;
+ esac
+ fi
+ fi
+@@ -89,7 +88,7 @@
+ dnl 2. if it's already present in $LDFLAGS,
+ dnl 3. if it's /usr/local/lib and we are using GCC on Linux,
+ dnl 4. if it doesn't exist as a directory.
+- if test "X$additional_libdir" != "X/usr/lib"; then
++ if test "X$additional_libdir" != "X/usr/$acl_libdirstem"; then
+ haveit=
+ for x in $LDFLAGS; do
+ AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
+@@ -99,7 +98,7 @@
+ fi
+ done
+ if test -z "$haveit"; then
+- if test "X$additional_libdir" = "X/usr/local/lib"; then
++ if test "X$additional_libdir" = "X/usr/local/$acl_libdirstem"; then
+ if test -n "$GCC"; then
+ case $host_os in
+ linux*) haveit=yes;;
+@@ -153,3 +152,34 @@
+ exec_prefix="$acl_save_exec_prefix"
+ prefix="$acl_save_prefix"
+ ])
++
++dnl AC_LIB_PREPARE_MULTILIB creates a variable acl_libdirstem, containing
++dnl the basename of the libdir, either "lib" or "lib64".
++AC_DEFUN([AC_LIB_PREPARE_MULTILIB],
++[
++ dnl There is no formal standard regarding lib and lib64. The current
++ dnl practice is that on a system supporting 32-bit and 64-bit instruction
++ dnl sets or ABIs, 64-bit libraries go under $prefix/lib64 and 32-bit
++ dnl libraries go under $prefix/lib. We determine the compiler's default
++ dnl mode by looking at the compiler's library search path. If at least
++ dnl of its elements ends in /lib64 or points to a directory whose absolute
++ dnl pathname ends in /lib64, we assume a 64-bit ABI. Otherwise we use the
++ dnl default, namely "lib".
++ acl_libdirstem=lib
++ searchpath=`(LC_ALL=C $CC -print-search-dirs) 2>/dev/null | sed -n -e 's,^libraries: ,,p' | sed -e 's,^=,,'`
++ if test -n "$searchpath"; then
++ acl_save_IFS="${IFS= }"; IFS=":"
++ for searchdir in $searchpath; do
++ if test -d "$searchdir"; then
++ case "$searchdir" in
++ */lib64/ | */lib64 ) acl_libdirstem=lib64 ;;
++ *) searchdir=`cd "$searchdir" && pwd`
++ case "$searchdir" in
++ */lib64 ) acl_libdirstem=lib64 ;;
++ esac ;;
++ esac
++ fi
++ done
++ IFS="$acl_save_IFS"
++ fi
++])
+Index: gettext-0.14.1/autoconf-lib-link/config.rpath
+===================================================================
+--- gettext-0.14.1.orig/autoconf-lib-link/config.rpath 2008-04-15 14:32:51.000000000 +0100
++++ gettext-0.14.1/autoconf-lib-link/config.rpath 2007-06-28 00:01:49.000000000 +0100
+@@ -2,28 +2,13 @@
+ # Output a system dependent set of variables, describing how to set the
+ # run time search path of shared libraries in an executable.
+ #
+-# Copyright 1996-2003 Free Software Foundation, Inc.
++# Copyright 1996-2007 Free Software Foundation, Inc.
+ # Taken from GNU libtool, 2001
+ # Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
+ #
+-# This program is free software; you can redistribute it and/or modify
+-# it under the terms of the GNU General Public License as published by
+-# the Free Software Foundation; either version 2 of the License, or
+-# (at your option) any later version.
+-#
+-# This program is distributed in the hope that it will be useful, but
+-# WITHOUT ANY WARRANTY; without even the implied warranty of
+-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+-# General Public License for more details.
+-#
+-# You should have received a copy of the GNU General Public License
+-# along with this program; if not, write to the Free Software
+-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+-#
+-# As a special exception to the GNU General Public License, if you
+-# distribute this file as part of a program that contains a
+-# configuration script generated by Autoconf, you may include it under
+-# the same distribution terms that you use for the rest of that program.
++# This file is free software; the Free Software Foundation gives
++# unlimited permission to copy and/or distribute it, with or without
++# modifications, as long as this notice is preserved.
+ #
+ # The first argument passed to this file is the canonical host specification,
+ # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
+@@ -40,7 +25,7 @@
+ # known workaround is to choose shorter directory names for the build
+ # directory and/or the installation directory.
+
+-# All known linkers require a `.a' archive for static linking (except M$VC,
++# All known linkers require a `.a' archive for static linking (except MSVC,
+ # which needs '.lib').
+ libext=a
+ shrext=.so
+@@ -50,6 +35,18 @@
+ host_vendor=`echo "$host" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
+ host_os=`echo "$host" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
+
++# Code taken from libtool.m4's _LT_CC_BASENAME.
++
++for cc_temp in $CC""; do
++ case $cc_temp in
++ compile | *[\\/]compile | ccache | *[\\/]ccache ) ;;
++ distcc | *[\\/]distcc | purify | *[\\/]purify ) ;;
++ \-*) ;;
++ *) break;;
++ esac
++done
++cc_basename=`echo "$cc_temp" | sed -e 's%^.*/%%'`
++
+ # Code taken from libtool.m4's AC_LIBTOOL_PROG_COMPILER_PIC.
+
+ wl=
+@@ -60,7 +57,14 @@
+ aix*)
+ wl='-Wl,'
+ ;;
+- mingw* | pw32* | os2*)
++ darwin*)
++ case $cc_basename in
++ xlc*)
++ wl='-Wl,'
++ ;;
++ esac
++ ;;
++ mingw* | cygwin* | pw32* | os2*)
+ ;;
+ hpux9* | hpux10* | hpux11*)
+ wl='-Wl,'
+@@ -70,20 +74,33 @@
+ ;;
+ newsos6)
+ ;;
+- linux*)
+- case $CC in
+- icc|ecc)
++ linux* | k*bsd*-gnu)
++ case $cc_basename in
++ icc* | ecc*)
++ wl='-Wl,'
++ ;;
++ pgcc | pgf77 | pgf90)
+ wl='-Wl,'
+ ;;
+- ccc)
++ ccc*)
+ wl='-Wl,'
+ ;;
++ como)
++ wl='-lopt='
++ ;;
++ *)
++ case `$CC -V 2>&1 | sed 5q` in
++ *Sun\ C*)
++ wl='-Wl,'
++ ;;
++ esac
++ ;;
+ esac
+ ;;
+ osf3* | osf4* | osf5*)
+ wl='-Wl,'
+ ;;
+- sco3.2v5*)
++ rdos*)
+ ;;
+ solaris*)
+ wl='-Wl,'
+@@ -91,11 +108,17 @@
+ sunos4*)
+ wl='-Qoption ld '
+ ;;
+- sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
++ sysv4 | sysv4.2uw2* | sysv4.3*)
+ wl='-Wl,'
+ ;;
+ sysv4*MP*)
+ ;;
++ sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
++ wl='-Wl,'
++ ;;
++ unicos*)
++ wl='-Wl,'
++ ;;
+ uts4*)
+ ;;
+ esac
+@@ -117,6 +140,10 @@
+ with_gnu_ld=no
+ fi
+ ;;
++ interix*)
++ # we just hope/assume this is gcc and not c89 (= MSVC++)
++ with_gnu_ld=yes
++ ;;
+ openbsd*)
+ with_gnu_ld=no
+ ;;
+@@ -124,6 +151,12 @@
+
+ ld_shlibs=yes
+ if test "$with_gnu_ld" = yes; then
++ # Set some defaults for GNU ld with shared library support. These
++ # are reset later if shared libraries are not supported. Putting them
++ # here allows them to be overridden if necessary.
++ # Unlike libtool, we use -rpath here, not --rpath, since the documented
++ # option of GNU ld is called -rpath, not --rpath.
++ hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
+ case "$host_os" in
+ aix3* | aix4* | aix5*)
+ # On AIX/PPC, the GNU linker is very broken
+@@ -138,7 +171,7 @@
+ # that the semantics of dynamic libraries on AmigaOS, at least up
+ # to version 4, is to share data among multiple programs linked
+ # with the same dynamic library. Since this doesn't match the
+- # behavior of shared libraries on other platforms, we can use
++ # behavior of shared libraries on other platforms, we cannot use
+ # them.
+ ld_shlibs=no
+ ;;
+@@ -159,9 +192,20 @@
+ ld_shlibs=no
+ fi
+ ;;
++ interix[3-9]*)
++ hardcode_direct=no
++ hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
++ ;;
++ gnu* | linux* | k*bsd*-gnu)
++ if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
++ :
++ else
++ ld_shlibs=no
++ fi
++ ;;
+ netbsd*)
+ ;;
+- solaris* | sysv5*)
++ solaris*)
+ if $LD -v 2>&1 | grep 'BFD 2\.8' > /dev/null; then
+ ld_shlibs=no
+ elif $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
+@@ -170,6 +214,20 @@
+ ld_shlibs=no
+ fi
+ ;;
++ sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*)
++ case `$LD -v 2>&1` in
++ *\ [01].* | *\ 2.[0-9].* | *\ 2.1[0-5].*)
++ ld_shlibs=no
++ ;;
++ *)
++ if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
++ hardcode_libdir_flag_spec='`test -z "$SCOABSPATH" && echo ${wl}-rpath,$libdir`'
++ else
++ ld_shlibs=no
++ fi
++ ;;
++ esac
++ ;;
+ sunos4*)
+ hardcode_direct=yes
+ ;;
+@@ -181,10 +239,8 @@
+ fi
+ ;;
+ esac
+- if test "$ld_shlibs" = yes; then
+- # Unlike libtool, we use -rpath here, not --rpath, since the documented
+- # option of GNU ld is called -rpath, not --rpath.
+- hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
++ if test "$ld_shlibs" = no; then
++ hardcode_libdir_flag_spec=
+ fi
+ else
+ case "$host_os" in
+@@ -215,6 +271,7 @@
+ break
+ fi
+ done
++ ;;
+ esac
+ fi
+ hardcode_direct=yes
+@@ -226,7 +283,7 @@
+ strings "$collect2name" | grep resolve_lib_name >/dev/null
+ then
+ # We have reworked collect2
+- hardcode_direct=yes
++ :
+ else
+ # We have old collect2
+ hardcode_direct=unsupported
+@@ -234,6 +291,7 @@
+ hardcode_libdir_flag_spec='-L$libdir'
+ hardcode_libdir_separator=
+ fi
++ ;;
+ esac
+ fi
+ # Begin _LT_AC_SYS_LIBPATH_AIX.
+@@ -266,7 +324,7 @@
+ # see comment about different semantics on the GNU ld section
+ ld_shlibs=no
+ ;;
+- bsdi4*)
++ bsdi[45]*)
+ ;;
+ cygwin* | mingw* | pw32*)
+ # When not using gcc, we currently assume that we are using
+@@ -277,8 +335,17 @@
+ libext=lib
+ ;;
+ darwin* | rhapsody*)
+- if $CC -v 2>&1 | grep 'Apple' >/dev/null ; then
+- hardcode_direct=no
++ hardcode_direct=no
++ if test "$GCC" = yes ; then
++ :
++ else
++ case $cc_basename in
++ xlc*)
++ ;;
++ *)
++ ld_shlibs=no
++ ;;
++ esac
+ fi
+ ;;
+ dgux*)
+@@ -295,7 +362,7 @@
+ hardcode_direct=yes
+ hardcode_minus_L=yes
+ ;;
+- freebsd*)
++ freebsd* | dragonfly*)
+ hardcode_libdir_flag_spec='-R$libdir'
+ hardcode_direct=yes
+ ;;
+@@ -307,24 +374,25 @@
+ # but as the default location of the library.
+ hardcode_minus_L=yes
+ ;;
+- hpux10* | hpux11*)
++ hpux10*)
+ if test "$with_gnu_ld" = no; then
+- case "$host_cpu" in
+- hppa*64*)
+- hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
+- hardcode_libdir_separator=:
+- hardcode_direct=no
+- ;;
+- ia64*)
+- hardcode_libdir_flag_spec='-L$libdir'
++ hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
++ hardcode_libdir_separator=:
++ hardcode_direct=yes
++ # hardcode_minus_L: Not really in the search PATH,
++ # but as the default location of the library.
++ hardcode_minus_L=yes
++ fi
++ ;;
++ hpux11*)
++ if test "$with_gnu_ld" = no; then
++ hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
++ hardcode_libdir_separator=:
++ case $host_cpu in
++ hppa*64*|ia64*)
+ hardcode_direct=no
+- # hardcode_minus_L: Not really in the search PATH,
+- # but as the default location of the library.
+- hardcode_minus_L=yes
+ ;;
+ *)
+- hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
+- hardcode_libdir_separator=:
+ hardcode_direct=yes
+ # hardcode_minus_L: Not really in the search PATH,
+ # but as the default location of the library.
+@@ -347,18 +415,22 @@
+ hardcode_libdir_separator=:
+ ;;
+ openbsd*)
+- hardcode_direct=yes
+- if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
+- hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
++ if test -f /usr/libexec/ld.so; then
++ hardcode_direct=yes
++ if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
++ hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
++ else
++ case "$host_os" in
++ openbsd[01].* | openbsd2.[0-7] | openbsd2.[0-7].*)
++ hardcode_libdir_flag_spec='-R$libdir'
++ ;;
++ *)
++ hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
++ ;;
++ esac
++ fi
+ else
+- case "$host_os" in
+- openbsd[01].* | openbsd2.[0-7] | openbsd2.[0-7].*)
+- hardcode_libdir_flag_spec='-R$libdir'
+- ;;
+- *)
+- hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
+- ;;
+- esac
++ ld_shlibs=no
+ fi
+ ;;
+ os2*)
+@@ -378,8 +450,6 @@
+ fi
+ hardcode_libdir_separator=:
+ ;;
+- sco3.2v5*)
+- ;;
+ solaris*)
+ hardcode_libdir_flag_spec='-R$libdir'
+ ;;
+@@ -408,14 +478,11 @@
+ ld_shlibs=yes
+ fi
+ ;;
+- sysv4.2uw2*)
+- hardcode_direct=yes
+- hardcode_minus_L=no
+- ;;
+- sysv5OpenUNIX8* | sysv5UnixWare7* | sysv5uw[78]* | unixware7*)
++ sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[01].[10]* | unixware7* | sco3.2v5.0.[024]*)
+ ;;
+- sysv5*)
+- hardcode_libdir_flag_spec=
++ sysv5* | sco3.2v5* | sco5v6*)
++ hardcode_libdir_flag_spec='`test -z "$SCOABSPATH" && echo ${wl}-R,$libdir`'
++ hardcode_libdir_separator=':'
+ ;;
+ uts4*)
+ hardcode_libdir_flag_spec='-L$libdir'
+@@ -428,34 +495,54 @@
+
+ # Check dynamic linker characteristics
+ # Code taken from libtool.m4's AC_LIBTOOL_SYS_DYNAMIC_LINKER.
++# Unlike libtool.m4, here we don't care about _all_ names of the library, but
++# only about the one the linker finds when passed -lNAME. This is the last
++# element of library_names_spec in libtool.m4, or possibly two of them if the
++# linker has special search rules.
++library_names_spec= # the last element of library_names_spec in libtool.m4
+ libname_spec='lib$name'
+ case "$host_os" in
+ aix3*)
++ library_names_spec='$libname.a'
+ ;;
+ aix4* | aix5*)
++ library_names_spec='$libname$shrext'
+ ;;
+ amigaos*)
++ library_names_spec='$libname.a'
+ ;;
+ beos*)
++ library_names_spec='$libname$shrext'
+ ;;
+- bsdi4*)
++ bsdi[45]*)
++ library_names_spec='$libname$shrext'
+ ;;
+ cygwin* | mingw* | pw32*)
+ shrext=.dll
++ library_names_spec='$libname.dll.a $libname.lib'
+ ;;
+ darwin* | rhapsody*)
+ shrext=.dylib
++ library_names_spec='$libname$shrext'
+ ;;
+ dgux*)
++ library_names_spec='$libname$shrext'
+ ;;
+ freebsd1*)
+ ;;
+- freebsd*)
++ freebsd* | dragonfly*)
++ case "$host_os" in
++ freebsd[123]*)
++ library_names_spec='$libname$shrext$versuffix' ;;
++ *)
++ library_names_spec='$libname$shrext' ;;
++ esac
+ ;;
+ gnu*)
++ library_names_spec='$libname$shrext'
+ ;;
+ hpux9* | hpux10* | hpux11*)
+- case "$host_cpu" in
++ case $host_cpu in
+ ia64*)
+ shrext=.so
+ ;;
+@@ -466,8 +553,13 @@
+ shrext=.sl
+ ;;
+ esac
++ library_names_spec='$libname$shrext'
++ ;;
++ interix[3-9]*)
++ library_names_spec='$libname$shrext'
+ ;;
+ irix5* | irix6* | nonstopux*)
++ library_names_spec='$libname$shrext'
+ case "$host_os" in
+ irix5* | nonstopux*)
+ libsuff= shlibsuff=
+@@ -484,42 +576,62 @@
+ ;;
+ linux*oldld* | linux*aout* | linux*coff*)
+ ;;
+- linux*)
++ linux* | k*bsd*-gnu)
++ library_names_spec='$libname$shrext'
++ ;;
++ knetbsd*-gnu)
++ library_names_spec='$libname$shrext'
+ ;;
+ netbsd*)
++ library_names_spec='$libname$shrext'
+ ;;
+ newsos6)
++ library_names_spec='$libname$shrext'
+ ;;
+- nto-qnx)
++ nto-qnx*)
++ library_names_spec='$libname$shrext'
+ ;;
+ openbsd*)
++ library_names_spec='$libname$shrext$versuffix'
+ ;;
+ os2*)
+ libname_spec='$name'
+ shrext=.dll
++ library_names_spec='$libname.a'
+ ;;
+ osf3* | osf4* | osf5*)
++ library_names_spec='$libname$shrext'
+ ;;
+- sco3.2v5*)
++ rdos*)
+ ;;
+ solaris*)
++ library_names_spec='$libname$shrext'
+ ;;
+ sunos4*)
++ library_names_spec='$libname$shrext$versuffix'
+ ;;
+- sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
++ sysv4 | sysv4.3*)
++ library_names_spec='$libname$shrext'
+ ;;
+ sysv4*MP*)
++ library_names_spec='$libname$shrext'
++ ;;
++ sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
++ library_names_spec='$libname$shrext'
+ ;;
+ uts4*)
++ library_names_spec='$libname$shrext'
+ ;;
+ esac
+
+ sed_quote_subst='s/\(["`$\\]\)/\\\1/g'
+ escaped_wl=`echo "X$wl" | sed -e 's/^X//' -e "$sed_quote_subst"`
+ shlibext=`echo "$shrext" | sed -e 's,^\.,,'`
++escaped_libname_spec=`echo "X$libname_spec" | sed -e 's/^X//' -e "$sed_quote_subst"`
++escaped_library_names_spec=`echo "X$library_names_spec" | sed -e 's/^X//' -e "$sed_quote_subst"`
+ escaped_hardcode_libdir_flag_spec=`echo "X$hardcode_libdir_flag_spec" | sed -e 's/^X//' -e "$sed_quote_subst"`
+
+-sed -e 's/^\([a-zA-Z0-9_]*\)=/acl_cv_\1=/' <<EOF
++LC_ALL=C sed -e 's/^\([a-zA-Z0-9_]*\)=/acl_cv_\1=/' <<EOF
+
+ # How to pass a linker flag through the compiler.
+ wl="$escaped_wl"
+@@ -530,6 +642,12 @@
+ # Shared library suffix (normally "so").
+ shlibext="$shlibext"
+
++# Format of library name prefix.
++libname_spec="$escaped_libname_spec"
++
++# Library names that the linker finds when passed -lNAME.
++library_names_spec="$escaped_library_names_spec"
++
+ # Flag to hardcode \$libdir into a binary during linking.
+ # This must work even if \$libdir does not exist.
+ hardcode_libdir_flag_spec="$escaped_hardcode_libdir_flag_spec"