3 include $(SRCDIR)/config/aros.cfg
5 FUNCS := getcpucount getcpunumber
6 FILES := kernel_startup kernel_debug platform_init ictl kernel_cpu traps utils smp
7 AFILES := core_interrupts reboot
10 #MM kernel-kernel-pc-i386 : kernel-pc-acpica-includes includes-asm_h-i386 linklibs-bootconsole
12 USER_INCLUDES := $(PRIV_KERNEL_INCLUDES) $(PRIV_EXEC_INCLUDES) \
13 -I$(SRCDIR)/arch/all-native/kernel \
14 -isystem $(SRCDIR)/arch/all-native/bootconsole/include
15 USER_AFLAGS := -isystem $(GENINCDIR)
18 mainmmake=kernel-kernel maindir=$(MAINDIR) \
19 arch=pc-i386 files="$(FILES) $(FUNCS)" asmfiles=$(AFILES)
21 # Build smpboot.bin.o in $(GENDIR)/$(MAINDIR)/arch, where it will be picked up
22 # by the linker automatically (make.tmpl macros link in everything that is found there)
23 # However we don't want our intermediate files to be picked up, so we put them in
26 OUTDIR := $(GENDIR)/$(MAINDIR)/arch
27 OBJDIR := $(GENDIR)/$(CURDIR)
29 kernel-kernel-pc-i386 :: $(OUTDIR)/smpboot.bin.o
30 kernel-kernel-pc-i386-quick :: $(OUTDIR)/smpboot.bin.o
31 kernel-kernel-pc-i386-kobj :: $(OUTDIR)/smpboot.bin.o
32 kernel-kernel-pc-i386-kobj-quick :: $(OUTDIR)/smpboot.bin.o
34 %rule_assemble_multi basenames=smpbootstrap targetdir=$(OBJDIR)
35 %rule_link_binary file=$(OUTDIR)/smpboot.bin.o name=smpbootstrap objs=$(OBJDIR)/smpbootstrap.o ldflags="-m elf_i386"
37 $(OBJDIR)/smpbootstrap.o : | $(OBJDIR)
39 GLOB_MKDIRS += $(OUTDIR) $(OBJDIR)