Files
ps5debug-NG/debugger/Makefile
T
OpenSourcereR-dev 81b8e07fd9 Add .gitattributes; normalize our sources to LF
Pin LF endings for our C/H/S/Makefile/Markdown/shell/Python files so edits no longer produce spurious whole-file CRLF/LF diffs across machines or editors. Converts the 6 previously-CRLF tracked files to LF (PROTOCOL.md, README.md, debugger/Makefile, debugger/source/proc_remote.c, installer/Makefile, installer/source/main.c). Vendored trees (ps5-payload-sdk, third_party, debugger/third_party) are marked -text and left byte-for-byte unchanged. EOL-only change; no code changes.
2026-06-03 07:55:57 +00:00

51 lines
1.4 KiB
Makefile

# SPDX-License-Identifier: GPL-3.0-only
SDK := ../ps5-payload-sdk/install
ifeq (,$(wildcard $(SDK)/toolchain/prospero.mk))
$(error SDK not built - run ../build.sh from the project root)
endif
include $(SDK)/toolchain/prospero.mk
ELF := build/debugger.elf
BUILD_DIR := build
ZYDIR := third_party/zydis
ZYDIS_OBJ := $(BUILD_DIR)/Zydis.o
KSDIR := third_party/keystone
CXXRT := third_party/cxxrt
CFLAGS := -Wall -O2 -I../common/include -Iinclude -I$(ZYDIR) -I$(KSDIR)/include
LDFLAGS := -Wl,--wrap=__patch_init
LDLIBS := -lSceLibcInternal -lkernel_sys -lSceNet -lSceNetCtl -lSceSysCore
ZYDIS_CFLAGS := -O3 -DNDEBUG -DZYAN_NO_LIBC -w -I../common/include -Iinclude -I$(ZYDIR)
CXXFILES := $(wildcard source/*.cpp)
CXX_OBJS := $(patsubst source/%.cpp,$(BUILD_DIR)/%.o,$(CXXFILES))
CXXFLAGS := -O2 -I../common/include -Iinclude -I$(KSDIR)/include
CXX_LDLIBS := -Wl,--start-group -L$(KSDIR)/lib -L$(CXXRT)/lib -lkeystone -lc++ -lc++abi -lunwind -Wl,--end-group
CFILES := $(wildcard ../common/source/*.c) $(wildcard source/*.c)
all: $(ELF)
$(BUILD_DIR):
mkdir -p $(BUILD_DIR)
$(ZYDIS_OBJ): $(ZYDIR)/Zydis.c $(ZYDIR)/Zydis.h | $(BUILD_DIR)
$(CC) -c -o $@ $< $(ZYDIS_CFLAGS)
$(BUILD_DIR)/%.o: source/%.cpp | $(BUILD_DIR)
$(CXX) $(CXXFLAGS) -c -o $@ $<
$(ELF): $(CFILES) $(CXX_OBJS) $(ZYDIS_OBJ) | $(BUILD_DIR)
$(CC) $(CFLAGS) -o $@ $(CFILES) $(CXX_OBJS) $(ZYDIS_OBJ) $(LDFLAGS) $(LDLIBS) $(CXX_LDLIBS)
clean:
rm -rf $(BUILD_DIR)
.PHONY: all clean