bond/Rules.top

55 lines
946 B
Plaintext

include $(MK)/prologue.mk
.DEFAULT_GOAL := all
#OBJ var holds all object files
dir := hal
include $(dir)/Rules.mk
dir := kernel
include $(dir)/Rules.mk
dir := lib
include $(dir)/Rules.mk
dir := test
include $(dir)/Rules.mk
dir := mk
include $(dir)/Rules.mk
LD_SCRIPT = $(OUT)/$(MK)/linker.ld
GRUB_CFG = $(OUT)/$(MK)/grub.cfg
TGT := $(OUT)/secxkrnl.elf
DMP := $(OUT)/secxkrnl.dmp
ISO := $(OUT)/secxkrnl.iso
$(TGT): $(OBJ) $(LD_SCRIPT)
$(LD) $(LD_FLAGS) -print-libgcc-file-name
$(LINK) -T $(LD_SCRIPT)
$(DMP): $(TGT)
$(DUMP)
.PHONY: clean
clean:
rm -f $(CLEAN) $(TGT) $(DMP) $(ISO)
find $(OUT) -empty -type d -delete
.PHONY: compile
compile: $(TGT)
.PHONY: dump
dump: $(DMP)
.PHONY: iso
iso: $(TGT) $(GRUB_CFG)
mkdir -p temp/secX
mkdir -p temp/boot
mkdir -p temp/boot/grub
cp $(TGT) temp/secX/
cp $(GRUB_CFG) temp/boot/grub/
grub-mkrescue -o $(ISO) temp
rm -r temp
.PHONY: all
all: compile dump iso
include $(MK)/epilogue.mk