diff options
| author | hachem <im@hachem.wtf> | 2025-12-05 17:32:02 +0100 |
|---|---|---|
| committer | hachem <im@hachem.wtf> | 2025-12-05 17:32:02 +0100 |
| commit | 339ae4a5de550dba1e54ae17340545970cae3082 (patch) | |
| tree | 13a356e5a0ebdadeb05ae4bd660a461e0fae46ed /Makefile | |
| parent | e92da05ceebffa2ef8c906c7f49e13ca5bc90a32 (diff) | |
[complete]: day 1
Diffstat (limited to 'Makefile')
| -rw-r--r-- | Makefile | 76 |
1 files changed, 38 insertions, 38 deletions
@@ -1,38 +1,38 @@ -NASM ?= nasm -LD ?= ld - -SRC_DIR := src -BUILD_DIR := build - -NASMFLAGS ?= -f elf32 -g -F dwarf -LDFLAGS ?= -m elf_i386 - -DAYS := Day1 Day2 Day3 Day4 -ASM_SRCS := $(addprefix $(SRC_DIR)/,$(addsuffix .asm,$(DAYS))) -OBJ_FILES := $(addprefix $(BUILD_DIR)/,$(addsuffix .o,$(DAYS))) -BINARIES := $(addprefix $(BUILD_DIR)/,$(DAYS)) - -.PHONY: all clean day1 list run-day% - -all: $(BINARIES) - -$(BUILD_DIR): - @mkdir -p $(BUILD_DIR) - -$(BUILD_DIR)/Day%.o: $(SRC_DIR)/Day%.asm | $(BUILD_DIR) - $(NASM) $(NASMFLAGS) $< -o $@ - -$(BUILD_DIR)/Day%: $(BUILD_DIR)/Day%.o - $(LD) $(LDFLAGS) -o $@ $< - -day1: $(BUILD_DIR)/Day1 - -run-day%: $(BUILD_DIR)/Day% - ./$(BUILD_DIR)/Day$* - -list: - @printf "Available days:\n" - @for day in $(DAYS); do echo " $$day"; done - -clean: - rm -rf $(BUILD_DIR) +NASM ?= nasm
+LD ?= ld
+
+SRC_DIR := src
+BUILD_DIR := build
+
+NASMFLAGS ?= -f elf32 -g -F dwarf
+LDFLAGS ?= -m elf_i386
+
+DAYS := Day1 Day2 Day3 Day4
+ASM_SRCS := $(addprefix $(SRC_DIR)/,$(addsuffix .asm,$(DAYS)))
+OBJ_FILES := $(addprefix $(BUILD_DIR)/,$(addsuffix .o,$(DAYS)))
+BINARIES := $(addprefix $(BUILD_DIR)/,$(DAYS))
+
+.PHONY: all clean day1 list run-day%
+
+all: $(BINARIES)
+
+$(BUILD_DIR):
+ @mkdir -p $(BUILD_DIR)
+
+$(BUILD_DIR)/Day%.o: $(SRC_DIR)/Day%.asm | $(BUILD_DIR)
+ $(NASM) $(NASMFLAGS) $< -o $@
+
+$(BUILD_DIR)/Day%: $(BUILD_DIR)/Day%.o
+ $(LD) $(LDFLAGS) -o $@ $<
+
+day1: $(BUILD_DIR)/Day1
+
+run-day%: $(BUILD_DIR)/Day%
+ ./$(BUILD_DIR)/Day$*
+
+list:
+ @printf "Available days:\n"
+ @for day in $(DAYS); do echo " $$day"; done
+
+clean:
+ rm -rf $(BUILD_DIR)
|
