-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathMakefile
More file actions
52 lines (38 loc) · 1.39 KB
/
Copy pathMakefile
File metadata and controls
52 lines (38 loc) · 1.39 KB
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
BUILD_DIR=build
include $(N64_INST)/include/n64.mk
include $(N64_INST)/include/t3d.mk
N64_CFLAGS += -std=gnu++17 -ftrivial-auto-var-init=uninitialized -fno-exceptions -Os
N64_CXXFLAGS += -ftrivial-auto-var-init=uninitialized -fno-exceptions -Os -I src
MKSPRITE_FLAGS = -c 3
PROJECT_NAME=n64brew_gamejam
src += $(wildcard src/*.cpp)
src += $(wildcard src/*/*.cpp)
# handle our asset
# assets_png = $(wildcard assets/*.png)
assets_gltf = $(wildcard assets/*.glb)
assets_binary = $(wildcard assets/tracks/*.bin)
assets_conv = $(addprefix filesystem/,$(notdir $(assets_binary))) \
$(addprefix filesystem/,$(notdir $(assets_gltf:%.glb=%.t3dm)))
all: $(PROJECT_NAME).z64
filesystem/%.sprite: assets/%.png
@mkdir -p $(dir $@)
@echo " [SPRITE] $@"
$(N64_MKSPRITE) $(MKSPRITE_FLAGS) -o filesystem "$<"
filesystem/%.t3dm: assets/%.glb
@mkdir -p $(dir $@)
@echo " [T3D-MODEL] $@"
$(T3D_GLTF_TO_3D) "$<" $@
$(N64_BINDIR)/mkasset -c 3 -o filesystem $@
filesystem/%.bin: assets/tracks/%.bin
@mkdir -p $(dir $@)
@echo " [TRACK] $@"
$(N64_BINDIR)/mkasset -c 1 -o filesystem $<
$(BUILD_DIR)/$(PROJECT_NAME).dfs: $(assets_conv)
$(BUILD_DIR)/$(PROJECT_NAME).elf: $(src:%.cpp=$(BUILD_DIR)/%.o)
$(PROJECT_NAME).z64: N64_ROM_TITLE="Gamejam"
$(PROJECT_NAME).z64: $(BUILD_DIR)/$(PROJECT_NAME).dfs
clean:
rm -rf $(BUILD_DIR) *.z64
rm -rf filesystem
-include $(wildcard $(BUILD_DIR)/*.d)
.PHONY: all clean