1
0
mirror of https://github.com/systemd/systemd synced 2025-10-06 00:13:24 +02:00

mkosi: pass through more toolchain flags

This commit is contained in:
Luca Boccassi
2025-09-11 18:39:17 +01:00
parent 56347fe7f3
commit b7d3b45017
4 changed files with 19 additions and 12 deletions

View File

@@ -14,7 +14,11 @@ PassEnvironment=
NO_BUILD
WIPE
SANITIZERS
CC
CXX
CFLAGS
CPPFLAGS
CXXFLAGS
LDFLAGS
LLVM
MESON_VERBOSE

View File

@@ -36,10 +36,10 @@ fi
# instead. The rootfs is overlaid with a writable tmpfs during the build script so these changes don't end up
# in the image itself.
tee --append /etc/makepkg.conf >/dev/null <<EOF
export CC="$( ((LLVM)) && echo clang || echo gcc)"
export CXX="$( ((LLVM)) && echo clang++ || echo g++)"
export CC_LD="$( ((LLVM)) && echo lld)"
export CXX_LD="$( ((LLVM)) && echo lld)"
export CC="$( ((CC)) && echo "$CC" || ((LLVM)) && echo clang || echo gcc)"
export CXX="$( ((CXX)) && echo "$CXX" || ((LLVM)) && echo clang++ || echo g++)"
export CC_LD="$( ((LD)) && echo "$LD" || ((LLVM)) && echo lld)"
export CXX_LD="$( ((LD)) && echo "$LD" || ((LLVM)) && echo lld)"
export CFLAGS="\$CFLAGS $MKOSI_CFLAGS $CFLAGS"
export CXXFLAGS="\$CXXFLAGS $MKOSI_CFLAGS $CFLAGS"
export LDFLAGS="\$LDFLAGS $MKOSI_LDFLAGS $LDFLAGS"

View File

@@ -67,12 +67,14 @@ DEB_BUILD_PROFILES="$(awk '$1=$1' <<<"\
")"
# TODO: Drop GENSYMBOLS_LEVEL once https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=986746 is fixed.
# Note that CXXFLAGS is for the C++ compiler, and CPPFLAGS is for the C/C++ preprocessor, they are not the same:
# https://en.wikipedia.org/wiki/CFLAGS
build() {
env \
CC="$( ((LLVM)) && echo clang || echo gcc)" \
CXX="$( ((LLVM)) && echo clang++ || echo g++)" \
CC_LD="$( ((LLVM)) && echo lld)" \
CXX_LD="$( ((LLVM)) && echo lld)" \
CC="$( ((CC)) && echo "$CC" || ((LLVM)) && echo clang || echo gcc)" \
CXX="$( ((CXX)) && echo "$CXX" || ((LLVM)) && echo clang++ || echo g++)" \
CC_LD="$( ((LD)) && echo "$LD" || ((LLVM)) && echo lld)" \
CXX_LD="$( ((LD)) && echo "$LD" || ((LLVM)) && echo lld)" \
DEB_BUILD_OPTIONS="$(awk '$1=$1' <<<"\
$( ((WITH_TESTS)) || echo nocheck) \
$( ((WITH_DOCS)) || echo nodoc) \
@@ -84,6 +86,7 @@ build() {
DEB_BUILD_PROFILES="$DEB_BUILD_PROFILES" \
DEB_CFLAGS_APPEND="$MKOSI_CFLAGS $CFLAGS" \
DEB_CXXFLAGS_APPEND="$MKOSI_CFLAGS $CFLAGS" \
DEB_CPPFLAGS_APPEND="$CPPFLAGS" \
DEB_LDFLAGS_APPEND="$MKOSI_LDFLAGS $LDFLAGS" \
DPKG_FORCE="unsafe-io" \
DPKG_DEB_COMPRESSOR_TYPE="none" \

View File

@@ -86,10 +86,10 @@ build() {
--unset CFLAGS \
--unset CXXFLAGS \
--unset LDFLAGS \
CC="$( ((LLVM)) && echo clang || echo gcc)" \
CXX="$( ((LLVM)) && echo clang++ || echo g++)" \
CC_LD="$( ((LLVM)) && echo lld)" \
CXX_LD="$( ((LLVM)) && echo lld)" \
CC="$( ((CC)) && echo "$CC" || ((LLVM)) && echo clang || echo gcc)" \
CXX="$( ((CXX)) && echo "$CXX" || ((LLVM)) && echo clang++ || echo g++)" \
CC_LD="$( ((LD)) && echo "$LD" || ((LLVM)) && echo lld)" \
CXX_LD="$( ((LD)) && echo "$LD" || ((LLVM)) && echo lld)" \
rpmbuild \
-bb \
--noprep \