* [FIX] Replace hard-coded MODVERDIR in modpost
@ 2004-09-16 14:15 Andreas Gruenbacher
0 siblings, 0 replies; only message in thread
From: Andreas Gruenbacher @ 2004-09-16 14:15 UTC (permalink / raw)
To: Sam Ravnborg, Andrew Morton; +Cc: linux-kernel
[-- Attachment #1: Type: text/plain, Size: 1319 bytes --]
Hello,
when building external modules, MODVERDIR is relative to the
external module instead of in the kernel source tree. Use the
MODVERDIR environment variable instead of the hard-coded path
in modpost.
Index: linux-2.6.8/scripts/mod/sumversion.c
===================================================================
--- linux-2.6.8.orig/scripts/mod/sumversion.c
+++ linux-2.6.8/scripts/mod/sumversion.c
@@ -416,7 +416,8 @@ static int get_version(const char *modna
struct md4_ctx md;
char *sources, *end, *fname;
const char *basename;
- char filelist[sizeof(".tmp_versions/%s.mod") + strlen(modname)];
+ char filelist[strlen(getenv("MODVERDIR")) + strlen("/") +
+ strlen(modname) - strlen(".o") + strlen(".mod") + 1 ];
/* Source files for module are in .tmp_versions/modname.mod,
after the first line. */
@@ -424,9 +425,8 @@ static int get_version(const char *modna
basename = strrchr(modname, '/') + 1;
else
basename = modname;
- sprintf(filelist, ".tmp_versions/%s", basename);
- /* Truncate .o, add .mod */
- strcpy(filelist + strlen(filelist)-2, ".mod");
+ sprintf(filelist, "%s/%.*s.mod", getenv("MODVERDIR"),
+ (int) strlen(basename) - 2, basename);
file = grab_file(filelist, &len);
if (!file) {
Cheers,
--
Andreas Gruenbacher <agruen@suse.de>
SUSE Labs, SUSE LINUX AG
[-- Attachment #2: sumversion.diff --]
[-- Type: text/x-patch, Size: 1363 bytes --]
Date: Thu, 16 Sep 2004 16:08:38 +0200
From: Andreas Gruenbacher <agruen@suse.de>
Subject: Fix .tmp_versions for external modules
When building external modules, MODVERDIR is relative to the
external module instead of in the kernel source tree. Use the
MODVERDIR environment variable instead of the hard-coded path
in modpost.
Index: linux-2.6.8/scripts/mod/sumversion.c
===================================================================
--- linux-2.6.8.orig/scripts/mod/sumversion.c
+++ linux-2.6.8/scripts/mod/sumversion.c
@@ -416,7 +416,8 @@ static int get_version(const char *modna
struct md4_ctx md;
char *sources, *end, *fname;
const char *basename;
- char filelist[sizeof(".tmp_versions/%s.mod") + strlen(modname)];
+ char filelist[strlen(getenv("MODVERDIR")) + strlen("/") +
+ strlen(modname) - strlen(".o") + strlen(".mod") + 1 ];
/* Source files for module are in .tmp_versions/modname.mod,
after the first line. */
@@ -424,9 +425,8 @@ static int get_version(const char *modna
basename = strrchr(modname, '/') + 1;
else
basename = modname;
- sprintf(filelist, ".tmp_versions/%s", basename);
- /* Truncate .o, add .mod */
- strcpy(filelist + strlen(filelist)-2, ".mod");
+ sprintf(filelist, "%s/%.*s.mod", getenv("MODVERDIR"),
+ (int) strlen(basename) - 2, basename);
file = grab_file(filelist, &len);
if (!file) {
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2004-09-16 14:20 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2004-09-16 14:15 [FIX] Replace hard-coded MODVERDIR in modpost Andreas Gruenbacher
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Powered by JetHome