*** empty log message ***
[bpt/emacs.git] / configure1.in
index e750093..83f1196 100755 (executable)
 #      config.status is removed.
 #
 
-progname=$0
+# Remove any leading "." elements from the path name.  When this
+# script is invoked from the config.status script, a new ./ gets added
+# to the the front of the path, resulting in a "././" prefix.  That
+# prefix is then recorded in the resulting config.status file, so
+# basically each time config.status is used, it prepends another "./"
+# to the filename.  This wouldn't be a problem, except that since
+# progname gets recorded in all the Makefiles this script produces,
+# move-if-changed thinks they're different when they're not.
+progname="`echo $0 | sed 's:^\(\./\)*::'`"
 
 short_usage="Type \`${progname} -usage' for more information about options."
 
@@ -99,6 +107,9 @@ lockdir=""
 window_system=""
 have_x_menu=""
 
+# Record all the arguments, so we can save them in config.status.
+arguments="$*"
+
 echo "Examining options."
 while [ $# != 0 ]; do
   arg="$1"
@@ -468,14 +479,15 @@ for flag in `echo ${config_h_opts} | tr ':' ' '`; do
   esac
   sed_flags="${sed_flags} ${f}"
 done
-rm -f src/config.h
-eval '/bin/sed '${sed_flags}' < src/config.h.in > src/config.h'
+chmod +w -f src/config.h
+eval '/bin/sed '${sed_flags}' < src/config.h.in > src/config.h.tmp'
+./move-if-change src/config.h.tmp src/config.h
 # Remind people not to edit this.
 chmod -w src/config.h
 
 # Modify the parameters in the top makefile.
 echo "Producing ./Makefile from ./Makefile.in."
-rm -f ./Makefile
+chmod +w -f ./Makefile
 (echo "# This file is generated by \`${progname}' from \`./Makefile.in'.
 # If you are thinking about editing it, you should seriously consider
 # editing \`./Makefile.in' itself, or running \`${progname}' instead."
@@ -494,13 +506,14 @@ rm -f ./Makefile
  -e 's;^\(libdir=\).*$;\1'"${libdir};"                 \
  -e 's;^\(mandir=\).*$;\1'"${mandir};"                 \
  -e 's;^\(infodir=\).*$;\1'"${infodir};"               \
-) > ./Makefile
+) > ./Makefile.tmp
+./move-if-change Makefile.tmp Makefile
 # Remind people not to edit this.
 chmod -w ./Makefile
 
 # Modify the parameters in the `build-install' script.
 echo "Producing ./build-install from ./build-install.in."
-rm -f ./build-install
+chmod +w -f ./build-install
 (echo "# This file is generated by \`${progname}' from \`./build-install.in'.
 # If you are thinking about editing it, you should seriously consider
 # editing \`./build-install.in' itself, or running \`${progname}' instead."
@@ -510,32 +523,35 @@ rm -f ./build-install
  -e 's;^\(lisppath=\).*$;\1'"${lisppath};"             \
  -e 's;^\(datadir=\).*$;\1'"${datadir};"               \
  -e 's;^\(lockdir=\).*$;\1'"${lockdir};"               \
- -e 's;^\(libdir=\).*$;\1'"${libdir};") > ./build-install
+ -e 's;^\(libdir=\).*$;\1'"${libdir};") > ./build-install.tmp
+./move-if-change build-install.tmp build-install
 # Remind people not to edit this.
 chmod -w build-install
 chmod +x build-install
 
 # Modify the parameters in the src makefile.
 echo "Producing src/Makefile from src/Makefile.in."
-rm -f src/Makefile
+chmod +w -f src/Makefile
 (echo "# This file is generated by \`${progname}' from \`Makefile.in'.
 # If you are thinking about editing it, you should seriously consider
 # editing \`Makefile.in' itself, or running \`${progname}' instead."
  /bin/sed < src/Makefile.in                            \
- -e 's;^\(CC[ ]*=\).*$;\1'"${cc};") > src/Makefile
+ -e 's;^\(CC[ ]*=\).*$;\1'"${cc};") > src/Makefile.tmp
+./move-if-change src/Makefile.tmp src/Makefile
 # Remind people not to edit this.
 chmod -w src/Makefile
 
 # Modify the parameters in the lib-src makefile.
 echo "Producing lib-src/Makefile from lib-src/Makefile.in."
-rm -f lib-src/Makefile
+chmod +w -f lib-src/Makefile
 (echo "# This file is generated by \`${progname}' from \`Makefile.in'.
 # If you are thinking about editing it, you should seriously consider
 # editing \`Makefile.in' itself, or running \`${progname}' instead."
  /bin/sed < lib-src/Makefile.in                                \
  -e 's;^\(CFLAGS=\).*$;\1'"${c_switch_site};"          \
  -e 's;^\(LOADLIBES=\).*$;\1'"${libsrc_libs};"         \
- -e 's;^\(CC=\).*$;\1'"${cc};") > lib-src/Makefile
+ -e 's;^\(CC=\).*$;\1'"${cc};") > lib-src/Makefile.tmp
+./move-if-change lib-src/Makefile.tmp lib-src/Makefile
 # Remind people not to edit this.
 chmod -w lib-src/Makefile
 
@@ -578,24 +594,7 @@ echo "# This file is generated by \`${progname}.'
 # running \`${progname}' instead.
 " >> config.status
 echo "${message}" >> config.status
-echo "'${progname}' \\
-       -machine='${machine}' \\
-       -opsystem='${opsystem}' \\
-        -g=${g} \\
-       -O=${O} \\
-       -cc=${cc} \\
-       -libdir='${libdir}' \\
-       -datadir='${datadir}' \\
-       -bindir='${bindir}' \\
-       -lisppath='${lisppath}' \\
-       -lockdir='${lockdir}' \\
-       -window_system='${window_system}' \\
-       -have_x_menu='${have_x_menu}' \\
-       -gnu_malloc='${gnu_malloc}' \\
-       -rel_alloc='${rel_alloc}' \\
-       -highpri='${highpri}' \\
-       -lisp_float_type='${lisp_float_type}' \\
-       $@" >> config.status
+echo "'./${progname}' ${arguments} "'$@' >> config.status
 # Remind people not to edit this.
 chmod -w config.status
 chmod +x config.status