-
Notifications
You must be signed in to change notification settings - Fork 13
/
Copy pathMakefile
executable file
·72 lines (51 loc) · 2.2 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
#---------------------------------------------------------------------------------
.SUFFIXES:
#---------------------------------------------------------------------------------
ifeq ($(strip $(DEVKITARM)),)
$(error "Please set DEVKITARM in your environment. export DEVKITARM=<path to>devkitARM")
endif
include $(DEVKITARM)/ds_rules
ifeq ($(strip $(LIBDSMI)),)
$(error "Please set LIBDSMI in your environment. export LIBDSMI=<path to>libdsmi")
endif
ifeq ($(strip $(LIBNTXM)),)
$(error "Please set LIBNTXM in your environment. export LIBNTXM=<path to>libntxm")
endif
export TARGET := $(shell basename $(CURDIR))
export TOPDIR := $(CURDIR)
#---------------------------------------------------------------------------------
# path to tools - this can be deleted if you set the path in windows
#---------------------------------------------------------------------------------
export PATH := $(DEVKITARM)/bin:$(PATH)
.PHONY: libdsmi libntxm tobkit $(TARGET).arm7 $(TARGET).arm9
#---------------------------------------------------------------------------------
# main targets
#---------------------------------------------------------------------------------
all: $(TARGET).ds.gba $(TARGET).gba.nds
libntxm:
@make -C $(LIBNTXM)
tobkit:
@make -C tobkit
libdsmi:
@make -C $(LIBDSMI)
$(TARGET).ds.gba : $(TARGET).nds
$(TARGET).gba.nds: $(TARGET).nds
cat ndsloader.bin $(TARGET).nds > $(TARGET).gba.nds
#---------------------------------------------------------------------------------
$(TARGET).nds : libdsmi libntxm tobkit $(TARGET).arm7 $(TARGET).arm9
ndstool -c $(TARGET).nds -7 $(TARGET).arm7 -9 $(TARGET).arm9 -b icon.bmp "NitroTracker"
#---------------------------------------------------------------------------------
$(TARGET).arm7 : arm7/$(TARGET).elf
$(TARGET).arm9 : arm9/$(TARGET).elf
#---------------------------------------------------------------------------------
arm7/$(TARGET).elf:
$(MAKE) -C arm7
#---------------------------------------------------------------------------------
arm9/$(TARGET).elf:
$(MAKE) -C arm9
clean:
$(MAKE) -C arm9 clean
$(MAKE) -C arm7 clean
rm -f $(TARGET).ds.gba $(TARGET).nds $(TARGET).arm7 $(TARGET).arm9
# Custom targets for copying stuff to the DS
-include mytargets.mk