Messages in this thread | | | Date | Fri, 1 Jan 1999 07:13:21 -0600 (CST) | From | Justin Bradford <> | Subject | details on make xconfig bug in pre2 |
| |
I tracked down the specific cause of the broken "make xconfig", and I have a work-around, but I'm not sure it does what it's supposed to still.
The guilty parties are in arch/i386/config.in and scripts/tkcond.c, specifically:
>arch/i386/config.in: mainmenu_option next_comment comment 'Processor type and features' choice 'Processor family' \ "386 CONFIG_M386 \ 486/Cx486 CONFIG_M486 \ 586/K5/5x86/6x86 CONFIG_M586 \ Pentium/TSC CONFIG_M586TSC \ PPro/K6/6x86MX CONFIG_M686" PPro # # Define implied options from the CPU selection here # if [ "$CONFIG_M386" != "n" ]; then define_bool CONFIG_WP_WORKS_OK y define_bool CONFIG_INVLPG y define_bool CONFIG_BSWAP y fi
>scripts/tkcond.c [function fix_choice_cond()] /* * Look ahead for what we are comparing this to. There should * be one operator in between. */ cond2 = cond->next->next; strcpy(tmpbuf, cond->variable.cfg->label);
if( strcmp(cond2->variable.str, "y") == 0 ) { cond->variable.cfg = cond->variable.cfg->choice_label; cond2->variable.str = strdup(tmpbuf); } else { fprintf(stderr,"Ooops\n"); exit(0); } }
Basically, the xconfig routine can't handle anything besides [ "$VAR" = "y" ] in choice variables.
Changing if [ "$CONFIG_M386" != "n" ]; then to if [ "$CONFIG_M386" = "y" ]; then in arch/i386/config.in lets xconfig run, but I'm not entirely sure if it does the same thing. I think it does, since in a choice list, it can only be yes or no, right?
Also, running xconfig appears to generate adequate config information to compile up to the aforementioned SMP problem. However, it spits out a lot of error messages while xconfig is running and when it exits after configuration is done. Tomorrow, I'll look at those more closely.
Justin Bradford justin@ukans.edu
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/
| |