global: Makefiles now support parallel compiles.
[h316.git] / programs / first-steps / Makefile
CommitLineData
047c458f 1# Universal Makefile for X16 code
2
3
4ASM_CMD=$(H316)/bin/asm
5FRTN_CMD=$(H316)/bin/frtn
6SRC_DIR=src
7BUILD_DIR=build
8
9PROGRAMS=$(foreach n, $(wildcard $(SRC_DIR)/*.f $(SRC_DIR)/*.asm),$(notdir $(basename $(n))))
10
11#$(PROGRAMS):%:/$(BUILD_DIR)/%.f
12
13default: $(foreach prog, $(PROGRAMS),$(BUILD_DIR)/$(prog).obj)
14
15$(BUILD_DIR)/%.obj:$(SRC_DIR)/%.f
4ad624fd 16 @if [ ! -d $(BUILD_DIR) ]; then mkdir -p $(BUILD_DIR); fi
d6a1a234 17 @$(FRTN_CMD) $< && mv $(notdir $(basename $<)).obj $(BUILD_DIR)
047c458f 18
19$(BUILD_DIR)/%.obj:$(SRC_DIR)/%.asm
4ad624fd 20 @if [ ! -d $(BUILD_DIR) ]; then mkdir -p $(BUILD_DIR); fi
d6a1a234 21 @$(ASM_CMD) $< && mv $(notdir $(basename $<)).obj $(BUILD_DIR)
047c458f 22
23clean :
24 @rm -rf *.obj $(BUILD_DIR)/ *.lst *.go *.par
25
26.PHONY: default clean