lkml.org 
[lkml]   [2004]   [Mar]   [4]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subject[PATCH] 2.6.4-rc2: scripts/modpost.c
    (This is is a repost - now with a patch for 2.6.4-rc2).

    Hi,

    as I found out, it's impossible to use the build-chain tool scripts/modpost
    of the 2.6 kernel series to externally build modules from a directory that
    contains the character sequence '.o'. Weird things happen if you try to do
    so.

    With a directory structure like on my system here, building the current DVB
    driver in '/home/daniel/cvs.linuxtv.org/dvb-kernel/build-2.6i/' generates a
    file called '/home/daniel/cvs.linuxtv.mod.c' since modpost cuts every
    filename string at the first occurence of '.o', not only the 'trailing .o',
    as the comment says.

    Here's the patch for 2.6.4-rc2:


    --- linux-2.6.4-rc2.orig/scripts/modpost.c 2004-03-04 11:40:21.000000000 +0100
    +++ linux-2.6.4-rc2/scripts/modpost.c 2004-03-04 11:23:08.000000000 +0100
    @@ -63,16 +63,16 @@
    new_module(char *modname)
    {
    struct module *mod;
    - char *p;
    + int len;

    mod = NOFAIL(malloc(sizeof(*mod)));
    memset(mod, 0, sizeof(*mod));
    mod->name = NOFAIL(strdup(modname));

    /* strip trailing .o */
    - p = strstr(mod->name, ".o");
    - if (p)
    - *p = 0;
    + len = strlen(mod->name);
    + if (len > 2 && mod->name[len-2] == '.' && mod->name[len-1] == 'o')
    + mod->name[len-2] = 0;

    /* add to list */
    mod->next = modules;


    Daniel

    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2005-03-22 14:01    [W:0.032 / U:61.064 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site