-
Notifications
You must be signed in to change notification settings - Fork 3
/
Makefile
93 lines (75 loc) · 3.38 KB
/
Makefile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
#---------------------------------------------------------------------------------
.SUFFIXES:
#---------------------------------------------------------------------------------
ifeq ($(strip $(DEVKITARM)),)
$(error "Please set DEVKITARM in your environment. export DEVKITARM=<path to>devkitARM)
endif
include $(DEVKITARM)/ds_rules
export TARGET := NitroHax
export TOPDIR := $(CURDIR)
export VERSION_MAJOR := 0
export VERSION_MINOR := 98
export VERSTRING := $(VERSION_MAJOR).$(VERSION_MINOR)
#---------------------------------------------------------------------------------
# path to tools - this can be deleted if you set the path in windows
#---------------------------------------------------------------------------------
export PATH := $(DEVKITARM)/bin:$(PATH)
.PHONY: $(TARGET).arm7 $(TARGET).arm9
#---------------------------------------------------------------------------------
# main targets
#---------------------------------------------------------------------------------
all: $(TARGET).nds
$(TARGET).nds : $(TARGET).arm7 $(TARGET).arm9
ndstool -c $(TARGET).nds -7 arm7/$(TARGET).arm7.elf -9 arm9/$(TARGET).arm9.elf \
-b $(CURDIR)/icon.bmp "Nitro Hax;DS Game Cheat Tool;Created by Chishm"
#---------------------------------------------------------------------------------
$(TARGET).arm7 : arm7/$(TARGET).elf
$(TARGET).arm9 : arm9/$(TARGET).elf
#---------------------------------------------------------------------------------
BootLoader/load.bin : BootLoader/source/*
$(MAKE) -C BootLoader
#---------------------------------------------------------------------------------
arm9/data/load.bin : BootLoader/load.bin
rm -Rf arm9/data
mkdir arm9/data
cp $< $@
#---------------------------------------------------------------------------------
arm9/source/version.h : Makefile
@echo "#ifndef VERSION_H" > $@
@echo "#define VERSION_H" >> $@
@echo >> $@
@echo '#define VERSION_STRING "v'$(VERSION_MAJOR).$(VERSION_MINOR)'"' >> $@
@echo >> $@
@echo "#endif // VERSION_H" >> $@
#---------------------------------------------------------------------------------
arm7/$(TARGET).elf:
$(MAKE) -C arm7
#---------------------------------------------------------------------------------
arm9/$(TARGET).elf : arm9/data/load.bin arm9/source/version.h
$(MAKE) -C arm9
#---------------------------------------------------------------------------------
dist-bin : $(TARGET).txt $(TARGET).nds License.txt
zip -X -9 $(TARGET)_v$(VERSTRING).zip $(TARGET).txt $(TARGET).nds License.txt
dist-src :
tar --exclude=*~ -cvjf $(TARGET)_src_v$(VERSTRING).tar.bz2 \
--transform 's,^,/'$(TARGET)'/,' \
Makefile icon.bmp License.txt NitroHax.txt \
arm7/Makefile arm7/source \
arm9/Makefile arm9/source arm9/data arm9/graphics \
BootLoader/Makefile BootLoader/load.ld BootLoader/source
dist-legal : BootLoader/load.bin
tar --exclude=*~ --exclude=read_card.c -cvjf $(TARGET)_src_v$(VERSTRING).tar.bz2 \
--transform 's,^,/'$(TARGET)'/,' \
Makefile icon.bmp License.txt NitroHax.txt \
arm7/Makefile arm7/source \
arm9/Makefile arm9/source arm9/data arm9/graphics \
BootLoader/Makefile BootLoader/source BootLoader/load.bin
dist : dist-bin dist-src
#---------------------------------------------------------------------------------
clean:
$(MAKE) -C arm9 clean
$(MAKE) -C arm7 clean
$(MAKE) -C BootLoader clean
rm -f arm9/data/load.bin
rm -f arm9/source/version.h
rm -f $(TARGET).ds.gba $(TARGET).nds $(TARGET).arm7 $(TARGET).arm9