Commit graph

5 commits

Author SHA1 Message Date
Andrew Kaster
5accedfedb Demos: Remove extra methods/globals from DynamicLib 2020-01-13 13:03:30 +01:00
Andrew Kaster
4698a10dd1 Demos: DynamicLink makefile now respects $(QUIET)
At a later date we'll probably want a template for SHLIB_OBJS and
SHLIB or some such, but for now at least the library demo isn't
printing compile commands all over the user's terminal.
2020-01-02 12:28:29 +01:00
Andrew Kaster
a755b80057 Demos: Link our normal startfiles into the dynamic lib demo
Now that gcc knows about crtbeginS and crtendS, and knows not to link
crt0.o into shared objects, we can get rid of the hacks required due to
--nostartfiles.
2020-01-01 23:05:17 +01:00
joshua stein
e7de8af379 Build: Demos/DynamicLink: use EXTRA_CLEAN 2020-01-01 22:21:50 +01:00
Andrew Kaster
b6590b7f83 Demos: Add a dynamic linking demo to show off dlfcn methods
The LinkDemo program calls dlopen/dlsym/dlclose to try and load
a dyanmic library from /usr/lib. It read a global variable and
calls a global function (extern "C" of course :) ).

There a few hacks left in the LinkLib dynamic library, however.
In order to get the linker to stop complaining, we have to use
-nostartfiles -ffreestanding otherwise it will link crt0.o to our
shared object, which is definitely not right as the _init function
for a main program (that calls main) is not suitable for our lib
2020-01-01 17:48:41 +01:00