29 lines
618 B
Makefile
29 lines
618 B
Makefile
HOST_NAME := host
|
|
TEST_NAME := test
|
|
|
|
TOPLEVEL := source.s
|
|
BUILD_TYPE ?= normal
|
|
|
|
ifeq ($(BUILD_TYPE), test)
|
|
TOPLEVEL := test.s
|
|
HOST_NAME := $(TEST_NAME)
|
|
endif
|
|
|
|
HOST_BINARY := $(HOST_NAME).prg
|
|
|
|
BUILD_DIR := ./build
|
|
SRC_DIR := ./src
|
|
|
|
HOST_PRG := $(BUILD_DIR)/$(HOST_BINARY)
|
|
|
|
SRCS := $(shell find $(SRC_DIR) -name '*.s' -or -name '*.inc')
|
|
|
|
CL := cl65
|
|
|
|
CLFLAGS := -u __EXEHDR__ -t c64 -C c64-asm.cfg -l $(BUILD_DIR)/$(HOST_NAME).lst -Ln $(BUILD_DIR)/$(HOST_NAME).lbl -m $(BUILD_DIR)/$(HOST_NAME).m
|
|
|
|
$(HOST_PRG): $(SRCS) userprog.bin
|
|
mkdir -p $(BUILD_DIR)
|
|
$(CL) -o $@ $(CLFLAGS) $(SRC_DIR)/$(TOPLEVEL)
|
|
|
|
all: $(HOST_PRG)
|