+++ /dev/null
-#!/bin/bash -
-# Copyright (C) 2010 Red Hat Inc.
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-# Written by Richard W.M. Jones <rjones@redhat.com>
-#
-# Take a dynamically linked ELF binary and relink it, maximizing the
-# use of static libraries.
-#
-# Example:
-# binary foo
-# ---> dynamically links to libbar.so.0
-# ---> dynamically links to libzab.so.3
-# If libbar.a is available, but there is no libzab.a, then we would
-# end up with:
-# binary foo.static with libbar.a statically inside it
-# ---> still dynamically linking with libzab.so.3
-#
-# We need to have access to the original link command. This script
-# works by post-processing it to find the '-lbar' arguments, which are
-# replaced sometimes by direct static library names.
-#
-# Therefore to use this, you have to add this rule to your
-# Makefile.am:
-#
-# foo.static$(EXEEXT): $(foo_OBJECTS) $(foo_DEPENDENCIES)
-# relink-static.sh \
-# $(foo_LINK) $(foo_OBJECTS) -static $(foo_LDADD) $(foo_LIBS)
-
-declare -a args
-
-i=0
-for arg; do
- case "$arg" in
- -l*) # get just the library name (eg. "xml2")
- lib=${arg:2}
- # does a static version exist?
- for d in /usr/local/lib{64,} /usr/lib{64,} /lib{64,}; do
- path="$d/lib$lib.a"
- if [ -f "$path" ]; then
- arg="$path"
- break
- fi
- done
- ;;
- *.la) # hack around libtool mess
- d=$(dirname "$arg")
- b=$(basename "$arg")
- b=${b:0:${#b}-3}
- if [ -f "$d/.libs/$b.a" ]; then
- arg="$d/.libs/$b.a"
- fi
- ;;
- *) ;;
- esac
- args[$i]="$arg"
- i=$(($i+1))
-done
-
-# Run the final command.
-echo "${args[@]}"
-"${args[@]}"