Fri, 06 Feb 2026 16:23:50 +0100
update uwproj
| configure | file | annotate | diff | comparison | revisions | |
| make/cc.mk | file | annotate | diff | comparison | revisions | |
| make/clang.mk | file | annotate | diff | comparison | revisions | |
| make/configure.vm | file | annotate | diff | comparison | revisions | |
| make/gcc.mk | file | annotate | diff | comparison | revisions | |
| make/toolchain.sh | file | annotate | diff | comparison | revisions |
--- a/configure Fri Feb 06 16:22:33 2026 +0100 +++ b/configure Fri Feb 06 16:23:50 2026 +0100 @@ -85,7 +85,10 @@ printhelp() { echo "Usage: $0 [OPTIONS]..." - echo 'Configuration:' + if [ $has_overridable_config_vars__ -eq 1 ] ; then + echo + echo "Configuration:" + fi cat << '__EOF__' Build Types: @@ -115,6 +118,7 @@ touch "$TEMP_DIR/features" # config variables +has_overridable_config_vars__=0 # features @@ -234,16 +238,13 @@ # generate vars.mk -cat > "$TEMP_DIR/vars.mk" << __EOF__ -__EOF__ - +echo '# configuration' > "$TEMP_DIR/vars.mk" +echo >> "$TEMP_DIR/vars.mk" # # DEPENDENCIES # - - # create buffer for make variables required by dependencies echo > "$TEMP_DIR/make.mk" @@ -488,8 +489,10 @@ if [ -n "$TOOLCHAIN_CSTD" ]; then echo " default C std: $TOOLCHAIN_CSTD" fi -echo -echo "Config:" +if [ $has_overridable_config_vars__ -eq 1 ]; then + echo + echo "Config:" +fi echo echo "Features:" printf ' %-16s' 'static:'
--- a/make/cc.mk Fri Feb 06 16:22:33 2026 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,5 +0,0 @@ -CXXFLAGS = -DEBUG_CXXFLAGS = -RELEASE_CXXFLAGS = -LDFLAGS = -
--- a/make/clang.mk Fri Feb 06 16:22:33 2026 +0100 +++ b/make/clang.mk Fri Feb 06 16:23:50 2026 +0100 @@ -1,5 +1,3 @@ CXXFLAGS = -fno-exceptions -fno-rtti DEBUG_CXXFLAGS = -g -Wall -Wextra -Werror RELEASE_CXXFLAGS = -O3 -DNDEBUG -LDFLAGS = -
--- a/make/configure.vm Fri Feb 06 16:22:33 2026 +0100 +++ b/make/configure.vm Fri Feb 06 16:23:50 2026 +0100 @@ -86,7 +86,10 @@ printhelp() { echo "Usage: $0 [OPTIONS]..." - echo 'Configuration:' + if [ $has_overridable_config_vars__ -eq 1 ] ; then + echo + echo "Configuration:" + fi #foreach( $cfg in $config ) if true \ #if( $cfg.platform ) @@ -99,7 +102,7 @@ : #foreach( $var in $cfg.vars ) #if( $var.overridable ) - if test -z "${D}${var.varName}__described__"; then + if [ -z "${D}${var.varName}__described__" ] ; then ${var.varName}__described__=1 cat << '__EOF__' ${var.helpText} @@ -147,6 +150,7 @@ touch "$TEMP_DIR/features" # config variables +has_overridable_config_vars__=0 #foreach( $cfg in $config ) if true \ #if( $cfg.platform ) @@ -158,7 +162,10 @@ ; then : #foreach( $var in $cfg.vars ) - if test -z "${D}${var.varName}__initialized__"; then + if [ -z "${D}${var.varName}__initialized__" ] ; then + #if( $var.overridable ) + has_overridable_config_vars__=1 + #end ${var.varName}__initialized__=1 #if( $var.exec ) ${var.varName}=`${var.value}` @@ -304,19 +311,16 @@ ## End of unparsed content ** # generate vars.mk -cat > "$TEMP_DIR/vars.mk" << __EOF__ +echo '# configuration' > "$TEMP_DIR/vars.mk" #foreach( $var in $vars ) -${var.varName}=${D}${var.varName} +echo "${var.varName}=${D}${var.varName}" >> "$TEMP_DIR/vars.mk" #end -__EOF__ - +echo >> "$TEMP_DIR/vars.mk" # # DEPENDENCIES # - - # create buffer for make variables required by dependencies echo > "$TEMP_DIR/make.mk" @@ -714,14 +718,18 @@ if [ -n "$TOOLCHAIN_CSTD" ]; then echo " default C std: $TOOLCHAIN_CSTD" fi -echo -echo "Config:" +if [ ${D}has_overridable_config_vars__ -eq 1 ]; then + echo + echo "Config:" #foreach( $var in $vars ) #if ($var.overridable) - printf ' %-16s' '${var.arg}:' - echo "${D}${var.varName}" + if [ -n "${D}${var.varName}__initialized__" ]; then + printf ' %-16s' '${var.arg}:' + echo "${D}${var.varName}" + fi #end #end +fi #if ( $options.size() > 0 ) echo echo "Options:"
--- a/make/gcc.mk Fri Feb 06 16:22:33 2026 +0100 +++ b/make/gcc.mk Fri Feb 06 16:23:50 2026 +0100 @@ -2,4 +2,3 @@ DEBUG_CXXFLAGS = -g -Wall -Wextra -Werror RELEASE_CXXFLAGS = -O3 -DNDEBUG LDFLAGS = -s -
--- a/make/toolchain.sh Fri Feb 06 16:22:33 2026 +0100 +++ b/make/toolchain.sh Fri Feb 06 16:23:50 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 }