AS = sdasz80 CC = sdcc AR = sdar BUILD = .build TARGET = crt OPT = s CFLAGS = -mz80 -D__SDCC__ -Iinclude ASFLAGS = -plosgff SRC = \ src/crt0.s \ src/bios.s \ src/_mulint.s \ src/random.c \ src/console.c \ src/convert.c \ OBJ_1 = $(notdir $(SRC:.c=.rel)) OBJ_2 = $(notdir $(OBJ_1:.s=.rel)) OBJ = $(addprefix $(BUILD)/, $(OBJ_2)) vpath %.c $(sort $(dir $(SRC))) vpath %.s $(sort $(dir $(SRC))) .PHONY: all clean all: $(BUILD) $(BUILD)/$(TARGET).a $(BUILD)/%.rel: %.c Makefile | $(BUILD) $(CC) -c $(CFLAGS) $< -o $@ $(BUILD)/%.rel: %.s Makefile | $(BUILD) $(AS) $(ASFLAGS) $@ $< $(BUILD)/$(TARGET).a: $(OBJ) $(AR) rcs $@ $(OBJ) $(BUILD): mkdir $@ clean: rm -fr $(BUILD)