Files

59 lines
1.6 KiB
Makefile
Raw Permalink Normal View History

2023-09-09 18:01:01 -06:00
# Makefile to build tools and recomp
# Compilation flags
2020-10-14 21:13:33 -07:00
CC := gcc
2024-04-09 21:29:57 -06:00
MAKE = make
2020-10-14 21:13:33 -07:00
CFLAGS := -I . -Wall -Wextra -Wno-unused-parameter -pedantic -std=c99 -O2 -s
2023-09-09 18:01:01 -06:00
# Tools to compile
PROGRAMS := mio0 n64graphics displaylist_packer n64cksum tkmk00 extract_data_for_mio
2020-10-14 21:13:33 -07:00
2023-09-09 18:01:01 -06:00
#==============================================================================#
# Source Files and Flags for Each Tool #
#==============================================================================#
2020-10-14 21:13:33 -07:00
n64graphics_SOURCES := n64graphics.c utils.c
n64graphics_CFLAGS := -DN64GRAPHICS_STANDALONE
displaylist_packer_SOURCES := displaylist_packer.c
displaylist_packer_CFLAGS := -Wno-unused-result
2020-10-14 21:13:33 -07:00
mio0_SOURCES := libmio0.c
mio0_CFLAGS := -DMIO0_STANDALONE
tkmk00_SOURCES := libtkmk00.c utils.c
tkmk00_CFLAGS := -DTKMK00_STANDALONE
n64cksum_SOURCES := n64cksum.c utils.c
n64cksum_CFLAGS := -DN64CKSUM_STANDALONE
2021-03-08 18:13:58 -07:00
extract_data_for_mio_SOURCES := extract_data_for_mio.c
2023-09-09 18:01:01 -06:00
# Build tools and recomp
2024-04-09 22:24:11 -06:00
all: $(PROGRAMS) torch
torch:
@echo "Building Torch..."
$(MAKE) -C torch type=release -j$(N_THREADS)
2021-09-22 01:44:30 -06:00
2023-09-09 18:01:01 -06:00
# Remove generated files
2020-10-14 21:13:33 -07:00
clean:
$(RM) $(PROGRAMS)
2024-04-10 21:39:16 -06:00
$(RM) -rf torch/cmake-build-release
2020-10-14 21:13:33 -07:00
2023-09-09 18:01:01 -06:00
#==============================================================================#
# Compile Tools #
#==============================================================================#
# Compile tools based on the foreach loop
2020-10-14 21:13:33 -07:00
define COMPILE =
$(1): $($1_SOURCES)
$(CC) $(CFLAGS) $($1_CFLAGS) $$^ -o $$@
endef
$(foreach p,$(PROGRAMS),$(eval $(call COMPILE,$(p))))
2024-04-09 21:29:57 -06:00
2024-04-09 22:24:11 -06:00
.PHONY: all clean default torch