Fixed some build system stuff
This commit is contained in:
@@ -10,10 +10,10 @@ FILES := bios
|
|||||||
SOURCES := $(addprefix ./, $(addsuffix .asm, $(FILES)))
|
SOURCES := $(addprefix ./, $(addsuffix .asm, $(FILES)))
|
||||||
TARGETS := $(addprefix $(BUILDDIR)/, $(addsuffix .bin, $(FILES)))
|
TARGETS := $(addprefix $(BUILDDIR)/, $(addsuffix .bin, $(FILES)))
|
||||||
|
|
||||||
TOPTARGETS := all clean size
|
TOPTARGETS := all clean
|
||||||
$(TOPTARGETS): $(SUBDIRS)
|
$(TOPTARGETS): $(SUBDIRS)
|
||||||
|
|
||||||
all: $(BUILDDIR) $(BUILDDIR)/rom.bin size
|
all: $(BUILDDIR) $(BUILDDIR)/rom.bin
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
rm -rf $(BUILDDIR)
|
rm -rf $(BUILDDIR)
|
||||||
@@ -25,17 +25,7 @@ $(BUILDDIR)/%.bin: ./%.asm $(BUILDDIR)/memory.inc
|
|||||||
echo '>$<'
|
echo '>$<'
|
||||||
$(ASM) $(ASMFLAGS) $< $@
|
$(ASM) $(ASMFLAGS) $< $@
|
||||||
|
|
||||||
size:
|
$(BUILDDIR)/basic.bin: $(BUILDDIR)/memory.inc
|
||||||
@for file in $(TARGETS); do \
|
|
||||||
if [ -f "$$file" ]; then \
|
|
||||||
echo "$$file: $$(wc -c < "$$file") bytes"; \
|
|
||||||
else \
|
|
||||||
echo "$$file: Not built yet (run 'make')"; \
|
|
||||||
fi \
|
|
||||||
done
|
|
||||||
$(MAKE) -C apps/basic size --no-print-directory
|
|
||||||
|
|
||||||
$(BUILDDIR)/basic.bin:
|
|
||||||
$(MAKE) -C apps/basic $(or $(MAKECMDGOALS),all) --no-print-directory
|
$(MAKE) -C apps/basic $(or $(MAKECMDGOALS),all) --no-print-directory
|
||||||
|
|
||||||
$(BUILDDIR)/memory.inc: memory.mk
|
$(BUILDDIR)/memory.inc: memory.mk
|
||||||
@@ -44,6 +34,8 @@ $(BUILDDIR)/memory.inc: memory.mk
|
|||||||
/^[A-Z][A-Z0-9_]*[[:space:]]*:=[[:space:]]*/ { print $$1 " .equ " $$3 }' $< > $@
|
/^[A-Z][A-Z0-9_]*[[:space:]]*:=[[:space:]]*/ { print $$1 " .equ " $$3 }' $< > $@
|
||||||
|
|
||||||
$(BUILDDIR)/rom.bin: $(BUILDDIR)/bios.bin $(BUILDDIR)/basic.bin
|
$(BUILDDIR)/rom.bin: $(BUILDDIR)/bios.bin $(BUILDDIR)/basic.bin
|
||||||
|
echo "bios: $(shell wc -c < $(BUILDDIR)/bios.bin) / $$(($(BIOS_ROM_SIZE)+0))"
|
||||||
|
echo "basic: $(shell wc -c < $(BUILDDIR)/basic.bin) / $$(($(BASIC_ROM_SIZE)+0))"
|
||||||
objcopy --pad-to=$$(($(BIOS_ROM_START)+$(BIOS_ROM_SIZE))) \
|
objcopy --pad-to=$$(($(BIOS_ROM_START)+$(BIOS_ROM_SIZE))) \
|
||||||
-I binary $(BUILDDIR)/bios.bin -O binary $(BUILDDIR)/bios_padded.bin
|
-I binary $(BUILDDIR)/bios.bin -O binary $(BUILDDIR)/bios_padded.bin
|
||||||
objcopy --pad-to=$(BASIC_ROM_SIZE) \
|
objcopy --pad-to=$(BASIC_ROM_SIZE) \
|
||||||
@@ -52,4 +44,3 @@ $(BUILDDIR)/rom.bin: $(BUILDDIR)/bios.bin $(BUILDDIR)/basic.bin
|
|||||||
|
|
||||||
|
|
||||||
.PHONY: $(TOPTARGETS) $(SUBDIRS)
|
.PHONY: $(TOPTARGETS) $(SUBDIRS)
|
||||||
|
|
||||||
|
|||||||
+3
-13
@@ -9,10 +9,10 @@ SUBDIRS :=
|
|||||||
SOURCES := $(addprefix ./, $(addsuffix .asm, $(FILES)))
|
SOURCES := $(addprefix ./, $(addsuffix .asm, $(FILES)))
|
||||||
TARGETS := $(addprefix $(BUILDDIR)/, $(addsuffix .bin, $(FILES)))
|
TARGETS := $(addprefix $(BUILDDIR)/, $(addsuffix .bin, $(FILES)))
|
||||||
|
|
||||||
TOPTARGETS := all clean size
|
TOPTARGETS := all clean
|
||||||
$(TOPTARGETS): $(SUBDIRS)
|
$(TOPTARGETS): $(SUBDIRS)
|
||||||
|
|
||||||
all: $(BUILDDIR) $(TARGETS) size
|
all: $(BUILDDIR) $(TARGETS)
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
rm -rf $(BUILDDIR)
|
rm -rf $(BUILDDIR)
|
||||||
@@ -20,21 +20,11 @@ clean:
|
|||||||
$(BUILDDIR):
|
$(BUILDDIR):
|
||||||
mkdir -p $(BUILDDIR)
|
mkdir -p $(BUILDDIR)
|
||||||
|
|
||||||
$(BUILDDIR)/%.bin: ./%.asm
|
$(BUILDDIR)/%.bin: ./%.asm $(BUILDDIR)/memory.inc
|
||||||
echo '>$<'
|
echo '>$<'
|
||||||
$(ASM) $(ASMFLAGS) $< $@
|
$(ASM) $(ASMFLAGS) $< $@
|
||||||
|
|
||||||
size:
|
|
||||||
@for file in $(TARGETS); do \
|
|
||||||
if [ -f "$$file" ]; then \
|
|
||||||
echo "$$file: $$(wc -c < "$$file") bytes"; \
|
|
||||||
else \
|
|
||||||
echo "$$file: Not built yet (run 'make')"; \
|
|
||||||
fi \
|
|
||||||
done
|
|
||||||
|
|
||||||
$(SUBDIRS):
|
$(SUBDIRS):
|
||||||
$(MAKE) -C $@ $(or $(MAKECMDGOALS),all) --no-print-directory
|
$(MAKE) -C $@ $(or $(MAKECMDGOALS),all) --no-print-directory
|
||||||
|
|
||||||
.PHONY: $(TOPTARGETS) $(SUBDIRS)
|
.PHONY: $(TOPTARGETS) $(SUBDIRS)
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user