CloverBootloader/Xcode/cpp_tests/.settings/compilation/clang-g++

45 lines
1.3 KiB
Bash
Executable File

#!/bin/bash
SCRIPT_ABS_FILENAME=`perl -e 'use Cwd "abs_path";print abs_path(shift)' "${BASH_SOURCE[0]}"`
SCRIPT_DIR=`dirname "$SCRIPT_ABS_FILENAME"`
#echo `pwd`
#echo BASH_SOURCE="${BASH_SOURCE[@]}"
#echo "$0" "$@"
me=`basename "$0"` # get invocation name (not the name of the target of the link)
#echo me=$me
name="${me##*-}"
#echo name=$name
prefix=${me%-$name}
#echo prefix=$prefix
#clang doesn't know -Wno-unused-but-set-variable
args=( "$@" )
#args=( "${args[@]/-Wno-unused-but-set-variable/}" ) # doesn't work, it generates an empty arg
#for i in "${args[@]}"; do echo $i; done
source "$SCRIPT_DIR"/"$prefix"-path "$name"
ps_dir="$SCRIPT_DIR"/../compilation_project_specific
macrolist1=()
[ -f "$ps_dir"/all-all-all-macrolist ] && macrolist1=( $("$ps_dir"/all-all-all-macrolist) )
macrolist2=()
[ -f "$ps_dir"/"$prefix"-macrolist ] && macrolist2=( $("$ps_dir"/"$prefix"-macrolist) )
includelist1=()
[ -f "$ps_dir"/all-all-all-includelist ] && includelist1=( $("$ps_dir"/all-all-all-includelist) )
includelist2=()
[ -f "$ps_dir"/"$prefix"-includelist ] && includelist2=( $("$ps_dir"/"$prefix"-includelist) )
cmdArgs=()
cmdArgs=( "$bin_path" $("$ps_dir"/"$prefix"-"$name"flags) $("$ps_dir"/"$prefix"-c-c++flags) "${macrolist1[@]}" "${macrolist2[@]}" "${includelist1[@]}" "${includelist2[@]}" "${args[@]}" )
echo "${cmdArgs[@]}"
exec "${cmdArgs[@]}"