diff options
Diffstat (limited to 'meta/packages')
-rw-r--r-- | meta/packages/libtool/libtool-2.2.2/add_dolt.patch | 15 | ||||
-rw-r--r-- | meta/packages/libtool/libtool-2.2.2/dolt.m4 | 129 | ||||
-rw-r--r-- | meta/packages/libtool/libtool-2.2.2/libdir-la.patch | 56 | ||||
-rw-r--r-- | meta/packages/libtool/libtool-2.2.2/nousrlib.patch | 11 | ||||
-rw-r--r-- | meta/packages/libtool/libtool-2.2.2/prefix.patch | 100 | ||||
-rw-r--r-- | meta/packages/libtool/libtool-2.2.2/tag.patch | 19 | ||||
-rw-r--r-- | meta/packages/libtool/libtool-2.2.2/uclibc.patch | 14 | ||||
-rw-r--r-- | meta/packages/libtool/libtool-cross_2.2.2.bb | 43 | ||||
-rw-r--r-- | meta/packages/libtool/libtool-native_2.2.2.bb | 34 | ||||
-rw-r--r-- | meta/packages/libtool/libtool_2.2.2.bb | 25 |
10 files changed, 446 insertions, 0 deletions
diff --git a/meta/packages/libtool/libtool-2.2.2/add_dolt.patch b/meta/packages/libtool/libtool-2.2.2/add_dolt.patch new file mode 100644 index 000000000..45dd78a81 --- /dev/null +++ b/meta/packages/libtool/libtool-2.2.2/add_dolt.patch @@ -0,0 +1,15 @@ +Index: libtool-1.5.10/libtool.m4 +=================================================================== +--- libtool-1.5.10.orig/libtool.m4 2008-04-10 16:08:19.000000000 +0100 ++++ libtool-1.5.10/libtool.m4 2008-04-10 16:08:44.000000000 +0100 +@@ -67,7 +67,9 @@ + ifdef([LT_AC_PROG_GCJ], + [define([LT_AC_PROG_GCJ], + defn([LT_AC_PROG_GCJ])[AC_LIBTOOL_GCJ])])])]) +-])])# AC_PROG_LIBTOOL ++]) ++DOLT ++])# AC_PROG_LIBTOOL + + + # _AC_PROG_LIBTOOL diff --git a/meta/packages/libtool/libtool-2.2.2/dolt.m4 b/meta/packages/libtool/libtool-2.2.2/dolt.m4 new file mode 100644 index 000000000..9bedecf27 --- /dev/null +++ b/meta/packages/libtool/libtool-2.2.2/dolt.m4 @@ -0,0 +1,129 @@ +dnl dolt, a replacement for libtool +dnl Copyright © 2007-2008 Josh Triplett <josh@freedesktop.org> +dnl Copying and distribution of this file, with or without modification, +dnl are permitted in any medium without royalty provided the copyright +dnl notice and this notice are preserved. +dnl +dnl To use dolt, invoke the DOLT macro immediately after the libtool macros. +dnl Optionally, copy this file into acinclude.m4, to avoid the need to have it +dnl installed when running autoconf on your project. + +AC_DEFUN([DOLT], [ +AC_REQUIRE([AC_CANONICAL_HOST]) +# dolt, a replacement for libtool +# Josh Triplett <josh@freedesktop.org> +AC_PATH_PROG(DOLT_BASH, bash) +AC_MSG_CHECKING([if dolt supports this host]) +dolt_supported=yes +if test x$DOLT_BASH = x; then + AC_MSG_ERROR([dolt: Bash not found, fatal error]) +fi +if test x$GCC != xyes; then + AC_MSG_ERROR([dolt: gcc not found, fatal error]) +fi +case $host in +i?86-*-linux*|x86_64-*-linux*|arm-*-linux*) ;; +*) AC_MSG_ERROR([dolt: incompatible host, fatal error]) ;; +esac +AC_MSG_RESULT([yes, replacing libtool]) + +dnl Start writing out doltcompile. + cat <<__DOLTCOMPILE__EOF__ >doltcompile +#!$DOLT_BASH +__DOLTCOMPILE__EOF__ + cat <<'__DOLTCOMPILE__EOF__' >>doltcompile +args=("$[]@") +for ((arg=0; arg<${#args@<:@@@:>@}; arg++)) ; do + if test x"${args@<:@$arg@:>@}" = x-o ; then + objarg=$((arg+1)) + break + fi +done +if test x$objarg = x ; then + echo 'Error: no -o on compiler command line' 1>&2 + exit 1 +fi +lo="${args@<:@$objarg@:>@}" +obj="${lo%.lo}" +if test x"$lo" = x"$obj" ; then + echo "Error: libtool object file name \"$lo\" does not end in .lo" 1>&2 + exit 1 +fi +objbase="${obj##*/}" +__DOLTCOMPILE__EOF__ + +dnl Write out shared compilation code. + if test x$enable_shared = xyes; then + cat <<'__DOLTCOMPILE__EOF__' >>doltcompile +libobjdir="${obj%$objbase}.libs" +if test ! -d "$libobjdir" ; then + mkdir "$libobjdir" + mkdir_ret=$? + if test "$mkdir_ret" -ne 0 && test ! -d "$libobjdir" ; then + exit $mkdir_ret + fi +fi +pic_object="$libobjdir/$objbase.o" +args@<:@$objarg@:>@="$pic_object" +"${args@<:@@@:>@}" -fPIC -DPIC +__DOLTCOMPILE__EOF__ + fi + +dnl Write out static compilation code. +dnl Avoid duplicate compiler output if also building shared objects. + if test x$enable_static = xyes; then + cat <<'__DOLTCOMPILE__EOF__' >>doltcompile +non_pic_object="$obj.o" +args@<:@$objarg@:>@="$non_pic_object" +__DOLTCOMPILE__EOF__ + if test x$enable_shared = xyes; then + cat <<'__DOLTCOMPILE__EOF__' >>doltcompile +"${args@<:@@@:>@}" >/dev/null 2>&1 +__DOLTCOMPILE__EOF__ + else + cat <<'__DOLTCOMPILE__EOF__' >>doltcompile +"${args@<:@@@:>@}" +__DOLTCOMPILE__EOF__ + fi + fi + +dnl Write out the code to write the .lo file. +dnl The second line of the .lo file must match "^# Generated by .*libtool" + cat <<'__DOLTCOMPILE__EOF__' >>doltcompile +{ +echo "# $lo - a libtool object file" +echo "# Generated by doltcompile, not libtool" +__DOLTCOMPILE__EOF__ + + if test x$enable_shared = xyes; then + cat <<'__DOLTCOMPILE__EOF__' >>doltcompile +echo "pic_object='$pic_object'" +__DOLTCOMPILE__EOF__ + else + cat <<'__DOLTCOMPILE__EOF__' >>doltcompile +echo pic_object=none +__DOLTCOMPILE__EOF__ + fi + + if test x$enable_static = xyes; then + cat <<'__DOLTCOMPILE__EOF__' >>doltcompile +echo "non_pic_object='$non_pic_object'" +__DOLTCOMPILE__EOF__ + else + cat <<'__DOLTCOMPILE__EOF__' >>doltcompile +echo non_pic_object=none +__DOLTCOMPILE__EOF__ + fi + + cat <<'__DOLTCOMPILE__EOF__' >>doltcompile +} > "$lo" +__DOLTCOMPILE__EOF__ + +dnl Done writing out doltcompile; substitute it for libtool compilation. + chmod +x doltcompile + LTCOMPILE='$(top_builddir)/doltcompile $(COMPILE)' + AC_SUBST(LTCOMPILE) + LTCXXCOMPILE='$(top_builddir)/doltcompile $(CXXCOMPILE)' + AC_SUBST(LTCXXCOMPILE) +# end dolt +]) diff --git a/meta/packages/libtool/libtool-2.2.2/libdir-la.patch b/meta/packages/libtool/libtool-2.2.2/libdir-la.patch new file mode 100644 index 000000000..a726cb2b8 --- /dev/null +++ b/meta/packages/libtool/libtool-2.2.2/libdir-la.patch @@ -0,0 +1,56 @@ +Index: libtool-2.2.2/libltdl/config/ltmain.m4sh +=================================================================== +--- libtool-2.2.2.orig/libltdl/config/ltmain.m4sh 2008-04-02 01:20:54.000000000 +0100 ++++ libtool-2.2.2/libltdl/config/ltmain.m4sh 2008-04-13 22:32:15.000000000 +0100 +@@ -4453,8 +4453,14 @@ + 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 +@@ -4973,10 +4979,22 @@ + 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 ++ # This would break cross compiling if we didn't change to installed=no in ++ # staging. RP 31/04/2008 + eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib` + test -z "$libdir" && \ + func_fatal_error "\`$deplib' is not a valid libtool archive" +@@ -7046,6 +7064,10 @@ + # Replace all uninstalled libtool libraries with the installed ones + newdependency_libs= + for deplib in $dependency_libs; do ++ # Replacing uninstalled with installed can easily break crosscompilation, ++ # since the installed path is generally the wrong architecture. -CL ++ newdependency_libs="$newdependency_libs $deplib" ++ continue + case $deplib in + *.la) + func_basename "$deplib" diff --git a/meta/packages/libtool/libtool-2.2.2/nousrlib.patch b/meta/packages/libtool/libtool-2.2.2/nousrlib.patch new file mode 100644 index 000000000..5e3e6b9a9 --- /dev/null +++ b/meta/packages/libtool/libtool-2.2.2/nousrlib.patch @@ -0,0 +1,11 @@ +--- libtool-2.2.2/libltdl/config/ltmain.m4sh.orig ++++ libtool-2.2.2/libltdl/config/ltmain.m4sh +@@ -2637,8 +2637,6 @@ + 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 diff --git a/meta/packages/libtool/libtool-2.2.2/prefix.patch b/meta/packages/libtool/libtool-2.2.2/prefix.patch new file mode 100644 index 000000000..d7bdfe1ef --- /dev/null +++ b/meta/packages/libtool/libtool-2.2.2/prefix.patch @@ -0,0 +1,100 @@ +Index: libtool-2.2.2/libltdl/m4/libtool.m4 +=================================================================== +--- libtool-2.2.2.orig/libltdl/m4/libtool.m4 2008-04-13 22:43:05.000000000 +0100 ++++ libtool-2.2.2/libltdl/m4/libtool.m4 2008-04-13 22:43:05.000000000 +0100 +@@ -89,7 +89,8 @@ + 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 +@@ -211,7 +212,7 @@ + no_glob_subst='s/\*/\\\*/g' + + # 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.2/Makefile.am +=================================================================== +--- libtool-2.2.2.orig/Makefile.am 2008-04-01 19:06:08.000000000 +0100 ++++ libtool-2.2.2/Makefile.am 2008-04-13 22:49:17.000000000 +0100 +@@ -31,7 +31,7 @@ + DIST_SUBDIRS = . + EXTRA_DIST = + +-BUILT_SOURCES = libtool ++BUILT_SOURCES = $(host_alias)-libtool + + CLEANFILES = + MOSTLYCLEANFILES = +@@ -64,7 +64,7 @@ + ## ---------------- ## + + # 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 +@@ -90,8 +90,8 @@ + # 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; \ +@@ -100,8 +100,8 @@ + 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 +@@ -145,7 +145,7 @@ + ChangeLog.1999 ChangeLog.2000 ChangeLog.2001 \ + ChangeLog.2002 ChangeLog.2003 ChangeLog.2004 \ + ChangeLog.2005 ChangeLog.2006 ChangeLog.2007 +-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, +@@ -483,12 +483,12 @@ + + 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)" +@@ -620,7 +620,7 @@ + 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/packages/libtool/libtool-2.2.2/tag.patch b/meta/packages/libtool/libtool-2.2.2/tag.patch new file mode 100644 index 000000000..8921a3efb --- /dev/null +++ b/meta/packages/libtool/libtool-2.2.2/tag.patch @@ -0,0 +1,19 @@ + +# +# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher +# + +--- libtool-1.5.6/ltmain.in~tag 2004-05-15 05:14:32.000000000 -0400 ++++ libtool-1.5.6/ltmain.in 2004-05-15 05:18:01.000000000 -0400 +@@ -226,8 +226,9 @@ + # line option must be used. + if test -z "$tagname"; then + $echo "$modename: unable to infer tagged configuration" +- $echo "$modename: specify a tag with \`--tag'" 1>&2 +- exit $EXIT_FAILURE ++ $echo "$modename: defaulting to \`CC'" ++ $echo "$modename: if this is not correct, specify a tag with \`--tag'" ++# exit $EXIT_FAILURE + # else + # $echo "$modename: using $tagname tagged configuration" + fi diff --git a/meta/packages/libtool/libtool-2.2.2/uclibc.patch b/meta/packages/libtool/libtool-2.2.2/uclibc.patch new file mode 100644 index 000000000..8573a0100 --- /dev/null +++ b/meta/packages/libtool/libtool-2.2.2/uclibc.patch @@ -0,0 +1,14 @@ +--- libtool-2.2.2/libltdl/m4/libtool.m4.orig ++++ libtool-2.2.2/libltdl/m4/libtool.m4 +@@ -2221,6 +2221,11 @@ + lt_cv_deplibs_check_method=pass_all + ;; + ++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]]+|_pic\.a)$' diff --git a/meta/packages/libtool/libtool-cross_2.2.2.bb b/meta/packages/libtool/libtool-cross_2.2.2.bb new file mode 100644 index 000000000..37643e550 --- /dev/null +++ b/meta/packages/libtool/libtool-cross_2.2.2.bb @@ -0,0 +1,43 @@ +require libtool.inc +require libtool_${PV}.bb + +PR = "r12" +PACKAGES = "" +FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/libtool-${PV}" +SRC_URI_append = " file://libdir-la.patch;patch=1 \ + file://prefix.patch;patch=1 \ +# file://tag.patch;patch=1 \ + file://nousrlib.patch;patch=1" + +DOLT_PATCH = "" +DOLT_PATCH_arm = " file://add_dolt.patch;patch=1" +DOLT_PATCH_i586 = " file://add_dolt.patch;patch=1" + +#SRC_URI_append_linux = "${DOLT_PATCH}" +#SRC_URI_append_linux-gnueabi = "${DOLT_PATCH}" + +S = "${WORKDIR}/libtool-${PV}" + +prefix = "${STAGING_DIR_NATIVE}${layout_prefix}" +exec_prefix = "${STAGING_DIR_NATIVE}${layout_exec_prefix}" +bindir = "${STAGING_BINDIR_NATIVE}" + +do_compile () { + : +} + +do_stage () { + install -m 0755 ${HOST_SYS}-libtool ${bindir}/${HOST_SYS}-libtool + install -m 0644 libltdl/ltdl.h ${STAGING_INCDIR}/ + install -d ${STAGING_DATADIR}/libtool ${STAGING_DATADIR}/aclocal + install -c ${S}/libltdl/config/config.guess ${STAGING_DATADIR}/libtool/ + install -c ${S}/libltdl/config/config.sub ${STAGING_DATADIR}/libtool/ + install -c -m 0644 ${S}/libltdl/config/ltmain.sh ${STAGING_DATADIR}/libtool/ + install -c -m 0644 ${S}/libltdl/m4/libtool.m4 ${STAGING_DATADIR}/aclocal/ + install -c -m 0644 ${S}/libltdl/m4/ltdl.m4 ${STAGING_DATADIR}/aclocal/ + install -c -m 0644 ${WORKDIR}/dolt.m4 ${STAGING_DATADIR}/aclocal/ +} + +do_install () { + : +} diff --git a/meta/packages/libtool/libtool-native_2.2.2.bb b/meta/packages/libtool/libtool-native_2.2.2.bb new file mode 100644 index 000000000..8b27424a6 --- /dev/null +++ b/meta/packages/libtool/libtool-native_2.2.2.bb @@ -0,0 +1,34 @@ +require libtool.inc +require libtool_${PV}.bb + +PR = "r9" +FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/libtool-${PV}" +SRC_URI_append = " file://libdir-la.patch;patch=1 \ + file://prefix.patch;patch=1 \ +# file://tag.patch;patch=1 \ + file://nousrlib.patch;patch=1" + +S = "${WORKDIR}/libtool-${PV}" + +inherit native + +do_stage () { + install -m 0755 ${HOST_SYS}-libtool ${STAGING_BINDIR}/${HOST_SYS}-libtool + install -m 0755 libtoolize ${STAGING_BINDIR}/libtoolize + oe_libinstall -a -so -C libltdl libltdl ${STAGING_LIBDIR} + install -m 0644 libltdl/ltdl.h ${STAGING_INCDIR}/ + install -d ${STAGING_DATADIR}/libtool/config/ ${STAGING_DATADIR}/aclocal/ + install -c ${S}/libltdl/config/config.guess ${STAGING_DATADIR}/libtool/ + install -c ${S}/libltdl/config/config.sub ${STAGING_DATADIR}/libtool/ + install -c -m 0644 ${S}/libltdl/config/ltmain.sh ${STAGING_DATADIR}/libtool/config/ + install -c -m 0644 ${S}/libltdl/m4/libtool.m4 ${STAGING_DATADIR}/aclocal/ + install -c -m 0644 ${S}/libltdl/m4/ltdl.m4 ${STAGING_DATADIR}/aclocal/ + install -c -m 0644 ${S}/libltdl/m4/ltoptions.m4 ${STAGING_DATADIR}/aclocal/ + install -c -m 0644 ${S}/libltdl/m4/ltversion.m4 ${STAGING_DATADIR}/aclocal/ + install -c -m 0644 ${S}/libltdl/m4/ltsugar.m4 ${STAGING_DATADIR}/aclocal/ + install -c -m 0644 ${S}/libltdl/m4/lt~obsolete.m4 ${STAGING_DATADIR}/aclocal/ +} + +do_install () { + : +} diff --git a/meta/packages/libtool/libtool_2.2.2.bb b/meta/packages/libtool/libtool_2.2.2.bb new file mode 100644 index 000000000..0fa71b7c7 --- /dev/null +++ b/meta/packages/libtool/libtool_2.2.2.bb @@ -0,0 +1,25 @@ +require libtool.inc + +PR = "r5" + +SRC_URI = "${GNU_MIRROR}/libtool/libtool-${PV}.tar.gz \ + file://uclibc.patch;patch=1 \ + file://dolt.m4" +S = "${WORKDIR}/libtool-${PV}" + +DEFAULT_PREFERENCE = "-1" + +PACKAGES =+ "libltdl libltdl-dev libltdl-dbg" +FILES_${PN} += "${datadir}/aclocal*" +FILES_libltdl = "${libdir}/libltdl.so.*" +FILES_libltdl-dev = "${libdir}/libltdl.* ${includedir}/ltdl.h" +FILES_libltdl-dbg = "${libdir}/.debug/" + +inherit autotools + +EXTRA_AUTORECONF = "--exclude=libtoolize" + +do_stage () { + oe_libinstall -a -so -C libltdl libltdl ${STAGING_LIBDIR} + install -m 0644 libltdl/ltdl.h ${STAGING_INCDIR}/ +} |