void-packages/common/wrappers/cross-cc

37 lines
818 B
Bash

#!/bin/bash
# compiler wrapper to get rid of -I/usr/include and -L/usr/lib, that fucks up
# cross compilation badly.
declare -a MYARGS
ARGS=("$@")
i=0
while [ $i -lt ${#ARGS[@]} ]; do
arg="${ARGS[$i]}"
if [ "$incpath" ]; then
if [ "$arg" = "/usr/include" ]; then
echo "[cc-wrapper] ignoring -I $arg"
unset incpath
else
MYARGS+=("-I${arg}")
fi
elif [ "$libpath" ]; then
if [ "$arg" = "/usr/lib" ]; then
echo "[cc-wrapper] ignoring -L $arg"
unset libpath
else
MYARGS+=("-L${arg}")
fi
elif [ "$arg" = "-I" ]; then
incpath=1
elif [ "$arg" = "-L" ]; then
libpath=1
elif [ "$arg" = "-I/usr/include" -o "$arg" = "-L/usr/lib" ]; then
echo "[cc-wrapper] ignoring $arg"
else
MYARGS+=("${arg}")
fi
i=$((i+1))
done
#echo "[cc-wrapper] @BIN@ ${MYARGS[@]}"
exec @BIN@ "${MYARGS[@]}"