mirror of
https://github.com/libretro/RetroArch.git
synced 2024-11-23 16:09:47 +00:00
ebaa5b9941
it for every platform - will have to be individually enabled for each platform first after rigorous testing
200 lines
6.3 KiB
Makefile
200 lines
6.3 KiB
Makefile
include version.all
|
|
|
|
#which compiler to build with - GCC or SNC
|
|
#set to GCC for debug builds for use with debugger
|
|
CELL_BUILD_TOOLS = GCC
|
|
CELL_GPU_TYPE = RSX
|
|
CELL_PSGL_VERSION = ultra-opt
|
|
|
|
# options
|
|
DOWNLOAD_SHADERS = 1
|
|
STRIPPING_ENABLE = 0
|
|
DEBUG = 0
|
|
HAVE_GCMGL = 1
|
|
HAVE_LOGGER = 0
|
|
HAVE_FREETYPE = 0
|
|
WHOLE_ARCHIVE_LINK = 0
|
|
|
|
CONTENT_ID_FULL = UP0001-SSNE10000_00-0000000000000001
|
|
CONTENT_ID = SSNE10000
|
|
|
|
PC_DEVELOPMENT_IP_ADDRESS = "192.168.1.7"
|
|
PC_DEVELOPMENT_UDP_PORT = 3490
|
|
|
|
CELL_MK_DIR ?= $(CELL_SDK)/samples/mk
|
|
include $(CELL_MK_DIR)/sdk.makedef.mk
|
|
|
|
PPU_TARGET = retroarch_ps3.elf
|
|
SALAMANDER_TARGET = retroarch-salamander_ps3.elf
|
|
|
|
EBOOT_PATH = pkg/ps3/USRDIR/EBOOT.BIN
|
|
CORE_PATH = pkg/ps3/USRDIR/cores/CORE.SELF
|
|
|
|
LDDIRS = -L. -L$(CELL_SDK)/target/ppu/lib/PSGL/RSX/ultra-opt
|
|
INCDIRS = -I. -Idefines -Ideps -Ideps/stb
|
|
|
|
# system platform
|
|
system_platform = unix
|
|
ifeq ($(shell uname -a),)
|
|
EXE_EXT = .exe
|
|
system_platform = win
|
|
else ifneq ($(findstring Darwin,$(shell uname -a)),)
|
|
system_platform = osx
|
|
else ifneq ($(findstring MINGW,$(shell uname -a)),)
|
|
system_platform = win
|
|
endif
|
|
|
|
PKG_SCRIPT = tools/ps3/ps3py/pkg.py
|
|
ifeq ($(shell uname), Linux)
|
|
PKG_FINALIZE = package_finalize
|
|
MAKE_SELF_WC = make_self_wc
|
|
MAKE_SELF = make_self_npdrm
|
|
PYTHON2 = python2
|
|
GIT = git
|
|
else
|
|
PKG_FINALIZE = package_finalize.exe
|
|
MAKE_SELF_WC = make_self_wc.exe
|
|
MAKE_SELF = make_self_npdrm.exe
|
|
PYTHON2 = python2.exe
|
|
GIT = git.exe
|
|
endif
|
|
|
|
PPU_SRCS = griffin/griffin.c
|
|
|
|
DEFINES += -DHAVE_RGUI -DHAVE_MATERIALUI -DHAVE_XMB -DHAVE_MENU -DRARCH_INTERNAL
|
|
|
|
ifeq ($(DEX_BUILD), 1)
|
|
DEFINES += -DDEX_BUILD
|
|
endif
|
|
|
|
ifeq ($(CEX_BUILD), 1)
|
|
DEFINES += -DCEX_BUILD
|
|
endif
|
|
|
|
ifeq ($(ODE_BUILD), 1)
|
|
DEFINES += -DODE_BUILD
|
|
endif
|
|
|
|
ifeq ($(HAVE_GCMGL), 1)
|
|
DEFINES += -DHAVE_GCMGL
|
|
GL_LIBS := -L. -lrgl_ps3
|
|
else
|
|
GL_LIBS := -L$(CELL_SDK)/target/ppu/lib/PSGL/RSX/ultra-opt -lPSGL -lPSGLcgc
|
|
endif
|
|
|
|
ifeq ($(HAVE_FREETYPE), 1)
|
|
DEFINES += -DHAVE_FREETYPE
|
|
FONT_LIBS := -lfontFT_stub -lfreetype_stub
|
|
else
|
|
DEFINES += -DHAVE_LIBDBGFONT
|
|
FONT_LIBS := -ldbgfont
|
|
endif
|
|
|
|
ifeq ($(CELL_BUILD_TOOLS), SNC)
|
|
PPU_CXXLD = $(CELL_SDK)/host-win32/sn/bin/ps3ppuld.exe
|
|
PPU_CXX = $(CELL_SDK)/host-win32/sn/bin/ps3ppusnc.exe
|
|
PPU_CC = $(CELL_SDK)/host-win32/sn/bin/ps3ppusnc.exe
|
|
else ifneq($(system_platform), win)
|
|
PPU_CXX = $(CELL_SDK)/host-win32/ppu/bin/ppu-lv2-g++.exe
|
|
PPU_CC = $(CELL_SDK)/host-win32/ppu/bin/ppu-lv2-gcc.exe
|
|
PPU_CXXLD = $(CELL_SDK)/host-win32/ppu/bin/ppu-lv2-ld.exe
|
|
PPU_CCLD = $(CELL_SDK)/host-win32/ppu/bin/ppu-lv2-ld.exe
|
|
endif
|
|
|
|
ifeq ($(WHOLE_ARCHIVE_LINK), 1)
|
|
WHOLE_START := -Wl, --whole-archive
|
|
WHOLE_END := -Wl, --no-whole-archive
|
|
endif
|
|
|
|
PPU_LDLIBS = $(FONT_LIBS) $(GL_LIBS) $(WHOLE_START) -lretro_ps3 $(WHOLE_END) -lcgc -lgcm_cmdasm -lgcm_sys_stub -lresc_stub -lm -lio_stub -lfs_stub -lsysutil_stub -lsysutil_game_stub -lsysutil_screenshot_stub -lsysutil_np_stub -lpngdec_stub -ljpgdec_stub -lsysmodule_stub -laudio_stub -lnet_stub -lnetctl_stub -lpthread
|
|
|
|
PPU_RANLIB = $(CELL_SDK)/host-win32/ppu/bin/ppu-lv2-ranlib.exe
|
|
|
|
#DEFINES += -DHAVE_VIDEO_LAYOUT
|
|
DEFINES += -DHAVE_THREADS -DRARCH_CONSOLE -DHAVE_OPENGL -DHAVE_OVERLAY -DHAVE_HEADSET -DHAVE_OPENGLES -DHAVE_OPENGLES1 -DHAVE_PSGL -DHAVE_CG -DHAVE_CG_RUNTIME_COMPILER -DHAVE_SYSMODULES -DHAVE_SYSUTILS -DHAVE_RARCH_EXEC -DHAVE_RSOUND -DHAVE_ZLIB -DHAVE_RPNG -DWANT_ZLIB -D__CELLOS_LV2__ -DHAVE_NETWORKING=1 -DHAVE_SOCKET_LEGACY=1 -DHAVE_MOUSE -DHAVE_GRIFFIN=1 -DHAVE_MULTIMAN=0 -DPC_DEVELOPMENT_IP_ADDRESS=\"$(PC_DEVELOPMENT_IP_ADDRESS)\" -DPC_DEVELOPMENT_UDP_PORT=$(PC_DEVELOPMENT_UDP_PORT) -DHAVE_STB_VORBIS
|
|
|
|
ifeq ($(DEBUG), 1)
|
|
PPU_OPTIMIZE_LV := -O0 -g
|
|
else
|
|
PPU_OPTIMIZE_LV := -O3 -g
|
|
endif
|
|
|
|
ifeq ($(HAVE_LOGGER), 1)
|
|
DEFINES += -DHAVE_LOGGER
|
|
endif
|
|
|
|
PPU_CFLAGS := $(PPU_OPTIMIZE_LV) $(INCDIRS) $(DEFINES)
|
|
PPU_CXXFLAGS := $(PPU_OPTIMIZE_LV) $(INCDIRS) $(DEFINES)
|
|
|
|
EXIST_EBOOT_WILDCARD := $(wildcard $(EBOOT_PATH))
|
|
EXIST_CORE_WILDCARD := $(wildcard $(CORE_PATH))
|
|
|
|
EBOOT_EXISTS = 1
|
|
CORE_EXISTS = 1
|
|
|
|
ifneq ($(strip $(EXIST_EBOOT_WILDCARD)),)
|
|
EBOOT_EXISTS = 0
|
|
endif
|
|
|
|
ifneq ($(strip $(EXIST_CORE_WILDCARD)),)
|
|
CORE_EXISTS = 0
|
|
endif
|
|
|
|
include $(CELL_MK_DIR)/sdk.target.mk
|
|
|
|
MAKE_FSELF = $(CELL_SDK)/host-win32/bin/make_fself.exe
|
|
MAKE_FSELF_NPDRM = $(CELL_SDK)/host-win32/bin/make_fself_npdrm.exe
|
|
MAKE_PACKAGE_NPDRM = $(CELL_SDK)/host-win32/bin/make_package_npdrm.exe
|
|
|
|
.PHONY: create-npdrm-core create-core create-npdrm-salamander create-shaders clean-selfs create-salamander
|
|
|
|
create-npdrm-core:
|
|
$(MAKE_FSELF_NPDRM) $(PPU_TARGET) $(CORE_PATH)
|
|
|
|
create-core:
|
|
$(MAKE_SELF_WC) $(PPU_TARGET) $(CORE_PATH)
|
|
|
|
create-npdrm-salamander:
|
|
$(MAKE_FSELF_NPDRM) $(SALAMANDER_TARGET) $(EBOOT_PATH)
|
|
|
|
create-salamander:
|
|
$(MAKE_SELF) $(SALAMANDER_TARGET) $(EBOOT_PATH) $(CONTENT_ID_FULL)
|
|
|
|
copy-media-files:
|
|
@cp -r $(ASSETS_DIR)/glui pkg/ps3/USRDIR/cores/assets
|
|
@cp -r $(ASSETS_DIR)/xmb pkg/ps3/USRDIR/cores/assets
|
|
|
|
create-shaders:
|
|
make -f Makefile.shaders deploy-ps3
|
|
|
|
pkg: $(PPU_TARGET) create-shaders copy-media-files create-npdrm-salamander create-npdrm-core
|
|
$(MAKE_PACKAGE_NPDRM) pkg/ps3/package.conf pkg/ps3
|
|
|
|
pkg-signed: $(PPU_TARGET) create-shaders copy-media-files create-salamander create-core
|
|
$(PYTHON2) $(PKG_SCRIPT) --contentid $(CONTENT_ID_FULL) pkg/ps3 retroarch-ps3-cfw-$(PACKAGE_VERSION).pkg
|
|
|
|
pkg-signed-standalone: $(PPU_TARGET) create-shaders copy-media-files create-core
|
|
$(MAKE_SELF) $(PPU_TARGET) $(EBOOT_PATH) $(CONTENT_ID)
|
|
$(PYTHON2) $(PKG_SCRIPT) --contentid $(CONTENT_ID_FULL) pkg/ps3 retroarch-ps3-cfw-$(PACKAGE_VERSION).pkg
|
|
|
|
pkg-signed-cfw: $(PPU_TARGET) create-shaders copy-media-files create-salamander create-core
|
|
$(PYTHON2) $(PKG_SCRIPT) --contentid $(CONTENT_ID_FULL) pkg/ps3 retroarch-ps3-cfw-$(PACKAGE_VERSION)-kmeaw.pkg
|
|
$(PKG_FINALIZE) retroarch-ps3-cfw-$(PACKAGE_VERSION)-kmeaw.pkg
|
|
|
|
pkg-signed-cfw-standalone: $(PPU_TARGET) create-shaders copy-media-files create-core
|
|
$(MAKE_SELF) $(PPU_TARGET) $(EBOOT_PATH) $(CONTENT_ID)
|
|
$(PYTHON2) $(PKG_SCRIPT) --contentid $(CONTENT_ID_FULL) pkg/ps3 retroarch-ps3-cfw-$(PACKAGE_VERSION).pkg
|
|
$(PKG_FINALIZE) retroarch-ps3-cfw-$(PACKAGE_VERSION)-kmeaw.pkg
|
|
|
|
clean-selfs:
|
|
ifeq ($(EBOOT_EXISTS),1)
|
|
@echo "WARNING: Couldn't find file to delete: [$(EBOOT_PATH)], skipping this step."
|
|
else
|
|
rm $(EBOOT_PATH)
|
|
endif
|
|
ifeq ($(CORE_EXISTS),1)
|
|
@echo "WARNING: Couldn't find file to delete: [$(CORE_PATH)], skipping this step."
|
|
else
|
|
rm $(CORE_PATH)
|
|
endif
|