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
253
254
255
256
257
258







259
260
261
262
263
264
265

	for rt in $(scan mod/$mod "*.rt.$target.s"); do
		base="$(basename $rt)"
		dest="$to/$mod.${base%%.s}.o"
		comp_asm "$rt" "$dest"
		rt_objects+=("$dest")
	done







done

# fourth pass: link the libraries that are
# configured to be built

if test $build_static_library == yes; then
	for obj in ${fn_objects[@]} ${rt_objects[@]} ${data_objects[@]}; do







>
>
>
>
>
>
>







252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272

	for rt in $(scan mod/$mod "*.rt.$target.s"); do
		base="$(basename $rt)"
		dest="$to/$mod.${base%%.s}.o"
		comp_asm "$rt" "$dest"
		rt_objects+=("$dest")
	done
done
# Compile just the error lists for all modules, regardless of enabled modules
for errs in $(scan mod "err.c"); do
	base="$(basename $(dirname $errs))"
	dest="$to/$base.err.o"
	comp_co "$errs" "$dest"
	data_objects+=("$dest")
done

# fourth pass: link the libraries that are
# configured to be built

if test $build_static_library == yes; then
	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[] = {};