Module Name: src Committed By: uebayasi Date: Sat Aug 22 14:47:05 UTC 2015
Modified Files: src/usr.bin/config: TODO Log Message: Linker script TODO items. To generate a diff of this commit: cvs rdiff -u -r1.18 -r1.19 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.18 src/usr.bin/config/TODO:1.19 --- src/usr.bin/config/TODO:1.18 Wed Aug 19 03:39:45 2015 +++ src/usr.bin/config/TODO Sat Aug 22 14:47:05 2015 @@ -265,6 +265,39 @@ o Control ELF sections using linker scri of debug information. In the future .symtab will be copied using linker during this stage. +o Preprocess and generate linker scripts dynamically. + + Include opt_xxx.h and replace some constant values (e.g. COHERENCY_UNIT, + PAGE_SIZE, KERNEL_BASE_PHYS, KERNEL_BASE_VIRT, ...) with cpp(1). + + Don't unnecessarily define symbols. Don't use sed(1). + +o Clean up linker scripts. + + o Don't specify OUTPUT_FORMAT()/OUTPUT_ARCH() + + These are basically set in compilers/linkers. If non-default ABI is used, + command-line arguments should be specified. + + o Remove .rel/.rela handlings. + + These are set in relocatable objects, and handled by dynamic linkers. + Totally irrelefant for kernels. + + o Clean up debug section handlings. + + o Document (section boundary) symbols set in linker scripts. + + There must be a reason why symbols are defined and exported. + + PROVIDE() is to define internal symbols. + + o Clean up load addresses. + + o Program headers. + + o According to matt@, .ARM.extab/.ARM.exidx sections are no longer needed. + o Redesign swapnetbsd.c (root/swap device specification) Don't build a whole kernel only to specify root/swap devices.