diff options
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.patch | 48 |
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); +_ |