From 85b34e1c9dc03585ec4f13f6241cd8f0ecaf9cd9 Mon Sep 17 00:00:00 2001 From: Julian Blake Kongslie Date: Sat, 8 Oct 2022 00:39:15 -0700 Subject: Trivial support for running the checker on an image. --- Makefile | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) (limited to 'Makefile') diff --git a/Makefile b/Makefile index 863826d..9ae29fd 100644 --- a/Makefile +++ b/Makefile @@ -9,7 +9,7 @@ DEBUG := -g CXX := g++ CXXFLAGS := $(WARNINGS) $(OPTIMIZE) $(DEBUG) -SED := sed +LD := ld XXD := xxd @@ -30,15 +30,27 @@ clean: rm -rf $(BUILD) .PHONY: clean +.SECONDARY: .SUFFIXES: -override SOURCES := $(shell find -\( -name build -prune -\) -o -\( -name \*.cpp -print -\)) +override SOURCES := $(shell find -\( -name build -prune -\) -o -\( -\( -name \*.bin -o -name \*.hex -o -name \*.cpp -\) -print -\)) override OBJECTS := $(addprefix $(BUILD)/, $(addsuffix .o, $(basename $(SOURCES)))) override DEPENDS := $(addprefix $(BUILD)/, $(addsuffix .d, $(basename $(SOURCES)))) -include $(DEPENDS) +$(BUILD)/%.bin: %.hex + @mkdir -p $(dir $@) + $(XXD) -r -p $< $@ + +$(BUILD)/%.o: %.bin + @mkdir -p $(dir $@) + $(LD) -r -b binary -z noexecstack -o $@ $< + +$(BUILD)/%.o: $(BUILD)/%.bin + $(LD) -r -b binary -z noexecstack -o $@ $< + $(BUILD)/%.o: %.cpp @mkdir -p $(dir $@) $(CXX) $(CXXFLAGS) $(COMPILE_FLAGS) -c -o $@ $< @@ -46,7 +58,3 @@ $(BUILD)/%.o: %.cpp $(BUILD)/minigolf: $(OBJECTS) @mkdir -p $(dir $@) $(CXX) $(CXXFLAGS) -o $@ -Wl,--start-group $+ -Wl,--end-group $(LINK_FLAGS) - -$(BUILD)/%.bin: %.hex - @mkdir -p $(dir $@) - $(SED) -e "s/\\s*#.*//" $< | $(XXD) -r -p > $@ -- cgit v1.2.3