Files
Arch-R/config/optimize

72 lines
1.8 KiB
Plaintext

if [ "$OPTIMIZATIONS" = fast ];then
GCC_OPTIM="-Ofast"
GCC_OPTIM="$GCC_OPTIM -fexcess-precision=fast"
LD_OPTIM="-Wl,--as-needed"
fi
if [ "$OPTIMIZATIONS" = speed ];then
GCC_OPTIM="$GCC_OPTIM -O3"
GCC_OPTIM="$GCC_OPTIM -fexcess-precision=fast"
LD_OPTIM="-Wl,--as-needed"
fi
if [ "$OPTIMIZATIONS" = normal ];then
GCC_OPTIM="$GCC_OPTIM -O2"
LD_OPTIM=""
fi
if [ "$OPTIMIZATIONS" = size ];then
GCC_OPTIM="$GCC_OPTIM -Os"
LD_OPTIM=""
fi
if [ "$LOOP_SUPPORT" = yes ];then
GCC_OPTIM="$GCC_OPTIM -ftree-loop-distribution"
GCC_OPTIM="$GCC_OPTIM -floop-interchange"
GCC_OPTIM="$GCC_OPTIM -floop-strip-mine"
GCC_OPTIM="$GCC_OPTIM -floop-block"
fi
if [ "$GRAPHITE_SUPPORT" = yes ];then
GCC_OPTIM="$GCC_OPTIM -fgraphite-identity"
fi
if [ "$LTO_SUPPORT" = yes ];then
GCC_OPTIM="$GCC_OPTIM -flto"
LD_OPTIM="$LD_OPTIM -fuse-linker-plugin"
fi
if [ "$GOLD_SUPPORT" = yes ];then
LD_OPTIM="$LD_OPTIM -fuse-linker-plugin"
LD_OPTIM="$LD_OPTIM -fuse-ld=gold"
fi
if [ "$DEBUG" = yes ]; then
TARGET_CFLAGS="$TARGET_CFLAGS -ggdb"
TARGET_CXXFLAGS="$TARGET_CXXFLAGS -ggdb"
TARGET_LDFLAGS="$TARGET_LDFLAGS -ggdb"
else
TARGET_CFLAGS="$TARGET_CFLAGS -fomit-frame-pointer"
TARGET_CXXFLAGS="$TARGET_CXXFLAGS -fomit-frame-pointer"
TARGET_LDFLAGS="$TARGET_LDFLAGS -s"
fi
TARGET_CPPFLAGS=
TARGET_CFLAGS="$TARGET_CFLAGS -Wall -pipe $GCC_OPTIM $PROJECT_CFLAGS"
TARGET_CXXFLAGS="$TARGET_CFLAGS"
TARGET_LDFLAGS="$TARGET_LDFLAGS $GCC_OPTIM $LD_OPTIM"
HOST_CPPFLAGS=""
HOST_CFLAGS="-O2 -Wall -pipe -I$ROOT/$TOOLCHAIN/include"
HOST_CXXFLAGS="$HOST_CFLAGS"
HOST_LDFLAGS="-Wl,-rpath,$ROOT/$TOOLCHAIN/lib -L$ROOT/$TOOLCHAIN/lib"
# use -fPIC when necessary
case "`uname -m`" in
x86_64|ppc64|arm|armeb|armel)
HOST_CFLAGS="$HOST_CFLAGS -fPIC"
HOST_CXXFLAGS="$HOST_CXXFLAGS -fPIC"
HOST_LDFLAGS="$HOST_LDFLAGS -fPIC"
;;
esac