summaryrefslogtreecommitdiff
path: root/examples
diff options
context:
space:
mode:
authorUlf Magnusson <ulfalizer@gmail.com>2018-12-08 00:41:01 +0100
committerUlf Magnusson <ulfalizer@gmail.com>2018-12-08 03:28:52 +0100
commit7b4f72fa7a19b7c38312a6f6fd553ca45f04e9a6 (patch)
tree55204b085afcb0316249eda97fee345694719b2e /examples
parent166be7d7684b4bd309661603a35710e0ed752680 (diff)
Make {load,write}_config(filename=None) implement the standard behavior
Make the previously obligatory 'filename' argument to load_config() and write_config() default to None, and have that implement the behavior you'd usually want: read/write either KCONFIG_CONFIG or ".config" if unset, and read the 'option defconfig_list' configuration file if KCONFIG_CONFIG/".config" doesn't exist. For load_config(), filename=None also allows the configuration file to be missing without raising an error. load_config() returns True if a local configuration file was loaded, which is useful to check in the menuconfig (if no local configuration file exists, we always want to prompt for saving the configuration when exiting). Also add a 'verbose' argument (default True) to load_config() and read_config() that makes them print which files were read/written in filename=None mode. Also generalize olddefconfig.py and oldconfig.py to not require there to already be a local configuration file. This was a bit silly for olddefconfig.py in particular. Remove the examples/defconfig.py script. It's a duplicate of olddefconfig.py.
Diffstat (limited to 'examples')
-rw-r--r--examples/allnoconfig_walk.py2
-rw-r--r--examples/defconfig.py23
-rw-r--r--examples/defconfig_oldconfig.py10
3 files changed, 6 insertions, 29 deletions
diff --git a/examples/allnoconfig_walk.py b/examples/allnoconfig_walk.py
index 227effd..5abc80c 100644
--- a/examples/allnoconfig_walk.py
+++ b/examples/allnoconfig_walk.py
@@ -61,4 +61,4 @@ while True:
if not changed:
break
-kconf.write_config(".config")
+kconf.write_config()
diff --git a/examples/defconfig.py b/examples/defconfig.py
deleted file mode 100644
index c9cc7c6..0000000
--- a/examples/defconfig.py
+++ /dev/null
@@ -1,23 +0,0 @@
-# Works like entering "make menuconfig" and immediately saving and exiting
-#
-# Usage:
-#
-# $ make [ARCH=<arch>] scriptconfig SCRIPT=Kconfiglib/examples/allyesconfig.py
-
-import os
-import sys
-
-import kconfiglib
-
-
-kconf = kconfiglib.Kconfig(sys.argv[1])
-
-if os.path.exists(".config"):
- print("using existing .config")
- kconf.load_config(".config")
-elif kconf.defconfig_filename is not None:
- print("using " + kconf.defconfig_filename)
- kconf.load_config(kconf.defconfig_filename)
-
-kconf.write_config(".config")
-print("configuration written to .config")
diff --git a/examples/defconfig_oldconfig.py b/examples/defconfig_oldconfig.py
index 0b24e1d..98f97a0 100644
--- a/examples/defconfig_oldconfig.py
+++ b/examples/defconfig_oldconfig.py
@@ -21,19 +21,19 @@ kconf = kconfiglib.Kconfig(sys.argv[1])
# Mirrors defconfig
kconf.load_config("arch/x86/configs/x86_64_defconfig")
-kconf.write_config(".config")
+kconf.write_config()
# Mirrors the first oldconfig
-kconf.load_config(".config")
+kconf.load_config()
kconf.syms["ETHERNET"].set_value(0)
-kconf.write_config(".config")
+kconf.write_config()
# Mirrors the second oldconfig
-kconf.load_config(".config")
+kconf.load_config()
kconf.syms["ETHERNET"].set_value(2)
for s in kconf.unique_defined_syms:
if s.user_value is None and 0 in s.assignable:
s.set_value(0)
# Write the final configuration
-kconf.write_config(".config")
+kconf.write_config()