aboutsummaryrefslogtreecommitdiffstats
path: root/linux-uml/linux-uml-2.6.7/H-02-Fixdep-improve.patch
diff options
context:
space:
mode:
Diffstat (limited to 'linux-uml/linux-uml-2.6.7/H-02-Fixdep-improve.patch')
-rw-r--r--linux-uml/linux-uml-2.6.7/H-02-Fixdep-improve.patch48
1 files changed, 48 insertions, 0 deletions
diff --git a/linux-uml/linux-uml-2.6.7/H-02-Fixdep-improve.patch b/linux-uml/linux-uml-2.6.7/H-02-Fixdep-improve.patch
index e69de29bb2..b523c7187b 100644
--- a/linux-uml/linux-uml-2.6.7/H-02-Fixdep-improve.patch
+++ b/linux-uml/linux-uml-2.6.7/H-02-Fixdep-improve.patch
@@ -0,0 +1,48 @@
+
+You probably saw that if you change one config option, even if
+linux/autoconf.h (which is included by everything) changes, the kernel is
+smart enough not to recompile everything. But with UML this no more holds.
+Why? Because, as you see in this patch, fixdep avoids making anything depend
+onto linux/autoconf.h *explicitly*, but nobody taught him to do the same for
+arch/um/include/uml-config.h. So apply this patch. Do not say "I don't want
+to change the generic Kbuild for one arch": this cannot hurt. It's a bugfix
+for us, a no-op for others.
+
+Note: with this patch, fixdep will still add a dependency from a file
+containing UML_CONFIG_BYE onto CONFIG_BYE. Since someone could think that
+fixdep should grep for [^A-Z_]CONFIG_ rather than simply for CONFIG_, I've
+added a comment that ask *not to fix* this "bug".
+
+Signed-off-by: Paolo 'Blaisorblade' Giarrusso <blaisorblade_spam@yahoo.it>
+---
+
+ uml-linux-2.6.7-paolo/scripts/basic/fixdep.c | 9 +++++++++
+ 1 files changed, 9 insertions(+)
+
+diff -puN scripts/basic/fixdep.c~H-02-Fixdep-improve scripts/basic/fixdep.c
+--- uml-linux-2.6.7/scripts/basic/fixdep.c~H-02-Fixdep-improve 2004-06-29 21:03:01.984335704 +0200
++++ uml-linux-2.6.7-paolo/scripts/basic/fixdep.c 2004-06-29 21:03:01.986335400 +0200
+@@ -93,6 +93,14 @@
+ * (Note: it'd be easy to port over the complete mkdep state machine,
+ * but I don't think the added complexity is worth it)
+ */
++/*
++ * Note 2: if somebody writes HELLO_CONFIG_BOOM in a file, it will depend onto
++ * CONFIG_BOOM. This could seem a bug (not too hard to fix), but please do not
++ * fix it! Some UserModeLinux files (look at arch/um/) call CONFIG_BOOM as
++ * UML_CONFIG_BOOM, to avoid conflicts with /usr/include/linux/autoconf.h,
++ * through arch/um/include/uml-config.h; this fixdep "bug" makes sure that
++ * those files will have correct dependencies.
++ */
+
+ #include <sys/types.h>
+ #include <sys/stat.h>
+@@ -310,6 +318,7 @@ void parse_dep_file(void *map, size_t le
+ }
+ memcpy(s, m, p-m); s[p-m] = 0;
+ if (strrcmp(s, "include/linux/autoconf.h") &&
++ strrcmp(s, "arch/um/include/uml-config.h") &&
+ strrcmp(s, ".ver")) {
+ printf(" %s \\\n", s);
+ do_config_file(s);
+_