Ai
1 Star 0 Fork 0

wangcichen/urbackup_backend

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
linux_build_x86_64_cxx_wrapper 1.90 KB
一键复制 编辑 原始数据 按行查看 历史
Martin 提交于 2019-11-02 00:43 +08:00 . Build 32bit Linux client without sse3
#!/bin/bash
# This compiler wrapper removes e.g. -mno-sse4.2 if both -mno-sse4.2 and -msse4.2 are specified
set -e
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
#echo "ORIG_ARGS: $@" >> "$DIR/x86_64_cxx_wrapper.log"
args=()
containsElement () {
local e match="$1"
shift
for e; do [[ "$e" == "$match" ]] && return 0; done
return 1
}
removeElement () {
new_args=()
for v in "${args[@]}"; do
if [[ $v != "$1" ]]; then
new_args+=($v)
fi
done
args=("${new_args[@]}")
}
for var in "$@"
do
ADD=1
if [[ $var == "-mno-sse4.1" ]]; then
ADD=0
if ! containsElement "-msse4.1" "${args[@]}" && ! containsElement "-msse4.2" "${args[@]}"; then
args+=("$var")
fi
fi
if [[ $var == "-mno-sse4.2" ]]; then
ADD=0
if ! containsElement "-msse4.2" "${args[@]}"; then
args+=("$var")
fi
fi
if [[ $var == "-mno-sse4a" ]]; then
ADD=0
if ! containsElement "-msse4a" "${args[@]}" && ! containsElement "-msse4.2" "${args[@]}" && ! containsElement "-msse4.1" "${args[@]}"; then
args+=("$var")
fi
fi
if [[ $var == "-mno-sse3" ]]; then
ADD=0
if ! containsElement "-msse3" "${args[@]}" && ! containsElement "-mssse3" "${args[@]}" && ! containsElement "-msse4a" "${args[@]}" && ! containsElement "-msse4.2" "${args[@]}" && ! containsElement "-msse4.1" "${args[@]}"; then
args+=("$var")
fi
fi
if [[ $var == "-msse4.1" ]]; then
removeElement "-mno-sse4.1"
removeElement "-mno-sse4a"
fi
if [[ $var == "-msse4.2" ]]; then
removeElement "-mno-sse4.2"
removeElement "-mno-sse4.1"
removeElement "-mno-sse4a"
fi
if [[ $var == "-msse4a" ]]; then
removeElement "-mno-sse4a"
fi
if [[ $var == "-msse3" ]]; then
removeElement "-mno-sse3"
fi
if [[ $var == "-mssse3" ]]; then
removeElement "-mno-sse3"
fi
if [[ $ADD == 1 ]]; then
args+=("$var")
fi
done
CXX=$(cat "$DIR/cxx_path")
#echo "ARGS: ${args[@]}" >> "$DIR/x86_64_cxx_wrapper.log"
exec $CXX ${args[@]}
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
C
1
https://gitee.com/wangcichen/urbackup_backend.git
git@gitee.com:wangcichen/urbackup_backend.git
wangcichen
urbackup_backend
urbackup_backend
dev

搜索帮助