Module Name: src
Committed By: uebayasi
Date: Wed Aug 26 06:38:57 UTC 2015
Modified Files:
src/usr.bin/config: TODO
Log Message:
One more about linker script, another about genassym.
To generate a diff of this commit:
cvs rdiff -u -r1.22 -r1.23 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.22 src/usr.bin/config/TODO:1.23
--- src/usr.bin/config/TODO:1.22 Tue Aug 25 13:13:54 2015
+++ src/usr.bin/config/TODO Wed Aug 26 06:38:57 2015
@@ -211,6 +211,16 @@ o Shared kernel objects.
bus_space(9) operations, etc.) for users, the official binaries build
provided by TNF should be as portable as possible.
+o Always use explicit kernel linker script.
+
+ ld(1) has an option -T <ldscript> to use a given linker script. If not
+ specified, a default, built-in linker script, mainly meant for userland
+ programs, is used.
+
+ Currently m68k, sh3, and vax don't have kernel linker scripts. These work
+ because these have no constraints about page boundary; they map and access
+ kernel .text/.data in the same way.
+
o Control ELF sections using linker script.
Now kernel is linked and built directly from object files (*.o). Each port
@@ -379,3 +389,15 @@ o Strictly define DIAGNOSTIC.
It is possible to make DIAGNOSTIC kernel and modules binary-compatible with
non-DIAGNOSTIC ones. In that case, debug type informations should match
theoretically (not confirmed).
+
+o Define genassym(1) symbols per file.
+
+ Have each file define symbols that have to be generated by genassym(1) so
+ that more accurate dependency is reflected.
+
+ For example, if foo.S needs some symbols, it defines them in foo.assym,
+ declaring that foo.S depends on foo.assym.h, and includes foo.assym.h.
+ foo.assym.h is generated by following the suffix rule of .assym -> .assym.h.
+ When one header is updated, only related *.assym.h files are regenerated,
+ instead of rebuilding all MD/*.S files that depend on the global, single
+ assym.h.