From 81659afd0eecd303396ed1ff32f27735a9d23c27 Mon Sep 17 00:00:00 2001 From: Derek Hensley Date: Sat, 15 Mar 2025 10:10:12 -0700 Subject: [PATCH] Add versions --- Makefile | 10 ++++++++-- include/versions.h | 9 +++++++++ 2 files changed, 17 insertions(+), 2 deletions(-) create mode 100644 include/versions.h diff --git a/Makefile b/Makefile index 63718b59e4..cb53ff6d87 100644 --- a/Makefile +++ b/Makefile @@ -104,6 +104,10 @@ BUILD_DIR := build/$(VERSION) EXTRACTED_DIR := extracted/$(VERSION) EXPECTED_DIR := expected/$(BUILD_DIR) +VERSION_MACRO := $(shell echo $(VERSION) | tr a-z-. A-Z__) +GAME_VERSION := -DMM_VERSION=$(VERSION_MACRO) + + #### Tools #### ifneq ($(shell type $(MIPS_BINUTILS_PREFIX)ld >/dev/null 2>/dev/null; echo $$?), 0) $(error Unable to find $(MIPS_BINUTILS_PREFIX)ld. Please install or build MIPS binutils, commonly mips-linux-gnu. (or set MIPS_BINUTILS_PREFIX if your MIPS binutils install uses another prefix)) @@ -204,6 +208,8 @@ SFCFLAGS := --matching # We can't use the C preprocessor for this because it won't substitute inside string literals. BUILD_DIR_REPLACE := sed -e 's|$$(BUILD_DIR)|$(BUILD_DIR)|g' +CPPFLAGS += $(GAME_VERSION) + GBI_DEFINES := -DF3DEX_GBI_2 -DF3DEX_GBI_PL -DGBI_DOWHILE ifeq ($(COMPILER),gcc) @@ -215,7 +221,7 @@ ifeq ($(COMPILER),gcc) WARNINGS := $(CC_CHECK_WARNINGS) ASFLAGS := -march=vr4300 -32 -G0 -no-pad-sections CCASFLAGS := $(GBI_DEFINES) -G 0 -nostdinc -march=vr4300 -mfix4300 -mabi=32 -mno-abicalls -fno-PIC -fno-common -Wa,-no-pad-sections - COMMON_DEFINES := $(GBI_DEFINES) + COMMON_DEFINES := $(GBI_DEFINES) $(GAME_VERSION) AS_DEFINES := $(COMMON_DEFINES) -DMIPSEB -D_LANGUAGE_ASSEMBLY -D_ULTRA64 C_DEFINES := $(COMMON_DEFINES) -D_LANGUAGE_C ENDIAN := @@ -228,7 +234,7 @@ else WARNINGS := -fullwarn -verbose -woff 624,649,838,712,516,513,596,564,594,807 ASFLAGS := -march=vr4300 -32 -G0 -no-pad-sections CCASFLAGS := $(GBI_DEFINES) -G 0 -non_shared -Xcpluscomm -nostdinc -Wab,-r4300_mul $(WARNINGS) -o32 - COMMON_DEFINES := -D_MIPS_SZLONG=32 $(GBI_DEFINES) + COMMON_DEFINES := -D_MIPS_SZLONG=32 $(GBI_DEFINES) $(GAME_VERSION) AS_DEFINES := $(COMMON_DEFINES) -DMIPSEB -D_LANGUAGE_ASSEMBLY -D_ULTRA64 C_DEFINES := $(COMMON_DEFINES) -D_LANGUAGE_C ENDIAN := -EB diff --git a/include/versions.h b/include/versions.h new file mode 100644 index 0000000000..8f1b513798 --- /dev/null +++ b/include/versions.h @@ -0,0 +1,9 @@ +#ifndef VERSIONS_H +#define VERSIONS_H + +// MM versions in build order + +#define N64_JP_1_1 2 +#define N64_US 4 + +#endif