mirror of
https://github.com/LibreELEC/LibreELEC.tv.git
synced 2025-07-24 11:16:51 +00:00
buildsystem: add package flags to set compiler optimization
speed: use O3 size: use Os default: use O2 The priority order is to use speed if set, then size, and fallback to default when neither are set. Signed-off-by: Ian Leonard <antonlacon@gmail.com>
This commit is contained in:
parent
77c88ba2ee
commit
c5e535505c
@ -221,6 +221,18 @@ setup_toolchain() {
|
||||
TARGET_LDFLAGS+=" $LDFLAGS_OPTIM_GOLD"
|
||||
fi
|
||||
|
||||
# compiler optimization, descending priority: speed, size, default
|
||||
if flag_enabled "speed" "no"; then
|
||||
TARGET_CFLAGS+=" $CFLAGS_OPTIM_SPEED"
|
||||
TARGET_CXXFLAGS+=" $CXXFLAGS_OPTIM_SPEED"
|
||||
elif flag_enabled "size" "no"; then
|
||||
TARGET_CFLAGS+=" $CFLAGS_OPTIM_SIZE"
|
||||
TARGET_CXXFLAGS+=" $CXXFLAGS_OPTIM_SIZE"
|
||||
else
|
||||
TARGET_CFLAGS+=" $CXXFLAGS_OPTIM_DEFAULT"
|
||||
TARGET_CXXFLAGS+=" $CXXFLAGS_OPTIM_DEFAULT"
|
||||
fi
|
||||
|
||||
# position-independent code
|
||||
if flag_enabled "pic" "no"; then
|
||||
TARGET_CFLAGS+=" $CFLAGS_OPTIM_PIC"
|
||||
|
@ -1,4 +1,3 @@
|
||||
GCC_OPTIM="-Os"
|
||||
# Linker hash-style is set to gnu via gcc default
|
||||
LD_OPTIM="-Wl,--as-needed"
|
||||
|
||||
@ -15,7 +14,7 @@ fi
|
||||
NINJA_OPTS=""
|
||||
|
||||
TARGET_CPPFLAGS=""
|
||||
TARGET_CFLAGS="$TARGET_CFLAGS -Wall -pipe $GCC_OPTIM $PROJECT_CFLAGS"
|
||||
TARGET_CFLAGS="$TARGET_CFLAGS -Wall -pipe $PROJECT_CFLAGS"
|
||||
TARGET_CXXFLAGS="$TARGET_CFLAGS"
|
||||
TARGET_LDFLAGS="$TARGET_LDFLAGS $LD_OPTIM"
|
||||
TARGET_LIBDIR="$SYSROOT_PREFIX/lib $SYSROOT_PREFIX/usr/lib"
|
||||
@ -43,6 +42,16 @@ LDFLAGS_OPTIM_LTO_COMMON="-fuse-linker-plugin"
|
||||
# gold flags
|
||||
LDFLAGS_OPTIM_GOLD="-fuse-ld=gold"
|
||||
|
||||
# default compiler optimization
|
||||
CFLAGS_OPTIM_DEFAULT="-O2"
|
||||
CXXFLAGS_OPTIM_DEFAULT="$CFLAGS_OPTIM_DEFAULT"
|
||||
# speed flag
|
||||
CFLAGS_OPTIM_SPEED="-O3"
|
||||
CXXFLAGS_OPTIM_SPEED="$CFLAGS_OPTIM_SPEED"
|
||||
# size flag
|
||||
CFLAGS_OPTIM_SIZE="-Os"
|
||||
CXXFLAGS_OPTIM_SIZE="$CFLAGS_OPTIM_SIZE"
|
||||
|
||||
# position-independent code
|
||||
CFLAGS_OPTIM_PIC="-fPIC -DPIC"
|
||||
CXXFLAGS_OPTIM_PIC="-fPIC -DPIC"
|
||||
|
Loading…
x
Reference in New Issue
Block a user