summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog8
-rw-r--r--config.status.dep.patch10
-rw-r--r--configure.ac20
3 files changed, 25 insertions, 13 deletions
diff --git a/ChangeLog b/ChangeLog
index af5748a..061b6d9 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2006-10-16 Thomas Schwinge <tschwinge@gnu.org>
+
+ [bug #18011 --- ``GNU Mach: `make install-data' will build the
+ ``to-be-generated files'''']
+ * config.status.dep.patch: Do an educated guess instead of using the
+ `Makefile'.
+ * configure.ac <config.status.dep.patch>: Update description.
+
2006-10-15 Thomas Schwinge <tschwinge@gnu.org>
* configure: Regenerate.
diff --git a/config.status.dep.patch b/config.status.dep.patch
index c14b6ea..b169a89 100644
--- a/config.status.dep.patch
+++ b/config.status.dep.patch
@@ -1,11 +1,17 @@
--- config.status.save 2006-10-09 22:28:47.000000000 +0200
+++ config.status 2006-10-09 22:29:34.000000000 +0200
-@@ -1610,7 +1610,7 @@
+@@ -1610,7 +1610,13 @@
{ (exit 1); exit 1; }; }; }
# echo "creating $dirpart/$file"
- echo '# dummy' > "$dirpart/$file"
-+ echo 'Makefile: $(filter-out $(DIST_SOURCES),$(SOURCES))' > "$dirpart/$file"
++ # Try to guess what file this dependency file is from...
++ for f in "$srcdir"/"`dirname "$fdir"`"/"`basename "$file" .Po`"*; do
++ case $f in
++ *.c | *.S) echo "$f"': $(filter-out $(DIST_SOURCES),$(SOURCES))';;
++ *) echo '# dummy';;
++ esac
++ done > "$dirpart/$file"
done
done
;;
diff --git a/configure.ac b/configure.ac
index fee7147..2c4222d 100644
--- a/configure.ac
+++ b/configure.ac
@@ -141,17 +141,15 @@ AC_CONFIG_FILES([Makefile version.c])
# real patch is being used here and not some `sed' magic: to make it fail
# loudly in case.
#
-# For all source files create dependency files where it is stated that the
-# Makefile depends on all to-be-generated files. Later, when compiling the
-# source files, these dependency files will be rewritten to contain the files's
-# actual dependencies. From then on this hack will be forgotten. The choice
-# of the Makefile as the file to depends on is not be the best one, because
-# when running `make clean', the build system may decide to first build all the
-# to-be-genereated files and afterwards remove them again, but it works and I
-# don't want to spend more thoughts on this issue at the moment. Feel free to
-# suggest something better. TODO. See <http://savannah.gnu.org/bugs/?18011>
-# --- ``GNU Mach: `make install-data' will build the ``to-be-generated
-# files''''.
+# For all shipped source files a dependency file is tried to be created where
+# it is simply stated that the respective source file depends on _all_
+# to-be-generated files. Depending on all of them doesn't do any harm, as they
+# will nevertheless have to be created, sooner or later. The problem is, that
+# `config.status' doesn't know about the source file of the file it is
+# currently creating the dependency file for. So we have it do an educated
+# guess... Later, when compiling the source files, these dependency files will
+# be rewritten to contain the files's actual dependencies. From then on this
+# bootstrap hack will be forgotten.
#
dnl AC_CONFIG_COMMANDS_POST([