1 # 2 # Copyright 2005 Sun Microsystems, Inc. All rights reserved. 3 # Use is subject to license terms. 4 # 5 # ident "%Z%%M% %I% %E% SMI" 6 # 7 include ../../Makefile.grub 8 include ../Makefile.solaris.defs 9 10 .SUFFIXES: 11 .SUFFIXES: .exec $(SUFFIXES) 12 13 .exec: 14 $(OBJCOPY) -O binary $< $@ 15 16 17 INCLUDES = -I. -I.. 18 CCASFLAGS += -O2 -fno-builtin -nostdinc 19 LDFLAGS += -m elf_i386_sol2 -nostdlib -N -Ttext 7C00 20 LIBS = 21 22 23 DATA = $(STAGE1_DATA) 24 PROGRAMS = $(STAGE1_EXEC) 25 26 STAGE1_DATA = stage1 27 STAGE1_EXEC = stage1.exec 28 STAGE1_ASMOBJS = stage1.o 29 STAGE1_OBJS = 30 31 INSTALL_TARGETS = $(DATA:%=$(ROOT_BOOT_GRUB)/%) 32 33 # 34 # Source files to be installed in $(SRC_DIR). 35 # 36 SRC_DIR = $(ROOT_SRC)/stage1 37 SRC_FILES = Makefile.am Makefile.in stage1.S stage1.h 38 39 INSTALL_TARGETS += $(SRC_FILES:%=$(SRC_DIR)/%) 40 41 42 all: $(PROGRAMS) $(DATA) 43 44 45 $(STAGE1_EXEC): $(STAGE1_ASMOBJS) $(STAGE1_OBJS) 46 $(RM) $@ 47 $(LINK) -o $@ $(STAGE1_ASMOBJS) $(STAGE1_OBJS) $(LIBS) 48 49 $(STAGE1_ASMOBJS): $$(@:.o=.S) 50 $(CCAS) $(CCASFLAGS) -c -o $@ $(@:.o=.S) 51 52 $(STAGE1_OBJS): $$(@:.o=.c) 53 $(CC) $(CFLAGS) -c -o $@ $(@:.o=.c) 54 55 56 install: all $(INSTALL_TARGETS) 57 58 $(ROOT_BOOT_GRUB)/%: $(ROOT_BOOT_GRUB) % 59 $(INS.file) 60 61 $(SRC_DIR)/%: $(SRC_DIR) % 62 $(INS.file) 63 64 $(ROOT_BOOT_GRUB) $(SRC_DIR): 65 $(INS.dir) 66 67 68 clean: _FORCE 69 $(RM) *.o $(PROGRAMS) 70 71 clobber: clean 72 $(RM) $(DATA) 73 74 _FORCE: