# HG changeset patch # User Mike Becker # Date 1767892833 -3600 # Node ID 5506cd3efe86e403ecff868eaee591e70bcba3cb # Parent 2eb3813562e73e4d685e23dfb83526aa0c51877a update uwproj which makes cc.mk obsolete diff -r 2eb3813562e7 -r 5506cd3efe86 make/cc.mk --- a/make/cc.mk Wed Dec 31 17:50:20 2025 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,8 +0,0 @@ -# -# cc toolchain config -# - -CFLAGS = -DEBUG_CFLAGS = -g -RELEASE_CFLAGS = -O3 -DNDEBUG -LDFLAGS = diff -r 2eb3813562e7 -r 5506cd3efe86 make/gcc.mk --- a/make/gcc.mk Wed Dec 31 17:50:20 2025 +0100 +++ b/make/gcc.mk Thu Jan 08 18:20:33 2026 +0100 @@ -1,8 +1,2 @@ -# # gcc toolchain config -# - -CFLAGS = DEBUG_CFLAGS = -g -Wall -Wextra -Werror -Wno-missing-field-initializers -RELEASE_CFLAGS = -O3 -DNDEBUG -LDFLAGS = \ No newline at end of file diff -r 2eb3813562e7 -r 5506cd3efe86 make/toolchain.sh --- a/make/toolchain.sh Wed Dec 31 17:50:20 2025 +0100 +++ b/make/toolchain.sh Thu Jan 08 18:20:33 2026 +0100 @@ -162,21 +162,66 @@ fi } +is_flag_not_specified() +{ + # 1: flag to test + # 2: toolchain.mk file + if [ -n "$2" ] && grep "^ *$1 *=" "$2" > /dev/null; then + return 1 + else + return 0 + fi +} + write_toolchain_defaults() { + if [ -f "make/${TOOLCHAIN_NAME}.mk" ]; then + mkfile="make/${TOOLCHAIN_NAME}.mk" + elif [ -f 'make/cc.mk' ]; then + mkfile='make/cc.mk' + else + mkfile='' + fi + echo "# toolchain" >> "$1" if [ -n "$TOOLCHAIN_CC" ]; then echo "CC = ${TOOLCHAIN_CC}" >> "$1" + if is_flag_not_specified 'CFLAGS' "$mkfile"; then + echo 'CFLAGS =' >> "$1" + fi + if is_flag_not_specified 'DEBUG_CFLAGS' "$mkfile"; then + echo 'DEBUG_CFLAGS = -g' >> "$1" + fi + if is_flag_not_specified 'RELEASE_CFLAGS' "$mkfile"; then + echo 'RELEASE_CFLAGS = -O3 -DNDEBUG' >> "$1" + fi + if is_flag_not_specified 'SHLIB_CFLAGS' "$mkfile"; then + echo 'SHLIB_CFLAGS = -fPIC' >> "$1" + fi fi if [ -n "$TOOLCHAIN_CXX" ]; then echo "CXX = ${TOOLCHAIN_CXX}" >> "$1" + if is_flag_not_specified 'CXXFLAGS' "$mkfile"; then + echo 'CXXFLAGS =' >> "$1" + fi + if is_flag_not_specified 'DEBUG_CXXFLAGS' "$mkfile"; then + echo 'DEBUG_CXXFLAGS = -g' >> "$1" + fi + if is_flag_not_specified 'RELEASE_CXXFLAGS' "$mkfile"; then + echo 'RELEASE_CXXFLAGS = -O3 -DNDEBUG' >> "$1" + fi + if is_flag_not_specified 'SHLIB_CXXFLAGS' "$mkfile"; then + echo 'SHLIB_CXXFLAGS = -fPIC' >> "$1" + fi + fi + if is_flag_not_specified 'LDFLAGS' "$mkfile"; then + echo 'LDFLAGS =' >> "$1" + fi + if is_flag_not_specified 'SHLIB_LDFLAGS' "$mkfile"; then + echo 'SHLIB_LDFLAGS = -shared' >> "$1" fi echo >> "$1" - if [ -f "make/${TOOLCHAIN_NAME}.mk" ]; then - cat "make/${TOOLCHAIN_NAME}.mk" >> "$1" - elif [ -f "make/cc.mk" ]; then - cat "make/cc.mk" >> "$1" - else - echo "!!! WARNING !!! Default toolchain flags not found. Configuration might be incomplete." + if [ -n "$mkfile" ]; then + cat "$mkfile" >> "$1" fi }