libtool.eclass: import latest from upstream

Libtool has a bug where it assumes the default lib path is always
"/lib /usr/lib", and it searches /etc/ld.so.conf for additional
paths.  This does not play well when cross-compiling for a multilib
which uses a path other than /lib (like x86_64 which uses /lib64).
So libtool ends up adding -Wl,-rpath,/usr/lib64 when linking libs
which means it searches the chroot which means it can easily lead
to link failure.

So import the latest libtool.eclass and ELT-patches from upstream
Gentoo which has added a patch specifically to address this: the
sys-lib-dlsearch patch.  We have to import all the other files as
libtool.eclass only searches the ELT-patches/ subdir from the tree
from which it is loaded.

BUG=chromium-os:20636
TEST=`emerge-amd64-generic app-crypt/tpm-tools` now works
TEST=`./build_packages && ./build_image` for x86-alex still works

Change-Id: Id10c732cfd4f13df995f32af950a341e8c7bbc6c
Reviewed-on: http://gerrit.chromium.org/gerrit/8648
Reviewed-by: David James <davidjames@chromium.org>
Commit-Ready: Mike Frysinger <vapier@chromium.org>
Tested-by: Mike Frysinger <vapier@chromium.org>
This commit is contained in:
Mike Frysinger 2011-10-03 14:18:46 -04:00
parent 6a211349e3
commit b3e207136a
87 changed files with 4473 additions and 0 deletions

View File

@ -0,0 +1,12 @@
--- ltmain.sh.orig 2009-12-06 22:35:17 +0100
+++ ltmain.sh 2009-12-06 22:35:44 +0100
@@ -1111,6 +1111,9 @@
# that all symbols are satisfied, otherwise we get a static library.
allow_undefined=yes
;;
+ *-aix*)
+ allow_undefined=no
+ ;;
*)
allow_undefined=yes
;;

View File

@ -0,0 +1,9 @@
--- configure
+++ configure
@@ -4678,5 +4688,5 @@
hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
- archive_expsym_cmds="\$CC"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols $shared_flag"
+ archive_expsym_cmds="\$CC"' -o $output_objdir/$realname ${wl}-soname "${wl}$soname" $libobjs $deplibs $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols $shared_flag"
else
if test "$host_cpu" = ia64; then
hardcode_libdir_flag_spec='${wl}-R $libdir:/usr/lib:/lib'

View File

@ -0,0 +1,10 @@
--- configure
+++ configure
@@ -2508,6 +2508,6 @@
hardcode_libdir_flag_spec_CXX='${wl}-blibpath:$libdir:'"$aix_libpath"
- archive_expsym_cmds_CXX="\$CC"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols $shared_flag"
+ archive_expsym_cmds_CXX="\$CC"' -o $output_objdir/$realname ${wl}-soname "${wl}$soname" $libobjs $deplibs $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols $shared_flag"
else
if test "$host_cpu" = ia64; then
hardcode_libdir_flag_spec_CXX='${wl}-R $libdir:/usr/lib:/lib'

View File

@ -0,0 +1,10 @@
--- configure
+++ configure
@@ -1029,6 +1029,7 @@
# instead of lib<name>.a to let people know that these are not
# typical AIX shared libraries.
library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
+ soname_spec='${libname}${release}${shared_ext}$major(shr.o)'
else
# We preserve .a as extension for shared libraries through AIX4.2
# and later when we are not doing run time linking.

View File

@ -0,0 +1,11 @@
--- configure
+++ configure
@@ -4606,7 +4606,7 @@
else
export_symbols_cmds='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\[$]2 == "T") || (\[$]2 == "D") || (\[$]2 == "B")) && ([substr](\[$]3,1,1) != ".")) { print \[$]3 } }'\'' | sort -u > $export_symbols'
fi
- aix_use_runtimelinking=no
+ aix_use_runtimelinking=yes
# Test if we are trying to use run time linking or normal
# AIX style linking. If -brtl is somewhere in LDFLAGS, we

View File

@ -0,0 +1,11 @@
--- configure
+++ configure
@@ -2436,7 +2436,7 @@
exp_sym_flag='-Bexport'
no_entry_flag=""
else
- aix_use_runtimelinking=no
+ aix_use_runtimelinking=yes
# Test if we are trying to use run time linking or normal
# AIX style linking. If -brtl is somewhere in LDFLAGS, we

View File

@ -0,0 +1,10 @@
--- configure
+++ configure
@@ -1156,6 +1156,7 @@
# instead of lib<name>.a to let people know that these are not
# typical AIX shared libraries.
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major(shr.o)'
else
# We preserve .a as extension for shared libraries through AIX4.2
# and later when we are not doing run time linking.

View File

@ -0,0 +1,11 @@
--- configure.orig 2009-12-04 17:59:31 +0100
+++ configure 2009-12-04 18:02:29 +0100
@@ -8603,7 +8603,7 @@
if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
- archive_expsym_cmds="\$CC"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
+ archive_expsym_cmds="\$CC"' -o $output_objdir/$realname ${wl}-soname "${wl}$soname" $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
else
if test "$host_cpu" = ia64; then
hardcode_libdir_flag_spec='${wl}-R $libdir:/usr/lib:/lib'

View File

@ -0,0 +1,10 @@
--- configure
+++ configure
@@ -2956,6 +2956,6 @@
hardcode_libdir_flag_spec_CXX='${wl}-blibpath:$libdir:'"$aix_libpath"
- archive_expsym_cmds_CXX="\$CC"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
+ archive_expsym_cmds_CXX="\$CC"' -o $output_objdir/$realname ${wl}-soname "${wl}$soname" $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
else
if test "$host_cpu" = ia64; then
hardcode_libdir_flag_spec_CXX='${wl}-R $libdir:/usr/lib:/lib'

View File

@ -0,0 +1,11 @@
--- configure
+++ configure
@@ -4622,7 +4622,7 @@
if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
- archive_expsym_cmds='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then $ECHO "X${wl}${allow_undefined_flag}" | $Xsed; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
+ archive_expsym_cmds='$CC -o $output_objdir/$realname ${wl}-soname "${wl}$soname" $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then $ECHO "X${wl}${allow_undefined_flag}" | $Xsed; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
else
if test "$host_cpu" = ia64; then
hardcode_libdir_flag_spec='${wl}-R $libdir:/usr/lib:/lib'

View File

@ -0,0 +1,11 @@
--- configure
+++ configure
@@ -5567,7 +5567,7 @@
hardcode_libdir_flag_spec_CXX='${wl}-blibpath:$libdir:'"$aix_libpath"
- archive_expsym_cmds_CXX='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then $ECHO "X${wl}${allow_undefined_flag}" | $Xsed; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
+ archive_expsym_cmds_CXX='$CC -o $output_objdir/$realname ${wl}-soname "${wl}$soname" $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then $ECHO "X${wl}${allow_undefined_flag}" | $Xsed; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
else
if test "$host_cpu" = ia64; then
hardcode_libdir_flag_spec_CXX='${wl}-R $libdir:/usr/lib:/lib'

View File

@ -0,0 +1,11 @@
--- configure
+++ configure
@@ -5488,7 +5488,7 @@
exp_sym_flag='-Bexport'
no_entry_flag=""
else
- aix_use_runtimelinking=no
+ aix_use_runtimelinking=yes
# Test if we are trying to use run time linking or normal
# AIX style linking. If -brtl is somewhere in LDFLAGS, we

View File

@ -0,0 +1,11 @@
--- configure
+++ configure
@@ -4622,7 +4622,7 @@
if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
- archive_expsym_cmds='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
+ archive_expsym_cmds='$CC -o $output_objdir/$realname ${wl}-soname "${wl}$soname" $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
else
if test "$host_cpu" = ia64; then
hardcode_libdir_flag_spec='${wl}-R $libdir:/usr/lib:/lib'

View File

@ -0,0 +1,11 @@
--- configure
+++ configure
@@ -5567,7 +5567,7 @@
hardcode_libdir_flag_spec_CXX='${wl}-blibpath:$libdir:'"$aix_libpath"
- archive_expsym_cmds_CXX='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
+ archive_expsym_cmds_CXX='$CC -o $output_objdir/$realname ${wl}-soname "${wl}$soname" $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
else
if test "$host_cpu" = ia64; then
hardcode_libdir_flag_spec_CXX='${wl}-R $libdir:/usr/lib:/lib'

View File

@ -0,0 +1,30 @@
--- ltmain.sh.orig 2006-03-29 15:45:36.000000000 +0200
+++ ltmain.sh 2006-03-29 16:39:30.000000000 +0200
@@ -1754,6 +1754,11 @@
arg=`$echo "X$arg" | $Xsed -e "s/^ //"`
;;
+ -Wl,--as-needed|-Wl,--no-as-needed)
+ deplibs="$deplibs $arg"
+ continue
+ ;;
+
-Wl,*)
args=`$echo "X$arg" | $Xsed -e "$sed_quote_subst" -e 's/^-Wl,//'`
arg=
@@ -2094,6 +2099,15 @@
lib=
found=no
case $deplib in
+ -Wl,--as-needed|-Wl,--no-as-needed)
+ if test "$linkmode,$pass" = "prog,link"; then
+ compile_deplibs="$deplib $compile_deplibs"
+ finalize_deplibs="$deplib $finalize_deplibs"
+ else
+ deplibs="$deplib $deplibs"
+ fi
+ continue
+ ;;
-mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe)
if test "$linkmode,$pass" = "prog,link"; then
compile_deplibs="$deplib $compile_deplibs"

View File

@ -0,0 +1,38 @@
--- ltmain.sh.orig 2009-04-18 16:51:52.000000000 +0200
+++ ltmain.sh 2009-04-18 16:55:05.000000000 +0200
@@ -1812,10 +1812,15 @@
done
IFS="$save_ifs"
arg=`$echo "X$arg" | $Xsed -e "s/^ //"`
;;
+ -Wl,--as-needed|-Wl,--no-as-needed)
+ deplibs="$deplibs $arg"
+ continue
+ ;;
+
-Wl,*)
args=`$echo "X$arg" | $Xsed -e "$sed_quote_subst" -e 's/^-Wl,//'`
arg=
save_ifs="$IFS"; IFS=','
for flag in $args; do
@@ -2152,10 +2157,19 @@
fi
for deplib in $libs; do
lib=
found=no
case $deplib in
+ -Wl,--as-needed|-Wl,--no-as-needed)
+ if test "$linkmode,$pass" = "prog,link"; then
+ compile_deplibs="$deplib $compile_deplibs"
+ finalize_deplibs="$deplib $finalize_deplibs"
+ else
+ deplibs="$deplib $deplibs"
+ fi
+ continue
+ ;;
-mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe|-threads)
if test "$linkmode,$pass" = "prog,link"; then
compile_deplibs="$deplib $compile_deplibs"
finalize_deplibs="$deplib $finalize_deplibs"
else

View File

@ -0,0 +1,38 @@
--- ltmain.sh.orig 2009-04-18 14:37:16.000000000 +0200
+++ ltmain.sh 2009-04-18 14:40:08.000000000 +0200
@@ -4721,10 +4721,15 @@
IFS="$save_ifs"
func_stripname ' ' '' "$arg"
arg=$func_stripname_result
;;
+ -Wl,--as-needed|-Wl,--no-as-needed)
+ deplibs="$deplibs $arg"
+ continue
+ ;;
+
-Wl,*)
func_stripname '-Wl,' '' "$arg"
args=$func_stripname_result
arg=
save_ifs="$IFS"; IFS=','
@@ -5075,10 +5080,19 @@
for deplib in $libs; do
lib=
found=no
case $deplib in
+ -Wl,--as-needed|-Wl,--no-as-needed)
+ if test "$linkmode,$pass" = "prog,link"; then
+ compile_deplibs="$deplib $compile_deplibs"
+ finalize_deplibs="$deplib $finalize_deplibs"
+ else
+ deplibs="$deplib $deplibs"
+ fi
+ continue
+ ;;
-mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe|-threads)
if test "$linkmode,$pass" = "prog,link"; then
compile_deplibs="$deplib $compile_deplibs"
finalize_deplibs="$deplib $finalize_deplibs"
else

View File

@ -0,0 +1,20 @@
--- libltdl/config/ltmain.sh 2008-09-07 19:56:33.000000000 +0200
+++ libltdl/config/ltmain.sh.new 2009-02-15 20:37:47.000000000 +0100
@@ -5768,7 +5768,7 @@
test "$hardcode_direct_absolute" = no; then
add="$libdir/$linklib"
elif test "$hardcode_minus_L" = yes; then
- add_dir="-L$libdir"
+ add_dir="-L$ROOT/$libdir"
add="-l$name"
elif test "$hardcode_shlibpath_var" = yes; then
case :$finalize_shlibpath: in
@@ -5785,7 +5785,7 @@
fi
else
# We cannot seem to hardcode it, guess we'll fake it.
- add_dir="-L$libdir"
+ add_dir="-L$ROOT/$libdir"
# Try looking first in the location we're being installed to.
if test -n "$inst_prefix_dir"; then
case $libdir in

View File

@ -0,0 +1,11 @@
--- configure.orig 2009-05-22 12:05:31 +0200
+++ configure 2009-05-22 12:05:39 +0200
@@ -15461,7 +15461,7 @@
soname_spec='${libname}${release}${major}$shared_ext'
shlibpath_overrides_runpath=yes
shlibpath_var=DYLD_LIBRARY_PATH
- shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
+ shrext_cmds='`test .$module = .yes && echo .bundle || echo .dylib`'
# Apple's gcc prints 'gcc -print-search-dirs' doesn't operate the same.
if test "$GCC" = yes; then
sys_lib_search_path_spec=`$CC -print-search-dirs | tr "\n" "$PATH_SEPARATOR" | sed -e 's/libraries:/@libraries:/' | tr "@" "\n" | grep "^libraries:" | sed -e "s/^libraries://" -e "s,=/,/,g" -e "s,$PATH_SEPARATOR, ,g" -e "s,.*,& /lib /usr/lib /usr/local/lib,g"`

View File

@ -0,0 +1,20 @@
--- configure
+++ configure
@@ -10570,7 +10570,7 @@
soname_spec='${libname}${release}${major}$shared_ext'
shlibpath_overrides_runpath=yes
shlibpath_var=DYLD_LIBRARY_PATH
- shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
+ shrext_cmds='`test .$module = .yes && echo .bundle || echo .dylib`'
sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"
sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
@@ -14213,7 +14213,7 @@
soname_spec='${libname}${release}${major}$shared_ext'
shlibpath_overrides_runpath=yes
shlibpath_var=DYLD_LIBRARY_PATH
- shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
+ shrext_cmds='`test .$module = .yes && echo .bundle || echo .dylib`'
sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
;;

View File

@ -0,0 +1,16 @@
--- configure
+++ configure
@@ -12172,11 +12172,11 @@
version_type=darwin
need_lib_prefix=no
need_version=no
- library_names_spec='${libname}${release}${major}$shared_ext ${libname}$shared_ext'
+ library_names_spec='${libname}${release}${versuffix}$shared_ext ${libname}${release}${major}$shared_ext ${libname}$shared_ext'
soname_spec='${libname}${release}${major}$shared_ext'
shlibpath_overrides_runpath=yes
shlibpath_var=DYLD_LIBRARY_PATH
- shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
+ shrext_cmds='`test .$module = .yes && echo .bundle || echo .dylib`'
sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"
sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'

View File

@ -0,0 +1,30 @@
--- configure
+++ configure
@@ -11455,11 +11455,11 @@
version_type=darwin
need_lib_prefix=no
need_version=no
- library_names_spec='${libname}${release}${major}$shared_ext ${libname}$shared_ext'
+ library_names_spec='${libname}${release}${versuffix}$shared_ext ${libname}${release}${major}$shared_ext ${libname}$shared_ext'
soname_spec='${libname}${release}${major}$shared_ext'
shlibpath_overrides_runpath=yes
shlibpath_var=DYLD_LIBRARY_PATH
- shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
+ shrext_cmds='`test .$module = .yes && echo .bundle || echo .dylib`'
sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"
sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
@@ -15321,11 +15331,11 @@
version_type=darwin
need_lib_prefix=no
need_version=no
- library_names_spec='${libname}${release}${major}$shared_ext ${libname}$shared_ext'
+ library_names_spec='${libname}${release}${versuffix}$shared_ext ${libname}${release}${major}$shared_ext ${libname}$shared_ext'
soname_spec='${libname}${release}${major}$shared_ext'
shlibpath_overrides_runpath=yes
shlibpath_var=DYLD_LIBRARY_PATH
- shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
+ shrext_cmds='`test .$module = .yes && echo .bundle || echo .dylib`'
sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
;;

View File

@ -0,0 +1,66 @@
--- ltconfig-1.2 Wed May 19 09:17:36 1999
+++ ltconfig Wed Oct 6 14:29:08 2004
@@ -459,6 +459,11 @@
os2*)
# We can build DLLs from non-PIC.
;;
+ darwin* | rhapsody*)
+ # PIC is the default on this platform
+ # Common symbols not allowed in MH_DYLIB files
+ pic_flag='-fno-common'
+ ;;
amigaos*)
# FIXME: we need at least 68020 code to build shared libraries, but
# adding the `-m68020' flag to GCC prevents building anything better,
@@ -785,6 +790,23 @@
hardcode_shlibpath_var=no
;;
+ darwin* | rhapsody*)
+ case "$host_os" in
+ rhapsody* | darwin1.[012])
+ allow_undefined_flag='-undefined suppress'
+ ;;
+ *) # Darwin 1.3 on
+ allow_undefined_flag='-flat_namespace -undefined suppress'
+ ;;
+ esac
+ archive_cmds='$nonopt $(test .$module = .yes && echo -bundle || echo -dynamiclib) $allow_undefined_flag -o $lib $libobjs $deplibs $linkopts $(test .$module != .yes && echo -install_name $rpath/$soname $verstring)'
+ # We need to add '_' to the symbols in $export_symbols first
+ #archive_expsym_cmds="$archive_cmds"' && strip -s $export_symbols $lib'
+ hardcode_direct=yes
+ hardcode_shlibpath_var=no
+ whole_archive_flag_spec='-all_load $convenience'
+ ;;
+
hpux9*)
archive_cmds='$rm $objdir/$soname;$LD -b +s +b $install_libdir -o $objdir/$soname$libobjs;mv $objdir/$soname $lib'
hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
@@ -1134,6 +1156,27 @@
version_type=sunos
library_names_spec='${libname}${release}.so.$versuffix'
shlibpath_var=LD_LIBRARY_PATH
+ ;;
+
+darwin* | rhapsody*)
+ dynamic_linker="$host_os dyld"
+ version_type=darwin
+ need_lib_prefix=no
+ need_version=no
+ deplibs_check_method='file_magic Mach-O dynamically linked shared library'
+ file_magic_cmd='/usr/bin/file -L'
+ case "$host_os" in
+ rhapsody* | darwin1.[012])
+ file_magic_test_file='/System/Library/Frameworks/System.framework/System'
+ ;;
+ *) # Darwin 1.3 on
+ file_magic_test_file='/usr/lib/libSystem.dylib'
+ ;;
+ esac
+ library_names_spec='${libname}${release}${versuffix}.$(test .$module = .yes && echo so || echo dylib) ${libname}${release}${major}.$(test .$module = .yes && echo so || echo dylib) ${libname}.$(test .$module = .yes && echo so || echo dylib)'
+ soname_spec='${libname}${release}${major}.$(test .$module = .yes && echo so || echo dylib)'
+ shlibpath_overrides_runpath=yes
+ shlibpath_var=DYLD_LIBRARY_PATH
;;
hpux9* | hpux10*)

View File

@ -0,0 +1,67 @@
--- ltconfig.darwin 2000-02-02 19:53:22.000000000 -0500
+++ ltconfig 2004-09-23 20:25:11.000000000 -0400
@@ -678,6 +678,11 @@
cygwin* | mingw* | os2*)
# We can build DLLs from non-PIC.
;;
+ darwin* | rhapsody*)
+ # PIC is the default on this platform
+ # Common symbols not allowed in MH_DYLIB files
+ pic_flag='-fno-common'
+ ;;
amigaos*)
# FIXME: we need at least 68020 code to build shared libraries, but
# adding the `-m68020' flag to GCC prevents building anything better,
@@ -1361,6 +1372,23 @@
hardcode_shlibpath_var=no
;;
+ darwin* | rhapsody*)
+ case "$host_os" in
+ rhapsody* | darwin1.[012])
+ allow_undefined_flag='-undefined suppress'
+ ;;
+ *) # Darwin 1.3 on
+ allow_undefined_flag='-flat_namespace -undefined suppress'
+ ;;
+ esac
+ archive_cmds='$nonopt $(test .$module = .yes && echo -bundle || echo -dynamiclib) $allow_undefined_flag -o $lib $libobjs $deplibs $linkopts $(test .$module != .yes && echo -install_name $rpath/$soname $verstring)'
+ # We need to add '_' to the symbols in $export_symbols first
+ #archive_expsym_cmds="$archive_cmds"' && strip -s $export_symbols $lib'
+ hardcode_direct=yes
+ hardcode_shlibpath_var=no
+ whole_archive_flag_spec='-all_load $convenience'
+ ;;
+
hpux9* | hpux10* | hpux11*)
case "$host_os" in
hpux9*) archive_cmds='$rm $objdir/$soname~$LD -b +b $install_libdir -o $objdir/$soname $libobjs $deplibs $linkopts~test $objdir/$soname = $lib || mv $objdir/$soname $lib' ;;
@@ -1897,6 +1931,27 @@
esac
;;
+darwin* | rhapsody*)
+ dynamic_linker="$host_os dyld"
+ version_type=darwin
+ need_lib_prefix=no
+ need_version=no
+ deplibs_check_method='file_magic Mach-O dynamically linked shared library'
+ file_magic_cmd='/usr/bin/file -L'
+ case "$host_os" in
+ rhapsody* | darwin1.[012])
+ file_magic_test_file='/System/Library/Frameworks/System.framework/System'
+ ;;
+ *) # Darwin 1.3 on
+ file_magic_test_file='/usr/lib/libSystem.dylib'
+ ;;
+ esac
+ library_names_spec='${libname}${release}${versuffix}.$(test .$module = .yes && echo so || echo dylib) ${libname}${release}${major}.$(test .$module = .yes && echo so || echo dylib) ${libname}.$(test .$module = .yes && echo so || echo dylib)'
+ soname_spec='${libname}${release}${major}.$(test .$module = .yes && echo so || echo dylib)'
+ shlibpath_overrides_runpath=yes
+ shlibpath_var=DYLD_LIBRARY_PATH
+ ;;
+
gnu*)
version_type=linux
need_lib_prefix=no

View File

@ -0,0 +1,40 @@
--- ltmain.sh-1.2 Wed May 19 09:17:36 1999
+++ ltmain.sh Wed Oct 6 14:38:37 2004
@@ -967,6 +967,16 @@
versuffix="$current.$revision"
;;
+ darwin)
+ # Like Linux, but with the current version available in
+ # verstring for coding it into the library header
+ major=.`expr $current - $age`
+ versuffix="$major.$age.$revision"
+ # Darwin ld doesn't like 0 for these options...
+ minor_current=`expr $current + 1`
+ verstring="-compatibility_version $minor_current -current_version $minor_current.$revision"
+ ;;
+
*)
$echo "$modename: unknown library version type \`$version_type'" 1>&2
echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2
@@ -1000,9 +1010,17 @@
allow_undefined_flag="$no_undefined_flag"
fi
- # Add libc to deplibs on all systems.
- dependency_libs="$deplibs"
- deplibs="$deplibs -lc"
+ case "$version_type" in
+ rhapsody|darwin)
+ # Rhapsody C library is in the System framework
+ deplibs="$deplibs -framework System"
+ ;;
+ *)
+ # Add libc to deplibs on all other systems.
+ dependency_libs="$deplibs"
+ deplibs="$deplibs -lc"
+ ;;
+ esac
if test "$build_libtool_libs" = yes; then
# Get the real and link names of the library.

View File

@ -0,0 +1,64 @@
--- ltmain.sh.darwin 2000-02-02 19:53:22.000000000 -0500
+++ ltmain.sh 2004-09-23 20:25:11.000000000 -0400
@@ -24,6 +24,8 @@
# configuration script generated by Autoconf, you may include it under
# the same distribution terms that you use for the rest of that program.
+_S_=${LIBTOOL_CMD_SEP-\~}
+
# Check that we have a working $echo.
if test "X$1" = X--no-reexec; then
# Discard the --no-reexec flag, and continue.
@@ -1079,6 +1079,11 @@
# These systems don't actually have c library (as such)
continue
;;
+ *-*-rhapsody* | *-*-darwin1.[012])
+ # Rhapsody C library is in the System framework
+ deplibs="$deplibs -framework System"
+ continue
+ ;;
esac
elif test "$arg" = "-lm"; then
case "$host" in
@@ -1086,6 +1091,11 @@
# These systems don't actually have math library (as such)
continue
;;
+ *-*-rhapsody* | *-*-darwin1.[012])
+ # Rhapsody math library is in the System framework
+ deplibs="$deplibs -framework System"
+ continue
+ ;;
esac
fi
deplibs="$deplibs $arg"
@@ -1753,6 +1763,16 @@
versuffix="-$major-$age-$revision"
;;
+ darwin)
+ # Like Linux, but with the current version available in
+ # verstring for coding it into the library header
+ major=.`expr $current - $age`
+ versuffix="$major.$age.$revision"
+ # Darwin ld doesn't like 0 for these options...
+ minor_current=`expr $current + 1`
+ verstring="-compatibility_version $minor_current -current_version $minor_current.$revision"
+ ;;
+
*)
$echo "$modename: unknown library version type \`$version_type'" 1>&2
echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2
@@ -1795,6 +1824,10 @@
*-*-cygwin* | *-*-mingw* | *-*-os2* | *-*-beos*)
# these systems don't actually have a c library (as such)!
;;
+ *-*-rhapsody* | *-*-darwin1.[012])
+ # Rhapsody C library is in the System framework
+ deplibs="$deplibs -framework System"
+ ;;
*)
# Add libc to deplibs on all other systems.
deplibs="$deplibs -lc"

View File

@ -0,0 +1,18 @@
--- libtool.orig 2009-07-15 16:25:32 +0200
+++ libtool 2009-07-15 16:51:56 +0200
@@ -3319,7 +3319,14 @@
;;
esac
if grep "^installed=no" $deplib > /dev/null; then
- path="$absdir/$objdir"
+ eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
+ eval library_names=`${SED} -n -e 's/^library_names=\(.*\)$/\1/p' $deplib`
+ for library_name in ${library_names}; do :; done
+ if test $mode = relink && test -f "${inst_prefix_dir}${libdir}/${library_name}"; then
+ path="${inst_prefix_dir}${libdir}"
+ else
+ path="$absdir/$objdir"
+ fi
else
eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
if test -z "$libdir"; then

View File

@ -0,0 +1,18 @@
--- ltmain-release-2-1b.in 2009-06-22 15:33:26.000000000 +0200
+++ ltmain-release-2-1b.in.new 2009-07-15 16:59:45.000000000 +0200
@@ -4946,7 +4946,14 @@
fi
;;
*)
- path="-L$absdir/$objdir"
+ eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
+ eval library_names=`${SED} -n -e 's/^library_names=\(.*\)$/\1/p' $deplib`
+ for library_name in ${library_names}; do :; done
+ if test $mode = relink && test -f "${inst_prefix_dir}${libdir}/${library_name}"; then
+ path="-L${inst_prefix_dir}${libdir}"
+ else
+ path="-L$absdir/$objdir"
+ fi
;;
esac
else

View File

@ -0,0 +1,32 @@
Index: tiff-3.8.2/configure
===================================================================
--- tiff-3.8.2.orig/configure
+++ tiff-3.8.2/configure
@@ -8199,7 +8199,13 @@ freebsd* | dragonfly*)
*) objformat=elf ;;
esac
fi
- version_type=freebsd-$objformat
+ case $host_vendor in
+ gentoo)
+ version_type=linux ;;
+ *)
+ version_type=freebsd-$objformat ;;
+ esac
+
case $version_type in
freebsd-elf*)
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
@@ -8210,6 +8216,12 @@ freebsd* | dragonfly*)
library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix'
need_version=yes
;;
+ linux)
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ need_lib_prefix=no
+ need_version=no
+ ;;
esac
shlibpath_var=LD_LIBRARY_PATH
case $host_os in

View File

@ -0,0 +1,32 @@
Index: expat-1.95.8/configure
===================================================================
--- expat-1.95.8.orig/configure
+++ expat-1.95.8/configure
@@ -5479,7 +5479,13 @@ freebsd1*)
freebsd*)
objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout`
- version_type=freebsd-$objformat
+ case $host_vendor in
+ gentoo)
+ version_type=linux ;;
+ *)
+ version_type=freebsd-$objformat ;;
+ esac
+
case $version_type in
freebsd-elf*)
library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so $libname.so'
@@ -5490,6 +5496,12 @@ freebsd*)
library_names_spec='${libname}${release}.so$versuffix $libname.so$versuffix'
need_version=yes
;;
+ linux)
+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}.so'
+ soname_spec='${libname}${release}.so$major'
+ need_lib_prefix=no
+ need_version=no
+ ;;
esac
shlibpath_var=LD_LIBRARY_PATH
case $host_os in

View File

@ -0,0 +1,120 @@
Index: libiconv-1.10/configure
===================================================================
--- libiconv-1.10.orig/configure
+++ libiconv-1.10/configure
@@ -8902,7 +8902,14 @@ kfreebsd*-gnu)
freebsd*)
objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout`
- version_type=freebsd-$objformat
+ # Gentoo/FreeBSD uses linux-style versioning to be user-friendly.
+ case $host_vendor in
+ gentoo)
+ version_type=linux ;;
+ *)
+ version_type=freebsd-$objformat ;;
+ esac
+
case $version_type in
freebsd-elf*)
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
@@ -8913,6 +8920,12 @@ freebsd*)
library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix'
need_version=yes
;;
+ linux)
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ need_lib_prefix=no
+ need_version=no
+ ;;
esac
shlibpath_var=LD_LIBRARY_PATH
case $host_os in
@@ -12620,7 +12633,14 @@ kfreebsd*-gnu)
freebsd*)
objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout`
- version_type=freebsd-$objformat
+ # Gentoo/FreeBSD uses linux-style versioning to be user-friendly.
+ case $host_vendor in
+ gentoo)
+ version_type=linux ;;
+ *)
+ version_type=freebsd-$objformat ;;
+ esac
+
case $version_type in
freebsd-elf*)
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
@@ -12631,6 +12651,12 @@ freebsd*)
library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix'
need_version=yes
;;
+ linux)
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ need_lib_prefix=no
+ need_version=no
+ ;;
esac
shlibpath_var=LD_LIBRARY_PATH
case $host_os in
@@ -15784,7 +15810,14 @@ kfreebsd*-gnu)
freebsd*)
objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout`
- version_type=freebsd-$objformat
+ # Gentoo/FreeBSD uses linux-style versioning to be user-friendly.
+ case $host_vendor in
+ gentoo)
+ version_type=linux ;;
+ *)
+ version_type=freebsd-$objformat ;;
+ esac
+
case $version_type in
freebsd-elf*)
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
@@ -15795,6 +15828,12 @@ freebsd*)
library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix'
need_version=yes
;;
+ linux)
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ need_lib_prefix=no
+ need_version=no
+ ;;
esac
shlibpath_var=LD_LIBRARY_PATH
case $host_os in
@@ -18150,7 +18189,14 @@ kfreebsd*-gnu)
freebsd*)
objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout`
- version_type=freebsd-$objformat
+ # Gentoo/FreeBSD uses linux-style versioning to be user-friendly.
+ case $host_vendor in
+ gentoo)
+ version_type=linux ;;
+ *)
+ version_type=freebsd-$objformat ;;
+ esac
+
case $version_type in
freebsd-elf*)
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
@@ -18161,6 +18207,12 @@ freebsd*)
library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix'
need_version=yes
;;
+ linux)
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ need_lib_prefix=no
+ need_version=no
+ ;;
esac
shlibpath_var=LD_LIBRARY_PATH
case $host_os in

View File

@ -0,0 +1,116 @@
Index: libtool-1.5.18/configure
===================================================================
--- libtool-1.5.18.orig/configure
+++ libtool-1.5.18/configure
@@ -8433,7 +8433,13 @@ freebsd* | dragonfly*)
# DragonFly does not have aout. When/if they implement a new
# versioning mechanism, adjust this.
objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout`
- version_type=freebsd-$objformat
+ case $host_vendor in
+ gentoo)
+ version_type=linux ;;
+ *)
+ version_type=freebsd-$objformat ;;
+ esac
+
case $version_type in
freebsd-elf*)
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
@@ -8444,6 +8450,12 @@ freebsd* | dragonfly*)
library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix'
need_version=yes
;;
+ linux)
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ need_lib_prefix=no
+ need_version=no
+ ;;
esac
shlibpath_var=LD_LIBRARY_PATH
case $host_os in
@@ -12205,7 +12217,13 @@ freebsd* | dragonfly*)
# DragonFly does not have aout. When/if they implement a new
# versioning mechanism, adjust this.
objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout`
- version_type=freebsd-$objformat
+ case $host_vendor in
+ gentoo)
+ version_type=linux ;;
+ *)
+ version_type=freebsd-$objformat ;;
+ esac
+
case $version_type in
freebsd-elf*)
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
@@ -12216,6 +12234,12 @@ freebsd* | dragonfly*)
library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix'
need_version=yes
;;
+ linux)
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ need_lib_prefix=no
+ need_version=no
+ ;;
esac
shlibpath_var=LD_LIBRARY_PATH
case $host_os in
@@ -15461,7 +15485,13 @@ freebsd* | dragonfly*)
# DragonFly does not have aout. When/if they implement a new
# versioning mechanism, adjust this.
objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout`
- version_type=freebsd-$objformat
+ case $host_vendor in
+ gentoo)
+ version_type=linux ;;
+ *)
+ version_type=freebsd-$objformat ;;
+ esac
+
case $version_type in
freebsd-elf*)
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
@@ -15472,6 +15502,12 @@ freebsd* | dragonfly*)
library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix'
need_version=yes
;;
+ linux)
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ need_lib_prefix=no
+ need_version=no
+ ;;
esac
shlibpath_var=LD_LIBRARY_PATH
case $host_os in
@@ -17929,7 +17965,13 @@ freebsd* | dragonfly*)
# DragonFly does not have aout. When/if they implement a new
# versioning mechanism, adjust this.
objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout`
- version_type=freebsd-$objformat
+ case $host_vendor in
+ gentoo)
+ version_type=linux ;;
+ *)
+ version_type=freebsd-$objformat ;;
+ esac
+
case $version_type in
freebsd-elf*)
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
@@ -17940,6 +17982,12 @@ freebsd* | dragonfly*)
library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix'
need_version=yes
;;
+ linux)
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ need_lib_prefix=no
+ need_version=no
+ ;;
esac
shlibpath_var=LD_LIBRARY_PATH
case $host_os in

View File

@ -0,0 +1,116 @@
Index: libtool-1.5.20/configure
===================================================================
--- libtool-1.5.20.orig/configure
+++ libtool-1.5.20/configure
@@ -8441,7 +8441,13 @@ freebsd* | dragonfly*)
*) objformat=elf ;;
esac
fi
- version_type=freebsd-$objformat
+ case $host_vendor in
+ gentoo)
+ version_type=linux ;;
+ *)
+ version_type=freebsd-$objformat ;;
+ esac
+
case $version_type in
freebsd-elf*)
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
@@ -8452,6 +8458,12 @@ freebsd* | dragonfly*)
library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix'
need_version=yes
;;
+ linux)
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ need_lib_prefix=no
+ need_version=no
+ ;;
esac
shlibpath_var=LD_LIBRARY_PATH
case $host_os in
@@ -12228,7 +12240,13 @@ freebsd* | dragonfly*)
*) objformat=elf ;;
esac
fi
- version_type=freebsd-$objformat
+ case $host_vendor in
+ gentoo)
+ version_type=linux ;;
+ *)
+ version_type=freebsd-$objformat ;;
+ esac
+
case $version_type in
freebsd-elf*)
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
@@ -12239,6 +12257,12 @@ freebsd* | dragonfly*)
library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix'
need_version=yes
;;
+ linux)
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ need_lib_prefix=no
+ need_version=no
+ ;;
esac
shlibpath_var=LD_LIBRARY_PATH
case $host_os in
@@ -15492,7 +15516,13 @@ freebsd* | dragonfly*)
*) objformat=elf ;;
esac
fi
- version_type=freebsd-$objformat
+ case $host_vendor in
+ gentoo)
+ version_type=linux ;;
+ *)
+ version_type=freebsd-$objformat ;;
+ esac
+
case $version_type in
freebsd-elf*)
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
@@ -15503,6 +15533,12 @@ freebsd* | dragonfly*)
library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix'
need_version=yes
;;
+ linux)
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ need_lib_prefix=no
+ need_version=no
+ ;;
esac
shlibpath_var=LD_LIBRARY_PATH
case $host_os in
@@ -17968,7 +18004,13 @@ freebsd* | dragonfly*)
*) objformat=elf ;;
esac
fi
- version_type=freebsd-$objformat
+ case $host_vendor in
+ gentoo)
+ version_type=linux ;;
+ *)
+ version_type=freebsd-$objformat ;;
+ esac
+
case $version_type in
freebsd-elf*)
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
@@ -17979,6 +18021,12 @@ freebsd* | dragonfly*)
library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix'
need_version=yes
;;
+ linux)
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ need_lib_prefix=no
+ need_version=no
+ ;;
esac
shlibpath_var=LD_LIBRARY_PATH
case $host_os in

View File

@ -0,0 +1,61 @@
Index: tiff-3.8.2/configure
===================================================================
--- tiff-3.8.2.orig/configure
+++ tiff-3.8.2/configure
@@ -8199,7 +8199,14 @@ freebsd* | dragonfly*)
*) objformat=elf ;;
esac
fi
- version_type=freebsd-$objformat
+ # Handle Gentoo/FreeBSD as it was Linux
+ case $host_vendor in
+ gentoo)
+ version_type=linux ;;
+ *)
+ version_type=freebsd-$objformat ;;
+ esac
+
case $version_type in
freebsd-elf*)
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
@@ -8210,6 +8216,12 @@ freebsd* | dragonfly*)
library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix'
need_version=yes
;;
+ linux)
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ need_lib_prefix=no
+ need_version=no
+ ;;
esac
shlibpath_var=LD_LIBRARY_PATH
case $host_os in
@@ -19253,7 +19265,13 @@ freebsd* | dragonfly*)
*) objformat=elf ;;
esac
fi
- version_type=freebsd-$objformat
+ case $host_vendor in
+ gentoo)
+ version_type=linux ;;
+ *)
+ version_type=freebsd-$objformat ;;
+ esac
+
case $version_type in
freebsd-elf*)
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
@@ -19264,6 +19282,12 @@ freebsd* | dragonfly*)
library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix'
need_version=yes
;;
+ linux)
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ need_lib_prefix=no
+ need_version=no
+ ;;
esac
shlibpath_var=LD_LIBRARY_PATH
case $host_os in

View File

@ -0,0 +1,60 @@
Index: libtorrent-0.10.0/configure
===================================================================
--- libtorrent-0.10.0.orig/configure
+++ libtorrent-0.10.0/configure
@@ -8173,7 +8173,13 @@ kfreebsd*-gnu)
freebsd*)
objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || $ECHO aout`
- version_type=freebsd-$objformat
+ case $host_vendor in
+ gentoo)
+ version_type=linux ;;
+ *)
+ version_type=freebsd-$objformat ;;
+ esac
+
case $version_type in
freebsd-elf*)
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
@@ -8184,6 +8190,12 @@ freebsd*)
library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix'
need_version=yes
;;
+ linux)
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ need_lib_prefix=no
+ need_version=no
+ ;;
esac
shlibpath_var=LD_LIBRARY_PATH
case $host_os in
@@ -12461,7 +12473,13 @@ kfreebsd*-gnu)
freebsd*)
objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || $ECHO aout`
- version_type=freebsd-$objformat
+ case $host_vendor in
+ gentoo)
+ version_type=linux ;;
+ *)
+ version_type=freebsd-$objformat ;;
+ esac
+
case $version_type in
freebsd-elf*)
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
@@ -12472,6 +12490,12 @@ freebsd*)
library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix'
need_version=yes
;;
+ linux)
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ need_lib_prefix=no
+ need_version=no
+ ;;
esac
shlibpath_var=LD_LIBRARY_PATH
case $host_os in

View File

@ -0,0 +1,26 @@
Index: jpeg-6b/ltconfig
===================================================================
--- jpeg-6b.orig/ltconfig
+++ jpeg-6b/ltconfig
@@ -1126,9 +1126,18 @@ amigaos*)
finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$echo "X$lib" | $Xsed -e '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\''`; test $rm /sys/libs/${libname}_ixlibrary.a; $show "(cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a)"; (cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a) || exit 1; done'
;;
-freebsd2* | freebsd3*)
- version_type=sunos
- library_names_spec='${libname}${release}.so.$versuffix $libname.so'
+freebsd[234567]*)
+ case $host_vendor in
+ gentoo)
+ version_type=linux
+ library_names_spec='${libname}${release}.so.$versuffix ${libname}${release}.so.$major ${libname}.so'
+ soname_spec='${libname}${release}.so.$major'
+ ;;
+ *)
+ version_type=sunos
+ library_names_spec='${libname}${release}.so.$versuffix $libname.so'
+ ;;
+ esac
finish_cmds='PATH="$PATH:/sbin" ldconfig -m $libdir'
shlibpath_var=LD_LIBRARY_PATH
;;

View File

@ -0,0 +1,32 @@
Index: libtool-1.3.5/ltconfig
===================================================================
--- libtool-1.3.5.orig/ltconfig
+++ libtool-1.3.5/ltconfig
@@ -1888,7 +1888,13 @@ freebsd1*)
freebsd*)
objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout`
- version_type=freebsd-$objformat
+ case $host_vendor in
+ gentoo)
+ version_type=linux ;;
+ *)
+ version_type=freebsd-$objformat ;;
+ esac
+
case "$version_type" in
freebsd-elf*)
deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB shared object'
@@ -1903,6 +1909,12 @@ freebsd*)
library_names_spec='${libname}${release}.so$versuffix $libname.so$versuffix'
need_version=yes
;;
+ linux)
+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}.so'
+ soname_spec='${libname}${release}.so$major'
+ need_lib_prefix=no
+ need_version=no
+ ;;
esac
shlibpath_var=LD_LIBRARY_PATH
case "$host_os" in

View File

@ -0,0 +1,32 @@
Index: binutils-2.16.1/ltconfig
===================================================================
--- binutils-2.16.1.orig/ltconfig
+++ binutils-2.16.1/ltconfig
@@ -1129,7 +1129,13 @@ freebsd1*)
freebsd*)
objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout`
- version_type=freebsd-$objformat
+ case $host_vendor in
+ gentoo)
+ version_type=linux ;;
+ *)
+ version_type=freebsd-$objformat ;;
+ esac
+
case $version_type in
freebsd-elf*)
library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so $libname.so'
@@ -1141,6 +1147,12 @@ freebsd*)
library_names_spec='${libname}${release}.so$versuffix $libname.so$versuffix'
need_version=yes
;;
+ linux)
+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}.so'
+ soname_spec='${libname}${release}.so$major'
+ need_lib_prefix=no
+ need_version=no
+ ;;
esac
shlibpath_var=LD_LIBRARY_PATH
case $host_os in

View File

@ -0,0 +1,32 @@
Index: binutils-2.16.1/ltconfig
===================================================================
--- binutils-2.16.1.orig/ltconfig
+++ binutils-2.16.1/ltconfig
@@ -1129,7 +1129,13 @@ freebsd1*)
freebsd*)
objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo elf`
- version_type=freebsd-$objformat
+ case $host_vendor in
+ gentoo)
+ version_type=linux ;;
+ *)
+ version_type=freebsd-$objformat ;;
+ esac
+
case $version_type in
freebsd-elf*)
library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so $libname.so'
@@ -1141,6 +1147,12 @@ freebsd*)
library_names_spec='${libname}${release}.so$versuffix $libname.so$versuffix'
need_version=yes
;;
+ linux)
+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}.so'
+ soname_spec='${libname}${release}.so$major'
+ need_lib_prefix=no
+ need_version=no
+ ;;
esac
shlibpath_var=LD_LIBRARY_PATH
case $host_os in

View File

@ -0,0 +1,63 @@
--- ltmain.sh 2003-09-24 18:22:17.528129376 +0200
+++ ltmain.sh 2003-09-24 18:23:17.101072912 +0200
@@ -1582,6 +1582,8 @@
# Only check for convenience libraries
deplibs="$lib $deplibs"
tmp_libs=
+ # PKGW
+ dependency_libs=
for deplib in $dependency_libs; do
#echo "Adding $deplib to \$deplibs"
deplibs="$deplib $deplibs"
@@ -1699,6 +1701,8 @@
fi
tmp_libs=
+ #PKGW
+ dependency_libs=
for deplib in $dependency_libs; do
case $deplib in
-L*) newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'`;; ### testsuite: skip nested quoting test
@@ -1860,6 +1864,16 @@
add="$dir/$linklib"
elif test "$hardcode_minus_L" = yes; then
add_dir="-L$dir"
+ # Try looking first in the location we're being installed to.
+ if test -n "$inst_prefix_dir"; then
+ case "$libdir" in
+ [\\/]*)
+ # Add the install location to the beginning, minimising possiblilty
+ # of linking to older version of the lib already installed.
+ add_dir="-L$inst_prefix_dir$libdir $add_dir"
+ ;;
+ esac
+ fi
add="-l$name"
elif test "$hardcode_shlibpath_var" = yes; then
add_shlibpath="$dir"
@@ -1918,6 +1932,16 @@
else
# We cannot seem to hardcode it, guess we'll fake it.
add_dir="-L$libdir"
+ # Try looking first in the location we're being installed to.
+ if test -n "$inst_prefix_dir"; then
+ case "$libdir" in
+ [\\/]*)
+ # Add the install location to the beginning, minimising possiblilty
+ # of linking to older version of the lib already installed.
+ add_dir="-L$inst_prefix_dir$libdir $add_dir"
+ ;;
+ esac
+ fi
add="-l$name"
fi
@@ -2117,7 +2141,7 @@
-L*)
case " $tmp_libs " in
*" $deplib "*) ;;
- *) tmp_libs="$tmp_libs $deplib" ;;
+ *) tmp_libs="$deplib $tmp_libs" ;;
esac
;;
*) tmp_libs="$tmp_libs $deplib" ;;

View File

@ -0,0 +1,62 @@
--- ltmain.sh 2003-09-24 19:48:39.367370072 +0200
+++ ltmain.sh 2003-09-24 19:49:31.773403144 +0200
@@ -1593,6 +1593,8 @@
convenience="$convenience $ladir/$objdir/$old_library"
old_convenience="$old_convenience $ladir/$objdir/$old_library"
tmp_libs=
+ # PKGW
+ dependency_libs=
for deplib in $dependency_libs; do
deplibs="$deplib $deplibs"
if test "X$duplicate_deps" = "Xyes" ; then
@@ -1710,6 +1712,8 @@
fi
tmp_libs=
+ #PKGW
+ dependency_libs=
for deplib in $dependency_libs; do
case $deplib in
-L*) newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'`;; ### testsuite: skip nested quoting test
@@ -1871,6 +1875,16 @@
add="$dir/$linklib"
elif test "$hardcode_minus_L" = yes; then
add_dir="-L$dir"
+ # Try looking first in the location we're being installed to.
+ if test -n "$inst_prefix_dir"; then
+ case "$libdir" in
+ [\\/]*)
+ # Add the install location to the beginning, minimising possiblilty
+ # of linking to older version of the lib already installed.
+ add_dir="-L$inst_prefix_dir$libdir $add_dir"
+ ;;
+ esac
+ fi
add="-l$name"
elif test "$hardcode_shlibpath_var" = yes; then
add_shlibpath="$dir"
@@ -1938,11 +1952,13 @@
else
# We cannot seem to hardcode it, guess we'll fake it.
# Try looking first in the location we're being installed to.
- add_dir=
+ add_dir="-L$dir"
if test -n "$inst_prefix_dir"; then
case "$libdir" in
[\\/]*)
- add_dir="-L$inst_prefix_dir$libdir"
+ # Add the install location to the beginning, minimising possiblilty
+ # of linking to older version of the lib already installed.
+ add_dir="-L$inst_prefix_dir$libdir $add_dir"
;;
esac
fi
@@ -2146,7 +2162,7 @@
-L*)
case " $tmp_libs " in
*" $deplib "*) ;;
- *) tmp_libs="$tmp_libs $deplib" ;;
+ *) tmp_libs="$deplib $tmp_libs" ;;
esac
;;
*) tmp_libs="$tmp_libs $deplib" ;;

View File

@ -0,0 +1,51 @@
--- ltmain.sh 2003-09-24 18:18:14.961005184 +0200
+++ ltmain.sh 2003-09-24 18:20:11.204333512 +0200
@@ -2022,6 +2022,8 @@
convenience="$convenience $ladir/$objdir/$old_library"
old_convenience="$old_convenience $ladir/$objdir/$old_library"
tmp_libs=
+ # PKGW
+ dependency_libs=
for deplib in $dependency_libs; do
deplibs="$deplib $deplibs"
if test "X$duplicate_deps" = "Xyes" ; then
@@ -2143,6 +2145,8 @@
fi
tmp_libs=
+ #PKGW
+ dependency_libs=
for deplib in $dependency_libs; do
case $deplib in
-L*) newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'`;; ### testsuite: skip nested quoting test
@@ -2359,7 +2363,9 @@
if test -n "$inst_prefix_dir"; then
case "$libdir" in
[\\/]*)
- add_dir="$add_dir -L$inst_prefix_dir$libdir"
+ # Add the install location to the beginning, minimising possiblilty
+ # of linking to older version of the lib already installed.
+ add_dir="-L$inst_prefix_dir$libdir $add_dir"
;;
esac
fi
@@ -2431,7 +2437,9 @@
if test -n "$inst_prefix_dir"; then
case "$libdir" in
[\\/]*)
- add_dir="$add_dir -L$inst_prefix_dir$libdir"
+ # Add the install location to the beginning, minimising possiblilty
+ # of linking to older version of the lib already installed.
+ add_dir="-L$inst_prefix_dir$libdir $add_dir"
;;
esac
fi
@@ -2691,7 +2699,7 @@
-L*)
case " $tmp_libs " in
*" $deplib "*) ;;
- *) tmp_libs="$tmp_libs $deplib" ;;
+ *) tmp_libs="$deplib $tmp_libs" ;;
esac
;;
*) tmp_libs="$tmp_libs $deplib" ;;

View File

@ -0,0 +1,10 @@
--- configure.orig
+++ configure
@@ -9933,6 +9933,7 @@ $as_echo_n "checking whether the $compiler linker ($LD) supports shared librarie
fi
supports_anon_versioning=no
case `$LD -v 2>&1` in
+ *GNU\ gold*) supports_anon_versioning=yes ;;
*\ [01].* | *\ 2.[0-9].* | *\ 2.10.*) ;; # catch versions < 2.11
*\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ...
*\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ...

View File

@ -0,0 +1,8 @@
--- ltmain.sh
+++ ltmain.sh
@@ -2208,4 +2208,4 @@
relink)
- if test "$hardcode_direct" = yes; then
+ if false && test "$hardcode_direct" = yes; then
add="$dir/$linklib"
elif test "$hardcode_minus_L" = yes; then

View File

@ -0,0 +1,21 @@
http://lists.gnu.org/archive/html/bug-libtool/2008-03/msg00124.html
but this patch disables hardcoding independent of inst_prefix_dir at all,
for both hardcode_direct=yes and hardcode_minus_L=yes.
If you update this patch, please also update libtool/files/libtool-1.3d-hardcode.patch
--- ltmain.in.orig 2008-04-16 15:54:04.000000000 +0200
+++ ltmain.in 2008-04-16 16:21:04.000000000 +0200
@@ -1900,9 +1900,9 @@
add_dir=
add=
# Finalize command for both is simple: just hardcode it.
- if test "$hardcode_direct" = yes; then
+ if false && test "$hardcode_direct" = yes; then
add="$libdir/$linklib"
- elif test "$hardcode_minus_L" = yes; then
+ elif false && test "$hardcode_minus_L" = yes; then
add_dir="-L$libdir"
add="-l$name"
elif test "$hardcode_shlibpath_var" = yes; then

View File

@ -0,0 +1,36 @@
Hardcoding library path does not work with DESTDIR installs.
Affects any platform with 'hardcode_direct=yes' or 'hardcode_minus_L=yes'.
According to libtool.m4 (as of libtool-1.5.26), these are:
*-aix*
*-hpux9
hppa-hpux* (not hppa64 or ia64)
*-netbsd
*-openbsd
*-freebsd
*-dragonfly
*-newsos6
*-os2
*-amigaos
*-sunos4
*-sysv4
It definitely is required for aix (to support DESTDIR),
although it should help for others too...
--- ../../libtool.orig 2009-07-16 18:06:59 +0200
+++ ../../libtool 2009-07-16 18:07:45 +0200
@@ -6298,13 +6298,13 @@
add_dir=
add=
# Finalize command for both is simple: just hardcode it.
if test "$hardcode_direct" = yes &&
test "$hardcode_direct_absolute" = no; then
add="$libdir/$linklib"
- elif test "$hardcode_minus_L" = yes; then
+ elif false && test "$hardcode_minus_L" = yes; then
add_dir="-L$libdir"
add="-l$name"
elif test "$hardcode_shlibpath_var" = yes; then
case :$finalize_shlibpath: in
*":$libdir:"*) ;;
*) finalize_shlibpath="$finalize_shlibpath$libdir:" ;;

View File

@ -0,0 +1,18 @@
http://lists.gnu.org/archive/html/libtool/2006-01/msg00012.html
--- ltmain.sh.orig 2007-11-19 17:07:34.946648000 +0100
+++ ltmain.sh 2007-11-19 17:07:57.785975000 +0100
@@ -3915,8 +3915,11 @@
test -n "$hardcode_libdirs"; then
libdir="$hardcode_libdirs"
if test -n "$hardcode_libdir_flag_spec_ld"; then
- eval dep_rpath=\"$hardcode_libdir_flag_spec_ld\"
- else
+ case $archive_cmds in
+ *\$LD*) eval dep_rpath=\"$hardcode_libdir_flag_spec_ld\" ;;
+ *) eval dep_rpath=\"$hardcode_libdir_flag_spec\" ;;
+ esac
+ else
eval dep_rpath=\"$hardcode_libdir_flag_spec\"
fi
fi

View File

@ -0,0 +1,24 @@
must not search /usr/local in prefix
--- configure.orig 2007-12-02 19:14:55 +0100
+++ configure 2007-12-02 19:14:59 +0100
@@ -8920,9 +8920,17 @@
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
soname_spec='${libname}${release}${shared_ext}$major'
if test "X$HPUX_IA64_MODE" = X32; then
- sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"
+ if test "$GCC" = yes; then
+ sys_lib_search_path_spec="${sys_lib_search_path_spec} /usr/lib/hpux32"
+ else
+ sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"
+ fi
else
- sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"
+ if test "$GCC" = yes; then
+ sys_lib_search_path_spec="${sys_lib_search_path_spec} /usr/lib/hpux64"
+ else
+ sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"
+ fi
fi
sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
;;

View File

@ -0,0 +1,14 @@
--- install-sh 2007-07-04 14:36:49 +0100
+++ install-sh 2007-09-14 11:00:41 +0100
@@ -192,7 +192,10 @@
if [ x"$dir_arg" != x ]
then
- $doit $instcmd $dst &&
+ { $doit $instcmd "$dst" || lasterr=$?
+ # It's ok for mkdir to fail if the directory already exists.
+ test -d "$dst" || { (exit ${lasterr-1}); exit; }
+ } &&
if [ x"$chowncmd" != x ]; then $doit $chowncmd $dst; else : ; fi &&
if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd $dst; else : ; fi &&

View File

@ -0,0 +1,14 @@
--- install-sh 2006-03-25 20:04:46 +0000
+++ install-sh 2007-09-14 10:53:29 +0100
@@ -246,7 +246,10 @@
fi
if test -n "$dir_arg"; then
- $doit $mkdircmd "$dst" \
+ { $doit $mkdircmd "$dst" || lasterr=$?
+ # It's ok for mkdir to fail if the directory already exists.
+ test -d "$dst" || { (exit ${lasterr-1}); exit; }
+ } \
&& { test -z "$chowncmd" || $doit $chowncmd "$dst"; } \
&& { test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } \
&& { test -z "$stripcmd" || $doit $stripcmd "$dst"; } \

View File

@ -0,0 +1,14 @@
--- install-sh 2006-03-14 12:57:54 -0300
+++ install-sh 2008-06-19 22:23:04 -0300
@@ -240,7 +240,10 @@
fi
if test -n "$dir_arg"; then
- $doit $instcmd "$dst" \
+ { $doit $instcmd "$dst" || lasterr=$?
+ # It's ok for mkdir to fail if the directory already exists.
+ test -d "$dst" || { (exit ${lasterr-1}); exit; }
+ } \
&& { test -z "$chowncmd" || $doit $chowncmd "$dst"; } \
&& { test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } \
&& { test -z "$stripcmd" || $doit $stripcmd "$dst"; } \

View File

@ -0,0 +1,30 @@
I notice that $EPREFIX/usr/share/libtool/config/ltmain.sh also has this
stray increment - so I'd assume that this is a bug in libtool (which is
perhaps trying to fix a deprecated behaviour of old IRIX versions?).
http://bugs.gentoo.org/show_bug.cgi?id=301520
--- ltmain.sh.dist 2010-01-19 14:04:22.101603800 +0000
+++ ltmain.sh 2010-01-19 14:08:29.361500240 +0000
@@ -6225,7 +6225,6 @@ func_mode_link ()
current=$func_arith_result
age="$number_minor"
revision="$number_minor"
- lt_irix_increment=no
;;
esac
;;
@@ -6297,11 +6296,7 @@ func_mode_link ()
;;
irix | nonstopux)
- if test "X$lt_irix_increment" = "Xno"; then
- func_arith $current - $age
- else
- func_arith $current - $age + 1
- fi
+ func_arith $current - $age
major=$func_arith_result
case $version_type in

View File

@ -0,0 +1,18 @@
--- ltmain.sh 2007-09-15 07:35:19 +0100
+++ ltmain.sh 2004-01-25 12:40:26 +0000
@@ -1854,6 +1840,15 @@
lib=
found=no
case $deplib in
+ -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe)
+ if test "$linkmode,$pass" = "prog,link"; then
+ compile_deplibs="$deplib $compile_deplibs"
+ finalize_deplibs="$deplib $finalize_deplibs"
+ else
+ deplibs="$deplib $deplibs"
+ fi
+ continue
+ ;;
-l*)
if test "$linkmode" != lib && test "$linkmode" != prog; then
$echo "$modename: warning: \`-l' is ignored for archives/objects" 1>&2

View File

@ -0,0 +1,33 @@
--- ltmain.sh 2004-02-11 20:55:14.587581248 +0200
+++ ltmain.sh 2004-02-11 21:15:33.467283368 +0200
@@ -117,6 +117,30 @@
execute_dlfiles=
lo2o="s/\\.lo\$/.${objext}/"
o2lo="s/\\.${objext}\$/.lo/"
+
+if test -z "$max_cmd_len"; then
+ i=0
+ testring="ABCD"
+ new_result=
+
+ # If test is not a shell built-in, we'll probably end up computing a
+ # maximum length that is only half of the actual maximum length, but
+ # we can't tell.
+ while (test "X"`$SHELL $0 --fallback-echo "X$testring" 2>/dev/null` \
+ = "XX$testring") >/dev/null 2>&1 &&
+ new_result=`expr "X$testring" : ".*" 2>&1` &&
+ max_cmd_len="$new_result" &&
+ test $i != 17 # 1/2 MB should be enough
+ do
+ i=`expr $i + 1`
+ testring="$testring$testring"
+ done
+ testring=
+ # Add a significant safety factor because C++ compilers can tack on massive
+ # amounts of additional arguments before passing them to the linker.
+ # It appears as though 1/2 is a usable value.
+ max_cmd_len=`expr $max_cmd_len \/ 2`
+fi
#####################################
# Shell function definitions:

View File

@ -0,0 +1,33 @@
--- ltmain.sh
+++ ltmain.sh
@@ -136,6 +136,30 @@
lo2o="s/\\.lo\$/.${objext}/"
o2lo="s/\\.${objext}\$/.lo/"
quote_scanset='[[~#^*{};<>?'"'"' ]'
+
+if test -z "$max_cmd_len"; then
+ i=0
+ testring="ABCD"
+ new_result=
+
+ # If test is not a shell built-in, we'll probably end up computing a
+ # maximum length that is only half of the actual maximum length, but
+ # we can't tell.
+ while (test "X"`$SHELL $0 --fallback-echo "X$testring" 2>/dev/null` \
+ = "XX$testring") >/dev/null 2>&1 &&
+ new_result=`expr "X$testring" : ".*" 2>&1` &&
+ max_cmd_len="$new_result" &&
+ test "$i" != 17 # 1/2 MB should be enough
+ do
+ i=`expr $i + 1`
+ testring="$testring$testring"
+ done
+ testring=
+ # Add a significant safety factor because C++ compilers can tack on massive
+ # amounts of additional arguments before passing them to the linker.
+ # It appears as though 1/2 is a usable value.
+ max_cmd_len=`expr $max_cmd_len \/ 2`
+fi
#####################################
# Shell function definitions:

View File

@ -0,0 +1,33 @@
--- ltmain.sh
+++ ltmain.sh
@@ -136,6 +136,30 @@
execute_dlfiles=
lo2o="s/\\.lo\$/.${objext}/"
o2lo="s/\\.${objext}\$/.lo/"
+
+if test -z "$max_cmd_len"; then
+ i=0
+ testring="ABCD"
+ new_result=
+
+ # If test is not a shell built-in, we'll probably end up computing a
+ # maximum length that is only half of the actual maximum length, but
+ # we can't tell.
+ while (test "X"`$SHELL $0 --fallback-echo "X$testring" 2>/dev/null` \
+ = "XX$testring") >/dev/null 2>&1 &&
+ new_result=`expr "X$testring" : ".*" 2>&1` &&
+ max_cmd_len="$new_result" &&
+ test "$i" != 17 # 1/2 MB should be enough
+ do
+ i=`expr $i + 1`
+ testring="$testring$testring"
+ done
+ testring=
+ # Add a significant safety factor because C++ compilers can tack on massive
+ # amounts of additional arguments before passing them to the linker.
+ # It appears as though 1/2 is a usable value.
+ max_cmd_len=`expr $max_cmd_len \/ 2`
+fi
#####################################
# Shell function definitions:

View File

@ -0,0 +1,15 @@
Calculating the max args here takes hours.
--- configure
+++ configure
@@ -7351,6 +7351,10 @@
lt_cv_sys_max_cmd_len=8192;
;;
+ mint*)
+ lt_cv_sys_max_cmd_len=8192;
+ ;;
+
amigaos*)
# On AmigaOS with pdksh, this test takes hours, literally.
# So we just punt and use a minimum line length of 8192.

View File

@ -0,0 +1,13 @@
--- release-1-3d.orig 2009-12-03 17:05:15.608916799 +0100
+++ release-1-3d 2009-12-14 22:01:06.634927600 +0100
@@ -1035,6 +1035,10 @@
esac
elif test "$arg" = "-lm"; then
case $host in
+ *-*-hpux*)
+ # Compiler inserts libc in the correct place for threads to work
+ test "X$arg" = "X-lc" && continue
+ ;;
*-*-cygwin* | *-*-pw32* | *-*-beos*)
# These systems don't actually have math library (as such)
continue

View File

@ -0,0 +1,11 @@
--- release-1-5-22.orig 2009-12-03 17:05:15.605534999 +0100
+++ release-1-5-22 2009-12-14 21:56:58.884956366 +0100
@@ -1573,7 +1573,7 @@
# Causes problems with __ctype
test "X$arg" = "X-lc" && continue
;;
- *-*-sysv4.2uw2* | *-*-sysv5* | *-*-unixware* | *-*-OpenUNIX*)
+ *-*-sysv4.2uw2* | *-*-sysv5* | *-*-unixware* | *-*-OpenUNIX* | *-*-hpux*)
# Compiler inserts libc in the correct place for threads to work
test "X$arg" = "X-lc" && continue
;;

View File

@ -0,0 +1,15 @@
--- configure.orig 2004-12-07 21:34:23.205172545 +0000
+++ configure 2004-12-07 21:37:17.726654782 +0000
@@ -5148,10 +5148,8 @@
:
else
{ { echo "$as_me:$LINENO: error: C++ preprocessor \"$CXXCPP\" fails sanity check
-See \`config.log' for more details." >&5
-echo "$as_me: error: C++ preprocessor \"$CXXCPP\" fails sanity check
-See \`config.log' for more details." >&2;}
- { (exit 1); exit 1; }; }
+See \`config.log' for more details." >&5;}
+ { echo "C++ sucks, ignoring ..." >&5; }; }
fi
ac_ext=cc

View File

@ -0,0 +1,7 @@
# Dummy patch, not needed by libtool-1.2
--- ltmain.sh
+++ ltmain.sh
@@ -32,1 +32,1 @@
-PACKAGE=libtool
+PACKAGE=libtool

View File

@ -0,0 +1,66 @@
--- ltmain.sh 2005-09-02 22:19:17.000000000 +0200
+++ ltmain.sh 2005-09-02 22:20:55.000000000 +0200
@@ -3769,9 +3769,50 @@
$echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2
exit 1
fi
- newdependency_libs="$newdependency_libs $libdir/$name"
+ # We do not want portage's install root ($D) present. Check only for
+ # this if the .la is being installed.
+ if test "$installed" = yes && test "$D"; then
+ eval mynewdependency_lib=`echo "$libdir/$name" |sed -e "s:$D:/:g" -e 's:/\+:/:g'`
+ else
+ mynewdependency_lib="$libdir/$name"
+ fi
+ # Do not add duplicates
+ if test "$mynewdependency_lib"; then
+ my_little_ninja_foo_1=`echo $newdependency_libs |$EGREP -e "$mynewdependency_lib"`
+ if test -z "$my_little_ninja_foo_1"; then
+ newdependency_libs="$newdependency_libs $mynewdependency_lib"
+ fi
+ fi
+ ;;
+ *)
+ if test "$installed" = yes; then
+ # Rather use S=WORKDIR if our version of portage supports it.
+ # This is because some ebuild (gcc) do not use $S as buildroot.
+ if test "$WORKDIR"; then
+ S="$WORKDIR"
+ fi
+ # We do not want portage's build root ($S) present.
+ my_little_ninja_foo_2=`echo $deplib |$EGREP -e "$S"`
+ # We do not want portage's install root ($D) present.
+ my_little_ninja_foo_3=`echo $deplib |$EGREP -e "$D"`
+ if test -n "$my_little_ninja_foo_2" && test "$S"; then
+ mynewdependency_lib=""
+ elif test -n "$my_little_ninja_foo_3" && test "$D"; then
+ eval mynewdependency_lib=`echo "$deplib" |sed -e "s:$D:/:g" -e 's:/\+:/:g'`
+ else
+ mynewdependency_lib="$deplib"
+ fi
+ else
+ mynewdependency_lib="$deplib"
+ fi
+ # Do not add duplicates
+ if test "$mynewdependency_lib"; then
+ my_little_ninja_foo_4=`echo $newdependency_libs |$EGREP -e "$mynewdependency_lib"`
+ if test -z "$my_little_ninja_foo_4"; then
+ newdependency_libs="$newdependency_libs $mynewdependency_lib"
+ fi
+ fi
;;
- *) newdependency_libs="$newdependency_libs $deplib" ;;
esac
done
dependency_libs="$newdependency_libs"
@@ -3799,6 +3840,10 @@
dlprefiles="$newdlprefiles"
fi
$rm $output
+ # Do not add duplicates
+ if test "$installed" = yes && test "$D"; then
+ install_libdir=`echo "$install_libdir" |sed -e "s:$D:/:g" -e 's:/\+:/:g'`
+ fi
$echo > $output "\
# $outputname - a libtool library file
# Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP

View File

@ -0,0 +1,71 @@
--- ltmain.sh 2005-05-13 10:53:28.000000000 +0200
+++ ltmain.sh 2005-05-13 11:44:15.000000000 +0200
@@ -3078,6 +3078,68 @@
break
fi
output="$output_objdir/$outputname"i
+ # Replace all uninstalled libtool libraries with the installed ones
+ newdependency_libs=
+ for deplib in $dependency_libs; do
+ case $deplib in
+ *.la)
+ name=`$echo "X$deplib" | $Xsed -e 's%^.*/%%'`
+ eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
+ if test -z "$libdir"; then
+ $echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2
+ exit $EXIT_FAILURE
+ fi
+ # We do not want portage's install root ($D) present. Check only for
+ # this if the .la is being installed.
+ if test "$installed" = yes && test "$D"; then
+ eval mynewdependency_lib=`echo "$libdir/$name" |sed -e "s:$D:/:g" -e 's:/\+:/:g'`
+ else
+ mynewdependency_lib="$libdir/$name"
+ fi
+ # Do not add duplicates
+ if test "$mynewdependency_lib"; then
+ my_little_ninja_foo_1=`echo $newdependency_libs |$EGREP -e "$mynewdependency_lib"`
+ if test -z "$my_little_ninja_foo_1"; then
+ newdependency_libs="$newdependency_libs $mynewdependency_lib"
+ fi
+ fi
+ ;;
+ *)
+ if test "$installed" = yes; then
+ # Rather use S=WORKDIR if our version of portage supports it.
+ # This is because some ebuild (gcc) do not use $S as buildroot.
+ if test "$WORKDIR"; then
+ S="$WORKDIR"
+ fi
+ # We do not want portage's build root ($S) present.
+ my_little_ninja_foo_2=`echo $deplib |$EGREP -e "$S"`
+ # We do not want portage's install root ($D) present.
+ my_little_ninja_foo_3=`echo $deplib |$EGREP -e "$D"`
+ if test -n "$my_little_ninja_foo_2" && test "$S"; then
+ mynewdependency_lib=""
+ elif test -n "$my_little_ninja_foo_3" && test "$D"; then
+ eval mynewdependency_lib=`echo "$deplib" |sed -e "s:$D:/:g" -e 's:/\+:/:g'`
+ else
+ mynewdependency_lib="$deplib"
+ fi
+ else
+ mynewdependency_lib="$deplib"
+ fi
+ # Do not add duplicates
+ if test "$mynewdependency_lib"; then
+ my_little_ninja_foo_4=`echo $newdependency_libs |$EGREP -e "$mynewdependency_lib"`
+ if test -z "$my_little_ninja_foo_4"; then
+ newdependency_libs="$newdependency_libs $mynewdependency_lib"
+ fi
+ fi
+ ;;
+ esac
+ done
+ dependency_libs="$newdependency_libs"
+ fi
+ # Do not add duplicates
+ if test "$installed" = yes && test "$D"; then
+ install_libdir=`echo "$install_libdir" |sed -e "s:$D:/:g" -e 's:/\+:/:g'`
fi
$rm $output
$echo > $output "\

View File

@ -0,0 +1,74 @@
Note that if you update this patch, please update this one as well:
eclass/ELT-patches/portage/1.4.1
The file name can stay 1.4.1, as it will still apply to all versions. Only
when a new version of libtool comes out that it do not apply to, then the
name should be bumped, but the patch content should stay fairly the same.
--- ltmain.sh Wed Apr 3 01:19:37 2002
+++ ltmain.sh Sun May 26 19:50:52 2002
@@ -3940,9 +3940,50 @@
$echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2
exit 1
fi
- newdependency_libs="$newdependency_libs $libdir/$name"
+ # We do not want portage's install root ($D) present. Check only for
+ # this if the .la is being installed.
+ if test "$installed" = yes && test "$D"; then
+ eval mynewdependency_lib=`echo "$libdir/$name" |sed -e "s:$D:/:g" -e 's:/\+:/:g'`
+ else
+ mynewdependency_lib="$libdir/$name"
+ fi
+ # Do not add duplicates
+ if test "$mynewdependency_lib"; then
+ my_little_ninja_foo_1=`echo $newdependency_libs |$EGREP -e "$mynewdependency_lib"`
+ if test -z "$my_little_ninja_foo_1"; then
+ newdependency_libs="$newdependency_libs $mynewdependency_lib"
+ fi
+ fi
+ ;;
+ *)
+ if test "$installed" = yes; then
+ # Rather use S=WORKDIR if our version of portage supports it.
+ # This is because some ebuild (gcc) do not use $S as buildroot.
+ if test "$WORKDIR"; then
+ S="$WORKDIR"
+ fi
+ # We do not want portage's build root ($S) present.
+ my_little_ninja_foo_2=`echo $deplib |$EGREP -e "$S"`
+ # We do not want portage's install root ($D) present.
+ my_little_ninja_foo_3=`echo $deplib |$EGREP -e "$D"`
+ if test -n "$my_little_ninja_foo_2" && test "$S"; then
+ mynewdependency_lib=""
+ elif test -n "$my_little_ninja_foo_3" && test "$D"; then
+ eval mynewdependency_lib=`echo "$deplib" |sed -e "s:$D:/:g" -e 's:/\+:/:g'`
+ else
+ mynewdependency_lib="$deplib"
+ fi
+ else
+ mynewdependency_lib="$deplib"
+ fi
+ # Do not add duplicates
+ if test "$mynewdependency_lib"; then
+ my_little_ninja_foo_4=`echo $newdependency_libs |$EGREP -e "$mynewdependency_lib"`
+ if test -z "$my_little_ninja_foo_4"; then
+ newdependency_libs="$newdependency_libs $mynewdependency_lib"
+ fi
+ fi
;;
- *) newdependency_libs="$newdependency_libs $deplib" ;;
esac
done
dependency_libs="$newdependency_libs"
@@ -3975,6 +4005,10 @@
case $host,$output,$installed,$module,$dlname in
*cygwin*,*lai,yes,no,*.dll) tdlname=../bin/$dlname ;;
esac
+ # Do not add duplicates
+ if test "$installed" = yes && test "$D"; then
+ install_libdir=`echo "$install_libdir" |sed -e "s:$D:/:g" -e 's:/\+:/:g'`
+ fi
$echo > $output "\
# $outputname - a libtool library file
# Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP

View File

@ -0,0 +1,77 @@
Note that if you update this patch, please update this one as well:
eclass/ELT-patches/portage/1.4.1
The file name can stay 1.4.1, as it will still apply to all versions. Only
when a new version of libtool comes out that it do not apply to, then the
name should be bumped, but the patch content should stay fairly the same.
--- ltmain.sh Wed Apr 3 01:19:37 2002
+++ ltmain.sh Sun May 26 19:50:52 2002
@@ -3940,9 +3940,53 @@
$echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2
exit 1
fi
- newdependency_libs="$newdependency_libs $libdir/$name"
+ if test "x$EGREP" = x ; then
+ EGREP=egrep
+ fi
+ # We do not want portage's install root ($D) present. Check only for
+ # this if the .la is being installed.
+ if test "$installed" = yes && test "$D"; then
+ eval mynewdependency_lib=`echo "$libdir/$name" |sed -e "s:$D:/:g" -e 's:/\+:/:g'`
+ else
+ mynewdependency_lib="$libdir/$name"
+ fi
+ # Do not add duplicates
+ if test "$mynewdependency_lib"; then
+ my_little_ninja_foo_1=`echo $newdependency_libs |$EGREP -e "$mynewdependency_lib"`
+ if test -z "$my_little_ninja_foo_1"; then
+ newdependency_libs="$newdependency_libs $mynewdependency_lib"
+ fi
+ fi
+ ;;
+ *)
+ if test "$installed" = yes; then
+ # Rather use S=WORKDIR if our version of portage supports it.
+ # This is because some ebuild (gcc) do not use $S as buildroot.
+ if test "$WORKDIR"; then
+ S="$WORKDIR"
+ fi
+ # We do not want portage's build root ($S) present.
+ my_little_ninja_foo_2=`echo $deplib |$EGREP -e "$S"`
+ # We do not want portage's install root ($D) present.
+ my_little_ninja_foo_3=`echo $deplib |$EGREP -e "$D"`
+ if test -n "$my_little_ninja_foo_2" && test "$S"; then
+ mynewdependency_lib=""
+ elif test -n "$my_little_ninja_foo_3" && test "$D"; then
+ eval mynewdependency_lib=`echo "$deplib" |sed -e "s:$D:/:g" -e 's:/\+:/:g'`
+ else
+ mynewdependency_lib="$deplib"
+ fi
+ else
+ mynewdependency_lib="$deplib"
+ fi
+ # Do not add duplicates
+ if test "$mynewdependency_lib"; then
+ my_little_ninja_foo_4=`echo $newdependency_libs |$EGREP -e "$mynewdependency_lib"`
+ if test -z "$my_little_ninja_foo_4"; then
+ newdependency_libs="$newdependency_libs $mynewdependency_lib"
+ fi
+ fi
;;
- *) newdependency_libs="$newdependency_libs $deplib" ;;
esac
done
dependency_libs="$newdependency_libs"
@@ -3975,6 +4005,10 @@
case $host,$output,$installed,$module,$dlname in
*cygwin*,*lai,yes,no,*.dll) tdlname=../bin/$dlname ;;
esac
+ # Do not add duplicates
+ if test "$installed" = yes && test "$D"; then
+ install_libdir=`echo "$install_libdir" |sed -e "s:$D:/:g" -e 's:/\+:/:g'`
+ fi
$echo > $output "\
# $outputname - a libtool library file
# Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP

View File

@ -0,0 +1,69 @@
--- ltmain.sh
+++ ltmain.sh
@@ -7410,9 +7410,53 @@
eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
test -z "$libdir" && \
func_fatal_error "\`$deplib' is not a valid libtool archive"
- newdependency_libs="$newdependency_libs $libdir/$name"
+ if test "x$EGREP" = x ; then
+ EGREP=egrep
+ fi
+ # We do not want portage's install root ($D) present. Check only for
+ # this if the .la is being installed.
+ if test "$installed" = yes && test "$D"; then
+ eval mynewdependency_lib=`echo "$libdir/$name" |sed -e "s:$D:/:g" -e 's:/\+:/:g'`
+ else
+ mynewdependency_lib="$libdir/$name"
+ fi
+ # Do not add duplicates
+ if test "$mynewdependency_lib"; then
+ my_little_ninja_foo_1=`echo $newdependency_libs |$EGREP -e "$mynewdependency_lib"`
+ if test -z "$my_little_ninja_foo_1"; then
+ newdependency_libs="$newdependency_libs $mynewdependency_lib"
+ fi
+ fi
+ ;;
+ *)
+ if test "$installed" = yes; then
+ # Rather use S=WORKDIR if our version of portage supports it.
+ # This is because some ebuild (gcc) do not use $S as buildroot.
+ if test "$WORKDIR"; then
+ S="$WORKDIR"
+ fi
+ # We do not want portage's build root ($S) present.
+ my_little_ninja_foo_2=`echo $deplib |$EGREP -e "$S"`
+ # We do not want portage's install root ($D) present.
+ my_little_ninja_foo_3=`echo $deplib |$EGREP -e "$D"`
+ if test -n "$my_little_ninja_foo_2" && test "$S"; then
+ mynewdependency_lib=""
+ elif test -n "$my_little_ninja_foo_3" && test "$D"; then
+ eval mynewdependency_lib=`echo "$deplib" |sed -e "s:$D:/:g" -e 's:/\+:/:g'`
+ else
+ mynewdependency_lib="$deplib"
+ fi
+ else
+ mynewdependency_lib="$deplib"
+ fi
+ # Do not add duplicates
+ if test "$mynewdependency_lib"; then
+ my_little_ninja_foo_4=`echo $newdependency_libs |$EGREP -e "$mynewdependency_lib"`
+ if test -z "$my_little_ninja_foo_4"; then
+ newdependency_libs="$newdependency_libs $mynewdependency_lib"
+ fi
+ fi
;;
- *) newdependency_libs="$newdependency_libs $deplib" ;;
esac
done
dependency_libs="$newdependency_libs"
@@ -7476,6 +7520,10 @@
case $host,$output,$installed,$module,$dlname in
*cygwin*,*lai,yes,no,*.dll | *mingw*,*lai,yes,no,*.dll) tdlname=../bin/$dlname ;;
esac
+ # Do not add duplicates
+ if test "$installed" = yes && test "$D"; then
+ install_libdir=`echo "$install_libdir" |sed -e "s:$D:/:g" -e 's:/\+:/:g'`
+ fi
$ECHO > $output "\
# $outputname - a libtool library file
# Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION

View File

@ -0,0 +1,24 @@
--- ltmain.sh
+++ ltmain.sh
@@ -3203,6 +3203,12 @@
add_dir="$add_dir -L$inst_prefix_dir$libdir"
;;
esac
+ else
+ case $libdir in
+ [\\/]*)
+ add_dir="$add_dir -L\\\"\\\${D}\\\"$libdir"
+ ;;
+ esac
fi
add="-l$name"
fi
@@ -6630,7 +6636,7 @@
esac
fi
libfile="$libdir/"`$echo "X$lib" | $Xsed -e 's%^.*/%%g'` ### testsuite: skip nested quoting test
- if test -n "$libdir" && test ! -f "$libfile"; then
+ if test -n "$libdir" && test ! -f "${D}$libfile"; then
$echo "$modename: warning: \`$lib' has not been installed in \`$libdir'" 1>&2
finalize=no
fi

View File

@ -0,0 +1,24 @@
--- ltmain-v2.2.6.in 2009-06-22 15:33:27.000000000 +0200
+++ ltmain-v2.2.6.in.new 2009-07-16 16:21:04.000000000 +0200
@@ -1742,7 +1742,7 @@
func_source "$lib"
fi
libfile="$libdir/"`$ECHO "X$lib" | $Xsed -e 's%^.*/%%g'` ### testsuite: skip nested quoting test
- if test -n "$libdir" && test ! -f "$libfile"; then
+ if test -n "$libdir" && test ! -f "${D}$libfile"; then
func_warning "\`$lib' has not been installed in \`$libdir'"
finalize=no
fi
@@ -5351,6 +5351,12 @@
add_dir="$add_dir -L$inst_prefix_dir$libdir"
;;
esac
+ else
+ case $libdir in
+ [\\/]*)
+ add_dir="$add_dir -L\\\"\\\${D}\\\"$libdir"
+ ;;
+ esac
fi
add="-l$name"
fi

View File

@ -0,0 +1,99 @@
--- ltmain.sh Wed Oct 3 02:05:35 2001
+++ ltmain.sh Wed Oct 3 05:16:14 2001
@@ -754,6 +754,7 @@
linker_flags=
dllsearchpath=
lib_search_path=`pwd`
+ inst_prefix_dir=
avoid_version=no
dlfiles=
@@ -884,6 +885,11 @@
prev=
continue
;;
+ inst_prefix)
+ inst_prefix_dir="$arg"
+ prev=
+ continue
+ ;;
release)
release="-$arg"
prev=
@@ -985,6 +991,11 @@
continue
;;
+ -inst-prefix-dir)
+ prev=inst_prefix
+ continue
+ ;;
+
# The native IRIX linker understands -LANG:*, -LIST:* and -LNO:*
# so, if we see these flags be careful not to treat them like -L
-L[A-Z][A-Z]*:*)
@@ -1866,6 +1877,7 @@
if test "$linkmode" = prog || test "$mode" = relink; then
add_shlibpath=
+ add_prefix_dir=
add_dir=
add=
# Finalize command for both is simple: just hardcode it.
@@ -1886,10 +1898,22 @@
add="-l$name"
fi
+ if test -n "$inst_prefix_dir"; then
+ case "$libdir" in
+ [\\/]*)
+ add_prefix_dir="-L$inst_prefix_dir$libdir"
+ ;;
+ esac
+ fi
+
+ # add_prefix_dir must be appended instead, otherwise it can
+ # possibly be overrided by any hardcoded -L/... path in deplibs
if test "$linkmode" = prog; then
+ test -n "$add_prefix_dir" && finalize_deplibs="$finalize_deplibs $add_prefix_dir"
test -n "$add_dir" && finalize_deplibs="$add_dir $finalize_deplibs"
test -n "$add" && finalize_deplibs="$add $finalize_deplibs"
else
+ test -n "$add_prefix_dir" && deplibs="$deplibs $add_prefix_dir"
test -n "$add_dir" && deplibs="$add_dir $deplibs"
test -n "$add" && deplibs="$add $deplibs"
fi
@@ -3856,7 +3880,7 @@
fi
done
# Quote the link command for shipping.
- relink_command="($relink_command; cd `pwd`; $SHELL $0 --mode=relink $libtool_args)"
+ relink_command="($relink_command; cd `pwd`; $SHELL $0 --mode=relink $libtool_args @inst_prefix_dir@)"
relink_command=`$echo "X$relink_command" | $Xsed -e "$sed_quote_subst"`
# Only create the output if not a dry run.
@@ -4157,6 +4181,24 @@
dir="$dir$objdir"
if test -n "$relink_command"; then
+ # Determine the prefix the user has applied to our future dir.
+ inst_prefix_dir=`$echo "$destdir" | sed "s%$libdir\$%%"`
+
+ # Don't allow the user to place us outside of our expected
+ # location b/c this prevents finding dependent libraries that
+ # are installed to the same prefix.
+ if test "$inst_prefix_dir" = "$destdir"; then
+ $echo "$modename: error: cannot install \`$file' to a directory not ending in $libdir" 1>&2
+ exit 1
+ fi
+
+ if test -n "$inst_prefix_dir"; then
+ # Stick the inst_prefix_dir data into the link command.
+ relink_command=`$echo "$relink_command" | sed "s%@inst_prefix_dir@%-inst-prefix-dir $inst_prefix_dir%"`
+ else
+ relink_command=`$echo "$relink_command" | sed "s%@inst_prefix_dir@%%"`
+ fi
+
$echo "$modename: warning: relinking \`$file'" 1>&2
$show "$relink_command"
if $run eval "$relink_command"; then :

View File

@ -0,0 +1,99 @@
--- ltmain.sh Wed Oct 3 02:05:35 2001
+++ ltmain.sh Wed Oct 3 05:16:14 2001
@@ -754,6 +754,7 @@
linker_flags=
dllsearchpath=
lib_search_path=`pwd`
+ inst_prefix_dir=
avoid_version=no
dlfiles=
@@ -884,6 +885,11 @@
prev=
continue
;;
+ inst_prefix)
+ inst_prefix_dir="$arg"
+ prev=
+ continue
+ ;;
release)
release="-$arg"
prev=
@@ -985,6 +991,11 @@
continue
;;
+ -inst-prefix-dir)
+ prev=inst_prefix
+ continue
+ ;;
+
# The native IRIX linker understands -LANG:*, -LIST:* and -LNO:*
# so, if we see these flags be careful not to treat them like -L
-L[A-Z][A-Z]*:*)
@@ -1866,6 +1877,7 @@
if test "$linkmode" = prog || test "$mode" = relink; then
add_shlibpath=
+ add_prefix_dir=
add_dir=
add=
# Finalize command for both is simple: just hardcode it.
@@ -1886,10 +1898,22 @@
add="-l$name"
fi
+ if test -n "$inst_prefix_dir"; then
+ case "$libdir" in
+ [\\/]*)
+ add_prefix_dir="-L$inst_prefix_dir$libdir"
+ ;;
+ esac
+ fi
+
+ # add_prefix_dir must be appended instead, otherwise it can
+ # possibly be overrided by any hardcoded -L/... path in deplibs
if test "$linkmode" = prog; then
+ test -n "$add_prefix_dir" && finalize_deplibs="$finalize_deplibs $add_prefix_dir"
test -n "$add_dir" && finalize_deplibs="$add_dir $finalize_deplibs"
test -n "$add" && finalize_deplibs="$add $finalize_deplibs"
else
+ test -n "$add_prefix_dir" && deplibs="$deplibs $add_prefix_dir"
test -n "$add_dir" && deplibs="$add_dir $deplibs"
test -n "$add" && deplibs="$add $deplibs"
fi
@@ -3856,7 +3880,7 @@
for tag in $taglist; do
tagopts="$tagopts --tag $tag"
done
- relink_command="(cd `pwd`; $SHELL $0$tagopts --mode=relink $libtool_args)"
+ relink_command="(cd `pwd`; $SHELL $0$tagopts --mode=relink $libtool_args @inst_prefix_dir@)"
relink_command=`$echo "X$relink_command" | $Xsed -e "$sed_quote_subst"`
# Only create the output if not a dry run.
@@ -4157,6 +4181,24 @@
dir="$dir$objdir"
if test -n "$relink_command"; then
+ # Determine the prefix the user has applied to our future dir.
+ inst_prefix_dir=`$echo "$destdir" | sed "s%$libdir\$%%"`
+
+ # Don't allow the user to place us outside of our expected
+ # location b/c this prevents finding dependent libraries that
+ # are installed to the same prefix.
+ if test "$inst_prefix_dir" = "$destdir"; then
+ $echo "$modename: error: cannot install \`$file' to a directory not ending in $libdir" 1>&2
+ exit 1
+ fi
+
+ if test -n "$inst_prefix_dir"; then
+ # Stick the inst_prefix_dir data into the link command.
+ relink_command=`$echo "$relink_command" | sed "s%@inst_prefix_dir@%-inst-prefix-dir $inst_prefix_dir%"`
+ else
+ relink_command=`$echo "$relink_command" | sed "s%@inst_prefix_dir@%%"`
+ fi
+
$echo "$modename: warning: relinking \`$file'" 1>&2
$show "$relink_command"
if $run eval "$relink_command"; then :

View File

@ -0,0 +1,100 @@
--- ltmain.sh Wed Oct 3 02:05:35 2001
+++ ltmain.sh Wed Oct 3 05:16:14 2001
@@ -754,6 +754,7 @@
linker_flags=
dllsearchpath=
lib_search_path=`pwd`
+ inst_prefix_dir=
avoid_version=no
dlfiles=
@@ -884,6 +885,11 @@
prev=
continue
;;
+ inst_prefix)
+ inst_prefix_dir="$arg"
+ prev=
+ continue
+ ;;
release)
release="-$arg"
prev=
@@ -985,6 +991,11 @@
continue
;;
+ -inst-prefix-dir)
+ prev=inst_prefix
+ continue
+ ;;
+
# The native IRIX linker understands -LANG:*, -LIST:* and -LNO:*
# so, if we see these flags be careful not to treat them like -L
-L[A-Z][A-Z]*:*)
@@ -1866,6 +1877,7 @@
if test "$linkmode" = prog || test "$mode" = relink; then
add_shlibpath=
+ add_prefix_dir=
add_dir=
add=
# Finalize command for both is simple: just hardcode it.
@@ -1886,10 +1898,22 @@
add="-l$name"
fi
- if test $linkmode = prog; then
+ if test -n "$inst_prefix_dir"; then
+ case "$libdir" in
+ [\\/]*)
+ add_prefix_dir="-L$inst_prefix_dir$libdir"
+ ;;
+ esac
+ fi
+
+ # add_prefix_dir must be appended instead, otherwise it can
+ # possibly be overrided by any hardcoded -L/... path in deplibs
+ if test "$linkmode" = prog; then
+ test -n "$add_prefix_dir" && finalize_deplibs="$finalize_deplibs $add_prefix_dir"
test -n "$add_dir" && finalize_deplibs="$add_dir $finalize_deplibs"
test -n "$add" && finalize_deplibs="$add $finalize_deplibs"
else
+ test -n "$add_prefix_dir" && deplibs="$deplibs $add_prefix_dir"
test -n "$add_dir" && deplibs="$add_dir $deplibs"
test -n "$add" && deplibs="$add $deplibs"
fi
@@ -3856,7 +3880,7 @@
for tag in $taglist; do
tagopts="$tagopts --tag $tag"
done
- relink_command="(cd `pwd`; $SHELL $0$tagopts --mode=relink $libtool_args)"
+ relink_command="(cd `pwd`; $SHELL $0$tagopts --mode=relink $libtool_args @inst_prefix_dir@)"
relink_command=`$echo "X$relink_command" | $Xsed -e "$sed_quote_subst"`
# Only create the output if not a dry run.
@@ -4157,6 +4181,24 @@
dir="$dir$objdir"
if test -n "$relink_command"; then
+ # Determine the prefix the user has applied to our future dir.
+ inst_prefix_dir=`$echo "$destdir" | sed "s%$libdir\$%%"`
+
+ # Don't allow the user to place us outside of our expected
+ # location b/c this prevents finding dependent libraries that
+ # are installed to the same prefix.
+ if test "$inst_prefix_dir" = "$destdir"; then
+ $echo "$modename: error: cannot install \`$file' to a directory not ending in $libdir" 1>&2
+ exit 1
+ fi
+
+ if test -n "$inst_prefix_dir"; then
+ # Stick the inst_prefix_dir data into the link command.
+ relink_command=`$echo "$relink_command" | sed "s%@inst_prefix_dir@%-inst-prefix-dir $inst_prefix_dir%"`
+ else
+ relink_command=`$echo "$relink_command" | sed "s%@inst_prefix_dir@%%"`
+ fi
+
$echo "$modename: warning: relinking \`$file'" 1>&2
$show "$relink_command"
if $run eval "$relink_command"; then :

View File

@ -0,0 +1,124 @@
--- ltmain.sh Sun Aug 12 18:08:05 2001
+++ ltmain.sh Tue Aug 28 18:55:13 2001
@@ -827,6 +827,7 @@
linker_flags=
dllsearchpath=
lib_search_path=`pwd`
+ inst_prefix_dir=
avoid_version=no
dlfiles=
@@ -959,6 +960,11 @@
prev=
continue
;;
+ inst_prefix)
+ inst_prefix_dir="$arg"
+ prev=
+ continue
+ ;;
release)
release="-$arg"
prev=
@@ -1167,6 +1173,11 @@
continue
;;
+ -inst-prefix-dir)
+ prev=inst_prefix
+ continue
+ ;;
+
# The native IRIX linker understands -LANG:*, -LIST:* and -LNO:*
# so, if we see these flags be careful not to treat them like -L
-L[A-Z][A-Z]*:*)
@@ -2231,7 +2242,16 @@
if test "$hardcode_direct" = yes; then
add="$libdir/$linklib"
elif test "$hardcode_minus_L" = yes; then
- add_dir="-L$libdir"
+ # Try looking first in the location we're being installed to.
+ add_dir=
+ if test -n "$inst_prefix_dir"; then
+ case "$libdir" in
+ [\\/]*)
+ add_dir="-L$inst_prefix_dir$libdir"
+ ;;
+ esac
+ fi
+ add_dir="$add_dir -L$libdir"
add="-l$name"
elif test "$hardcode_shlibpath_var" = yes; then
case :$finalize_shlibpath: in
@@ -2241,7 +2261,16 @@
add="-l$name"
else
# We cannot seem to hardcode it, guess we'll fake it.
- add_dir="-L$libdir"
+ # Try looking first in the location we're being installed to.
+ add_dir=
+ if test -n "$inst_prefix_dir"; then
+ case "$libdir" in
+ [\\/]*)
+ add_dir="-L$inst_prefix_dir$libdir"
+ ;;
+ esac
+ fi
+ add_dir="$add_dir -L$libdir"
add="-l$name"
fi
@@ -4321,7 +4350,7 @@
fi
done
# Quote the link command for shipping.
- relink_command="cd `pwd`; $SHELL $0 --mode=relink $libtool_args"
+ relink_command="cd `pwd`; $SHELL $0 --mode=relink $libtool_args @inst_prefix_dir@"
relink_command=`$echo "X$relink_command" | $Xsed -e "$sed_quote_subst"`
# Only create the output if not a dry run.
@@ -4622,12 +4651,30 @@
dir="$dir$objdir"
if test -n "$relink_command"; then
+ # Determine the prefix the user has applied to our future dir.
+ inst_prefix_dir=`$echo "$destdir" | sed "s%$libdir\$%%"`
+
+ # Don't allow the user to place us outside of our expected
+ # location b/c this prevents finding dependent libraries that
+ # are installed to the same prefix.
+ if test "$inst_prefix_dir" = "$destdir"; then
+ $echo "$modename: error: cannot install \`$file' to a directory not ending in $libdir" 1>&2
+ exit 1
+ fi
+
+ if test -n "$inst_prefix_dir"; then
+ # Stick the inst_prefix_dir data into the link command.
+ relink_command=`$echo "$relink_command" | sed "s%@inst_prefix_dir@%-inst-prefix-dir $inst_prefix_dir%"`
+ else
+ relink_command=`$echo "$relink_command" | sed "s%@inst_prefix_dir@%%"`
+ fi
+
$echo "$modename: warning: relinking \`$file'" 1>&2
$show "$relink_command"
if $run eval "$relink_command"; then :
else
$echo "$modename: error: relink \`$file' with the above command before installing it" 1>&2
- continue
+ exit 1
fi
fi
@@ -4782,7 +4829,11 @@
if test "$finalize" = yes && test -z "$run"; then
tmpdir="/tmp"
test -n "$TMPDIR" && tmpdir="$TMPDIR"
- tmpdir="$tmpdir/libtool-$$"
+ tmpdir=`mktemp -d $tmpdir/libtool-XXXXXX 2> /dev/null`
+ if test $? = 0 ; then :
+ else
+ tmpdir="$tmpdir/libtool-$$"
+ fi
if $mkdir -p "$tmpdir" && chmod 700 "$tmpdir"; then :
else
$echo "$modename: error: cannot create temporary directory \`$tmpdir'" 1>&2

View File

@ -0,0 +1,99 @@
--- ltmain.sh Wed Oct 3 02:05:35 2001
+++ ltmain.sh Wed Oct 3 05:16:14 2001
@@ -754,6 +754,7 @@
linker_flags=
dllsearchpath=
lib_search_path=`pwd`
+ inst_prefix_dir=
avoid_version=no
dlfiles=
@@ -884,6 +885,11 @@
prev=
continue
;;
+ inst_prefix)
+ inst_prefix_dir="$arg"
+ prev=
+ continue
+ ;;
release)
release="-$arg"
prev=
@@ -985,6 +991,11 @@
continue
;;
+ -inst-prefix-dir)
+ prev=inst_prefix
+ continue
+ ;;
+
# The native IRIX linker understands -LANG:*, -LIST:* and -LNO:*
# so, if we see these flags be careful not to treat them like -L
-L[A-Z][A-Z]*:*)
@@ -1866,6 +1877,7 @@
if test "$linkmode" = prog || test "$mode" = relink; then
add_shlibpath=
+ add_prefix_dir=
add_dir=
add=
# Finalize command for both is simple: just hardcode it.
@@ -1886,10 +1898,22 @@
add="-l$name"
fi
+ if test -n "$inst_prefix_dir"; then
+ case "$libdir" in
+ [\\/]*)
+ add_prefix_dir="-L$inst_prefix_dir$libdir"
+ ;;
+ esac
+ fi
+
+ # add_prefix_dir must be appended instead, otherwise it can
+ # possibly be overrided by any hardcoded -L/... path in deplibs
if test "$linkmode" = prog; then
+ test -n "$add_prefix_dir" && finalize_deplibs="$finalize_deplibs $add_prefix_dir"
test -n "$add_dir" && finalize_deplibs="$add_dir $finalize_deplibs"
test -n "$add" && finalize_deplibs="$add $finalize_deplibs"
else
+ test -n "$add_prefix_dir" && deplibs="$deplibs $add_prefix_dir"
test -n "$add_dir" && deplibs="$add_dir $deplibs"
test -n "$add" && deplibs="$add $deplibs"
fi
@@ -3856,7 +3880,7 @@
fi
done
# Quote the link command for shipping.
- relink_command="(cd `pwd`; $SHELL $0 --mode=relink $libtool_args)"
+ relink_command="(cd `pwd`; $SHELL $0 --mode=relink $libtool_args @inst_prefix_dir@)"
relink_command=`$echo "X$relink_command" | $Xsed -e "$sed_quote_subst"`
# Only create the output if not a dry run.
@@ -4157,6 +4181,24 @@
dir="$dir$objdir"
if test -n "$relink_command"; then
+ # Determine the prefix the user has applied to our future dir.
+ inst_prefix_dir=`$echo "$destdir" | sed "s%$libdir\$%%"`
+
+ # Don't allow the user to place us outside of our expected
+ # location b/c this prevents finding dependent libraries that
+ # are installed to the same prefix.
+ if test "$inst_prefix_dir" = "$destdir"; then
+ $echo "$modename: error: cannot install \`$file' to a directory not ending in $libdir" 1>&2
+ exit 1
+ fi
+
+ if test -n "$inst_prefix_dir"; then
+ # Stick the inst_prefix_dir data into the link command.
+ relink_command=`$echo "$relink_command" | sed "s%@inst_prefix_dir@%-inst-prefix-dir $inst_prefix_dir%"`
+ else
+ relink_command=`$echo "$relink_command" | sed "s%@inst_prefix_dir@%%"`
+ fi
+
$echo "$modename: warning: relinking \`$file'" 1>&2
$show "$relink_command"
if $run eval "$relink_command"; then :

View File

@ -0,0 +1,111 @@
--- ltmain.sh Mon Feb 4 15:12:15 2002
+++ ltmain.sh Mon Feb 4 15:12:15 2002
@@ -745,6 +745,7 @@
linker_flags=
dllsearchpath=
lib_search_path=`pwd`
+ inst_prefix_dir=
avoid_version=no
dlfiles=
@@ -875,6 +876,11 @@
prev=
continue
;;
+ inst_prefix)
+ inst_prefix_dir="$arg"
+ prev=
+ continue
+ ;;
release)
release="-$arg"
prev=
@@ -976,6 +982,11 @@
continue
;;
+ -inst-prefix-dir)
+ prev=inst_prefix
+ continue
+ ;;
+
# The native IRIX linker understands -LANG:*, -LIST:* and -LNO:*
# so, if we see these flags be careful not to treat them like -L
-L[A-Z][A-Z]*:*)
@@ -1851,7 +1862,16 @@
if test "$hardcode_direct" = yes; then
add="$libdir/$linklib"
elif test "$hardcode_minus_L" = yes; then
- add_dir="-L$libdir"
+ # Try looking first in the location we're being installed to.
+ add_dir=
+ if test -n "$inst_prefix_dir"; then
+ case "$libdir" in
+ [\\/]*)
+ add_dir="-L$inst_prefix_dir$libdir"
+ ;;
+ esac
+ fi
+ add_dir="$add_dir -L$libdir"
add="-l$name"
elif test "$hardcode_shlibpath_var" = yes; then
case :$finalize_shlibpath: in
@@ -1861,7 +1881,16 @@
add="-l$name"
else
# We cannot seem to hardcode it, guess we'll fake it.
- add_dir="-L$libdir"
+ # Try looking first in the location we're being installed to.
+ add_dir=
+ if test -n "$inst_prefix_dir"; then
+ case "$libdir" in
+ [\\/]*)
+ add_dir="-L$inst_prefix_dir$libdir"
+ ;;
+ esac
+ fi
+ add_dir="$add_dir -L$libdir"
add="-l$name"
fi
@@ -3823,7 +3852,7 @@
fi
done
# Quote the link command for shipping.
- relink_command="(cd `pwd`; $SHELL $0 --mode=relink $libtool_args)"
+ relink_command="(cd `pwd`; $SHELL $0 --mode=relink $libtool_args @inst_prefix_dir@)"
relink_command=`$echo "X$relink_command" | $Xsed -e "$sed_quote_subst"`
# Only create the output if not a dry run.
@@ -4124,12 +4153,30 @@
dir="$dir$objdir"
if test -n "$relink_command"; then
+ # Determine the prefix the user has applied to our future dir.
+ inst_prefix_dir=`$echo "$destdir" | sed "s%$libdir\$%%"`
+
+ # Don't allow the user to place us outside of our expected
+ # location b/c this prevents finding dependent libraries that
+ # are installed to the same prefix.
+ if test "$inst_prefix_dir" = "$destdir"; then
+ $echo "$modename: error: cannot install \`$file' to a directory not ending in $libdir" 1>&2
+ exit 1
+ fi
+
+ if test -n "$inst_prefix_dir"; then
+ # Stick the inst_prefix_dir data into the link command.
+ relink_command=`$echo "$relink_command" | sed "s%@inst_prefix_dir@%-inst-prefix-dir $inst_prefix_dir%"`
+ else
+ relink_command=`$echo "$relink_command" | sed "s%@inst_prefix_dir@%%"`
+ fi
+
$echo "$modename: warning: relinking \`$file'" 1>&2
$show "$relink_command"
if $run eval "$relink_command"; then :
else
$echo "$modename: error: relink \`$file' with the above command before installing it" 1>&2
- continue
+ exit 1
fi
fi

View File

@ -0,0 +1,11 @@
--- ltmain.sh 2002-11-01 19:56:50.000000000 -0600
+++ ltmain.sh 2002-11-01 19:57:03.000000000 -0600
@@ -4551,6 +4551,8 @@
if test "$installed" = yes && test "$D"; then
install_libdir="`echo "$install_libdir" |sed -e "s:$D::g" -e 's://:/:g'`"
fi
+ # Removing @REM_INT_DEP@ from dependency_libs in .la
+ dependency_libs=`echo $dependency_libs | $Xsed -e 's%\([^ ]*lib@REM_INT_DEP@\.\(so\|la\|a\)\)\|\(-l@REM_INT_DEP@\)%%g'`
\$echo > \$output "\\
# \$outputname - a libtool library file
# Generated by \$PROGRAM - GNU \$PACKAGE \$VERSION\$TIMESTAMP

View File

@ -0,0 +1,14 @@
--- ltmain.sh 2005-05-13 11:48:24.000000000 +0200
+++ ltmain.sh 2005-05-13 11:48:42.000000000 +0200
@@ -47,6 +47,11 @@
exit 0
fi
+# define variables for historic ltconfig's generated by Libtool 1.3
+test -z "$SED" && SED=sed
+test -z "$EGREP" && EGREP=egrep
+test -z "$LTCC" && LTCC=${CC-gcc}
+
# The name of this program.
progname=`$echo "$0" | sed 's%^.*/%%'`
modename="$progname"

View File

@ -0,0 +1,14 @@
--- ltmain.sh 2003-02-13 14:54:24.000000000 +0100
+++ ltmain.sh 2003-02-13 15:24:49.000000000 +0100
@@ -48,6 +48,11 @@ EOF
exit 0
fi
+# define variables for historic ltconfig's generated by Libtool 1.3
+test -z "$SED" && SED=sed
+test -z "$EGREP" && EGREP=egrep
+test -z "$LTCC" && LTCC=${CC-gcc}
+
# The name of this program.
progname=`$echo "$0" | ${SED} 's%^.*/%%'`
modename="$progname"

View File

@ -0,0 +1,16 @@
--- ltmain.sh 2005-04-16 16:50:02.000000000 +0200
+++ ltmain.sh 2005-04-16 16:46:46.000000000 +0200
@@ -39,6 +39,13 @@
if [ "x$SED" = x ] ; then
SED=sed
fi
+# Same for EGREP, and just to be sure, do LTCC as well
+if test "x$EGREP" = x ; then
+ EGREP=egrep
+fi
+if test "x$LTCC" = x ; then
+ LTCC=${CC-gcc}
+fi
# The name of this program:
progname=`echo "$progpath" | $SED $basename`

View File

@ -0,0 +1,21 @@
the linux target parses /etc/ld.so.conf to see what paths are
searched at runtime, and hardcodes /lib /usr/lib as a fallback.
this works poorly when cross-compiling, so tweak the behavior:
- search $SYSROOT/etc/ld.so.conf
- default to Gentoo's notion of the active multilib
--- a/configure
+++ b/configure
@@ -10405,9 +10405,9 @@
hardcode_into_libs=yes
# Append ld.so.conf contents to the search path
- if test -f /etc/ld.so.conf; then
- lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;s/"//g;/^$/d' | tr '\n' ' '`
- sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
+ if test -f "$SYSROOT"/etc/ld.so.conf; then
+ lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < "$SYSROOT"/etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;s/"//g;/^$/d' | tr '\n' ' '`
+ sys_lib_dlsearch_path_spec="/@GENTOO_LIBDIR@ /usr/@GENTOO_LIBDIR@ $lt_ld_extra"
fi
# We used to test for /lib/ld.so.1 and disable shared libraries on

View File

@ -0,0 +1,291 @@
--- ltmain.sh Tue May 29 19:16:03 2001
+++ ltmain.sh Tue May 29 21:26:50 2001
@@ -459,7 +459,7 @@
pic_mode=default
;;
esac
- if test $pic_mode = no && test "$deplibs_check_method" != pass_all; then
+ if test "$pic_mode" = no && test "$deplibs_check_method" != pass_all; then
# non-PIC code in shared libraries is not supported
pic_mode=default
fi
@@ -1343,7 +1343,7 @@
;;
esac
for pass in $passes; do
- if test $linkmode = prog; then
+ if test "$linkmode" = prog; then
# Determine which files to process
case $pass in
dlopen)
@@ -1360,11 +1360,11 @@
found=no
case $deplib in
-l*)
- if test $linkmode = oldlib && test $linkmode = obj; then
+ if test "$linkmode" = oldlib && test "$linkmode" = obj; then
$echo "$modename: warning: \`-l' is ignored for archives/objects: $deplib" 1>&2
continue
fi
- if test $pass = conv; then
+ if test "$pass" = conv; then
deplibs="$deplib $deplibs"
continue
fi
@@ -1384,7 +1384,7 @@
finalize_deplibs="$deplib $finalize_deplibs"
else
deplibs="$deplib $deplibs"
- test $linkmode = lib && newdependency_libs="$deplib $newdependency_libs"
+ test "$linkmode" = lib && newdependency_libs="$deplib $newdependency_libs"
fi
continue
fi
@@ -1393,16 +1393,16 @@
case $linkmode in
lib)
deplibs="$deplib $deplibs"
- test $pass = conv && continue
+ test "$pass" = conv && continue
newdependency_libs="$deplib $newdependency_libs"
newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'`
;;
prog)
- if test $pass = conv; then
+ if test "$pass" = conv; then
deplibs="$deplib $deplibs"
continue
fi
- if test $pass = scan; then
+ if test "$pass" = scan; then
deplibs="$deplib $deplibs"
newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'`
else
@@ -1417,7 +1417,7 @@
continue
;; # -L
-R*)
- if test $pass = link; then
+ if test "$pass" = link; then
dir=`$echo "X$deplib" | $Xsed -e 's/^-R//'`
# Make sure the xrpath contains only unique directories.
case "$xrpath " in
@@ -1430,7 +1430,7 @@
;;
*.la) lib="$deplib" ;;
*.$libext)
- if test $pass = conv; then
+ if test "$pass" = conv; then
deplibs="$deplib $deplibs"
continue
fi
@@ -1451,7 +1451,7 @@
continue
;;
prog)
- if test $pass != link; then
+ if test "$pass" != link; then
deplibs="$deplib $deplibs"
else
compile_deplibs="$deplib $compile_deplibs"
@@ -1462,7 +1462,7 @@
esac # linkmode
;; # *.$libext
*.lo | *.$objext)
- if test $pass = dlpreopen || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; then
+ if test "$pass" = dlpreopen || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; then
# If there is no dlopen support or we're linking statically,
# we need to preload.
newdlprefiles="$newdlprefiles $deplib"
@@ -1512,13 +1512,13 @@
if test "$linkmode,$pass" = "lib,link" ||
test "$linkmode,$pass" = "prog,scan" ||
- { test $linkmode = oldlib && test $linkmode = obj; }; then
+ { test "$linkmode" = oldlib && test "$linkmode" = obj; }; then
# Add dl[pre]opened files of deplib
test -n "$dlopen" && dlfiles="$dlfiles $dlopen"
test -n "$dlpreopen" && dlprefiles="$dlprefiles $dlpreopen"
fi
- if test $pass = conv; then
+ if test "$pass" = conv; then
# Only check for convenience libraries
deplibs="$lib $deplibs"
if test -z "$libdir"; then
@@ -1537,7 +1537,7 @@
esac
tmp_libs="$tmp_libs $deplib"
done
- elif test $linkmode != prog && test $linkmode != lib; then
+ elif test "$linkmode" != prog && test "$linkmode" != lib; then
$echo "$modename: \`$lib' is not a convenience library" 1>&2
exit 1
fi
@@ -1555,7 +1555,7 @@
fi
# This library was specified with -dlopen.
- if test $pass = dlopen; then
+ if test "$pass" = dlopen; then
if test -z "$libdir"; then
$echo "$modename: cannot -dlopen a convenience library: \`$lib'" 1>&2
exit 1
@@ -1604,7 +1604,7 @@
name=`$echo "X$laname" | $Xsed -e 's/\.la$//' -e 's/^lib//'`
# This library was specified with -dlpreopen.
- if test $pass = dlpreopen; then
+ if test "$pass" = dlpreopen; then
if test -z "$libdir"; then
$echo "$modename: cannot -dlpreopen a convenience library: \`$lib'" 1>&2
exit 1
@@ -1623,7 +1623,7 @@
if test -z "$libdir"; then
# Link the convenience library
- if test $linkmode = lib; then
+ if test "$linkmode" = lib; then
deplibs="$dir/$old_library $deplibs"
elif test "$linkmode,$pass" = "prog,link"; then
compile_deplibs="$dir/$old_library $compile_deplibs"
@@ -1634,7 +1634,7 @@
continue
fi
- if test $linkmode = prog && test $pass != link; then
+ if test "$linkmode" = prog && test "$pass" != link; then
newlib_search_path="$newlib_search_path $ladir"
deplibs="$lib $deplibs"
@@ -1671,7 +1671,7 @@
# Link against this shared library
if test "$linkmode,$pass" = "prog,link" ||
- { test $linkmode = lib && test $hardcode_into_libs = yes; }; then
+ { test "$linkmode" = lib && test "$hardcode_into_libs" = yes; }; then
# Hardcode the library path.
# Skip directories that are in the system default run-time
# search path.
@@ -1693,7 +1693,7 @@
esac
;;
esac
- if test $linkmode = prog; then
+ if test "$linkmode" = prog; then
# We need to hardcode the library path
if test -n "$shlibpath_var"; then
# Make sure the rpath contains only unique directories.
@@ -1777,7 +1777,7 @@
linklib=$newlib
fi # test -n $old_archive_from_expsyms_cmds
- if test $linkmode = prog || test "$mode" != relink; then
+ if test "$linkmode" = prog || test "$mode" != relink; then
add_shlibpath=
add_dir=
add=
@@ -1826,7 +1826,7 @@
*) compile_shlibpath="$compile_shlibpath$add_shlibpath:" ;;
esac
fi
- if test $linkmode = prog; then
+ if test "$linkmode" = prog; then
test -n "$add_dir" && compile_deplibs="$add_dir $compile_deplibs"
test -n "$add" && compile_deplibs="$add $compile_deplibs"
else
@@ -1843,7 +1843,7 @@
fi
fi
- if test $linkmode = prog || test "$mode" = relink; then
+ if test "$linkmode" = prog || test "$mode" = relink; then
add_shlibpath=
add_dir=
add=
@@ -1865,7 +1865,7 @@
add="-l$name"
fi
- if test $linkmode = prog; then
+ if test "$linkmode" = prog; then
test -n "$add_dir" && finalize_deplibs="$add_dir $finalize_deplibs"
test -n "$add" && finalize_deplibs="$add $finalize_deplibs"
else
@@ -1873,7 +1873,7 @@
test -n "$add" && deplibs="$add $deplibs"
fi
fi
- elif test $linkmode = prog; then
+ elif test "$linkmode" = prog; then
if test "$alldeplibs" = yes &&
{ test "$deplibs_check_method" = pass_all ||
{ test "$build_libtool_libs" = yes &&
@@ -1932,9 +1932,9 @@
fi
fi # link shared/static library?
- if test $linkmode = lib; then
+ if test "$linkmode" = lib; then
if test -n "$dependency_libs" &&
- { test $hardcode_into_libs != yes || test $build_old_libs = yes ||
+ { test "$hardcode_into_libs" != yes || test $build_old_libs = yes ||
test $link_static = yes; }; then
# Extract -R from dependency_libs
temp_deplibs=
@@ -1964,7 +1964,7 @@
tmp_libs="$tmp_libs $deplib"
done
- if test $link_all_deplibs != no; then
+ if test "$link_all_deplibs" != no; then
# Add the search paths of all dependency libraries
for deplib in $dependency_libs; do
case $deplib in
@@ -2007,15 +2007,15 @@
fi # link_all_deplibs != no
fi # linkmode = lib
done # for deplib in $libs
- if test $pass = dlpreopen; then
+ if test "$pass" = dlpreopen; then
# Link the dlpreopened libraries before other libraries
for deplib in $save_deplibs; do
deplibs="$deplib $deplibs"
done
fi
- if test $pass != dlopen; then
- test $pass != scan && dependency_libs="$newdependency_libs"
- if test $pass != conv; then
+ if test "$pass" != dlopen; then
+ test "$pass" != scan && dependency_libs="$newdependency_libs"
+ if test "$pass" != conv; then
# Make sure lib_search_path contains only unique directories.
lib_search_path=
for dir in $newlib_search_path; do
@@ -2073,7 +2073,7 @@
deplibs=
fi
done # for pass
- if test $linkmode = prog; then
+ if test "$linkmode" = prog; then
dlfiles="$newdlfiles"
dlprefiles="$newdlprefiles"
fi
@@ -2410,7 +2410,7 @@
;;
*)
# Add libc to deplibs on all other systems if necessary.
- if test $build_libtool_need_lc = "yes"; then
+ if test "$build_libtool_need_lc" = "yes"; then
deplibs="$deplibs -lc"
fi
;;
@@ -2683,7 +2683,7 @@
# Test again, we may have decided not to build it any more
if test "$build_libtool_libs" = yes; then
- if test $hardcode_into_libs = yes; then
+ if test "$hardcode_into_libs" = yes; then
# Hardcode the library paths
hardcode_libdirs=
dep_rpath=

View File

@ -0,0 +1,578 @@
--- ltmain.sh 2001-09-10 19:40:18.000000000 -0400
+++ ltmain.sh 2002-07-11 14:49:35.000000000 -0400
@@ -467,7 +467,7 @@ if test -z "$show_help"; then
pic_mode=default
;;
esac
- if test $pic_mode = no && test "$deplibs_check_method" != pass_all; then
+ if test "$pic_mode" = no && test "$deplibs_check_method" != pass_all; then
# non-PIC code in shared libraries is not supported
pic_mode=default
fi
@@ -1303,11 +1303,11 @@ compiler."
output_objdir="$output_objdir/$objdir"
fi
# Create the object directory.
- if test ! -d $output_objdir; then
+ if test ! -d "$output_objdir"; then
$show "$mkdir $output_objdir"
$run $mkdir $output_objdir
status=$?
- if test $status -ne 0 && test ! -d $output_objdir; then
+ if test "$status" -ne 0 && test ! -d "$output_objdir"; then
exit $status
fi
fi
@@ -1366,7 +1366,7 @@ compiler."
;;
esac
for pass in $passes; do
- if test $linkmode = prog; then
+ if test "$linkmode" = prog; then
# Determine which files to process
case $pass in
dlopen)
@@ -1383,11 +1383,11 @@ compiler."
found=no
case $deplib in
-l*)
- if test $linkmode = oldlib && test $linkmode = obj; then
+ if test "$linkmode" = oldlib && test "$linkmode" = obj; then
$echo "$modename: warning: \`-l' is ignored for archives/objects: $deplib" 1>&2
continue
fi
- if test $pass = conv; then
+ if test "$pass" = conv; then
deplibs="$deplib $deplibs"
continue
fi
@@ -1407,7 +1407,7 @@ compiler."
finalize_deplibs="$deplib $finalize_deplibs"
else
deplibs="$deplib $deplibs"
- test $linkmode = lib && newdependency_libs="$deplib $newdependency_libs"
+ test "$linkmode" = lib && newdependency_libs="$deplib $newdependency_libs"
fi
continue
fi
@@ -1416,16 +1416,16 @@ compiler."
case $linkmode in
lib)
deplibs="$deplib $deplibs"
- test $pass = conv && continue
+ test "$pass" = conv && continue
newdependency_libs="$deplib $newdependency_libs"
newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'`
;;
prog)
- if test $pass = conv; then
+ if test "$pass" = conv; then
deplibs="$deplib $deplibs"
continue
fi
- if test $pass = scan; then
+ if test "$pass" = scan; then
deplibs="$deplib $deplibs"
newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'`
else
@@ -1440,7 +1440,7 @@ compiler."
continue
;; # -L
-R*)
- if test $pass = link; then
+ if test "$pass" = link; then
dir=`$echo "X$deplib" | $Xsed -e 's/^-R//'`
# Make sure the xrpath contains only unique directories.
case "$xrpath " in
@@ -1453,7 +1453,7 @@ compiler."
;;
*.la) lib="$deplib" ;;
*.$libext)
- if test $pass = conv; then
+ if test "$pass" = conv; then
deplibs="$deplib $deplibs"
continue
fi
@@ -1474,7 +1474,7 @@ compiler."
continue
;;
prog)
- if test $pass != link; then
+ if test "$pass" != link; then
deplibs="$deplib $deplibs"
else
compile_deplibs="$deplib $compile_deplibs"
@@ -1485,7 +1485,7 @@ compiler."
esac # linkmode
;; # *.$libext
*.lo | *.$objext)
- if test $pass = dlpreopen || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; then
+ if test "$pass" = dlpreopen || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; then
# If there is no dlopen support or we're linking statically,
# we need to preload.
newdlprefiles="$newdlprefiles $deplib"
@@ -1501,7 +1501,7 @@ compiler."
continue
;;
esac # case $deplib
- if test $found = yes || test -f "$lib"; then :
+ if test "$found" = yes || test -f "$lib"; then :
else
$echo "$modename: cannot find the library \`$lib'" 1>&2
exit 1
@@ -1535,13 +1535,13 @@ compiler."
if test "$linkmode,$pass" = "lib,link" ||
test "$linkmode,$pass" = "prog,scan" ||
- { test $linkmode = oldlib && test $linkmode = obj; }; then
+ { test "$linkmode" = oldlib && test "$linkmode" = obj; }; then
# Add dl[pre]opened files of deplib
test -n "$dlopen" && dlfiles="$dlfiles $dlopen"
test -n "$dlpreopen" && dlprefiles="$dlprefiles $dlpreopen"
fi
- if test $pass = conv; then
+ if test "$pass" = conv; then
# Only check for convenience libraries
deplibs="$lib $deplibs"
if test -z "$libdir"; then
@@ -1560,7 +1560,7 @@ compiler."
esac
tmp_libs="$tmp_libs $deplib"
done
- elif test $linkmode != prog && test $linkmode != lib; then
+ elif test "$linkmode" != prog && test "$linkmode" != lib; then
$echo "$modename: \`$lib' is not a convenience library" 1>&2
exit 1
fi
@@ -1578,7 +1578,7 @@ compiler."
fi
# This library was specified with -dlopen.
- if test $pass = dlopen; then
+ if test "$pass" = dlopen; then
if test -z "$libdir"; then
$echo "$modename: cannot -dlopen a convenience library: \`$lib'" 1>&2
exit 1
@@ -1627,7 +1627,7 @@ compiler."
name=`$echo "X$laname" | $Xsed -e 's/\.la$//' -e 's/^lib//'`
# This library was specified with -dlpreopen.
- if test $pass = dlpreopen; then
+ if test "$pass" = dlpreopen; then
if test -z "$libdir"; then
$echo "$modename: cannot -dlpreopen a convenience library: \`$lib'" 1>&2
exit 1
@@ -1646,7 +1646,7 @@ compiler."
if test -z "$libdir"; then
# Link the convenience library
- if test $linkmode = lib; then
+ if test "$linkmode" = lib; then
deplibs="$dir/$old_library $deplibs"
elif test "$linkmode,$pass" = "prog,link"; then
compile_deplibs="$dir/$old_library $compile_deplibs"
@@ -1657,7 +1657,7 @@ compiler."
continue
fi
- if test $linkmode = prog && test $pass != link; then
+ if test "$linkmode" = prog && test "$pass" != link; then
newlib_search_path="$newlib_search_path $ladir"
deplibs="$lib $deplibs"
@@ -1673,7 +1673,7 @@ compiler."
-L*) newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'`;; ### testsuite: skip nested quoting test
esac
# Need to link against all dependency_libs?
- if test $linkalldeplibs = yes; then
+ if test "$linkalldeplibs" = yes; then
deplibs="$deplib $deplibs"
else
# Need to hardcode shared library paths
@@ -1694,7 +1694,7 @@ compiler."
# Link against this shared library
if test "$linkmode,$pass" = "prog,link" ||
- { test $linkmode = lib && test $hardcode_into_libs = yes; }; then
+ { test "$linkmode" = lib && test "$hardcode_into_libs" = yes; }; then
# Hardcode the library path.
# Skip directories that are in the system default run-time
# search path.
@@ -1716,7 +1716,7 @@ compiler."
esac
;;
esac
- if test $linkmode = prog; then
+ if test "$linkmode" = prog; then
# We need to hardcode the library path
if test -n "$shlibpath_var"; then
# Make sure the rpath contains only unique directories.
@@ -1798,9 +1798,9 @@ compiler."
# make sure the library variables are pointing to the new library
dir=$output_objdir
linklib=$newlib
- fi # test -n $old_archive_from_expsyms_cmds
+ fi # test -n "$old_archive_from_expsyms_cmds"
- if test $linkmode = prog || test "$mode" != relink; then
+ if test "$linkmode" = prog || test "$mode" != relink; then
add_shlibpath=
add_dir=
add=
@@ -1849,7 +1849,7 @@ compiler."
*) compile_shlibpath="$compile_shlibpath$add_shlibpath:" ;;
esac
fi
- if test $linkmode = prog; then
+ if test "$linkmode" = prog; then
test -n "$add_dir" && compile_deplibs="$add_dir $compile_deplibs"
test -n "$add" && compile_deplibs="$add $compile_deplibs"
else
@@ -1866,7 +1866,7 @@ compiler."
fi
fi
- if test $linkmode = prog || test "$mode" = relink; then
+ if test "$linkmode" = prog || test "$mode" = relink; then
add_shlibpath=
add_dir=
add=
@@ -1888,7 +1888,7 @@ compiler."
add="-l$name"
fi
- if test $linkmode = prog; then
+ if test "$linkmode" = prog; then
test -n "$add_dir" && finalize_deplibs="$add_dir $finalize_deplibs"
test -n "$add" && finalize_deplibs="$add $finalize_deplibs"
else
@@ -1896,7 +1896,7 @@ compiler."
test -n "$add" && deplibs="$add $deplibs"
fi
fi
- elif test $linkmode = prog; then
+ elif test "$linkmode" = prog; then
if test "$alldeplibs" = yes &&
{ test "$deplibs_check_method" = pass_all ||
{ test "$build_libtool_libs" = yes &&
@@ -1955,10 +1955,10 @@ compiler."
fi
fi # link shared/static library?
- if test $linkmode = lib; then
+ if test "$linkmode" = lib; then
if test -n "$dependency_libs" &&
- { test $hardcode_into_libs != yes || test $build_old_libs = yes ||
- test $link_static = yes; }; then
+ { test "$hardcode_into_libs" != yes || test "$build_old_libs" = yes ||
+ test "$link_static" = yes; }; then
# Extract -R from dependency_libs
temp_deplibs=
for libdir in $dependency_libs; do
@@ -1987,7 +1987,7 @@ compiler."
tmp_libs="$tmp_libs $deplib"
done
- if test $link_all_deplibs != no; then
+ if test "$link_all_deplibs" != no; then
# Add the search paths of all dependency libraries
for deplib in $dependency_libs; do
case $deplib in
@@ -2030,15 +2030,15 @@ compiler."
fi # link_all_deplibs != no
fi # linkmode = lib
done # for deplib in $libs
- if test $pass = dlpreopen; then
+ if test "$pass" = dlpreopen; then
# Link the dlpreopened libraries before other libraries
for deplib in $save_deplibs; do
deplibs="$deplib $deplibs"
done
fi
- if test $pass != dlopen; then
- test $pass != scan && dependency_libs="$newdependency_libs"
- if test $pass != conv; then
+ if test "$pass" != dlopen; then
+ test "$pass" != scan && dependency_libs="$newdependency_libs"
+ if test "$pass" != conv; then
# Make sure lib_search_path contains only unique directories.
lib_search_path=
for dir in $newlib_search_path; do
@@ -2096,7 +2096,7 @@ compiler."
deplibs=
fi
done # for pass
- if test $linkmode = prog; then
+ if test "$linkmode" = prog; then
dlfiles="$newdlfiles"
dlprefiles="$newdlprefiles"
fi
@@ -2173,7 +2173,7 @@ compiler."
fi
set dummy $rpath
- if test $# -gt 2; then
+ if test "$#" -gt 2; then
$echo "$modename: warning: ignoring multiple \`-rpath's for a libtool library" 1>&2
fi
install_libdir="$2"
@@ -2240,7 +2240,7 @@ compiler."
;;
esac
- if test $age -gt $current; then
+ if test "$age" -gt "$current"; then
$echo "$modename: AGE \`$age' is greater than the current interface number \`$current'" 1>&2
$echo "$modename: \`$vinfo' is not valid version information" 1>&2
exit 1
@@ -2279,7 +2279,7 @@ compiler."
# Add in all the interfaces that we are compatible with.
loop=$revision
- while test $loop != 0; do
+ while test "$loop" -ne 0; do
iface=`expr $revision - $loop`
loop=`expr $loop - 1`
verstring="sgi$major.$iface:$verstring"
@@ -2302,7 +2302,7 @@ compiler."
# Add in all the interfaces that we are compatible with.
loop=$age
- while test $loop != 0; do
+ while test "$loop" -ne 0; do
iface=`expr $current - $loop`
loop=`expr $loop - 1`
verstring="$verstring:${iface}.0"
@@ -2403,7 +2403,7 @@ compiler."
*) finalize_rpath="$finalize_rpath $libdir" ;;
esac
done
- if test $hardcode_into_libs != yes || test $build_old_libs = yes; then
+ if test "$hardcode_into_libs" != yes || test "$build_old_libs" = yes; then
dependency_libs="$temp_xrpath $dependency_libs"
fi
fi
@@ -2446,7 +2446,7 @@ compiler."
;;
*)
# Add libc to deplibs on all other systems if necessary.
- if test $build_libtool_need_lc = "yes"; then
+ if test "$build_libtool_need_lc" = "yes"; then
deplibs="$deplibs -lc"
fi
;;
@@ -2487,7 +2487,7 @@ compiler."
EOF
$rm conftest
$CC -o conftest conftest.c $deplibs
- if test $? -eq 0 ; then
+ if test "$?" -eq 0 ; then
ldd_output=`ldd conftest`
for i in $deplibs; do
name="`expr $i : '-l\(.*\)'`"
@@ -2521,7 +2521,7 @@ EOF
$rm conftest
$CC -o conftest conftest.c $i
# Did it work?
- if test $? -eq 0 ; then
+ if test "$?" -eq 0 ; then
ldd_output=`ldd conftest`
libname=`eval \\$echo \"$libname_spec\"`
deplib_matches=`eval \\$echo \"$library_names_spec\"`
@@ -2692,7 +2692,7 @@ EOF
echo "*** automatically added whenever a program is linked with this library"
echo "*** or is declared to -dlopen it."
- if test $allow_undefined = no; then
+ if test "$allow_undefined" = no; then
echo
echo "*** Since this library must not contain undefined symbols,"
echo "*** because either the platform does not support them or"
@@ -2719,7 +2719,7 @@ EOF
# Test again, we may have decided not to build it any more
if test "$build_libtool_libs" = yes; then
- if test $hardcode_into_libs = yes; then
+ if test "$hardcode_into_libs" = yes; then
# Hardcode the library paths
hardcode_libdirs=
dep_rpath=
@@ -2850,7 +2850,7 @@ EOF
$show "mkdir $gentop"
$run mkdir "$gentop"
status=$?
- if test $status -ne 0 && test ! -d "$gentop"; then
+ if test "$status" -ne 0 && test ! -d "$gentop"; then
exit $status
fi
generated="$generated $gentop"
@@ -2869,7 +2869,7 @@ EOF
$show "mkdir $xdir"
$run mkdir "$xdir"
status=$?
- if test $status -ne 0 && test ! -d "$xdir"; then
+ if test "$status" -ne 0 && test ! -d "$xdir"; then
exit $status
fi
$show "(cd $xdir && $AR x $xabs)"
@@ -2989,7 +2989,7 @@ EOF
$show "mkdir $gentop"
$run mkdir "$gentop"
status=$?
- if test $status -ne 0 && test ! -d "$gentop"; then
+ if test "$status" -ne 0 && test ! -d "$gentop"; then
exit $status
fi
generated="$generated $gentop"
@@ -3008,7 +3008,7 @@ EOF
$show "mkdir $xdir"
$run mkdir "$xdir"
status=$?
- if test $status -ne 0 && test ! -d "$xdir"; then
+ if test "$status" -ne 0 && test ! -d "$xdir"; then
exit $status
fi
$show "(cd $xdir && $AR x $xabs)"
@@ -3403,7 +3403,7 @@ static const void *lt_preloaded_setup()
finalize_command=`$echo "X$finalize_command" | $Xsed -e "s% @SYMFILE@%%"`
fi
- if test $need_relink = no || test "$build_libtool_libs" != yes; then
+ if test "$need_relink" = no || test "$build_libtool_libs" != yes; then
# Replace the output file specification.
compile_command=`$echo "X$compile_command" | $Xsed -e 's%@OUTPUT@%'"$output"'%g'`
link_command="$compile_command$compile_rpath"
@@ -3528,7 +3528,7 @@ static const void *lt_preloaded_setup()
relink_command="$var=\"$var_value\"; export $var; $relink_command"
fi
done
- relink_command="cd `pwd`; $relink_command"
+ relink_command="(cd `pwd`; $relink_command)"
relink_command=`$echo "X$relink_command" | $Xsed -e "$sed_quote_subst"`
fi
@@ -3771,7 +3771,7 @@ fi\
$show "mkdir $gentop"
$run mkdir "$gentop"
status=$?
- if test $status -ne 0 && test ! -d "$gentop"; then
+ if test "$status" -ne 0 && test ! -d "$gentop"; then
exit $status
fi
generated="$generated $gentop"
@@ -3791,7 +3791,7 @@ fi\
$show "mkdir $xdir"
$run mkdir "$xdir"
status=$?
- if test $status -ne 0 && test ! -d "$xdir"; then
+ if test "$status" -ne 0 && test ! -d "$xdir"; then
exit $status
fi
$show "(cd $xdir && $AR x $xabs)"
@@ -3858,7 +3858,7 @@ fi\
fi
done
# Quote the link command for shipping.
- relink_command="cd `pwd`; $SHELL $0 --mode=relink $libtool_args"
+ relink_command="(cd `pwd`; $SHELL $0 --mode=relink $libtool_args)"
relink_command=`$echo "X$relink_command" | $Xsed -e "$sed_quote_subst"`
# Only create the output if not a dry run.
@@ -3948,7 +3948,7 @@ dlpreopen='$dlprefiles'
# Directory that this library needs to be installed in:
libdir='$install_libdir'"
- if test "$installed" = no && test $need_relink = yes; then
+ if test "$installed" = no && test "$need_relink" = yes; then
$echo >> $output "\
relink_command=\"$relink_command\""
fi
@@ -4084,7 +4084,7 @@ relink_command=\"$relink_command\""
# Not a directory, so check to see that there is only one file specified.
set dummy $files
- if test $# -gt 2; then
+ if test "$#" -gt 2; then
$echo "$modename: \`$dest' is not a directory" 1>&2
$echo "$help" 1>&2
exit 1
@@ -4186,7 +4186,7 @@ relink_command=\"$relink_command\""
$run eval "$striplib $destdir/$realname" || exit $?
fi
- if test $# -gt 0; then
+ if test "$#" -gt 0; then
# Delete the old symlinks, and create new ones.
for linkname
do
@@ -4444,7 +4444,7 @@ relink_command=\"$relink_command\""
fi
# Exit here if they wanted silent mode.
- test "$show" = ":" && exit 0
+ test "$show" = : && exit 0
echo "----------------------------------------------------------------------"
echo "Libraries have been installed in:"
@@ -4610,7 +4610,7 @@ relink_command=\"$relink_command\""
fi
# Now prepare to actually exec the command.
- exec_cmd='"$cmd"$args'
+ exec_cmd="\$cmd$args"
else
# Display what would be done.
if test -n "$shlibpath_var"; then
@@ -4660,10 +4660,10 @@ relink_command=\"$relink_command\""
objdir="$dir/$objdir"
fi
name=`$echo "X$file" | $Xsed -e 's%^.*/%%'`
- test $mode = uninstall && objdir="$dir"
+ test "$mode" = uninstall && objdir="$dir"
# Remember objdir for removal later, being careful to avoid duplicates
- if test $mode = clean; then
+ if test "$mode" = clean; then
case " $rmdirs " in
*" $objdir "*) ;;
*) rmdirs="$rmdirs $objdir" ;;
@@ -4695,9 +4695,9 @@ relink_command=\"$relink_command\""
rmfiles="$rmfiles $objdir/$n"
done
test -n "$old_library" && rmfiles="$rmfiles $objdir/$old_library"
- test $mode = clean && rmfiles="$rmfiles $objdir/$name $objdir/${name}i"
+ test "$mode" = clean && rmfiles="$rmfiles $objdir/$name $objdir/${name}i"
- if test $mode = uninstall; then
+ if test "$mode" = uninstall; then
if test -n "$library_names"; then
# Do each command in the postuninstall commands.
eval cmds=\"$postuninstall_cmds\"
@@ -4706,7 +4706,7 @@ relink_command=\"$relink_command\""
IFS="$save_ifs"
$show "$cmd"
$run eval "$cmd"
- if test $? != 0 && test "$rmforce" != yes; then
+ if test "$?" -ne 0 && test "$rmforce" != yes; then
exit_status=1
fi
done
@@ -4721,7 +4721,7 @@ relink_command=\"$relink_command\""
IFS="$save_ifs"
$show "$cmd"
$run eval "$cmd"
- if test $? != 0 && test "$rmforce" != yes; then
+ if test "$?" -ne 0 && test "$rmforce" != yes; then
exit_status=1
fi
done
@@ -4741,7 +4741,7 @@ relink_command=\"$relink_command\""
*)
# Do a test to see if this is a libtool program.
- if test $mode = clean &&
+ if test "$mode" = clean &&
(sed -e '4q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then
relink_command=
. $dir/$file

View File

@ -0,0 +1,15 @@
--- ltmain.sh Fri Jul 7 18:49:44 2000
+++ ltmain.sh Fri May 26 21:53:15 2000
@@ -3462,7 +3462,11 @@
if test "$finalize" = yes && test -z "$run"; then
tmpdir="/tmp"
test -n "$TMPDIR" && tmpdir="$TMPDIR"
- tmpdir="$tmpdir/libtool-$$"
+ tmpdir=`mktemp -d $tmpdir/libtool-XXXXXX 2> /dev/null`
+ if test $? = 0 ; then :
+ else
+ tmpdir="$tmpdir/libtool-$$"
+ fi
if $mkdir -p "$tmpdir" && chmod 700 "$tmpdir"; then :
else
$echo "$modename: error: cannot create temporary directory \`$tmpdir'" 1>&2

View File

@ -0,0 +1,48 @@
--- configure.libltdl~ Fri Jun 11 08:54:04 2004
+++ configure Fri Jun 11 08:56:33 2004
@@ -1978,6 +1978,11 @@
lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
;;
+linux-uclibc*)
+ lt_cv_deplibs_check_method=pass_all
+ lt_cv_file_magic_test_file=`echo /lib/libuClibc*.so`
+ ;;
+
netbsd*)
if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'
@@ -3030,7 +3035,7 @@
# Transform linux* to *-*-linux-gnu*, to support old configure scripts.
case $host_os in
-linux-gnu*) ;;
+linux-gnu*|linux-uclibc*) ;;
linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'`
esac
@@ -4504,6 +4509,24 @@
dynamic_linker='GNU/Linux ld.so'
;;
+linux-uclibc*)
+ version_type=linux
+ need_lib_prefix=no
+ need_version=no
+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
+ soname_spec='${libname}${release}.so$major'
+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=no
+ # This implies no fast_install, which is unacceptable.
+ # Some rework will be needed to allow for fast_install
+ # before this can be enabled.
+ # Note: copied from linux-gnu, and may not be appropriate.
+ hardcode_into_libs=yes
+ # Assume using the uClibc dynamic linker.
+ dynamic_linker="uClibc ld.so"
+ ;;
+
netbsd*)
version_type=sunos
need_lib_prefix=no

View File

@ -0,0 +1,48 @@
--- configure.libltdl~ Fri Jun 11 08:54:04 2004
+++ configure Fri Jun 11 08:56:33 2004
@@ -1978,6 +1978,11 @@
lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
;;
+linux-uclibc*)
+ lt_cv_deplibs_check_method=pass_all
+ lt_cv_file_magic_test_file=`echo /lib/libuClibc*.so`
+ ;;
+
netbsd*)
if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'
@@ -3030,7 +3035,7 @@
# Transform linux* to *-*-linux-gnu*, to support old configure scripts.
case "$host_os" in
-linux-gnu*) ;;
+linux-gnu*|linux-uclibc*) ;;
linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'`
esac
@@ -4504,6 +4509,24 @@
dynamic_linker='GNU/Linux ld.so'
;;
+linux-uclibc*)
+ version_type=linux
+ need_lib_prefix=no
+ need_version=no
+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
+ soname_spec='${libname}${release}.so$major'
+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=no
+ # This implies no fast_install, which is unacceptable.
+ # Some rework will be needed to allow for fast_install
+ # before this can be enabled.
+ # Note: copied from linux-gnu, and may not be appropriate.
+ hardcode_into_libs=yes
+ # Assume using the uClibc dynamic linker.
+ dynamic_linker="uClibc ld.so"
+ ;;
+
netbsd*)
version_type=sunos
need_lib_prefix=no

View File

@ -0,0 +1,36 @@
--- ltconfig.uclibc 2004-01-14 22:07:42.000000000 +0100
+++ ltconfig 2004-03-10 15:43:37.000000000 +0100
@@ -603,6 +603,7 @@
# Transform linux* to *-*-linux-gnu*, to support old configure scripts.
case $host_os in
linux-gnu*) ;;
+linux-uclibc*) ;;
linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'`
esac
@@ -1259,6 +1260,25 @@
fi
;;
+linux-uclibc*)
+ version_type=linux
+ need_lib_prefix=no
+ need_version=no
+ library_names_spec='${libname}${release}.so.$versuffix ${libname}${release}.so.$major $libname.so'
+ soname_spec='${libname}${release}.so.$major'
+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=no
+ deplibs_check_method=pass_all
+ # This implies no fast_install, which is unacceptable.
+ # Some rework will be needed to allow for fast_install
+ # before this can be enabled.
+ # Note: copied from linux-gnu, and may not be appropriate.
+ hardcode_into_libs=yes
+ # Assume using the uClibc dynamic linker.
+ dynamic_linker="uClibc ld.so"
+ ;;
+
netbsd* | openbsd*)
version_type=sunos
library_names_spec='${libname}${release}.so.$versuffix'

View File

@ -0,0 +1,39 @@
--- ltconfig.uclibc 2004-01-14 22:07:42.000000000 +0100
+++ ltconfig 2004-03-10 15:43:37.000000000 +0100
@@ -603,6 +603,7 @@
# Transform linux* to *-*-linux-gnu*, to support old configure scripts.
case $host_os in
linux-gnu*) ;;
+linux-uclibc*) ;;
linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'`
esac
@@ -1259,6 +1260,28 @@
dynamic_linker='GNU/Linux ld.so'
;;
+linux-uclibc*)
+ version_type=linux
+ need_lib_prefix=no
+ need_version=no
+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
+ soname_spec='${libname}${release}.so$major'
+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=no
+ # deplibs_check_method=pass_all
+ deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )'
+ file_magic_cmd=/usr/bin/file
+ file_magic_test_file=`echo /lib/libuClibc-*.so`
+ # This implies no fast_install, which is unacceptable.
+ # Some rework will be needed to allow for fast_install
+ # before this can be enabled.
+ # Note: copied from linux-gnu, and may not be appropriate.
+ hardcode_into_libs=yes
+ # Assume using the uClibc dynamic linker.
+ dynamic_linker="uClibc ld.so"
+ ;;
+
netbsd*)
need_lib_prefix=no
need_version=no

View File

@ -0,0 +1,478 @@
# Copyright 1999-2011 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/eclass/libtool.eclass,v 1.94 2011/10/03 04:04:46 vapier Exp $
# @ECLASS: libtool.eclass
# @MAINTAINER:
# base-system@gentoo.org
# @BLURB: quickly update bundled libtool code
# @DESCRIPTION:
# This eclass patches ltmain.sh distributed with libtoolized packages with the
# relink and portage patch among others
#
# Note, this eclass does not require libtool as it only applies patches to
# generated libtool files. We do not run the libtoolize program because that
# requires a regeneration of the main autotool files in order to work properly.
DESCRIPTION="Based on the ${ECLASS} eclass"
inherit multilib toolchain-funcs
ELT_PATCH_DIR="${ECLASSDIR}/ELT-patches"
#
# See if we can apply $2 on $1, and if so, do it
#
ELT_try_and_apply_patch() {
local ret=0
local file=$1
local patch=$2
local src=$3
local disp="${src} patch"
local log="${T}/elibtool.log"
if [[ -z ${__ELT_NOTED_TMP} ]] ; then
__ELT_NOTED_TMP=true
printf 'temp patch: %s\n' "${patch}" > "${log}"
fi
printf '\nTrying %s\n' "${disp}" >> "${log}"
# We only support patchlevel of 0 - why worry if its static patches?
if patch -p0 --dry-run "${file}" "${patch}" >> "${log}" 2>&1 ; then
einfo " Applying ${disp} ..."
patch -p0 -g0 --no-backup-if-mismatch "${file}" "${patch}" >> "${log}" 2>&1
ret=$?
export ELT_APPLIED_PATCHES="${ELT_APPLIED_PATCHES} ${src}"
else
ret=1
fi
return "${ret}"
}
#
# Get string version of ltmain.sh or ltconfig (passed as $1)
#
ELT_libtool_version() {
(
unset VERSION
eval $(grep -e '^[[:space:]]*VERSION=' "$1")
echo "${VERSION:-0}"
)
}
#
# Run through the patches in $2 and see if any
# apply to $1 ...
#
ELT_walk_patches() {
local patch tmp
local ret=1
local file=$1
local patch_set=$2
local patch_dir="${ELT_PATCH_DIR}/${patch_set}"
local rem_int_dep=$3
[[ -z ${patch_set} ]] && return 1
[[ ! -d ${patch_dir} ]] && return 1
# Allow patches to use @GENTOO_LIBDIR@ replacements
local sed_args=( -e "s:@GENTOO_LIBDIR@:$(get_libdir):g" )
if [[ -n ${rem_int_dep} ]] ; then
# replace @REM_INT_DEP@ with what was passed
# to --remove-internal-dep
sed_args+=( -e "s|@REM_INT_DEP@|${rem_int_dep}|g" )
fi
pushd "${ELT_PATCH_DIR}" >/dev/null || die
# Go through the patches in reverse order (newer version to older)
for patch in $(find "${patch_set}" -maxdepth 1 -type f | LC_ALL=C sort -r) ; do
tmp="${T}/libtool-elt.patch"
sed "${sed_args[@]}" "${patch}" > "${tmp}" || die
if ELT_try_and_apply_patch "${file}" "${tmp}" "${patch}" ; then
# Break to unwind w/popd rather than return directly
ret=0
break
fi
done
popd >/dev/null
return ${ret}
}
# @FUNCTION: elibtoolize
# @USAGE: [dirs] [--portage] [--reverse-deps] [--patch-only] [--remove-internal-dep=xxx] [--shallow] [--no-uclibc]
# @DESCRIPTION:
# Apply a smorgasbord of patches to bundled libtool files. This function
# should always be safe to run. If no directories are specified, then
# ${S} will be searched for appropriate files.
#
# If the --shallow option is used, then only ${S}/ltmain.sh will be patched.
#
# The other options should be avoided in general unless you know what's going on.
elibtoolize() {
local x
local do_portage="no"
local do_reversedeps="no"
local do_only_patches="no"
local do_uclibc="yes"
local deptoremove=
local do_shallow="no"
local elt_patches="install-sh ltmain portage relink max_cmd_len sed test tmp cross as-needed"
for x in "$@" ; do
case ${x} in
--portage)
# Only apply portage patch, and don't
# 'libtoolize --copy --force' if all patches fail.
do_portage="yes"
;;
--reverse-deps)
# Apply the reverse-deps patch
# http://bugzilla.gnome.org/show_bug.cgi?id=75635
do_reversedeps="yes"
elt_patches+=" fix-relink"
;;
--patch-only)
# Do not run libtoolize if none of the patches apply ..
do_only_patches="yes"
;;
--remove-internal-dep=*)
# We will replace @REM_INT_DEP@ with what is needed
# in ELT_walk_patches() ...
deptoremove=${x#--remove-internal-dep=}
# Add the patch for this ...
[[ -n ${deptoremove} ]] && elt_patches+=" rem-int-dep"
;;
--shallow)
# Only patch the ltmain.sh in ${S}
do_shallow="yes"
;;
--no-uclibc)
do_uclibc="no"
;;
*)
eerror "Invalid elibtoolize option: ${x}"
die "elibtoolize called with ${x} ??"
esac
done
[[ ${do_uclibc} == "yes" ]] && elt_patches+=" uclibc-conf uclibc-ltconf"
case ${CHOST} in
*-aix*) elt_patches+=" hardcode aixrtl aix-noundef" ;; #213277
*-darwin*) elt_patches+=" darwin-ltconf darwin-ltmain darwin-conf" ;;
*-freebsd*) elt_patches+=" fbsd-conf fbsd-ltconf" ;;
*-hpux*) elt_patches+=" hpux-conf deplibs hc-flag-ld hardcode hardcode-relink relink-prog no-lc" ;;
*-irix*) elt_patches+=" irix-ltmain" ;;
*-mint*) elt_patches+=" mint-conf" ;;
esac
if $(tc-getLD) --version 2>&1 | grep -qs 'GNU gold'; then
elt_patches+=" gold-conf"
fi
# Reuse "$@" for dirs to patch
set --
if [[ ${do_shallow} == "yes" ]] ; then
[[ -f ${S}/ltmain.sh ]] && set -- "${S}"
else
set -- $(find "${S}" -name ltmain.sh -printf '%h ')
fi
local d p
for d in "$@" ; do
export ELT_APPLIED_PATCHES=
[[ -f ${d}/.elibtoolized ]] && continue
einfo "Running elibtoolize in: ${d#${WORKDIR}/}/"
for p in ${elt_patches} ; do
local ret=0
case ${p} in
portage)
# Stupid test to see if its already applied ...
if ! grep -qs 'We do not want portage' "${d}/ltmain.sh" ; then
ELT_walk_patches "${d}/ltmain.sh" "${p}"
ret=$?
fi
;;
rem-int-dep)
ELT_walk_patches "${d}/ltmain.sh" "${p}" "${deptoremove}"
ret=$?
;;
fix-relink)
# Do not apply if we do not have the relink patch applied ...
if grep -qs 'inst_prefix_dir' "${d}/ltmain.sh" ; then
ELT_walk_patches "${d}/ltmain.sh" "${p}"
ret=$?
fi
;;
max_cmd_len)
# Do not apply if $max_cmd_len is not used ...
if grep -qs 'max_cmd_len' "${d}/ltmain.sh" ; then
ELT_walk_patches "${d}/ltmain.sh" "${p}"
ret=$?
fi
;;
as-needed)
ELT_walk_patches "${d}/ltmain.sh" "${p}"
ret=$?
;;
uclibc-conf)
if grep -qs 'Transform linux' "${d}/configure" ; then
ELT_walk_patches "${d}/configure" "${p}"
ret=$?
# ltmain.sh and co might be in a subdirectory ...
elif [[ ! -e ${d}/configure ]] && \
grep -qs 'Transform linux' "${d}/../configure" ; then
ELT_walk_patches "${d}/../configure" "${p}"
ret=$?
fi
;;
uclibc-ltconf)
# Newer libtoolize clears ltconfig, as not used anymore
if [[ -s ${d}/ltconfig ]] ; then
ELT_walk_patches "${d}/ltconfig" "${p}"
ret=$?
fi
;;
fbsd-conf)
if grep -qs 'version_type=freebsd-' "${d}/configure" ; then
ELT_walk_patches "${d}/configure" "${p}"
ret=$?
# ltmain.sh and co might be in a subdirectory ...
elif [[ ! -e ${d}/configure ]] && \
grep -qs 'version_type=freebsd-' "${d}/../configure" ; then
ELT_walk_patches "${d}/../configure" "${p}"
ret=$?
fi
;;
fbsd-ltconf)
if [[ -s ${d}/ltconfig ]] ; then
ELT_walk_patches "${d}/ltconfig" "${p}"
ret=$?
fi
;;
darwin-conf)
if grep -qs '&& echo \.so ||' "${d}/configure" ; then
ELT_walk_patches "${d}/configure" "${p}"
ret=$?
# ltmain.sh and co might be in a subdirectory ...
elif [[ ! -e ${d}/configure ]] && \
grep -qs '&& echo \.so ||' "${d}/../configure" ; then
ELT_walk_patches "${d}/../configure" "${p}"
ret=$?
fi
;;
darwin-ltconf)
# Newer libtoolize clears ltconfig, as not used anymore
if [[ -s ${d}/ltconfig ]] ; then
ELT_walk_patches "${d}/ltconfig" "${p}"
ret=$?
fi
;;
darwin-ltmain)
# special case to avoid false positives (failing to apply
# ltmain.sh path message), newer libtools have this patch
# built in, so not much to patch around then
if [[ -e ${d}/ltmain.sh ]] && \
! grep -qs 'verstring="-compatibility_version' "${d}/ltmain.sh" ; then
ELT_walk_patches "${d}/ltmain.sh" "${p}"
ret=$?
fi
;;
aixrtl|hpux-conf)
ret=1
local subret=0
# apply multiple patches as often as they match
while [[ $subret -eq 0 ]]; do
subret=1
if [[ -e ${d}/configure ]]; then
ELT_walk_patches "${d}/configure" "${p}"
subret=$?
# ltmain.sh and co might be in a subdirectory ...
elif [[ ! -e ${d}/configure && -e ${d}/../configure ]] ; then
ELT_walk_patches "${d}/../configure" "${p}"
subret=$?
fi
if [[ $subret -eq 0 ]]; then
# have at least one patch succeeded.
ret=0
fi
done
;;
mint-conf|gold-conf)
ret=1
local subret=1
if [[ -e ${d}/configure ]]; then
ELT_walk_patches "${d}/configure" "${p}"
subret=$?
# ltmain.sh and co might be in a subdirectory ...
elif [[ -e ${d}/../configure ]] ; then
ELT_walk_patches "${d}/../configure" "${p}"
subret=$?
elif [[ -e ${d}/../../configure ]] ; then
ELT_walk_patches "${d}/../../configure" "${p}"
subret=$?
fi
if [[ $subret -eq 0 ]]; then
# have at least one patch succeeded.
ret=0
fi
;;
install-sh)
ELT_walk_patches "${d}/install-sh" "${p}"
ret=$?
;;
cross)
if tc-is-cross-compiler ; then
ELT_walk_patches "${d}/ltmain.sh" "${p}"
ret=$?
fi
;;
*)
ELT_walk_patches "${d}/ltmain.sh" "${p}"
ret=$?
;;
esac
if [[ ${ret} -ne 0 ]] ; then
case ${p} in
relink)
local version=$(ELT_libtool_version "${d}/ltmain.sh")
# Critical patch, but could be applied ...
# FIXME: Still need a patch for ltmain.sh > 1.4.0
if ! grep -qs 'inst_prefix_dir' "${d}/ltmain.sh" && \
[[ $(VER_to_int "${version}") -ge $(VER_to_int "1.4.0") ]] ; then
ewarn " Could not apply relink.patch!"
fi
;;
portage)
# Critical patch - for this one we abort, as it can really
# cause breakage without it applied!
if [[ ${do_portage} == "yes" ]] ; then
# Stupid test to see if its already applied ...
if ! grep -qs 'We do not want portage' "${d}/ltmain.sh" ; then
echo
eerror "Portage patch requested, but failed to apply!"
eerror "Please file a bug report to add a proper patch."
die "Portage patch requested, but failed to apply!"
fi
else
if grep -qs 'We do not want portage' "${d}/ltmain.sh" ; then
# ewarn " Portage patch seems to be already applied."
# ewarn " Please verify that it is not needed."
:
else
local version=$(ELT_libtool_version "${d}"/ltmain.sh)
echo
eerror "Portage patch failed to apply (ltmain.sh version ${version})!"
eerror "Please file a bug report to add a proper patch."
die "Portage patch failed to apply!"
fi
# We do not want to run libtoolize ...
ELT_APPLIED_PATCHES="portage"
fi
;;
uclibc-*)
[[ ${CHOST} == *-uclibc ]] && ewarn " uClibc patch set '${p}' failed to apply!"
;;
fbsd-*)
if [[ ${CHOST} == *-freebsd* ]] ; then
if [[ -z $(grep 'Handle Gentoo/FreeBSD as it was Linux' \
"${d}/configure" "${d}/../configure" 2>/dev/null) ]]; then
eerror " FreeBSD patch set '${p}' failed to apply!"
die "FreeBSD patch set '${p}' failed to apply!"
fi
fi
;;
darwin-*)
[[ ${CHOST} == *"-darwin"* ]] && ewarn " Darwin patch set '${p}' failed to apply!"
;;
esac
fi
done
if [[ -z ${ELT_APPLIED_PATCHES} ]] ; then
if [[ ${do_portage} == "no" && \
${do_reversedeps} == "no" && \
${do_only_patches} == "no" && \
${deptoremove} == "" ]]
then
ewarn "Cannot apply any patches, please file a bug about this"
die
fi
fi
rm -f "${d}/libtool"
> "${d}/.elibtoolized"
done
}
uclibctoolize() { die "Use elibtoolize"; }
darwintoolize() { die "Use elibtoolize"; }
# char *VER_major(string)
#
# Return the Major (X of X.Y.Z) version
#
VER_major() {
[[ -z $1 ]] && return 1
local VER=$@
echo "${VER%%[^[:digit:]]*}"
}
# char *VER_minor(string)
#
# Return the Minor (Y of X.Y.Z) version
#
VER_minor() {
[[ -z $1 ]] && return 1
local VER=$@
VER=${VER#*.}
echo "${VER%%[^[:digit:]]*}"
}
# char *VER_micro(string)
#
# Return the Micro (Z of X.Y.Z) version.
#
VER_micro() {
[[ -z $1 ]] && return 1
local VER=$@
VER=${VER#*.*.}
echo "${VER%%[^[:digit:]]*}"
}
# int VER_to_int(string)
#
# Convert a string type version (2.4.0) to an int (132096)
# for easy compairing or versions ...
#
VER_to_int() {
[[ -z $1 ]] && return 1
local VER_MAJOR=$(VER_major "$1")
local VER_MINOR=$(VER_minor "$1")
local VER_MICRO=$(VER_micro "$1")
local VER_int=$(( VER_MAJOR * 65536 + VER_MINOR * 256 + VER_MICRO ))
# We make version 1.0.0 the minimum version we will handle as
# a sanity check ... if its less, we fail ...
if [[ ${VER_int} -ge 65536 ]] ; then
echo "${VER_int}"
return 0
fi
echo 1
return 1
}