# $Id$ include $(TOP)/config/make.cfg AS86 := as86 -0 -a LD86 := ld86 -0 OBJDIR := $(OSGENDIR)/boot OS_INCLUDES := -I$(GENINCDIR) CFLAGS2 := $(CFLAGS) AFLAGS2 := $(AFLAGS) -I.. AFLAGS3 := $(AFLAGS2) -I.. $(OS_INCLUDES) -traditional FILES := head LIB := $(LIBDIR)/boot/header.a LLINK := ld -r BLINK := ld -e startup_32 -Ttext 0x1000 -Map aros.map LINKLIBS := \ $(LIBDIR)/libamiga.a $(LIBDIR)/libarosc.a \ $(LIBDIR)/libarosm.a $(LIBDIR)/libarossupport.a #MM boot-native-i386 : setup $(OSGENDIR)/boot/bootsect $(OSGENDIR)/boot/setup \ header-native-i386 $(LIB) @$(NOP) #MM header-native-i386: setup $(foreach f,$(FILES),$(OBJDIR)/$(f).o) %add_objects $(foreach f,$(FILES),rom/boot/$(f)) #MM clean :: -$(RM) $(TESTS) #MM setup :: %mkdirs_q $(OBJDIR) $(LIBDIR)/boot $(LIB) : $(foreach f,$(FILES),$(OBJDIR)/$(f).o) %mklib_q $(OSGENDIR)/boot/bootsect : bootsect.S $(GENINCDIR)/aros/boot.h %mkdirs_q $(OBJDIR) $(CC) $(OS_INCLUDES) -E -traditional $< -o bootsect.s $(AS86) -o bootsect.o bootsect.s $(LD86) -s -o $@ bootsect.o $(RM) bootsect.s bootsect.o $(OSGENDIR)/boot/setup : setup.S video.S $(GENINCDIR)/aros/boot.h %mkdirs_q $(OBJDIR) $(CC) $(OS_INCLUDES) -E -traditional $< -o setup.s $(AS86) -o setup.o setup.s $(LD86) -s -o $@ setup.o $(RM) setup.s setup.o $(OBJDIR)/%.o : %.c %add_objects %compile_q opt=$(CFLAGS2) $(OBJDIR)/%.o : %.s %assemble_q opt=$(AFLAGS2) $(OBJDIR)/%.o : %.S %assemble_q opt=$(AFLAGS3) $(OBJDIR)/%.d : %.c %mkdepend_q -include $(OSGENDIR)/boot/mf.inc #MM kernel-link-native : setup kernel-link-native : $(foreach f,$(ADDITIONAL_OBJS),$(OSGENDIR)/boot/$(f).o) @$(LLINK) -o $(OSGENDIR)/boot/kernel.o \ $(foreach f,$(ADDITIONAL_OBJS),$(OSGENDIR)/boot/$(f).o) \ $(OSGENDIR)/graphics/graphics_driver.o \ $(OSGENDIR)/intuition/intuition_driver.o \ $(LINKLIBS) @$(BLINK) -o $(OSGENDIR)/boot/kernel \ $(OSGENDIR)/boot/kernel.o $(LINKLIBS) @objcopy -O binary $(OSGENDIR)/boot/kernel $(OSGENDIR)/boot/%.o : $(LIBDIR)/%.a @$(LLINK) --whole-archive $< -o $@ %common