test/configure2

changeset 165
f4f11f755ee7
parent 162
79eeb33c738f
child 167
fa31a6d0ec56
--- a/test/configure2	Sat Nov 29 13:50:15 2025 +0100
+++ b/test/configure2	Sat Nov 29 17:31:03 2025 +0100
@@ -85,27 +85,56 @@
 printhelp()
 {
     echo "Usage: $0 [OPTIONS]..."
-    cat << __EOF__
-Installation directories:
-  --prefix=PREFIX         path prefix for architecture-independent files
-                          [$prefix]
-  --exec-prefix=EPREFIX   path prefix for architecture-dependent files
-                          [PREFIX]
-
-  --bindir=DIR            user executables [EPREFIX/bin]
-  --sbindir=DIR           system admin executables [EPREFIX/sbin]
-  --libexecdir=DIR        program executables [EPREFIX/libexec]
-  --sysconfdir=DIR        system configuration files [PREFIX/etc]
-  --sharedstatedir=DIR    modifiable architecture-independent data [PREFIX/com]
-  --localstatedir=DIR     modifiable single-machine data [PREFIX/var]
-  --runstatedir=DIR       run-time variable data [LOCALSTATEDIR/run]
-  --libdir=DIR            object code libraries [EPREFIX/lib]
-  --includedir=DIR        C header files [PREFIX/include]
-  --datarootdir=DIR       read-only arch.-independent data root [PREFIX/share]
-  --datadir=DIR           read-only architecture-independent data [DATAROOTDIR]
-  --infodir=DIR           info documentation [DATAROOTDIR/info]
-  --mandir=DIR            man documentation [DATAROOTDIR/man]
-  --localedir=DIR         locale-dependent data [DATAROOTDIR/locale]
+    echo 'Configuration:'
+if true \
+      ; then
+    :
+    if test -z "$prefix__described__"; then
+        prefix__described__=1
+        cat << '__EOF__'
+  --prefix                path prefix for architecture-independent files 
+                          [`pwd`/work]
+__EOF__
+    fi
+    if test -z "$exec_prefix__described__"; then
+        exec_prefix__described__=1
+        cat << '__EOF__'
+  --exec-prefix           path prefix for architecture-dependent files [PREFIX]
+__EOF__
+    fi
+    if test -z "$libdir__described__"; then
+        libdir__described__=1
+        cat << '__EOF__'
+  --libdir                object code libraries [EPREFIX/lib]
+__EOF__
+    fi
+    if test -z "$datarootdir__described__"; then
+        datarootdir__described__=1
+        cat << '__EOF__'
+  --datarootdir           read-only architecture-independent data root 
+                          [PREFIX/share]
+__EOF__
+    fi
+    if test -z "$localstatedir__described__"; then
+        localstatedir__described__=1
+        cat << '__EOF__'
+  --localstatedir         modifiable single-machine data [PREFIX/var]
+__EOF__
+    fi
+    if test -z "$libdatadir__described__"; then
+        libdatadir__described__=1
+        cat << '__EOF__'
+  --libdatadir            miscellaneous files for libraries [PREFIX/libdata]
+__EOF__
+    fi
+    if test -z "$TOOLKIT_HOME__described__"; then
+        TOOLKIT_HOME__described__=1
+        cat << '__EOF__'
+  --toolkit-home          the location of the toolkit installation [/usr]
+__EOF__
+    fi
+fi
+    cat << '__EOF__'
 
 Build Types:
   --debug                 add extra compile flags for debug builds
@@ -124,6 +153,7 @@
   --enable-gui
 
 __EOF__
+    abort_configure
 }
 
 # create temporary directory
@@ -139,26 +169,39 @@
 touch "$TEMP_DIR/options"
 touch "$TEMP_DIR/features"
 
-# define standard variables
-# also define standard prefix (this is where we will search for config.site)
-prefix=/usr
-exec_prefix=
-bindir=
-sbindir=
-libdir=
-libexecdir=
-datarootdir=
-datadir=
-sysconfdir=
-sharedstatedir=
-localstatedir=
-runstatedir=
-includedir=
-infodir=
-localedir=
-mandir=
-
-# custom variables
+# config variables
+if true \
+      ; then
+    :
+    if test -z "$prefix__initialized__"; then
+        prefix__initialized__=1
+        prefix="`pwd`/work"
+    fi
+    if test -z "$exec_prefix__initialized__"; then
+        exec_prefix__initialized__=1
+        exec_prefix=""
+    fi
+    if test -z "$libdir__initialized__"; then
+        libdir__initialized__=1
+        libdir=""
+    fi
+    if test -z "$datarootdir__initialized__"; then
+        datarootdir__initialized__=1
+        datarootdir=""
+    fi
+    if test -z "$localstatedir__initialized__"; then
+        localstatedir__initialized__=1
+        localstatedir="/var"
+    fi
+    if test -z "$libdatadir__initialized__"; then
+        libdatadir__initialized__=1
+        libdatadir="$prefix/libdata"
+    fi
+    if test -z "$TOOLKIT_HOME__initialized__"; then
+        TOOLKIT_HOME__initialized__=1
+        TOOLKIT_HOME="/usr"
+    fi
+fi
 
 # features
 FEATURE_DB=auto
@@ -170,27 +213,18 @@
 for ARG in "$@"
 do
     case "$ARG" in
-        "--prefix="*)         prefix=${ARG#--prefix=} ;;
-        "--exec-prefix="*)    exec_prefix=${ARG#--exec-prefix=} ;;
-        "--bindir="*)         bindir=${ARG#----bindir=} ;;
-        "--sbindir="*)        sbindir=${ARG#--sbindir=} ;;
-        "--libdir="*)         libdir=${ARG#--libdir=} ;;
-        "--libexecdir="*)     libexecdir=${ARG#--libexecdir=} ;;
-        "--datarootdir="*)    datarootdir=${ARG#--datarootdir=} ;;
-        "--datadir="*)        datadir=${ARG#--datadir=} ;;
-        "--sysconfdir="*)     sysconfdir=${ARG#--sysconfdir=} ;;
-        "--sharedstatedir="*) sharedstatedir=${ARG#--sharedstatedir=} ;;
-        "--localstatedir="*)  localstatedir=${ARG#--localstatedir=} ;;
-        "--runstatedir="*)    runstatedir=${ARG#--runstatedir=} ;;
-        "--includedir="*)     includedir=${ARG#--includedir=} ;;
-        "--infodir="*)        infodir=${ARG#--infodir=} ;;
-        "--mandir"*)          mandir=${ARG#--mandir} ;;
-        "--localedir"*)       localedir=${ARG#--localedir} ;;
-        "--help"*)            printhelp; abort_configure ;;
-        "--debug")            BUILD_TYPE="debug" ;;
-        "--release")          BUILD_TYPE="release" ;;
+        "--prefix="*) prefix=${ARG#--prefix=} ;;
+        "--exec-prefix="*) exec_prefix=${ARG#--exec-prefix=} ;;
+        "--libdir="*) libdir=${ARG#--libdir=} ;;
+        "--datarootdir="*) datarootdir=${ARG#--datarootdir=} ;;
+        "--localstatedir="*) localstatedir=${ARG#--localstatedir=} ;;
+        "--libdatadir="*) libdatadir=${ARG#--libdatadir=} ;;
+        "--toolkit-home="*) TOOLKIT_HOME=${ARG#--toolkit-home=} ;;
+        "--help"*) printhelp ;;
+        "--debug") BUILD_TYPE="debug" ;;
+        "--release") BUILD_TYPE="release" ;;
         "--toolkit="*) OPT_TOOLKIT=${ARG#--toolkit=} ;;
-        "--toolkit")  echo "option '$ARG' needs a value:"; echo "  $ARG=(gtk3|cli|gtk2|wpf)"; abort_configure ;;
+        "--toolkit") echo "option '$ARG' needs a value:"; echo "  $ARG=(gtk3|cli|gtk2|wpf)"; abort_configure ;;
         "--enable-db") FEATURE_DB=on ;;
         "--disable-db") unset FEATURE_DB ;;
         "--enable-gui") FEATURE_GUI=on ;;
@@ -236,22 +270,6 @@
 : ${mandir:='${datarootdir}/man'}
 : ${localedir:='${datarootdir}/locale'}
 
-# remember the above values and compare them later
-orig_bindir="$bindir"
-orig_sbindir="$sbindir"
-orig_libdir="$libdir"
-orig_libexecdir="$libexecdir"
-orig_datarootdir="$datarootdir"
-orig_datadir="$datadir"
-orig_sysconfdir="$sysconfdir"
-orig_sharedstatedir="$sharedstatedir"
-orig_localstatedir="$localstatedir"
-orig_runstatedir="$runstatedir"
-orig_includedir="$includedir"
-orig_infodir="$infodir"
-orig_mandir="$mandir"
-orig_localedir="$localedir"
-
 # check if a config.site exists and load it
 if [ -n "$CONFIG_SITE" ]; then
     # CONFIG_SITE may contain space separated file names
@@ -297,20 +315,12 @@
 cat > "$TEMP_DIR/vars.mk" << __EOF__
 prefix=$prefix
 exec_prefix=$exec_prefix
-bindir=$bindir
-sbindir=$sbindir
 libdir=$libdir
-libexecdir=$libexecdir
 datarootdir=$datarootdir
-datadir=$datadir
-sysconfdir=$sysconfdir
-sharedstatedir=$sharedstatedir
 localstatedir=$localstatedir
-runstatedir=$runstatedir
-includedir=$includedir
-infodir=$infodir
-mandir=$mandir
-localedir=$localedir
+libdatadir=$libdatadir
+SRCDIR=$SRCDIR
+TOOLKIT_HOME=$TOOLKIT_HOME
 __EOF__
 
 # toolchain detection utilities
@@ -877,7 +887,7 @@
 
 echo "configure finished"
 echo
-echo "Toolchain"
+echo "Toolchain:"
 echo "  name:           $TOOLCHAIN_NAME"
 if [ -n "$TOOLCHAIN_CC" ]; then
     echo "  cc:             $TOOLCHAIN_CC"
@@ -892,65 +902,37 @@
     echo "  default C std:  $TOOLCHAIN_CSTD"
 fi
 echo
-echo "Build Config:"
-echo "  prefix:         $prefix"
-echo "  exec_prefix:    $exec_prefix"
-if [ "$orig_bindir" != "$bindir" ]; then
-    echo "  bindir:      $bindir"
-fi
-if [ "$orig_sbindir" != "$sbindir" ]; then
-    echo "  sbindir:     $sbindir"
-fi
-if [ "$orig_libdir" != "$libdir" ]; then
-    echo "  libdir:         $libdir"
-fi
-if [ "$orig_libexecdir" != "$libexecdir" ]; then
-    echo "  libexecdir:     $libexecdir"
-fi
-if [ "$orig_datarootdir" != "$datarootdir" ]; then
-    echo "  datarootdir:    $datarootdir"
-fi
-if [ "$orig_datadir" != "$datadir" ]; then
-    echo "  datadir:        $datadir"
-fi
-if [ "$orig_sysconfdir" != "$sysconfdir" ]; then
-    echo "  sysconfdir:     $sysconfdir"
-fi
-if [ "$orig_sharedstatedir" != "$sharedstatedir" ]; then
-    echo "  sharedstatedir: $sharedstatedir"
-fi
-if [ "$orig_localstatedir" != "$localstatedir" ]; then
-    echo "  localstatedir:  $localstatedir"
-fi
-if [ "$orig_runstatedir" != "$runstatedir" ]; then
-    echo "  runstatedir:    $runstatedir"
-fi
-if [ "$orig_includedir" != "$includedir" ]; then
-    echo "  includedir:     $includedir"
-fi
-if [ "$orig_infodir" != "$infodir" ]; then
-    echo "  infodir:        $infodir"
-fi
-if [ "$orig_mandir" != "$mandir" ]; then
-    echo "  mandir:         $mandir"
-fi
-if [ "$orig_localedir" != "$localedir" ]; then
-    echo "  localedir:      $localedir"
-fi
+echo "Config:"
+    printf '  %-16s' 'prefix:'
+    echo "$prefix"
+    printf '  %-16s' 'exec-prefix:'
+    echo "$exec_prefix"
+    printf '  %-16s' 'libdir:'
+    echo "$libdir"
+    printf '  %-16s' 'datarootdir:'
+    echo "$datarootdir"
+    printf '  %-16s' 'localstatedir:'
+    echo "$localstatedir"
+    printf '  %-16s' 'libdatadir:'
+    echo "$libdatadir"
+    printf '  %-16s' 'toolkit-home:'
+    echo "$TOOLKIT_HOME"
 echo
 echo "Options:"
 cat "$TEMP_DIR/options"
 echo
 echo "Features:"
+printf '  %-16s' 'db:'
 if [ -n "$FEATURE_DB" ]; then
-echo "  db: on"
+    echo 'on'
 else
-echo "  db: off"
+    echo 'off'
 fi
+printf '  %-16s' 'gui:'
 if [ -n "$FEATURE_GUI" ]; then
-echo "  gui: on"
+    echo 'on'
 else
-echo "  gui: off"
+    echo 'off'
 fi
 echo
 

mercurial