update uwproj default tip

Mon, 20 Apr 2026 22:01:38 +0200

author
Mike Becker <universe@uap-core.de>
date
Mon, 20 Apr 2026 22:01:38 +0200
changeset 109
6b07e7ed8f46
parent 108
1eabc1123567

update uwproj

configure file | annotate | diff | comparison | revisions
make/configure.vm file | annotate | diff | comparison | revisions
make/toolchain.sh file | annotate | diff | comparison | revisions
--- a/configure	Mon Apr 20 22:00:43 2026 +0200
+++ b/configure	Mon Apr 20 22:01:38 2026 +0200
@@ -85,7 +85,10 @@
 printhelp()
 {
     echo "Usage: $0 [OPTIONS]..."
-    echo 'Configuration:'
+    if [ $has_overridable_config_vars__ -eq 1 ] ; then
+        echo
+        echo "Configuration:"
+    fi
 if true \
       ; then
     :
@@ -114,42 +117,43 @@
 touch "$TEMP_DIR/features"
 
 # config variables
+has_overridable_config_vars__=0
 if true \
       ; then
     :
-    if test -z "$SRCDIR__initialized__"; then
+    if [ -z "$SRCDIR__initialized__" ] ; then
         SRCDIR__initialized__=1
         SRCDIR=`pwd`
     fi
-    if test -z "$BUILDDIR__initialized__"; then
+    if [ -z "$BUILDDIR__initialized__" ] ; then
         BUILDDIR__initialized__=1
         BUILDDIR='${SRCDIR}/build'
     fi
-    if test -z "$LIB_EXT__initialized__"; then
+    if [ -z "$LIB_EXT__initialized__" ] ; then
         LIB_EXT__initialized__=1
         LIB_EXT='.a'
     fi
-    if test -z "$MKDIR__initialized__"; then
+    if [ -z "$MKDIR__initialized__" ] ; then
         MKDIR__initialized__=1
         MKDIR='mkdir'
     fi
-    if test -z "$MKDIRFLAGS__initialized__"; then
+    if [ -z "$MKDIRFLAGS__initialized__" ] ; then
         MKDIRFLAGS__initialized__=1
         MKDIRFLAGS='-p'
     fi
-    if test -z "$RM__initialized__"; then
+    if [ -z "$RM__initialized__" ] ; then
         RM__initialized__=1
         RM='rm'
     fi
-    if test -z "$RMFLAGS__initialized__"; then
+    if [ -z "$RMFLAGS__initialized__" ] ; then
         RMFLAGS__initialized__=1
         RMFLAGS='-f -R'
     fi
-    if test -z "$AR__initialized__"; then
+    if [ -z "$AR__initialized__" ] ; then
         AR__initialized__=1
         AR='ar'
     fi
-    if test -z "$ARFLAGS__initialized__"; then
+    if [ -z "$ARFLAGS__initialized__" ] ; then
         ARFLAGS__initialized__=1
         ARFLAGS='-r'
     fi
@@ -267,25 +271,22 @@
 
 
 # generate vars.mk
-cat > "$TEMP_DIR/vars.mk" << __EOF__
-SRCDIR=$SRCDIR
-BUILDDIR=$BUILDDIR
-LIB_EXT=$LIB_EXT
-MKDIR=$MKDIR
-MKDIRFLAGS=$MKDIRFLAGS
-RM=$RM
-RMFLAGS=$RMFLAGS
-AR=$AR
-ARFLAGS=$ARFLAGS
-__EOF__
-
+echo '# configuration' > "$TEMP_DIR/vars.mk"
+echo "SRCDIR=$SRCDIR" >> "$TEMP_DIR/vars.mk"
+echo "BUILDDIR=$BUILDDIR" >> "$TEMP_DIR/vars.mk"
+echo "LIB_EXT=$LIB_EXT" >> "$TEMP_DIR/vars.mk"
+echo "MKDIR=$MKDIR" >> "$TEMP_DIR/vars.mk"
+echo "MKDIRFLAGS=$MKDIRFLAGS" >> "$TEMP_DIR/vars.mk"
+echo "RM=$RM" >> "$TEMP_DIR/vars.mk"
+echo "RMFLAGS=$RMFLAGS" >> "$TEMP_DIR/vars.mk"
+echo "AR=$AR" >> "$TEMP_DIR/vars.mk"
+echo "ARFLAGS=$ARFLAGS" >> "$TEMP_DIR/vars.mk"
+echo >> "$TEMP_DIR/vars.mk"
 
 #
 # DEPENDENCIES
 #
 
-
-
 # create buffer for make variables required by dependencies
 echo > "$TEMP_DIR/make.mk"
 
@@ -438,8 +439,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
 
 # generate the config.mk file
--- a/make/configure.vm	Mon Apr 20 22:00:43 2026 +0200
+++ b/make/configure.vm	Mon Apr 20 22:01:38 2026 +0200
@@ -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/toolchain.sh	Mon Apr 20 22:00:43 2026 +0200
+++ b/make/toolchain.sh	Mon Apr 20 22:01:38 2026 +0200
@@ -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
 }

mercurial