libk  Changes On Branch fixshared

Changes In Branch fixshared Excluding Merge-Ins

This is equivalent to a diff from 0d71b71cc8 to bdc1191d6f

2020-01-30
07:15
Merge the shared library build fixes into trunk check-in: d49a706cc4 user: glowpelt tags: trunk
07:13
Push r15 in linux x64 syscall This was causing the static, release, build of kcli.testbin to subtly segfault shortly after writing the first buffer. Still not sure why kcore.testbin seemingly wasn't affected, nor why the shared build still breaks worse. check-in: 6022ec08ab user: glowpelt tags: trunk
2020-01-23
07:10
Make install.sh actually try to install. Just a first pass at the problem for now, but it seems to work fine finally with some quick testing. check-in: 6346f60bb6 user: glowpelt tags: install
2020-01-22
00:58
Add a err.c for every module, and compile them all in. This fixes the build of the shared library version, as there are no more undefined symbols. `kexplain` likely will still not work, but it didn't work in the first place. Closed-Leaf check-in: bdc1191d6f user: glowpelt tags: fixshared
2020-01-19
04:12
Partially fix shared library build by making sure that data_objects are linked in. This means that internal.ident.o is properly linked in, but internal.ident.o itself still references undefined symbols, so this is only a partial fix. check-in: 0d71b71cc8 user: glowpelt tags: trunk
2020-01-05
17:52
Fix _start to properly find the environment. The arguments and environment are directly on the initial stack, which means that more work is needed to find the start of the environment properly. Also remove the hack in _boot that made it work if there were no arguments, as all of the math is being done in _start now. check-in: 62fd1bfe97 user: glowpelt tags: trunk

Modified build.sh from [e58e880af0] to [773f649c53].

   252    252   
   253    253   	for rt in $(scan mod/$mod "*.rt.$target.s"); do
   254    254   		base="$(basename $rt)"
   255    255   		dest="$to/$mod.${base%%.s}.o"
   256    256   		comp_asm "$rt" "$dest"
   257    257   		rt_objects+=("$dest")
   258    258   	done
          259  +done
          260  +# Compile just the error lists for all modules, regardless of enabled modules
          261  +for errs in $(scan mod "err.c"); do
          262  +	base="$(basename $(dirname $errs))"
          263  +	dest="$to/$base.err.o"
          264  +	comp_co "$errs" "$dest"
          265  +	data_objects+=("$dest")
   259    266   done
   260    267   
   261    268   # fourth pass: link the libraries that are
   262    269   # configured to be built
   263    270   
   264    271   if test $build_static_library == yes; then
   265    272   	for obj in ${fn_objects[@]} ${rt_objects[@]} ${data_objects[@]}; do

Added mod/kbuild/err.c version [42300f7063].

            1  +const char *kbuild_error_strings[] = {};

Added mod/kcli/err.c version [b3a720b992].

            1  +const char *kcli_error_strings[] = {};

Added mod/kconf/err.c version [f24c551630].

            1  +const char *kconf_error_strings[] = {};

Added mod/kcore/err.c version [db26488769].

            1  +const char *kcore_error_strings[] = {};

Added mod/kdb/err.c version [c317300ad1].

            1  +const char *kdb_error_strings[] = {};

Added mod/kdbg/err.c version [de0ca1aede].

            1  +const char *kdbg_error_strings[] = {};

Added mod/kfile/err.c version [2fb451a006].

            1  +const char *kfile_error_strings[] = {};

Added mod/kgraft/err.c version [5fc7fb86ef].

            1  +const char *kgraft_error_strings[] = {};

Added mod/kio/err.c version [32b33274ee].

            1  +const char *kio_error_strings[] = {};

Added mod/kmem/err.c version [e872bb1499].

            1  +const char *kmem_error_strings[] = {};

Added mod/kmsg/err.c version [0ac3a8b2d0].

            1  +const char *kmsg_error_strings[] = {};

Added mod/knet/err.c version [0eec7df907].

            1  +const char *knet_error_strings[] = {};

Added mod/knum/err.c version [bf1b024a5e].

            1  +const char *knum_error_strings[] = {};

Added mod/kproc/err.c version [d89332917b].

            1  +const char *kproc_error_strings[] = {};

Added mod/kstr/err.c version [97f00e5310].

            1  +const char *kstr_error_strings[] = {};

Added mod/kterm/err.c version [82b03c1638].

            1  +const char *kterm_error_strings[] = {};