make configure store its command line in config.mak for easy re-run
authorRich Felker <dalias@aerifal.cx>
Fri, 16 Aug 2013 22:19:47 +0000 (18:19 -0400)
committerRich Felker <dalias@aerifal.cx>
Fri, 16 Aug 2013 22:19:47 +0000 (18:19 -0400)
proper shell quoting and pretty-printing (avoiding ugly gratuitous
quoting and bad quoting style) is included.

configure

index 949fb03..dfd3d50 100755 (executable)
--- a/configure
+++ b/configure
@@ -45,6 +45,12 @@ exit 0
 
 # Helper functions
 
+quote () {
+tr '\n' ' ' <<EOF | grep '^[-[:alnum:]_=,./:]* $' >/dev/null 2>&1 && { echo "$1" ; return 0 ; }
+$1
+EOF
+printf %s\\n "$1" | sed -e "s/'/'\\\\''/g" -e "1s/^/'/;\$s/\$/'/" -e "s/^'\([-[:alnum:]_,./:]*\)=\(.*\)\$/\1='\2/"
+}
 echo () { printf "%s\n" "$*" ; }
 fail () { echo "$*" ; exit 1 ; }
 fnmatch () { eval "case \"\$2\" in $1) return 0 ;; *) return 1 ;; esac" ; }
@@ -421,11 +427,15 @@ fi
 
 printf "creating config.mak... "
 
+cmdline=$(quote "$0")
+for i ; do cmdline="$cmdline $(quote "$i")" ; done
+
 exec 3>&1 1>config.mak
 
 
 cat << EOF
-# This version of config.mak was generated by configure
+# This version of config.mak was generated by:
+# $cmdline
 # Any changes made here will be lost if configure is re-run
 ARCH = $ARCH
 SUBARCH = $SUBARCH