[lkml]   [1999]   [Jun]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectRe: [KBUILD] 2.x.x mkdep incorrectly handles serial.c (and probably others)
    Hi Keith,

    > Changing CONFIG_SERIAL_SHARE_IRQ with no other changes does *not*
    > recompile serial.c but it should.

    Good bug report. Ok, I believe I see the problem. Here is the structure
    of drivers/char/serial.c:

    #if 0

    ... uses of CONFIG_SERIAL_MANY_PORTS ...

    mkdep.c sees the definition of CONFIG_SERIAL_MANY_PORTS and says "oh
    this is not an autoconfig variable; serial.c explicitly defines it".
    This is why your patch to serial.c avoids the problem. It's really a
    bug in mkdep.c: it doesn't understand the effects of #if lines.

    Would you like to fool around with mkdep.c? Right around here:

    if (isalnum(current) || current == '_')
    goto pound_define_undef_CONFIG_word;
    define_config(1, map_dot, next - map_dot - 1);
    goto __start;

    ... try ripping out the call to define_config.

    Then make a copy of the include/config directory before and after the
    patch, and see how different they are. This should fix the bug, and
    also introduce lots of ugly extra lines that don't actually hurt
    anything. If it works, that's the route I would like to go.


    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to
    Please read the FAQ at

     \ /
      Last update: 2005-03-22 13:52    [W:0.020 / U:14.868 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site