summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makefile47
-rw-r--r--eltpatch.in488
-rw-r--r--patches/aixrtl/1.5.0-cmds-c (renamed from aixrtl/1.5.0-cmds-c)0
-rw-r--r--patches/aixrtl/1.5.0-cmds-cxx (renamed from aixrtl/1.5.0-cmds-cxx)0
-rw-r--r--patches/aixrtl/1.5.0-expsym-c (renamed from aixrtl/1.5.0-expsym-c)0
-rw-r--r--patches/aixrtl/1.5.0-expsym-cxx (renamed from aixrtl/1.5.0-expsym-cxx)0
-rw-r--r--patches/aixrtl/1.5.0-noundef-c (renamed from aixrtl/1.5.0-noundef-c)0
-rw-r--r--patches/aixrtl/1.5.0-noundef-cxx (renamed from aixrtl/1.5.0-noundef-cxx)0
-rw-r--r--patches/aixrtl/1.5.0-soname (renamed from aixrtl/1.5.0-soname)0
-rw-r--r--patches/aixrtl/1.5.0-usertl-c (renamed from aixrtl/1.5.0-usertl-c)0
-rw-r--r--patches/aixrtl/1.5.0-usertl-cxx (renamed from aixrtl/1.5.0-usertl-cxx)0
-rw-r--r--patches/aixrtl/1.5.22-cmds-c (renamed from aixrtl/1.5.22-cmds-c)0
-rw-r--r--patches/aixrtl/1.5.22-cmds-cxx (renamed from aixrtl/1.5.22-cmds-cxx)0
-rw-r--r--patches/aixrtl/2.0.0-fpic-c (renamed from aixrtl/2.0.0-fpic-c)0
-rw-r--r--patches/aixrtl/2.0.0-fpic-cxx (renamed from aixrtl/2.0.0-fpic-cxx)0
-rw-r--r--patches/aixrtl/2.2.0-cmds-c (renamed from aixrtl/2.2.0-cmds-c)0
-rw-r--r--patches/aixrtl/2.2.0-cmds-cxx (renamed from aixrtl/2.2.0-cmds-cxx)0
-rw-r--r--patches/aixrtl/2.2.0-expsym-c (renamed from aixrtl/2.2.0-expsym-c)0
-rw-r--r--patches/aixrtl/2.2.0-expsym-cxx (renamed from aixrtl/2.2.0-expsym-cxx)0
-rw-r--r--patches/aixrtl/2.2.0-noundef-c (renamed from aixrtl/2.2.0-noundef-c)0
-rw-r--r--patches/aixrtl/2.2.0-noundef-cxx (renamed from aixrtl/2.2.0-noundef-cxx)0
-rw-r--r--patches/aixrtl/2.2.0-usertl-cxx (renamed from aixrtl/2.2.0-usertl-cxx)0
-rw-r--r--patches/aixrtl/2.2.8-cmds-c (renamed from aixrtl/2.2.8-cmds-c)0
-rw-r--r--patches/aixrtl/2.2.8-cmds-cxx (renamed from aixrtl/2.2.8-cmds-cxx)0
-rw-r--r--patches/aixrtl/2.4.0-expsym-c (renamed from aixrtl/2.4.0-expsym-c)0
-rw-r--r--patches/aixrtl/2.4.0-expsym-cxx (renamed from aixrtl/2.4.0-expsym-cxx)0
-rw-r--r--patches/aixrtl/2.4.2.418-cmds-c (renamed from aixrtl/2.4.2.418-cmds-c)0
-rw-r--r--patches/aixrtl/2.4.2.418-cmds-cxx (renamed from aixrtl/2.4.2.418-cmds-cxx)0
-rw-r--r--patches/aixrtl/2.4.2.418-soname (renamed from aixrtl/2.4.2.418-soname)0
-rw-r--r--patches/aixrtl/2.4.4-expsym-c (renamed from aixrtl/2.4.4-expsym-c)0
-rw-r--r--patches/aixrtl/2.4.4-expsym-cxx (renamed from aixrtl/2.4.4-expsym-cxx)0
-rw-r--r--patches/aixrtl/2.4.4-with-svr4 (renamed from aixrtl/2.4.4-with-svr4)0
-rw-r--r--patches/as-needed/1.5 (renamed from as-needed/1.5)0
-rw-r--r--patches/as-needed/1.5.26 (renamed from as-needed/1.5.26)0
-rw-r--r--patches/as-needed/2.2.6 (renamed from as-needed/2.2.6)0
-rw-r--r--patches/as-needed/2.4.2 (renamed from as-needed/2.4.2)0
-rw-r--r--patches/as-needed/2.4.3 (renamed from as-needed/2.4.3)0
-rw-r--r--patches/cross/2.2 (renamed from cross/2.2)0
-rw-r--r--patches/cross/2.4 (renamed from cross/2.4)0
-rw-r--r--patches/cross/2.4.3 (renamed from cross/2.4.3)0
-rw-r--r--patches/darwin-conf/1.5 (renamed from darwin-conf/1.5)0
-rw-r--r--patches/darwin-conf/1.5b (renamed from darwin-conf/1.5b)0
-rw-r--r--patches/darwin-conf/2.2.4 (renamed from darwin-conf/2.2.4)0
-rw-r--r--patches/darwin-conf/2.2.6 (renamed from darwin-conf/2.2.6)0
-rw-r--r--patches/darwin-conf/2.4.6 (renamed from darwin-conf/2.4.6)0
-rw-r--r--patches/darwin-ltconf/1.2.0 (renamed from darwin-ltconf/1.2.0)0
-rw-r--r--patches/darwin-ltconf/1.3.0 (renamed from darwin-ltconf/1.3.0)0
-rw-r--r--patches/darwin-ltmain/1.2.0 (renamed from darwin-ltmain/1.2.0)0
-rw-r--r--patches/darwin-ltmain/1.3.0 (renamed from darwin-ltmain/1.3.0)0
-rw-r--r--patches/deplibs/1.5 (renamed from deplibs/1.5)0
-rw-r--r--patches/deplibs/2.1b (renamed from deplibs/2.1b)0
-rw-r--r--patches/fbsd-conf/00broken-libglade (renamed from fbsd-conf/00broken-libglade)0
-rw-r--r--patches/fbsd-conf/1.4.0 (renamed from fbsd-conf/1.4.0)0
-rw-r--r--patches/fbsd-conf/1.5.10 (renamed from fbsd-conf/1.5.10)0
-rw-r--r--patches/fbsd-conf/1.5.18 (renamed from fbsd-conf/1.5.18)0
-rw-r--r--patches/fbsd-conf/1.5.20 (renamed from fbsd-conf/1.5.20)0
-rw-r--r--patches/fbsd-conf/1.5.20b (renamed from fbsd-conf/1.5.20b)0
-rw-r--r--patches/fbsd-conf/1.9f (renamed from fbsd-conf/1.9f)0
-rw-r--r--patches/fbsd-ltconf/1.2.0 (renamed from fbsd-ltconf/1.2.0)0
-rw-r--r--patches/fbsd-ltconf/1.3.0 (renamed from fbsd-ltconf/1.3.0)0
-rw-r--r--patches/fbsd-ltconf/1.4a (renamed from fbsd-ltconf/1.4a)0
-rw-r--r--patches/fbsd-ltconf/1.4a-GCC3.0 (renamed from fbsd-ltconf/1.4a-GCC3.0)0
-rw-r--r--patches/fix-relink/1.4.0 (renamed from fix-relink/1.4.0)0
-rw-r--r--patches/fix-relink/1.4.3 (renamed from fix-relink/1.4.3)0
-rw-r--r--patches/fix-relink/1.5.0 (renamed from fix-relink/1.5.0)0
-rw-r--r--patches/gold-conf/2.2.6 (renamed from gold-conf/2.2.6)0
-rw-r--r--patches/hardcode-relink/1.3d (renamed from hardcode-relink/1.3d)0
-rw-r--r--patches/hardcode/1.3d (renamed from hardcode/1.3d)0
-rw-r--r--patches/hardcode/2.1b (renamed from hardcode/2.1b)0
-rw-r--r--patches/hc-flag-ld/1.5 (renamed from hc-flag-ld/1.5)0
-rw-r--r--patches/hpux-conf/1.5.22-syslibpath (renamed from hpux-conf/1.5.22-syslibpath)0
-rw-r--r--patches/install-sh/1.5 (renamed from install-sh/1.5)0
-rw-r--r--patches/install-sh/1.5.4 (renamed from install-sh/1.5.4)0
-rw-r--r--patches/install-sh/1.5.6 (renamed from install-sh/1.5.6)0
-rw-r--r--patches/irix-ltmain/2.2.6 (renamed from irix-ltmain/2.2.6)0
-rw-r--r--patches/ltmain/1.5 (renamed from ltmain/1.5)0
-rw-r--r--patches/max_cmd_len/1.5.0 (renamed from max_cmd_len/1.5.0)0
-rw-r--r--patches/max_cmd_len/1.5.14 (renamed from max_cmd_len/1.5.14)0
-rw-r--r--patches/max_cmd_len/1.5.20 (renamed from max_cmd_len/1.5.20)0
-rw-r--r--patches/mint-conf/2.2.6 (renamed from mint-conf/2.2.6)0
-rw-r--r--patches/no-lc/1.3d (renamed from no-lc/1.3d)0
-rw-r--r--patches/no-lc/1.5.22 (renamed from no-lc/1.5.22)0
-rw-r--r--patches/nocxx/nocxx-2.64.patch (renamed from nocxx/nocxx-2.64.patch)0
-rw-r--r--patches/nocxx/nocxx.patch (renamed from nocxx/nocxx.patch)0
-rw-r--r--patches/portage/1.2.0 (renamed from portage/1.2.0)0
-rw-r--r--patches/portage/1.3.0c (renamed from portage/1.3.0c)0
-rw-r--r--patches/portage/1.3.3 (renamed from portage/1.3.3)0
-rw-r--r--patches/portage/1.4.0 (renamed from portage/1.4.0)0
-rw-r--r--patches/portage/1.5.10 (renamed from portage/1.5.10)0
-rw-r--r--patches/portage/2.2 (renamed from portage/2.2)0
-rw-r--r--patches/ppc64le/2.4.2 (renamed from ppc64le/2.4.2)0
-rw-r--r--patches/ppc64le/2.4.4 (renamed from ppc64le/2.4.4)0
-rw-r--r--patches/relink-prog/1.3d (renamed from relink-prog/1.3d)0
-rw-r--r--patches/relink-prog/2.1b (renamed from relink-prog/2.1b)0
-rw-r--r--patches/relink/1.4.0a (renamed from relink/1.4.0a)0
-rw-r--r--patches/relink/1.4.0a-GCC3.0-1 (renamed from relink/1.4.0a-GCC3.0-1)0
-rw-r--r--patches/relink/1.4.0a-GCC3.0-2 (renamed from relink/1.4.0a-GCC3.0-2)0
-rw-r--r--patches/relink/1.4.1 (renamed from relink/1.4.1)0
-rw-r--r--patches/relink/1.4.2 (renamed from relink/1.4.2)0
-rw-r--r--patches/relink/1.4.3 (renamed from relink/1.4.3)0
-rw-r--r--patches/rem-int-dep/1.3.5 (renamed from rem-int-dep/1.3.5)0
-rw-r--r--patches/sed/1.3.4 (renamed from sed/1.3.4)0
-rw-r--r--patches/sed/1.4.0 (renamed from sed/1.4.0)0
-rw-r--r--patches/sed/1.5.6 (renamed from sed/1.5.6)0
-rw-r--r--patches/sol2-conf/2.4.2 (renamed from sol2-conf/2.4.2)0
-rw-r--r--patches/sol2-ltmain/2.4.2 (renamed from sol2-ltmain/2.4.2)0
-rw-r--r--patches/sys-lib-dlsearch/2.4 (renamed from sys-lib-dlsearch/2.4)0
-rw-r--r--patches/target-nm/2.4.2 (renamed from target-nm/2.4.2)0
-rw-r--r--patches/test/1.4.0 (renamed from test/1.4.0)0
-rw-r--r--patches/test/1.4.2 (renamed from test/1.4.2)0
-rw-r--r--patches/tmp/1.3.5 (renamed from tmp/1.3.5)0
-rw-r--r--patches/uclibc-conf/1.2.0 (renamed from uclibc-conf/1.2.0)0
-rw-r--r--patches/uclibc-conf/1.3.0c (renamed from uclibc-conf/1.3.0c)0
-rw-r--r--patches/uclibc-ltconf/1.2.0 (renamed from uclibc-ltconf/1.2.0)0
-rw-r--r--patches/uclibc-ltconf/1.3.0 (renamed from uclibc-ltconf/1.3.0)0
115 files changed, 535 insertions, 0 deletions
diff --git a/Makefile b/Makefile
new file mode 100644
index 0000000..05a8b7e
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,47 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+DESTDIR =
+prefix = /usr
+bindir = $(prefix)/bin
+libdirname = lib
+datadir = $(prefix)/share
+patchdir = $(datadir)/elt-patches
+
+all: eltpatch
+install: install-bin install-patch
+distclean: clean
+
+eltpatch: eltpatch.in
+ rm -f $@ $@.tmp
+ sed -e 's^@ELT_patchdir@^$(patchdir)^' \
+ -e 's^@ELT_libdir@^$(libdirname)^' \
+ $< > $@.tmp
+ chmod +x $@.tmp
+ mv $@.tmp $@
+
+clean:
+ rm -f eltpatch
+
+install-bin: eltpatch
+ install -d $(DESTDIR)$(bindir)
+ install -m0755 $< $(DESTDIR)$(bindir)
+
+install-patch:
+ install -d $(DESTDIR)$(patchdir)
+ cd patches && \
+ for dir in */; do \
+ install -d $(DESTDIR)$(patchdir)/$${dir} || exit 1; \
+ for file in $${dir}/*; do \
+ install -m0644 $${file} $(DESTDIR)$(patchdir)/$${dir} \
+ || exit 1; \
+ done; \
+ done
+
+dist:
+ rm -f elt-patches-$$(date +%Y%m%d).tar.xz elt-patches-$$(date +%Y%m%d).tar
+ git archive -o elt-patches-$$(date +%Y%m%d).tar \
+ --prefix=elt-patches-$$(date +%Y%m%d)/ \
+ --format=tar \
+ HEAD
+ xz -9 elt-patches-$$(date +%Y%m%d).tar
diff --git a/eltpatch.in b/eltpatch.in
new file mode 100644
index 0000000..7dae4bb
--- /dev/null
+++ b/eltpatch.in
@@ -0,0 +1,488 @@
+#!/bin/bash
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+source "/lib/gentoo/functions.sh" || exit 1
+
+die() {
+ eerror "${@}"
+ exit 1
+}
+
+#
+# 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="${ELT_LOGDIR:-${TMPDIR}}/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}"
+
+ if [[ ! -e ${file} ]] ; then
+ echo "File not found: ${file}" >> "${log}"
+ return 1
+ fi
+
+ # Save file for permission restoration. `patch` sometimes resets things.
+ # Ideally we'd want 'stat -c %a', but stat is highly non portable and we are
+ # guaranted to have GNU find, so use that instead.
+ local perms="$(find ${file} -maxdepth 0 -printf '%m')"
+ # 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=$?
+ ELT_APPLIED_PATCHES="${ELT_APPLIED_PATCHES} ${src}"
+ else
+ ret=1
+ fi
+ chmod "${perms}" "${file}"
+
+ 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_patchdir@/${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@:@ELT_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_patchdir@" >/dev/null || die "pushd to elt-patch dir failed"
+
+ # 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="${TMPDIR}/libtool-elt.patch"
+ sed "${sed_args[@]}" "${patch}" > "${tmp}" || die "sed on patch ${patch} failed"
+ 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 dirs=()
+ local do_portage="no"
+ local do_reversedeps="yes"
+ local do_only_patches="no"
+ local do_uclibc="yes"
+ local deptoremove=
+ local do_shallow="no"
+ local force="false"
+ local elt_patches="install-sh ltmain portage relink max_cmd_len sed test tmp cross as-needed target-nm ppc64le"
+
+ 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"
+ ;;
+ --force)
+ force="true"
+ ;;
+ -*)
+ die "Invalid elibtoolize option: ${x}"
+ ;;
+ *) dirs+=( "${x}" )
+ esac
+ done
+
+ [[ ${do_uclibc} == "yes" ]] && elt_patches+=" uclibc-conf uclibc-ltconf"
+
+ case ${CHOST} in
+ *-aix*) elt_patches+=" hardcode aixrtl" ;; #213277
+ *-darwin*) elt_patches+=" darwin-ltconf darwin-ltmain darwin-conf" ;;
+ *-solaris*) elt_patches+=" sol2-conf sol2-ltmain" ;;
+ *-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 ${LD} --version 2>&1 | grep -qs 'GNU gold'; then
+ elt_patches+=" gold-conf"
+ fi
+
+ # Find out what dirs to scan.
+ if [[ ${do_shallow} == "yes" ]] ; then
+ [[ ${#dirs[@]} -ne 0 ]] && die "Using --shallow with explicit dirs doesn't make sense"
+ [[ -f ${S}/ltmain.sh || -f ${S}/configure ]] && dirs+=( "${S}" )
+ else
+ [[ ${#dirs[@]} -eq 0 ]] && dirs+=( "${S}" )
+ dirs=( $(find "${dirs[@]}" '(' -name ltmain.sh -o -name configure ')' -printf '%h\n' | sort -u) )
+ fi
+
+ local d p ret
+ for d in "${dirs[@]}" ; do
+ ELT_APPLIED_PATCHES=
+
+ if [[ -f ${d}/.elibtoolized ]] ; then
+ ${force} || continue
+ fi
+
+ local outfunc="einfo"
+ [[ -f ${d}/.elibtoolized ]] && outfunc="ewarn"
+ ${outfunc} "Running elibtoolize in: ${d#${WORKDIR}/}/"
+ if [[ ${outfunc} == "ewarn" ]] ; then
+ ewarn " We've already been run in this tree; you should"
+ ewarn " avoid this if possible (perhaps by filing a bug)"
+ fi
+
+ # patching ltmain.sh
+ [[ -f ${d}/ltmain.sh ]] &&
+ for p in ${elt_patches} ; do
+ 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-ltconf)
+ # Newer libtoolize clears ltconfig, as not used anymore
+ if [[ -s ${d}/ltconfig ]] ; then
+ ELT_walk_patches "${d}/ltconfig" "${p}"
+ ret=$?
+ fi
+ ;;
+ fbsd-ltconf)
+ if [[ -s ${d}/ltconfig ]] ; then
+ ELT_walk_patches "${d}/ltconfig" "${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
+ ;;
+ install-sh)
+ ELT_walk_patches "${d}/install-sh" "${p}"
+ ret=$?
+ ;;
+ cross)
+ if [[ ${CBUILD:-${CHOST}} != ${CHOST} ]] ; 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})!"
+ die "Please file a bug report to add a proper patch."
+ fi
+ # We do not want to run libtoolize ...
+ ELT_APPLIED_PATCHES="portage"
+ fi
+ ;;
+ darwin-*)
+ [[ ${CHOST} == *"-darwin"* ]] && ewarn " Darwin patch set '${p}' failed to apply!"
+ ;;
+ esac
+ fi
+ done
+
+ # makes sense for ltmain.sh patches only
+ [[ -f ${d}/ltmain.sh ]] &&
+ if [[ -z ${ELT_APPLIED_PATCHES} ]] ; then
+ if [[ ${do_portage} == "no" && \
+ ${do_reversedeps} == "no" && \
+ ${do_only_patches} == "no" && \
+ ${deptoremove} == "" ]]
+ then
+ die "Cannot apply any patches, please file a bug about this"
+ fi
+ fi
+
+ # patching configure
+ [[ -f ${d}/configure ]] &&
+ for p in ${elt_patches} ; do
+ ret=0
+
+ case ${p} in
+ uclibc-conf)
+ if grep -qs 'Transform linux' "${d}/configure" ; then
+ ELT_walk_patches "${d}/configure" "${p}"
+ ret=$?
+ fi
+ ;;
+ fbsd-conf)
+ if grep -qs 'version_type=freebsd-' "${d}/configure" ; then
+ ELT_walk_patches "${d}/configure" "${p}"
+ ret=$?
+ fi
+ ;;
+ darwin-conf)
+ if grep -qs '&& echo \.so ||' "${d}/configure" ; then
+ ELT_walk_patches "${d}/configure" "${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=$?
+ fi
+ if [[ $subret -eq 0 ]]; then
+ # have at least one patch succeeded.
+ ret=0
+ fi
+ done
+ ;;
+ mint-conf|gold-conf|sol2-conf)
+ ELT_walk_patches "${d}/configure" "${p}"
+ ret=$?
+ ;;
+ target-nm)
+ ELT_walk_patches "${d}/configure" "${p}"
+ ret=$?
+ ;;
+ ppc64le)
+ ELT_walk_patches "${d}/configure" "${p}"
+ ret=$?
+ ;;
+ *)
+ # ltmain.sh patches are applied above
+ ;;
+ esac
+
+ if [[ ${ret} -ne 0 ]] ; then
+ case ${p} in
+ 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" 2>/dev/null) ]]; then
+ die " FreeBSD patch set '${p}' failed to apply!"
+ fi
+ fi
+ ;;
+ darwin-*)
+ [[ ${CHOST} == *"-darwin"* ]] && ewarn " Darwin patch set '${p}' failed to apply!"
+ ;;
+ esac
+ fi
+ done
+
+ rm -f "${d}/libtool"
+
+ echo "${ELT_APPLIED_PATCHES}" > "${d}/.elibtoolized"
+ done
+}
+
+# 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
+}
+
+elibtoolize "${@}"
+exit 0
diff --git a/aixrtl/1.5.0-cmds-c b/patches/aixrtl/1.5.0-cmds-c
index 9be0568..9be0568 100644
--- a/aixrtl/1.5.0-cmds-c
+++ b/patches/aixrtl/1.5.0-cmds-c
diff --git a/aixrtl/1.5.0-cmds-cxx b/patches/aixrtl/1.5.0-cmds-cxx
index 13ffb7a..13ffb7a 100644
--- a/aixrtl/1.5.0-cmds-cxx
+++ b/patches/aixrtl/1.5.0-cmds-cxx
diff --git a/aixrtl/1.5.0-expsym-c b/patches/aixrtl/1.5.0-expsym-c
index df2e979..df2e979 100644
--- a/aixrtl/1.5.0-expsym-c
+++ b/patches/aixrtl/1.5.0-expsym-c
diff --git a/aixrtl/1.5.0-expsym-cxx b/patches/aixrtl/1.5.0-expsym-cxx
index fcc31d5..fcc31d5 100644
--- a/aixrtl/1.5.0-expsym-cxx
+++ b/patches/aixrtl/1.5.0-expsym-cxx
diff --git a/aixrtl/1.5.0-noundef-c b/patches/aixrtl/1.5.0-noundef-c
index c893f9c..c893f9c 100644
--- a/aixrtl/1.5.0-noundef-c
+++ b/patches/aixrtl/1.5.0-noundef-c
diff --git a/aixrtl/1.5.0-noundef-cxx b/patches/aixrtl/1.5.0-noundef-cxx
index dc01fca..dc01fca 100644
--- a/aixrtl/1.5.0-noundef-cxx
+++ b/patches/aixrtl/1.5.0-noundef-cxx
diff --git a/aixrtl/1.5.0-soname b/patches/aixrtl/1.5.0-soname
index 5c18065..5c18065 100644
--- a/aixrtl/1.5.0-soname
+++ b/patches/aixrtl/1.5.0-soname
diff --git a/aixrtl/1.5.0-usertl-c b/patches/aixrtl/1.5.0-usertl-c
index b5ff186..b5ff186 100644
--- a/aixrtl/1.5.0-usertl-c
+++ b/patches/aixrtl/1.5.0-usertl-c
diff --git a/aixrtl/1.5.0-usertl-cxx b/patches/aixrtl/1.5.0-usertl-cxx
index 36c84e9..36c84e9 100644
--- a/aixrtl/1.5.0-usertl-cxx
+++ b/patches/aixrtl/1.5.0-usertl-cxx
diff --git a/aixrtl/1.5.22-cmds-c b/patches/aixrtl/1.5.22-cmds-c
index a97485a..a97485a 100644
--- a/aixrtl/1.5.22-cmds-c
+++ b/patches/aixrtl/1.5.22-cmds-c
diff --git a/aixrtl/1.5.22-cmds-cxx b/patches/aixrtl/1.5.22-cmds-cxx
index 222a0f7..222a0f7 100644
--- a/aixrtl/1.5.22-cmds-cxx
+++ b/patches/aixrtl/1.5.22-cmds-cxx
diff --git a/aixrtl/2.0.0-fpic-c b/patches/aixrtl/2.0.0-fpic-c
index bb3cb42..bb3cb42 100644
--- a/aixrtl/2.0.0-fpic-c
+++ b/patches/aixrtl/2.0.0-fpic-c
diff --git a/aixrtl/2.0.0-fpic-cxx b/patches/aixrtl/2.0.0-fpic-cxx
index 532bbcf..532bbcf 100644
--- a/aixrtl/2.0.0-fpic-cxx
+++ b/patches/aixrtl/2.0.0-fpic-cxx
diff --git a/aixrtl/2.2.0-cmds-c b/patches/aixrtl/2.2.0-cmds-c
index 6c2cd7e..6c2cd7e 100644
--- a/aixrtl/2.2.0-cmds-c
+++ b/patches/aixrtl/2.2.0-cmds-c
diff --git a/aixrtl/2.2.0-cmds-cxx b/patches/aixrtl/2.2.0-cmds-cxx
index af3c7b7..af3c7b7 100644
--- a/aixrtl/2.2.0-cmds-cxx
+++ b/patches/aixrtl/2.2.0-cmds-cxx
diff --git a/aixrtl/2.2.0-expsym-c b/patches/aixrtl/2.2.0-expsym-c
index 1f26cd2..1f26cd2 100644
--- a/aixrtl/2.2.0-expsym-c
+++ b/patches/aixrtl/2.2.0-expsym-c
diff --git a/aixrtl/2.2.0-expsym-cxx b/patches/aixrtl/2.2.0-expsym-cxx
index b2164ab..b2164ab 100644
--- a/aixrtl/2.2.0-expsym-cxx
+++ b/patches/aixrtl/2.2.0-expsym-cxx
diff --git a/aixrtl/2.2.0-noundef-c b/patches/aixrtl/2.2.0-noundef-c
index d9520cb..d9520cb 100644
--- a/aixrtl/2.2.0-noundef-c
+++ b/patches/aixrtl/2.2.0-noundef-c
diff --git a/aixrtl/2.2.0-noundef-cxx b/patches/aixrtl/2.2.0-noundef-cxx
index 37d02db..37d02db 100644
--- a/aixrtl/2.2.0-noundef-cxx
+++ b/patches/aixrtl/2.2.0-noundef-cxx
diff --git a/aixrtl/2.2.0-usertl-cxx b/patches/aixrtl/2.2.0-usertl-cxx
index c59a093..c59a093 100644
--- a/aixrtl/2.2.0-usertl-cxx
+++ b/patches/aixrtl/2.2.0-usertl-cxx
diff --git a/aixrtl/2.2.8-cmds-c b/patches/aixrtl/2.2.8-cmds-c
index e1e0934..e1e0934 100644
--- a/aixrtl/2.2.8-cmds-c
+++ b/patches/aixrtl/2.2.8-cmds-c
diff --git a/aixrtl/2.2.8-cmds-cxx b/patches/aixrtl/2.2.8-cmds-cxx
index 7a31f66..7a31f66 100644
--- a/aixrtl/2.2.8-cmds-cxx
+++ b/patches/aixrtl/2.2.8-cmds-cxx
diff --git a/aixrtl/2.4.0-expsym-c b/patches/aixrtl/2.4.0-expsym-c
index 5af84e7..5af84e7 100644
--- a/aixrtl/2.4.0-expsym-c
+++ b/patches/aixrtl/2.4.0-expsym-c
diff --git a/aixrtl/2.4.0-expsym-cxx b/patches/aixrtl/2.4.0-expsym-cxx
index 0bb3729..0bb3729 100644
--- a/aixrtl/2.4.0-expsym-cxx
+++ b/patches/aixrtl/2.4.0-expsym-cxx
diff --git a/aixrtl/2.4.2.418-cmds-c b/patches/aixrtl/2.4.2.418-cmds-c
index d92ce34..d92ce34 100644
--- a/aixrtl/2.4.2.418-cmds-c
+++ b/patches/aixrtl/2.4.2.418-cmds-c
diff --git a/aixrtl/2.4.2.418-cmds-cxx b/patches/aixrtl/2.4.2.418-cmds-cxx
index 851be27..851be27 100644
--- a/aixrtl/2.4.2.418-cmds-cxx
+++ b/patches/aixrtl/2.4.2.418-cmds-cxx
diff --git a/aixrtl/2.4.2.418-soname b/patches/aixrtl/2.4.2.418-soname
index cb9e48f..cb9e48f 100644
--- a/aixrtl/2.4.2.418-soname
+++ b/patches/aixrtl/2.4.2.418-soname
diff --git a/aixrtl/2.4.4-expsym-c b/patches/aixrtl/2.4.4-expsym-c
index cad960b..cad960b 100644
--- a/aixrtl/2.4.4-expsym-c
+++ b/patches/aixrtl/2.4.4-expsym-c
diff --git a/aixrtl/2.4.4-expsym-cxx b/patches/aixrtl/2.4.4-expsym-cxx
index a9ea046..a9ea046 100644
--- a/aixrtl/2.4.4-expsym-cxx
+++ b/patches/aixrtl/2.4.4-expsym-cxx
diff --git a/aixrtl/2.4.4-with-svr4 b/patches/aixrtl/2.4.4-with-svr4
index f356ea9..f356ea9 100644
--- a/aixrtl/2.4.4-with-svr4
+++ b/patches/aixrtl/2.4.4-with-svr4
diff --git a/as-needed/1.5 b/patches/as-needed/1.5
index 01759c9..01759c9 100644
--- a/as-needed/1.5
+++ b/patches/as-needed/1.5
diff --git a/as-needed/1.5.26 b/patches/as-needed/1.5.26
index 6836c55..6836c55 100644
--- a/as-needed/1.5.26
+++ b/patches/as-needed/1.5.26
diff --git a/as-needed/2.2.6 b/patches/as-needed/2.2.6
index 7e71de4..7e71de4 100644
--- a/as-needed/2.2.6
+++ b/patches/as-needed/2.2.6
diff --git a/as-needed/2.4.2 b/patches/as-needed/2.4.2
index 526877a..526877a 100644
--- a/as-needed/2.4.2
+++ b/patches/as-needed/2.4.2
diff --git a/as-needed/2.4.3 b/patches/as-needed/2.4.3
index a31e9ed..a31e9ed 100644
--- a/as-needed/2.4.3
+++ b/patches/as-needed/2.4.3
diff --git a/cross/2.2 b/patches/cross/2.2
index e8fc2be..e8fc2be 100644
--- a/cross/2.2
+++ b/patches/cross/2.2
diff --git a/cross/2.4 b/patches/cross/2.4
index 9b35295..9b35295 100644
--- a/cross/2.4
+++ b/patches/cross/2.4
diff --git a/cross/2.4.3 b/patches/cross/2.4.3
index 760104f..760104f 100644
--- a/cross/2.4.3
+++ b/patches/cross/2.4.3
diff --git a/darwin-conf/1.5 b/patches/darwin-conf/1.5
index 46d9e5a..46d9e5a 100644
--- a/darwin-conf/1.5
+++ b/patches/darwin-conf/1.5
diff --git a/darwin-conf/1.5b b/patches/darwin-conf/1.5b
index 65633a8..65633a8 100644
--- a/darwin-conf/1.5b
+++ b/patches/darwin-conf/1.5b
diff --git a/darwin-conf/2.2.4 b/patches/darwin-conf/2.2.4
index 5ad8293..5ad8293 100644
--- a/darwin-conf/2.2.4
+++ b/patches/darwin-conf/2.2.4
diff --git a/darwin-conf/2.2.6 b/patches/darwin-conf/2.2.6
index 669a68d..669a68d 100644
--- a/darwin-conf/2.2.6
+++ b/patches/darwin-conf/2.2.6
diff --git a/darwin-conf/2.4.6 b/patches/darwin-conf/2.4.6
index a67ba12..a67ba12 100644
--- a/darwin-conf/2.4.6
+++ b/patches/darwin-conf/2.4.6
diff --git a/darwin-ltconf/1.2.0 b/patches/darwin-ltconf/1.2.0
index da9f7e4..da9f7e4 100644
--- a/darwin-ltconf/1.2.0
+++ b/patches/darwin-ltconf/1.2.0
diff --git a/darwin-ltconf/1.3.0 b/patches/darwin-ltconf/1.3.0
index 49ae67d..49ae67d 100644
--- a/darwin-ltconf/1.3.0
+++ b/patches/darwin-ltconf/1.3.0
diff --git a/darwin-ltmain/1.2.0 b/patches/darwin-ltmain/1.2.0
index aaab86a..aaab86a 100644
--- a/darwin-ltmain/1.2.0
+++ b/patches/darwin-ltmain/1.2.0
diff --git a/darwin-ltmain/1.3.0 b/patches/darwin-ltmain/1.3.0
index 7148efb..7148efb 100644
--- a/darwin-ltmain/1.3.0
+++ b/patches/darwin-ltmain/1.3.0
diff --git a/deplibs/1.5 b/patches/deplibs/1.5
index 36c507a..36c507a 100644
--- a/deplibs/1.5
+++ b/patches/deplibs/1.5
diff --git a/deplibs/2.1b b/patches/deplibs/2.1b
index 3df590d..3df590d 100644
--- a/deplibs/2.1b
+++ b/patches/deplibs/2.1b
diff --git a/fbsd-conf/00broken-libglade b/patches/fbsd-conf/00broken-libglade
index df3c438..df3c438 100644
--- a/fbsd-conf/00broken-libglade
+++ b/patches/fbsd-conf/00broken-libglade
diff --git a/fbsd-conf/1.4.0 b/patches/fbsd-conf/1.4.0
index b986f8d..b986f8d 100644
--- a/fbsd-conf/1.4.0
+++ b/patches/fbsd-conf/1.4.0
diff --git a/fbsd-conf/1.5.10 b/patches/fbsd-conf/1.5.10
index 90c6347..90c6347 100644
--- a/fbsd-conf/1.5.10
+++ b/patches/fbsd-conf/1.5.10
diff --git a/fbsd-conf/1.5.18 b/patches/fbsd-conf/1.5.18
index 0636ceb..0636ceb 100644
--- a/fbsd-conf/1.5.18
+++ b/patches/fbsd-conf/1.5.18
diff --git a/fbsd-conf/1.5.20 b/patches/fbsd-conf/1.5.20
index e17920f..e17920f 100644
--- a/fbsd-conf/1.5.20
+++ b/patches/fbsd-conf/1.5.20
diff --git a/fbsd-conf/1.5.20b b/patches/fbsd-conf/1.5.20b
index 0659b1c..0659b1c 100644
--- a/fbsd-conf/1.5.20b
+++ b/patches/fbsd-conf/1.5.20b
diff --git a/fbsd-conf/1.9f b/patches/fbsd-conf/1.9f
index f16ddb8..f16ddb8 100644
--- a/fbsd-conf/1.9f
+++ b/patches/fbsd-conf/1.9f
diff --git a/fbsd-ltconf/1.2.0 b/patches/fbsd-ltconf/1.2.0
index 7d2f554..7d2f554 100644
--- a/fbsd-ltconf/1.2.0
+++ b/patches/fbsd-ltconf/1.2.0
diff --git a/fbsd-ltconf/1.3.0 b/patches/fbsd-ltconf/1.3.0
index 69aa94e..69aa94e 100644
--- a/fbsd-ltconf/1.3.0
+++ b/patches/fbsd-ltconf/1.3.0
diff --git a/fbsd-ltconf/1.4a b/patches/fbsd-ltconf/1.4a
index 0008407..0008407 100644
--- a/fbsd-ltconf/1.4a
+++ b/patches/fbsd-ltconf/1.4a
diff --git a/fbsd-ltconf/1.4a-GCC3.0 b/patches/fbsd-ltconf/1.4a-GCC3.0
index e88bb45..e88bb45 100644
--- a/fbsd-ltconf/1.4a-GCC3.0
+++ b/patches/fbsd-ltconf/1.4a-GCC3.0
diff --git a/fix-relink/1.4.0 b/patches/fix-relink/1.4.0
index 1b12c9b..1b12c9b 100644
--- a/fix-relink/1.4.0
+++ b/patches/fix-relink/1.4.0
diff --git a/fix-relink/1.4.3 b/patches/fix-relink/1.4.3
index 959fe1d..959fe1d 100644
--- a/fix-relink/1.4.3
+++ b/patches/fix-relink/1.4.3
diff --git a/fix-relink/1.5.0 b/patches/fix-relink/1.5.0
index 29b7db7..29b7db7 100644
--- a/fix-relink/1.5.0
+++ b/patches/fix-relink/1.5.0
diff --git a/gold-conf/2.2.6 b/patches/gold-conf/2.2.6
index 048cbad..048cbad 100644
--- a/gold-conf/2.2.6
+++ b/patches/gold-conf/2.2.6
diff --git a/hardcode-relink/1.3d b/patches/hardcode-relink/1.3d
index dc7819f..dc7819f 100644
--- a/hardcode-relink/1.3d
+++ b/patches/hardcode-relink/1.3d
diff --git a/hardcode/1.3d b/patches/hardcode/1.3d
index 7408b37..7408b37 100644
--- a/hardcode/1.3d
+++ b/patches/hardcode/1.3d
diff --git a/hardcode/2.1b b/patches/hardcode/2.1b
index 48571f3..48571f3 100644
--- a/hardcode/2.1b
+++ b/patches/hardcode/2.1b
diff --git a/hc-flag-ld/1.5 b/patches/hc-flag-ld/1.5
index bf88873..bf88873 100644
--- a/hc-flag-ld/1.5
+++ b/patches/hc-flag-ld/1.5
diff --git a/hpux-conf/1.5.22-syslibpath b/patches/hpux-conf/1.5.22-syslibpath
index 27fef48..27fef48 100644
--- a/hpux-conf/1.5.22-syslibpath
+++ b/patches/hpux-conf/1.5.22-syslibpath
diff --git a/install-sh/1.5 b/patches/install-sh/1.5
index 1b8b20b..1b8b20b 100644
--- a/install-sh/1.5
+++ b/patches/install-sh/1.5
diff --git a/install-sh/1.5.4 b/patches/install-sh/1.5.4
index 0b1c220..0b1c220 100644
--- a/install-sh/1.5.4
+++ b/patches/install-sh/1.5.4
diff --git a/install-sh/1.5.6 b/patches/install-sh/1.5.6
index d107740..d107740 100644
--- a/install-sh/1.5.6
+++ b/patches/install-sh/1.5.6
diff --git a/irix-ltmain/2.2.6 b/patches/irix-ltmain/2.2.6
index 7091637..7091637 100644
--- a/irix-ltmain/2.2.6
+++ b/patches/irix-ltmain/2.2.6
diff --git a/ltmain/1.5 b/patches/ltmain/1.5
index 39abee0..39abee0 100644
--- a/ltmain/1.5
+++ b/patches/ltmain/1.5
diff --git a/max_cmd_len/1.5.0 b/patches/max_cmd_len/1.5.0
index 6d5f88b..6d5f88b 100644
--- a/max_cmd_len/1.5.0
+++ b/patches/max_cmd_len/1.5.0
diff --git a/max_cmd_len/1.5.14 b/patches/max_cmd_len/1.5.14
index 8f299e8..8f299e8 100644
--- a/max_cmd_len/1.5.14
+++ b/patches/max_cmd_len/1.5.14
diff --git a/max_cmd_len/1.5.20 b/patches/max_cmd_len/1.5.20
index 76dc213..76dc213 100644
--- a/max_cmd_len/1.5.20
+++ b/patches/max_cmd_len/1.5.20
diff --git a/mint-conf/2.2.6 b/patches/mint-conf/2.2.6
index 34f2e5f..34f2e5f 100644
--- a/mint-conf/2.2.6
+++ b/patches/mint-conf/2.2.6
diff --git a/no-lc/1.3d b/patches/no-lc/1.3d
index de20b0c..de20b0c 100644
--- a/no-lc/1.3d
+++ b/patches/no-lc/1.3d
diff --git a/no-lc/1.5.22 b/patches/no-lc/1.5.22
index 786284d..786284d 100644
--- a/no-lc/1.5.22
+++ b/patches/no-lc/1.5.22
diff --git a/nocxx/nocxx-2.64.patch b/patches/nocxx/nocxx-2.64.patch
index 4b10e46..4b10e46 100644
--- a/nocxx/nocxx-2.64.patch
+++ b/patches/nocxx/nocxx-2.64.patch
diff --git a/nocxx/nocxx.patch b/patches/nocxx/nocxx.patch
index 4b32692..4b32692 100644
--- a/nocxx/nocxx.patch
+++ b/patches/nocxx/nocxx.patch
diff --git a/portage/1.2.0 b/patches/portage/1.2.0
index 70b0261..70b0261 100644
--- a/portage/1.2.0
+++ b/patches/portage/1.2.0
diff --git a/portage/1.3.0c b/patches/portage/1.3.0c
index ad071ae..ad071ae 100644
--- a/portage/1.3.0c
+++ b/patches/portage/1.3.0c
diff --git a/portage/1.3.3 b/patches/portage/1.3.3
index 731076b..731076b 100644
--- a/portage/1.3.3
+++ b/patches/portage/1.3.3
diff --git a/portage/1.4.0 b/patches/portage/1.4.0
index 5566a39..5566a39 100644
--- a/portage/1.4.0
+++ b/patches/portage/1.4.0
diff --git a/portage/1.5.10 b/patches/portage/1.5.10
index f33d906..f33d906 100644
--- a/portage/1.5.10
+++ b/patches/portage/1.5.10
diff --git a/portage/2.2 b/patches/portage/2.2
index 1f724e7..1f724e7 100644
--- a/portage/2.2
+++ b/patches/portage/2.2
diff --git a/ppc64le/2.4.2 b/patches/ppc64le/2.4.2
index 8d3b116..8d3b116 100644
--- a/ppc64le/2.4.2
+++ b/patches/ppc64le/2.4.2
diff --git a/ppc64le/2.4.4 b/patches/ppc64le/2.4.4
index 0d86521..0d86521 100644
--- a/ppc64le/2.4.4
+++ b/patches/ppc64le/2.4.4
diff --git a/relink-prog/1.3d b/patches/relink-prog/1.3d
index ccb6cb8..ccb6cb8 100644
--- a/relink-prog/1.3d
+++ b/patches/relink-prog/1.3d
diff --git a/relink-prog/2.1b b/patches/relink-prog/2.1b
index 71a0970..71a0970 100644
--- a/relink-prog/2.1b
+++ b/patches/relink-prog/2.1b
diff --git a/relink/1.4.0a b/patches/relink/1.4.0a
index 382d760..382d760 100644
--- a/relink/1.4.0a
+++ b/patches/relink/1.4.0a
diff --git a/relink/1.4.0a-GCC3.0-1 b/patches/relink/1.4.0a-GCC3.0-1
index 6bf45e5..6bf45e5 100644
--- a/relink/1.4.0a-GCC3.0-1
+++ b/patches/relink/1.4.0a-GCC3.0-1
diff --git a/relink/1.4.0a-GCC3.0-2 b/patches/relink/1.4.0a-GCC3.0-2
index 55103a4..55103a4 100644
--- a/relink/1.4.0a-GCC3.0-2
+++ b/patches/relink/1.4.0a-GCC3.0-2
diff --git a/relink/1.4.1 b/patches/relink/1.4.1
index f34863f..f34863f 100644
--- a/relink/1.4.1
+++ b/patches/relink/1.4.1
diff --git a/relink/1.4.2 b/patches/relink/1.4.2
index 17a630b..17a630b 100644
--- a/relink/1.4.2
+++ b/patches/relink/1.4.2
diff --git a/relink/1.4.3 b/patches/relink/1.4.3
index 3ed5fe3..3ed5fe3 100644
--- a/relink/1.4.3
+++ b/patches/relink/1.4.3
diff --git a/rem-int-dep/1.3.5 b/patches/rem-int-dep/1.3.5
index 4302623..4302623 100644
--- a/rem-int-dep/1.3.5
+++ b/patches/rem-int-dep/1.3.5
diff --git a/sed/1.3.4 b/patches/sed/1.3.4
index c88ff72..c88ff72 100644
--- a/sed/1.3.4
+++ b/patches/sed/1.3.4
diff --git a/sed/1.4.0 b/patches/sed/1.4.0
index 9c51ac2..9c51ac2 100644
--- a/sed/1.4.0
+++ b/patches/sed/1.4.0
diff --git a/sed/1.5.6 b/patches/sed/1.5.6
index 5efd531..5efd531 100644
--- a/sed/1.5.6
+++ b/patches/sed/1.5.6
diff --git a/sol2-conf/2.4.2 b/patches/sol2-conf/2.4.2
index a57f22c..a57f22c 100644
--- a/sol2-conf/2.4.2
+++ b/patches/sol2-conf/2.4.2
diff --git a/sol2-ltmain/2.4.2 b/patches/sol2-ltmain/2.4.2
index ad35ed8..ad35ed8 100644
--- a/sol2-ltmain/2.4.2
+++ b/patches/sol2-ltmain/2.4.2
diff --git a/sys-lib-dlsearch/2.4 b/patches/sys-lib-dlsearch/2.4
index 89eb699..89eb699 100644
--- a/sys-lib-dlsearch/2.4
+++ b/patches/sys-lib-dlsearch/2.4
diff --git a/target-nm/2.4.2 b/patches/target-nm/2.4.2
index 1f22220..1f22220 100644
--- a/target-nm/2.4.2
+++ b/patches/target-nm/2.4.2
diff --git a/test/1.4.0 b/patches/test/1.4.0
index d6f442f..d6f442f 100644
--- a/test/1.4.0
+++ b/patches/test/1.4.0
diff --git a/test/1.4.2 b/patches/test/1.4.2
index 8ae65ef..8ae65ef 100644
--- a/test/1.4.2
+++ b/patches/test/1.4.2
diff --git a/tmp/1.3.5 b/patches/tmp/1.3.5
index 29b70e0..29b70e0 100644
--- a/tmp/1.3.5
+++ b/patches/tmp/1.3.5
diff --git a/uclibc-conf/1.2.0 b/patches/uclibc-conf/1.2.0
index acd804c..acd804c 100644
--- a/uclibc-conf/1.2.0
+++ b/patches/uclibc-conf/1.2.0
diff --git a/uclibc-conf/1.3.0c b/patches/uclibc-conf/1.3.0c
index 03efc5d..03efc5d 100644
--- a/uclibc-conf/1.3.0c
+++ b/patches/uclibc-conf/1.3.0c
diff --git a/uclibc-ltconf/1.2.0 b/patches/uclibc-ltconf/1.2.0
index bbc6bc9..bbc6bc9 100644
--- a/uclibc-ltconf/1.2.0
+++ b/patches/uclibc-ltconf/1.2.0
diff --git a/uclibc-ltconf/1.3.0 b/patches/uclibc-ltconf/1.3.0
index 0a5a9ea..0a5a9ea 100644
--- a/uclibc-ltconf/1.3.0
+++ b/patches/uclibc-ltconf/1.3.0