summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAshutosh Naik <ashutosh@chelsio.com>2008-10-25 15:02:53 -0700
committerSam Ravnborg <sam@ravnborg.org>2008-10-29 22:02:10 +0100
commite6e6733ed9451827165d853f25bf99ba55e12feb (patch)
treeabd3d62172a8b2952d291a7e59b7b60485fa28ae
parent92f83cc56eeafdb8fcf07ceb89fd9a0212bd498c (diff)
downloadlinux-e6e6733ed9451827165d853f25bf99ba55e12feb.tar.gz
linux-e6e6733ed9451827165d853f25bf99ba55e12feb.tar.bz2
linux-e6e6733ed9451827165d853f25bf99ba55e12feb.zip
kbuild: prevent modpost from looking for a .cmd file for a static library linked into a module
This fixes a compile time warning which occurs whenever a static library is linked into a kernel module. MODPOST tries to look for a ".<modulename>.cmd" file to look for its dependencies, but that file doesn't exist or get generated for static libraries. This patch prevents modpost from looking for a .cmd file when a module is linked with a static library [akpm@linux-foundation.org: coding-style fixes] Signed-off-by: Ashutosh Naik <ashutosh.naik@gmail.com> Cc: Rusty Russell <rusty@rustcorp.com.au> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
-rw-r--r--scripts/mod/sumversion.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/scripts/mod/sumversion.c b/scripts/mod/sumversion.c
index d9cc6901d680..aadc5223dcdb 100644
--- a/scripts/mod/sumversion.c
+++ b/scripts/mod/sumversion.c
@@ -290,6 +290,15 @@ static int parse_file(const char *fname, struct md4_ctx *md)
release_file(file, len);
return 1;
}
+/* Check whether the file is a static library or not */
+static int is_static_library(const char *objfile)
+{
+ int len = strlen(objfile);
+ if (objfile[len - 2] == '.' && objfile[len - 1] == 'a')
+ return 1;
+ else
+ return 0;
+}
/* We have dir/file.o. Open dir/.file.o.cmd, look for deps_ line to
* figure out source file. */
@@ -420,7 +429,8 @@ void get_src_version(const char *modname, char sum[], unsigned sumlen)
while ((fname = strsep(&sources, " ")) != NULL) {
if (!*fname)
continue;
- if (!parse_source_files(fname, &md))
+ if (!(is_static_library(fname)) &&
+ !parse_source_files(fname, &md))
goto release;
}