Module Name: src
Committed By: uebayasi
Date: Sun Nov 16 07:12:34 UTC 2014
Modified Files:
src/usr.bin/config: TODO
Log Message:
config(1): TODO about namespace (esp. options vs. module)
To generate a diff of this commit:
cvs rdiff -u -r1.13 -r1.14 src/usr.bin/config/TODO
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/usr.bin/config/TODO
diff -u src/usr.bin/config/TODO:1.13 src/usr.bin/config/TODO:1.14
--- src/usr.bin/config/TODO:1.13 Sun Nov 16 04:28:09 2014
+++ src/usr.bin/config/TODO Sun Nov 16 07:12:34 2014
@@ -247,3 +247,18 @@ o Redesign swapnetbsd.c (root/swap devic
Don't build a whole kernel only to specify root/swap devices.
Make these parameter re-configurable afterwards.
+
+o Namespace.
+
+ Investigate namespace of attributes/modules/options. Figure out the hidden
+ design about these, document it, then re-design it.
+
+ At this moment, all of them share the single "selecttab", which means their
+ namespaces are common, but they also have respective tables (attrtab,
+ opttab, etc.).
+
+ Selecting an option (addoption()), that is also a module name, works only if
+ the module doesn't depend on anything, because addoption() doesn't select
+ module and its dependencies (selectattr()). In other words, an option is
+ only safely converted to a module (define), only if it doesn't depend on
+ anything. (One example is DDB.)