131 lines
5.0 KiB
131 lines
5.0 KiB
# --- SDE-COPYRIGHT-NOTE-BEGIN --- |
|
# This copyright note is auto-generated by ./scripts/Create-CopyPatch. |
|
# |
|
# Filename: package/.../linux-rt/12-conf-hacks.patch |
|
# Copyright (C) 2008 - 2012 The OpenSDE Project |
|
# Copyright (C) 2004 - 2008 The T2 SDE Project |
|
# Copyright (C) 1998 - 2003 ROCK Linux Project |
|
# |
|
# More information can be found in the files COPYING and README. |
|
# |
|
# This patch file is dual-licensed. It is available under the license the |
|
# patched project is licensed under, as long as it is an OpenSource license |
|
# as defined at http://www.opensource.org/ (e.g. BSD, X11) or under the terms |
|
# of the GNU General Public License as published by the Free Software |
|
# Foundation; either version 2 of the License, or (at your option) any later |
|
# version. |
|
# --- SDE-COPYRIGHT-NOTE-END --- |
|
|
|
Set all unset options to module. Needed by the OpenSDE Linux kernel |
|
auto configuration. |
|
|
|
diff -up linux-2.6.36/scripts/kconfig/conf.c.conf_hack linux-2.6.36/scripts/kconfig/conf.c |
|
--- linux-2.6.36/scripts/kconfig/conf.c.conf_hack 2010-12-10 11:05:25.584361328 +0100 |
|
+++ linux-2.6.36/scripts/kconfig/conf.c 2010-12-10 11:23:04.154359980 +0100 |
|
@@ -33,6 +33,7 @@ enum input_mode { |
|
savedefconfig, |
|
listnewconfig, |
|
oldnoconfig, |
|
+ no2modconfig, |
|
} input_mode = oldaskconfig; |
|
|
|
char *defconfig_file; |
|
@@ -453,6 +454,7 @@ static struct option long_opts[] = { |
|
{"randconfig", no_argument, NULL, randconfig}, |
|
{"listnewconfig", no_argument, NULL, listnewconfig}, |
|
{"oldnoconfig", no_argument, NULL, oldnoconfig}, |
|
+ {"no2modconfig", no_argument, NULL, no2modconfig}, |
|
{NULL, 0, NULL, 0} |
|
}; |
|
|
|
@@ -562,6 +564,9 @@ int main(int ac, char **av) |
|
else if (!stat("all.config", &tmpstat)) |
|
conf_read_simple("all.config", S_DEF_USER); |
|
break; |
|
+ case no2modconfig: |
|
+ conf_read_simple(".config", S_DEF_USER); |
|
+ break; |
|
default: |
|
break; |
|
} |
|
@@ -597,6 +602,9 @@ int main(int ac, char **av) |
|
case defconfig: |
|
conf_set_all_new_symbols(def_default); |
|
break; |
|
+ case no2modconfig: |
|
+ conf_set_all_new_symbols(def_no2mod); |
|
+ break; |
|
case savedefconfig: |
|
break; |
|
case oldaskconfig: |
|
diff -up linux-2.6.36/scripts/kconfig/confdata.c.conf_hack linux-2.6.36/scripts/kconfig/confdata.c |
|
--- linux-2.6.36/scripts/kconfig/confdata.c.conf_hack 2010-12-10 11:10:30.434361827 +0100 |
|
+++ linux-2.6.36/scripts/kconfig/confdata.c 2010-12-10 11:05:25.622361376 +0100 |
|
@@ -991,6 +991,17 @@ void conf_set_all_new_symbols(enum conf_ |
|
for_all_symbols(i, sym) { |
|
if (sym_has_value(sym)) |
|
continue; |
|
+ if ((mode == def_no2mod) && (sym_get_type(sym) == S_TRISTATE)) { |
|
+ if (sym_get_tristate_value(sym) == no) |
|
+ fprintf(stderr, "Setting %s to 'm'.\n", sym->name); |
|
+ if (sym_get_tristate_value(sym) == mod) |
|
+ fprintf(stderr, "Keep %s as 'm'.\n", sym->name); |
|
+ if (sym_get_tristate_value(sym) != yes) |
|
+ sym->def[S_DEF_USER].tri = mod; |
|
+ if (!sym_is_choice(sym)) |
|
+ sym->flags |= SYMBOL_DEF_USER; |
|
+ continue; |
|
+ } |
|
switch (sym_get_type(sym)) { |
|
case S_BOOLEAN: |
|
case S_TRISTATE: |
|
diff -up linux-2.6.36/scripts/kconfig/lkc.h.conf_hack linux-2.6.36/scripts/kconfig/lkc.h |
|
--- linux-2.6.36/scripts/kconfig/lkc.h.conf_hack 2010-12-10 11:10:46.819361946 +0100 |
|
+++ linux-2.6.36/scripts/kconfig/lkc.h 2010-12-10 11:05:25.623361366 +0100 |
|
@@ -46,6 +46,7 @@ enum conf_def_mode { |
|
def_default, |
|
def_yes, |
|
def_mod, |
|
+ def_no2mod, |
|
def_no, |
|
def_random |
|
}; |
|
diff -up linux-2.6.36/scripts/kconfig/Makefile.conf_hack linux-2.6.36/scripts/kconfig/Makefile |
|
--- linux-2.6.36/scripts/kconfig/Makefile.conf_hack 2010-10-20 22:30:22.000000000 +0200 |
|
+++ linux-2.6.36/scripts/kconfig/Makefile 2010-12-10 11:23:35.187362246 +0100 |
|
@@ -3,7 +3,7 @@ |
|
# These targets are used from top-level makefile |
|
|
|
PHONY += oldconfig xconfig gconfig menuconfig config silentoldconfig update-po-config \ |
|
- localmodconfig localyesconfig |
|
+ localmodconfig localyesconfig no2modconfig |
|
|
|
ifdef KBUILD_KCONFIG |
|
Kconfig := $(KBUILD_KCONFIG) |
|
@@ -95,7 +95,7 @@ update-po-config: $(obj)/kxgettext $(obj |
|
$(Q)rm -f arch/um/Kconfig.arch |
|
$(Q)rm -f $(obj)/config.pot |
|
|
|
-PHONY += allnoconfig allyesconfig allmodconfig alldefconfig randconfig |
|
+PHONY += allnoconfig allyesconfig allmodconfig alldefconfig randconfig no2modconfig |
|
|
|
allnoconfig allyesconfig allmodconfig alldefconfig randconfig: $(obj)/conf |
|
$< --$@ $(Kconfig) |
|
@@ -108,6 +108,9 @@ listnewconfig oldnoconfig: $(obj)/conf |
|
savedefconfig: $(obj)/conf |
|
$< --$@=defconfig $(Kconfig) |
|
|
|
+no2modconfig: $(obj)/conf |
|
+ $< --$@ $(Kconfig) |
|
+ |
|
defconfig: $(obj)/conf |
|
ifeq ($(KBUILD_DEFCONFIG),) |
|
$< --defconfig $(Kconfig) |
|
@@ -135,6 +138,7 @@ help: |
|
@echo ' allnoconfig - New config where all options are answered with no' |
|
@echo ' allyesconfig - New config where all options are accepted with yes' |
|
@echo ' allmodconfig - New config selecting modules when possible' |
|
+ @echo ' no2modconfig - New config selecting modules for disabled options' |
|
@echo ' alldefconfig - New config with all symbols set to default' |
|
@echo ' randconfig - New config with random answer to all options' |
|
@echo ' listnewconfig - List new options'
|
|
|