summaryrefslogtreecommitdiff
path: root/package/config/patches/09-implement-kconfig-probability.patch
diff options
context:
space:
mode:
Diffstat (limited to 'package/config/patches/09-implement-kconfig-probability.patch')
-rw-r--r--package/config/patches/09-implement-kconfig-probability.patch44
1 files changed, 0 insertions, 44 deletions
diff --git a/package/config/patches/09-implement-kconfig-probability.patch b/package/config/patches/09-implement-kconfig-probability.patch
deleted file mode 100644
index 3f09673b8..000000000
--- a/package/config/patches/09-implement-kconfig-probability.patch
+++ /dev/null
@@ -1,44 +0,0 @@
----
- confdata.c | 22 +++++++++++++++++++---
- 1 file changed, 19 insertions(+), 3 deletions(-)
-
-Index: config/confdata.c
-===================================================================
---- config.orig/confdata.c
-+++ config/confdata.c
-@@ -996,7 +996,16 @@
- void conf_set_all_new_symbols(enum conf_def_mode mode)
- {
- struct symbol *sym, *csym;
-- int i, cnt;
-+ int i, cnt, prob = 50;
-+
-+ if (mode == def_random) {
-+ char *endp, *env = getenv("KCONFIG_PROBABILITY");
-+ if (env && *env) {
-+ int tmp = (int)strtol(env, &endp, 10);
-+ if (*endp == '\0' && tmp >= 0 && tmp <= 100)
-+ prob = tmp;
-+ }
-+ }
-
- for_all_symbols(i, sym) {
- if (sym_has_value(sym))
-@@ -1015,8 +1024,15 @@
- sym->def[S_DEF_USER].tri = no;
- break;
- case def_random:
-- cnt = sym_get_type(sym) == S_TRISTATE ? 3 : 2;
-- sym->def[S_DEF_USER].tri = (tristate)(rand() % cnt);
-+ cnt = (rand() % 100) - (100 - prob);
-+ if (cnt < 0)
-+ sym->def[S_DEF_USER].tri = no;
-+ else
-+ if ((sym_get_type(sym) == S_TRISTATE)
-+ && (cnt > prob/2))
-+ sym->def[S_DEF_USER].tri = mod;
-+ else
-+ sym->def[S_DEF_USER].tri = yes;
- break;
- default:
- continue;