summaryrefslogtreecommitdiff
path: root/Makefile
diff options
context:
space:
mode:
authormrb0nk500 <b0nk@b0nk.xyz>2023-03-07 15:23:51 -0400
committermrb0nk500 <b0nk@b0nk.xyz>2023-03-07 15:23:51 -0400
commit09c901655db3bb42d2aac4b506846b18833d777c (patch)
treec980f1c6b42ee503a699200a55b4cabfded1ffd5 /Makefile
parent5df9bdde16d30a8bfe520e178c5810a7163e9d6c (diff)
global: Completly disable inlining
This is because it looks more, and more clear that the entire codebase was compiled without inlining. Likely to reduce code size from all the byteswap functions, only present on the GameCube version.
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile13
1 files changed, 9 insertions, 4 deletions
diff --git a/Makefile b/Makefile
index 839ec5b..fd839a4 100644
--- a/Makefile
+++ b/Makefile
@@ -43,7 +43,12 @@ CXXFLAGS := $(CFLAGS_BASE) -Cpp_exceptions off -RTTI off
include obj_files.mk
-$(BUILD_DIR)/src/pso/TProtocol.o: FILE_UNIQUE_CFLAGS := -inline none
+# This is a hack, and should be removed once we make separate repos for
+# all the support libraries (such as the Dolphin SDK, MSL, and MetroTRK).
+$(BUILD_DIR)/src/pso/%.o: DIR_UNIQUE_CFLAGS := -inline none
+
+# File specific flags.
+$(BUILD_DIR)/src/pso/TObject.o: FILE_UNIQUE_CFLAGS := -sym on
ALL_DIRS := $(sort $(dir $(O_FILES)))
@@ -70,12 +75,12 @@ $(BUILD_DIR)/%.o: %.s
$(BUILD_DIR)/%.o: %.c
@echo "Compiling " $<
- $(QUIET) $(CC) -lang=c $(CFLAGS) $(FILE_UNIQUE_CFLAGS) -c -o $@ $<
+ $(QUIET) $(CC) -lang=c $(CFLAGS) $(DIR_UNIQUE_CFLAGS) $(FILE_UNIQUE_CFLAGS) -c -o $@ $<
$(BUILD_DIR)/%.o: %.cp
@echo "Compiling " $<
- $(QUIET) $(CC) $(CXXFLAGS) $(FILE_UNIQUE_CFLAGS) -c -o $@ $<
+ $(QUIET) $(CC) $(CXXFLAGS) $(DIR_UNIQUE_CFLAGS) $(FILE_UNIQUE_CFLAGS) -c -o $@ $<
$(BUILD_DIR)/%.o: %.cpp
@echo "Compiling " $<
- $(QUIET) $(CC) -lang=c++ $(CXXFLAGS) $(FILE_UNIQUE_CFLAGS) -c -o $@ $<
+ $(QUIET) $(CC) -lang=c++ $(CXXFLAGS) $(DIR_UNIQUE_CFLAGS) $(FILE_UNIQUE_CFLAGS) -c -o $@ $<