diff options
author | Sage Weil <sage@inktank.com> | 2013-08-20 16:45:24 -0700 |
---|---|---|
committer | Sage Weil <sage@inktank.com> | 2013-08-22 09:14:58 -0700 |
commit | 841a695527da8da98eda15b3d6bd17c1de4eacf7 (patch) | |
tree | b59302b5e32fae889ccfe009ce2dbce3431a9e27 | |
parent | 8437304c93a23b4544fe4ba1e85248e7c10ea4e8 (diff) | |
download | ceph-841a695527da8da98eda15b3d6bd17c1de4eacf7.tar.gz |
yasm-wrapper: hide libtool insanity from yasm
libtool passes all kinds of crap to yasm that yasm does not understand.
Hide it with this ugly wrapper. Sigh.
Signed-off-by: Sage Weil <sage@inktank.com>
-rw-r--r-- | src/Makefile.am | 3 | ||||
-rwxr-xr-x | src/yasm-wrapper | 36 |
2 files changed, 38 insertions, 1 deletions
diff --git a/src/Makefile.am b/src/Makefile.am index 3219a15bc17..34e86fa1bf9 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -20,7 +20,8 @@ EXTRA_DIST = \ libs3/mswin \ libs3/src \ libs3/test \ - unittest_bufferlist.sh + unittest_bufferlist.sh \ + yasm-wrapper CLEANFILES = bin_PROGRAMS = diff --git a/src/yasm-wrapper b/src/yasm-wrapper new file mode 100755 index 00000000000..8364d49599f --- /dev/null +++ b/src/yasm-wrapper @@ -0,0 +1,36 @@ +#!/bin/sh -e + +# libtool and yasm do not get along. +# filter out any crap that libtool feeds us that yasm does not understand. +new="" +touch="" +while [ -n "$*" ]; do + case "$1" in + -f ) + shift + new="-f $1" + shift + ;; + -g | -f* | -W* | -MD | -MP | -fPIC | -c | -D* | --param* | -O* | -I* ) + shift + ;; + -MT ) + shift + shift + ;; + -MF ) + shift + touch="$1" + shift + ;; + * ) + new="$new $1" + shift + ;; + esac +done + +echo yasm $new +yasm $new + +[ -n "$touch" ] && touch $touch |