Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src/usr.bin/config One more about linker script, another about g...
details: https://anonhg.NetBSD.org/src/rev/fa8215bc50c1
branches: trunk
changeset: 340194:fa8215bc50c1
user: uebayasi <uebayasi%NetBSD.org@localhost>
date: Wed Aug 26 06:38:57 2015 +0000
description:
One more about linker script, another about genassym.
diffstat:
usr.bin/config/TODO | 22 ++++++++++++++++++++++
1 files changed, 22 insertions(+), 0 deletions(-)
diffs (36 lines):
diff -r f4df0a30a02a -r fa8215bc50c1 usr.bin/config/TODO
--- a/usr.bin/config/TODO Wed Aug 26 05:41:20 2015 +0000
+++ b/usr.bin/config/TODO Wed Aug 26 06:38:57 2015 +0000
@@ -211,6 +211,16 @@
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 @@
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.
Home |
Main Index |
Thread Index |
Old Index