Skip to content

Commit 3090382

Browse files
committed
Added some basic Makefile action
1 parent 3bf65cf commit 3090382

File tree

11 files changed

+264
-0
lines changed

11 files changed

+264
-0
lines changed

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
.cache

Makefile

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
ifeq (, $(shell which romtool))
2+
$(error "amitools/romtool not found; see https://github.com/cnvogelg/amitools")
3+
endif
4+
5+
SUBDIRS := $(dir $(wildcard */Makefile))
6+
7+
.PHONY: all clean $(SUBDIRS)
8+
9+
all: $(SUBDIRS) replay.rom
10+
@echo "** $@ done"
11+
12+
clean: $(addprefix clean-,$(SUBDIRS))
13+
rm -rf replay.rom
14+
@echo "** $@ done"
15+
16+
$(SUBDIRS):
17+
$(MAKE) -C $@
18+
19+
clean-%: %
20+
$(MAKE) -C $< clean
21+
22+
replay.rom: build_rom.sh
23+
./build_rom.sh
24+
25+
include Makefile.build

Makefile.build

Lines changed: 63 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,63 @@
1+
REPO_ROOT := $(dir $(lastword $(MAKEFILE_LIST)))
2+
CACHE_DIR := $(REPO_ROOT).cache/
3+
VASM := $(CACHE_DIR)vasmm68k_mot
4+
NDK := $(CACHE_DIR)NDK_3.9/
5+
SANA2 := $(CACHE_DIR)sana2
6+
AHI := $(CACHE_DIR)ahi
7+
8+
INC_ASM := $(NDK)Include/include_i/
9+
LVO := $(INC_ASM)lvo/
10+
11+
SFD := $(notdir $(wildcard $(NDK)Include/sfd/*.sfd))
12+
LVOS := $(addprefix $(LVO),$(SFD:.sfd=.i))
13+
14+
.PHONY: distclean lvos buildenv
15+
16+
buildenv: $(VASM) $(NDK) $(LVO) $(SANA2) $(AHI)
17+
# @echo "** $@ done"
18+
19+
20+
distclean: clean
21+
rm -rf $(CACHE_DIR)
22+
@echo "** $@ done"
23+
24+
$(CACHE_DIR):
25+
mkdir -p $(CACHE_DIR)
26+
27+
$(VASM): | $(CACHE_DIR)
28+
cd $(CACHE_DIR) && rm -rf vasm vasm.tar.gz
29+
cd $(CACHE_DIR) && wget http://sun.hasenbraten.de/vasm/release/vasm.tar.gz
30+
cd $(CACHE_DIR) && tar xzf vasm.tar.gz
31+
cd $(CACHE_DIR) && cd vasm && make CPU=m68k SYNTAX=mot -j 4 && cp vasmm68k_mot ..
32+
cd $(CACHE_DIR) && rm -rf vasm vasm.tar.gz
33+
34+
$(NDK): | $(CACHE_DIR)
35+
cd $(CACHE_DIR) && wget http://www.haage-partner.de/download/AmigaOS/NDK39.lha
36+
cd $(CACHE_DIR) && 7z x NDK39.lha
37+
cd $(CACHE_DIR) && rm -rf NDK39.lha
38+
39+
$(SANA2): | $(CACHE_DIR)
40+
cd $(CACHE_DIR) && wget http://aminet.net/dev/misc/sana2_v2.lha
41+
cd $(CACHE_DIR) && 7z x -osana2 sana2_v2.lha
42+
cd $(CACHE_DIR) && rm -rf sana2_v2.lha
43+
44+
$(AHI): | $(CACHE_DIR)
45+
cd $(CACHE_DIR) && wget http://aminet.net/driver/audio/m68k-amigaos-ahidev.lha
46+
cd $(CACHE_DIR) && 7z x m68k-amigaos-ahidev.lha m68k-amigaos-ahi/Developer/Include/Asm
47+
cd $(CACHE_DIR) && mv m68k-amigaos-ahi/Developer/Include/Asm ahi
48+
cd $(CACHE_DIR) && rm -rf m68k-amigaos-ahi/Developer/Include
49+
cd $(CACHE_DIR) && rm -rf m68k-amigaos-ahidev.lha
50+
51+
$(LVO): | $(NDK)
52+
cd $(CACHE_DIR) && wget http://aminet.net/dev/gcc/sfdc.lha
53+
cd $(CACHE_DIR) && 7z x sfdc.lha && mv sfdc-master sfdc
54+
cd $(REPO_ROOT) && make -f Makefile lvos -j 4
55+
cd $(CACHE_DIR) && rm -rf sfdc
56+
cd $(CACHE_DIR) && rm -rf sfdc.lha
57+
58+
lvos: $(LVOS)
59+
@echo "** $@ done"
60+
61+
$(LVO)%.i : $(NDK)Include/sfd/%.sfd
62+
@mkdir -p $(LVO)
63+
perl $(CACHE_DIR)sfdc/sfdc -q --mode lvo $< -o $@

addmem/Makefile

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
VASM_FLAGS := -quiet -Fhunkexe -kick1hunks -nosym -m68000
2+
3+
TARGET := AddReplayMem
4+
SOURCE := addmem.asm
5+
LISTFILE := $(addsuffix .txt,$(basename $(TARGET)))
6+
7+
all: $(TARGET)
8+
@echo ""
9+
10+
$(TARGET): Makefile | buildenv
11+
$(TARGET): $(SOURCE)
12+
$(VASM) $< -o $@ -L $(LISTFILE) $(VASM_FLAGS) -I $(INC_ASM)
13+
14+
clean:
15+
rm -rf $(TARGET) $(LISTFILE)
16+
17+
.PHONY: clean
18+
19+
include ../Makefile.build

bootrom/Makefile

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
VASM_FLAGS := -quiet -showcrit -pic -Fbin -m68000
2+
3+
TARGET := bootrom.bin
4+
SOURCE := bootrom.s
5+
INCLUDES := replay_200x77.bin
6+
LISTFILE := $(addsuffix .txt,$(basename $(TARGET)))
7+
8+
all: $(TARGET)
9+
@echo ""
10+
11+
$(TARGET): Makefile | buildenv
12+
$(TARGET): $(INCLUDES)
13+
$(TARGET): $(SOURCE)
14+
$(VASM) $< -o $@ -L $(LISTFILE) $(VASM_FLAGS)
15+
16+
clean:
17+
rm -rf $(TARGET) $(LISTFILE)
18+
19+
.PHONY: clean
20+
21+
include ../Makefile.build

eth/Makefile

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
VASM_FLAGS := -quiet -nowarn=1012 -m68020 -Fhunkexe -kick1hunks -nosym -showcrit
2+
3+
TARGET := replayeth.device
4+
SOURCE := replayeth.s
5+
INCLUDES := kprintf.i enc624.i
6+
LISTFILE := $(addsuffix .txt,$(basename $(TARGET)))
7+
8+
all: $(TARGET)
9+
@echo ""
10+
11+
$(TARGET): Makefile | buildenv
12+
$(TARGET): $(INCLUDES)
13+
$(TARGET): $(SOURCE)
14+
$(VASM) $< -o $@ -L $(LISTFILE) $(VASM_FLAGS) -I $(INC_ASM) -I $(SANA2)/include
15+
16+
clean:
17+
rm -rf $(TARGET) $(LISTFILE)
18+
19+
.PHONY: clean
20+
21+
include ../Makefile.build

oled/Makefile

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
VASM_FLAGS := -quiet -m68020 -Fhunkexe -nosym -showcrit
2+
3+
TARGET := oled.exe
4+
SOURCE := oled.s
5+
INCLUDES := kprintf.i font8x8_basic.i replay_208x77.bin
6+
LISTFILE := $(addsuffix .txt,$(basename $(TARGET)))
7+
8+
all: $(TARGET)
9+
@echo ""
10+
11+
$(TARGET): Makefile | buildenv
12+
$(TARGET): $(INCLUDES)
13+
$(TARGET): $(SOURCE)
14+
$(VASM) $< -o $@ -L $(LISTFILE) $(VASM_FLAGS) -I $(INC_ASM)
15+
16+
clean:
17+
rm -rf $(TARGET) $(LISTFILE)
18+
19+
.PHONY: clean
20+
21+
include ../Makefile.build

rtc/Makefile

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
VASM_FLAGS := -quiet -Fhunkexe -align -nosym
2+
3+
TARGET := battclock.resource
4+
SOURCE := battclock.s
5+
INCLUDES := kprintf.i
6+
LISTFILE := $(addsuffix .txt,$(basename $(TARGET)))
7+
8+
all: $(TARGET)
9+
@echo ""
10+
11+
$(TARGET): Makefile | buildenv
12+
$(TARGET): $(INCLUDES)
13+
$(TARGET): $(SOURCE)
14+
$(VASM) $< -o $@ -L $(LISTFILE) $(VASM_FLAGS) -I $(INC_ASM)
15+
16+
clean:
17+
rm -rf $(TARGET) $(LISTFILE)
18+
19+
.PHONY: clean
20+
21+
include ../Makefile.build

rtg/Makefile

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
VASM_FLAGS := -quiet -nowarn=1012 -cnop=0x0000 -m68020 -Fhunkexe -kick1hunks -nosym -no-opt
2+
3+
TARGET := Replay.card
4+
SOURCE := replay.card.asm
5+
INCLUDES := P96BoardInfo.i P96CardStruct.i P96ModeInfo.i vde.i
6+
LISTFILE := $(addsuffix .txt,$(basename $(TARGET)))
7+
8+
all: $(TARGET)
9+
@echo ""
10+
11+
$(TARGET): Makefile | buildenv
12+
$(TARGET): $(INCLUDES)
13+
$(TARGET): $(SOURCE)
14+
$(VASM) $< -o $@ -L $(LISTFILE) $(VASM_FLAGS) -I $(INC_ASM)
15+
16+
clean:
17+
rm -rf $(TARGET) $(LISTFILE)
18+
19+
.PHONY: clean
20+
21+
include ../Makefile.build

usb/Makefile

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
VASM_FLAGS := -quiet -Fhunkexe -kick1hunks
2+
3+
TARGET := usb_eth.autoconfig
4+
SOURCE := addconfig.s
5+
LISTFILE := $(addsuffix .txt,$(basename $(TARGET)))
6+
7+
all: $(TARGET)
8+
@echo ""
9+
10+
$(TARGET): Makefile | buildenv
11+
$(TARGET): $(SOURCE)
12+
$(VASM) $< -o $@ -L $(LISTFILE) $(VASM_FLAGS) -I $(INC_ASM)
13+
14+
clean:
15+
rm -rf $(TARGET) $(LISTFILE)
16+
17+
.PHONY: clean
18+
19+
include ../Makefile.build

0 commit comments

Comments
 (0)