diff options
author | Jonny Lamb <jonny.lamb@collabora.co.uk> | 2009-04-21 22:27:50 +0800 |
---|---|---|
committer | Jonny Lamb <jonny.lamb@collabora.co.uk> | 2009-04-24 23:18:06 +0800 |
commit | 658bb59ac654bc4bbe95ae1aec17eec2fe9bb499 (patch) | |
tree | 284f031ab7cd5902cd129dd907c828c219893243 /shave-libtool.in | |
parent | d696d6cc31f672884382d5b8949be504cdc718a5 (diff) | |
download | gsoc2013-empathy-658bb59ac654bc4bbe95ae1aec17eec2fe9bb499.tar gsoc2013-empathy-658bb59ac654bc4bbe95ae1aec17eec2fe9bb499.tar.gz gsoc2013-empathy-658bb59ac654bc4bbe95ae1aec17eec2fe9bb499.tar.bz2 gsoc2013-empathy-658bb59ac654bc4bbe95ae1aec17eec2fe9bb499.tar.lz gsoc2013-empathy-658bb59ac654bc4bbe95ae1aec17eec2fe9bb499.tar.xz gsoc2013-empathy-658bb59ac654bc4bbe95ae1aec17eec2fe9bb499.tar.zst gsoc2013-empathy-658bb59ac654bc4bbe95ae1aec17eec2fe9bb499.zip |
Add shave support to build process.
Use --enable-shave to enable building with shave.
Signed-off-by: Jonny Lamb <jonny.lamb@collabora.co.uk>
Diffstat (limited to 'shave-libtool.in')
-rw-r--r-- | shave-libtool.in | 69 |
1 files changed, 69 insertions, 0 deletions
diff --git a/shave-libtool.in b/shave-libtool.in new file mode 100644 index 000000000..1f3a720c1 --- /dev/null +++ b/shave-libtool.in @@ -0,0 +1,69 @@ +#!/bin/sh + +# we need sed +SED=@SED@ +if test -z "$SED" ; then +SED=sed +fi + +lt_unmangle () +{ + last_result=`echo $1 | $SED -e 's#.libs/##' -e 's#[0-9a-zA-Z_\-\.]*_la-##'` +} + +# the real libtool to use +LIBTOOL="$1" +shift + +# if 1, don't print anything, the underlaying wrapper will do it +pass_though=0 + +# scan the arguments, keep the right ones for libtool, and discover the mode +preserved_args= +while test "$#" -gt 0; do + opt="$1" + shift + + case $opt in + --mode=*) + mode=`echo $opt | $SED -e 's/[-_a-zA-Z0-9]*=//'` + preserved_args="$preserved_args $opt" + ;; + -o) + lt_output="$1" + preserved_args="$preserved_args $opt" + ;; + *) + preserved_args="$preserved_args $opt" + ;; + esac +done + +case "$mode" in +compile) + # shave will be called and print the actual CC/CXX/LINK line + preserved_args="$preserved_args --shave-mode=$mode" + pass_though=1 + ;; +link) + preserved_args="$preserved_args --shave-mode=$mode" + Q=" LINK " + ;; +*) + # let's u + # echo "*** libtool: Unimplemented mode: $mode, fill a bug report" + ;; +esac + +lt_unmangle "$lt_output" +output=$last_result + +if test -z $V; then + if test $pass_though -eq 0; then + echo "$Q$output" + fi + $LIBTOOL --silent $preserved_args +else + echo $LIBTOOL $preserved_args + $LIBTOOL $preserved_args +fi |