3 shortcut.o: $(TCBOFFSET)
4 sighandler.o: $(TCBOFFSET)
6 entry-mp.o: $(TCBOFFSET)
7 sys_call_page-asm.o: $(TCBOFFSET)
8 tramp-mp.o: $(TCBOFFSET)
11 # Add future prerequisites somewhere among the list of libraries. You really
12 # should not have to add anything in the $(CXX) line.
14 # Please don't add -gc-sections as linker option here. The reason is that
15 # properly working destructors of libc.a require __start_libc_atexit and
16 # __stop_libc_atexit to be defined by the linker. The ld linker defines
17 # these symbols by magic if it finds a 'libc section' -- the section name
18 # starts with '_'. However, if the section is completely purged, these
19 # symbols are not defined and therefore the libc destructors are not executed
20 # (_IO_cleanup so far). We could manually create the correct section by adding
23 # PROVIDE(__start___libc_atexit = .);
24 # KEEP(*(__libc_atexit))
25 # PROVIDE(__stop___libc_atexit = .);
28 # to the linker script. We don't do this because we don't know which symbols
29 # are required by future versions of the libc.
31 $(KERNEL): kernel.ux.lds $(OBJ_KERNEL) $(MINILIBC) $(LIBK) $(KERNEL_EXTRA_LIBS) $(ABI) $(JABI) $(DRIVERS) $(CXXLIB)
33 $(VERBOSE)$(CXX) -m32 -Wl,-T$< -static -o $@ -Wl,--whole-archive $(MINILIBC) -Wl,--no-whole-archive $(KERNEL_UNRES_SYMS) $(filter-out $<,$+) -lutil $(WRAP_SYMBOLS)
34 $(VERBOSE)chmod 755 $@
35 @$(ECHO) " ==> Generating fiasco"
36 $(VERBOSE)ln -sf $@ fiasco
37 $(VERBOSE)preinit_array_start=$$(nm $(KERNEL) | grep __preinit_array_start | cut -d' ' -f1); \
38 preinit_array_end=$$(nm $(KERNEL) | grep __preinit_array_end | cut -d' ' -f1); \
39 if [ "$$preinit_array_start" != "$$preinit_array_end" ]; then \
40 echo "preinit_array content appeared, check linker symbols"; \
45 $(VERBOSE)$(CC) -O2 -Wall -W -c -o $@ $<
49 $(VERBOSE)$(CC) -static -o $@ $<
53 ifeq ($(CONFIG_UX_CON),y)
55 SDL_CFLAGS := $(shell $(SYSTEM_TARGET)sdl-config --cflags)
56 SDL_LDFLAGS := $(shell $(SYSTEM_TARGET)sdl-config --libs)
59 $(error sdl-config not found. libsdl including header files installed?)
64 $(VERBOSE)$(CC) -O2 -Wall -W -g $(SDL_CFLAGS) -c $<
68 $(VERBOSE)$(CC) $(SDL_LDFLAGS) $< -o $@
73 ifeq ($(CONFIG_UX_NET),y)
76 $(VERBOSE)$(CC) -O2 -Wall -W -g -c $<
80 $(VERBOSE)$(CC) $< -o $@