aboutsummaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/libtool/libtool
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-devtools/libtool/libtool')
-rw-r--r--meta/recipes-devtools/libtool/libtool/cross_compile.patch55
-rw-r--r--meta/recipes-devtools/libtool/libtool/prefix-manpage-fix.patch19
-rw-r--r--meta/recipes-devtools/libtool/libtool/prefix.patch109
-rw-r--r--meta/recipes-devtools/libtool/libtool/trailingslash.patch32
4 files changed, 215 insertions, 0 deletions
diff --git a/meta/recipes-devtools/libtool/libtool/cross_compile.patch b/meta/recipes-devtools/libtool/libtool/cross_compile.patch
new file mode 100644
index 0000000000..fc1f4b6fb2
--- /dev/null
+++ b/meta/recipes-devtools/libtool/libtool/cross_compile.patch
@@ -0,0 +1,55 @@
+Tweaks to make cross-compiling work combined and updated from various
+older patches, some by Chris Larson.
+Not upstreable in this form.
+
+RP - 01/05/2008
+
+Index: libtool-2.2.10/libltdl/config/ltmain.m4sh
+===================================================================
+--- libtool-2.2.10.orig/libltdl/config/ltmain.m4sh
++++ libtool-2.2.10/libltdl/config/ltmain.m4sh
+@@ -5147,8 +5147,14 @@ func_mode_link ()
+ absdir="$abs_ladir"
+ libdir="$abs_ladir"
+ else
+- dir="$libdir"
+- absdir="$libdir"
++ # Adding 'libdir' from the .la file to our library search paths
++ # breaks crosscompilation horribly. We cheat here and don't add
++ # it, instead adding the path where we found the .la. -CL
++ dir="$abs_ladir"
++ absdir="$abs_ladir"
++ libdir="$abs_ladir"
++ #dir="$libdir"
++ #absdir="$libdir"
+ fi
+ test "X$hardcode_automatic" = Xyes && avoidtemprpath=yes
+ else
+@@ -5519,8 +5525,6 @@ func_mode_link ()
+ add="$libdir/$linklib"
+ fi
+ 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
+@@ -5667,7 +5671,17 @@ func_mode_link ()
+ fi
+ ;;
+ *)
+- path="-L$absdir/$objdir"
++ # OE sets installed=no in staging. We need to look in $objdir and $absdir,
++ # preferring $objdir. RP 31/04/2008
++ if test -f "$absdir/$objdir/$depdepl" ; then
++ depdepl="$absdir/$objdir/$depdepl"
++ path="-L$absdir/$objdir"
++ elif test -f "$absdir/$depdepl" ; then
++ depdepl="$absdir/$depdepl"
++ path="-L$absdir"
++ else
++ path="-L$absdir/$objdir"
++ fi
+ ;;
+ esac
+ else
diff --git a/meta/recipes-devtools/libtool/libtool/prefix-manpage-fix.patch b/meta/recipes-devtools/libtool/libtool/prefix-manpage-fix.patch
new file mode 100644
index 0000000000..47286699fb
--- /dev/null
+++ b/meta/recipes-devtools/libtool/libtool/prefix-manpage-fix.patch
@@ -0,0 +1,19 @@
+For cross environment, it not possible to run the generated executable.
+nstead use the build version of libtool to generate the man pages.
+
+Date: 2010/07/09
+Signed-Off-By: Nitin A Kamble <nitin.a.kamble@intel.com>
+
+Index: libtool-2.2.10/Makefile.am
+===================================================================
+--- libtool-2.2.10.orig/Makefile.am
++++ libtool-2.2.10/Makefile.am
+@@ -337,7 +337,7 @@ update_mans = \
+ PATH=.$(PATH_SEPARATOR)$$PATH; export PATH; \
+ $(HELP2MAN) --output=$@
+ $(srcdir)/doc/libtool.1: $(srcdir)/$(auxdir)/ltmain.sh
+- $(update_mans) --help-option=--help-all libtool
++ $(update_mans) --help-option=--help-all ${build_alias}-libtool
+ $(srcdir)/doc/libtoolize.1: $(srcdir)/libtoolize.in
+ $(update_mans) libtoolize
+
diff --git a/meta/recipes-devtools/libtool/libtool/prefix.patch b/meta/recipes-devtools/libtool/libtool/prefix.patch
new file mode 100644
index 0000000000..d008608a4a
--- /dev/null
+++ b/meta/recipes-devtools/libtool/libtool/prefix.patch
@@ -0,0 +1,109 @@
+Renames "libtool" -> "${TARGET_PREFIX}libtool" which makes sure
+it can't be confused with the host libtool.
+
+Originally by: RP
+
+Updated: Date: 2010/06/28
+Nitin A Kamble <nitin.a.kamble@intel.com>
+
+
+Index: libtool-2.2.10/libltdl/m4/libtool.m4
+===================================================================
+--- libtool-2.2.10.orig/libltdl/m4/libtool.m4
++++ libtool-2.2.10/libltdl/m4/libtool.m4
+@@ -94,7 +94,8 @@ _LT_SET_OPTIONS([$0], [$1])
+ LIBTOOL_DEPS="$ltmain"
+
+ # Always use our own libtool.
+-LIBTOOL='$(SHELL) $(top_builddir)/libtool'
++LIBTOOL='$(SHELL) $(top_builddir)'
++LIBTOOL="$LIBTOOL/${host_alias}-libtool"
+ AC_SUBST(LIBTOOL)dnl
+
+ _LT_SETUP
+@@ -201,7 +202,7 @@ aix3*)
+ esac
+
+ # Global variables:
+-ofile=libtool
++ofile=${host_alias}-libtool
+ can_build_shared=yes
+
+ # All known linkers require a `.a' archive for static linking (except MSVC,
+Index: libtool-2.2.10/Makefile.am
+===================================================================
+--- libtool-2.2.10.orig/Makefile.am
++++ libtool-2.2.10/Makefile.am
+@@ -31,7 +31,7 @@ AM_LDFLAGS =
+ DIST_SUBDIRS = .
+ EXTRA_DIST =
+
+-BUILT_SOURCES = libtool libtoolize
++BUILT_SOURCES = $(host_alias)-libtool libtoolize
+
+ CLEANFILES =
+ MOSTLYCLEANFILES =
+@@ -65,7 +65,7 @@ rebuild = rebuild=:; $(timestamp); corre
+ ## ---------------- ##
+
+ # The libtool distributor and the standalone libtool script.
+-bin_SCRIPTS = libtoolize libtool
++bin_SCRIPTS = libtoolize $(host_alias)-libtool
+
+ libtoolize: $(srcdir)/libtoolize.in $(top_builddir)/config.status
+ rm -f libtoolize.tmp libtoolize
+@@ -91,8 +91,8 @@ $(srcdir)/libtoolize.in: $(sh_files) lib
+ # We used to do this with a 'stamp-vcl' file, but non-gmake builds
+ # would rerun configure on every invocation, so now we manually
+ # check the version numbers from the build rule when necessary.
+-libtool: $(top_builddir)/config.status $(srcdir)/$(auxdir)/ltmain.sh ChangeLog
+- @target=libtool; $(rebuild); \
++$(host_alias)-libtool: $(top_builddir)/config.status $(srcdir)/$(auxdir)/ltmain.sh ChangeLog
++ @target=$(host_alias)-libtool; $(rebuild); \
+ if test -f "$$target"; then \
+ set dummy `./$$target --version | sed 1q`; actualver="$$5"; \
+ test "$$actualver" = "$$correctver" && rebuild=false; \
+@@ -101,8 +101,8 @@ libtool: $(top_builddir)/config.status $
+ case $$prereq in *ChangeLog);; *) rebuild=:;; esac; \
+ done; \
+ if $$rebuild; then \
+- echo $(SHELL) ./config.status $$target; \
+- cd $(top_builddir) && $(SHELL) ./config.status $$target; \
++ echo $(SHELL) ./config.status libtool; \
++ cd $(top_builddir) && $(SHELL) ./config.status libtool; \
+ fi
+
+ .PHONY: configure-subdirs
+@@ -147,7 +147,7 @@ EXTRA_DIST += bootstrap $(srcdir)/li
+ ChangeLog.2002 ChangeLog.2003 ChangeLog.2004 \
+ ChangeLog.2005 ChangeLog.2006 ChangeLog.2007 \
+ ChangeLog.2008 ChangeLog.2009
+-CLEANFILES += libtool libtoolize libtoolize.tmp \
++CLEANFILES += $(host_alias)-libtool libtoolize libtoolize.tmp \
+ $(auxdir)/ltmain.tmp $(m4dir)/ltversion.tmp
+
+ ## We build ltversion.m4 here, instead of from config.status,
+@@ -523,12 +523,12 @@ TESTS_ENVIRONMENT = MAKE="$(MAKE)" CC="$
+
+ BUILDCHECK_ENVIRONMENT = _lt_pkgdatadir="$(abs_top_srcdir)" \
+ LIBTOOLIZE="$(abs_top_builddir)/libtoolize" \
+- LIBTOOL="$(abs_top_builddir)/libtool" \
++ LIBTOOL="$(abs_top_builddir)/$(host_alias)-libtool" \
+ tst_aclocaldir="$(abs_top_srcdir)/libltdl/m4"
+
+ INSTALLCHECK_ENVIRONMENT = \
+ LIBTOOLIZE="$(bindir)/`echo libtoolize | sed '$(program_transform_name)'`" \
+- LIBTOOL="$(bindir)/`echo libtool | sed '$(program_transform_name)'`" \
++ LIBTOOL="$(bindir)/`echo $(host_alias)-libtool | sed '$(program_transform_name)'`" \
+ LTDLINCL="-I$(includedir)" \
+ LIBLTDL="$(libdir)/libltdl.la" \
+ tst_aclocaldir="$(aclocaldir)"
+@@ -679,7 +679,7 @@ if HAVE_FC
+ TESTS += $(FC_TESTS)
+ endif
+
+-tests/demo-conf.test: libtool
++tests/demo-conf.test: $(host_alias)-libtool
+
+ EXTRA_DIST += $(srcdir)/tests/defs.in tests/defs.m4sh \
+ $(COMMON_TESTS) $(CXX_TESTS) $(F77_TESTS) $(FC_TESTS)
diff --git a/meta/recipes-devtools/libtool/libtool/trailingslash.patch b/meta/recipes-devtools/libtool/libtool/trailingslash.patch
new file mode 100644
index 0000000000..313c26291a
--- /dev/null
+++ b/meta/recipes-devtools/libtool/libtool/trailingslash.patch
@@ -0,0 +1,32 @@
+A command like /bin/sh ../../i586-poky-linux-libtool --mode=install /usr/bin/install -c gck-roots-store-standalone.la '/media/data1/builds/poky1/tmp/work/core2-poky-linux/gnome-keyring-2.26.1-r1/image/usr/lib/gnome-keyring/standalone/' fails (e.g. gnome-keyring or pulseaudio)
+
+This is because libdir has a trailing slash which breaks the comparision.
+
+RP 2/1/10
+
+Merged a patch received from Gary Thomas <gary@mlbassoc.com>
+
+Date: 2010/07/12
+Nitin A Kamble <nitin.a.kamble@intel.com>
+
+Index: libtool-2.2.10/libltdl/config/ltmain.m4sh
+===================================================================
+--- libtool-2.2.10.orig/libltdl/config/ltmain.m4sh
++++ libtool-2.2.10/libltdl/config/ltmain.m4sh
+@@ -1634,8 +1634,15 @@ func_mode_install ()
+ dir="$dir$objdir"
+
+ if test -n "$relink_command"; then
++ # Strip any trailing slash from the destination.
++ func_stripname '' '/' "$libdir"
++ destlibdir=$func_stripname_result
++
++ func_stripname '' '/' "$destdir"
++ s_destdir=$func_stripname_result
++
+ # Determine the prefix the user has applied to our future dir.
+- inst_prefix_dir=`$ECHO "$destdir" | $SED -e "s%$libdir\$%%"`
++ inst_prefix_dir=`$ECHO "X$s_destdir" | $Xsed -e "s%$destlibdir\$%%"`
+
+ # Don't allow the user to place us outside of our expected
+ # location b/c this prevents finding dependent libraries that