libk  Check-in [0d71b71cc8]

Overview
Comment: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.
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA3-256: 0d71b71cc8a58a151279b7b271e7990ba6f67807c42057acf309786c9a068f35
User & Date: glowpelt on 2020-01-19 04:12:57
Other Links: manifest | tags
Context
2020-01-30
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
Changes

Modified build.sh from [4e982ff144] to [e58e880af0].

266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
		report ar rc $to/libk.a $obj
	done
	report ranlib $to/libk.a
fi

if test $build_shared_library == yes; then
	report ld -r ${rt_objects[@]} -o $to/boot.o
	report ld -shared ${fn_objects[@]} -o $to/libk.so
fi

# fifth pass: compile the executable tools
# against the libraries created in pass 5

for mod in ${modules[@]}; do
	for exe in $(scan mod/$mod '*.exe.c'); do







|







266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
		report ar rc $to/libk.a $obj
	done
	report ranlib $to/libk.a
fi

if test $build_shared_library == yes; then
	report ld -r ${rt_objects[@]} -o $to/boot.o
	report ld -shared ${fn_objects[@]} ${data_objects[@]} -o $to/libk.so
fi

# fifth pass: compile the executable tools
# against the libraries created in pass 5

for mod in ${modules[@]}; do
	for exe in $(scan mod/$mod '*.exe.c'); do