Files
buildroot/package/miyoo/retroarch/libretro-scummvm/libretro-scummvm.mk
Apaczer c43d514052 PKG: split lr-scummvm into 2 cores (heavy&rest) (#152)
- split `scummvm` core
scummvm_heavy_libretro - AGS,Glk,TsAGE,Kyra,Ultima (engines)
scummvm_libretro - SCI, SCUMM and the rest of engines

- Create scummvm.scummvm_heavy.ra
2025-02-16 16:35:08 +01:00

58 lines
3.5 KiB
Makefile

################################################################################
#
# SCUMMVM
#
################################################################################
# Commit from Dec 3, 2024
LIBRETRO_SCUMMVM_VERSION = 7310d4e9f5d11553c6c5499911bd2f9b8ff3db3b
LIBRETRO_SCUMMVM_SITE = $(call github,libretro,scummvm,$(LIBRETRO_SCUMMVM_VERSION))
LIBRETRO_SCUMMVM_LICENSE = GPL-2.0
LIBRETRO_SCUMMVM_LICENSE_FILES = COPYING
# We will'be overwriting info file in final install step, so build core-info first
LIBRETRO_SCUMMVM_DEPENDENCIES = libretro-core-info
LIBRETRO_SCUMMVM_LTO_CFLAGS = $(COMPILER_COMMONS_CFLAGS_SO)
LIBRETRO_SCUMMVM_LTO_CXXFLAGS = $(COMPILER_COMMONS_CXXFLAGS_SO)
LIBRETRO_SCUMMVM_LTO_LDFLAGS = $(COMPILER_COMMONS_LSFLAGS_SO)
define LIBRETRO_SCUMMVM_BUILD_CMDS
$(SED) "s|-O2|-O3|g" $(@D)/backends/platform/libretro/Makefile
# Compile scummvm_heavy core & scummvm_heavy info file
CFLAGS="$(TARGET_CFLAGS) $(LIBRETRO_SCUMMVM_LTO_CFLAGS) -ffat-lto-objects" \
CXXFLAGS="$(TARGET_CXXFLAGS) $(LIBRETRO_SCUMMVM_LTO_CXXFLAGS) -ffat-lto-objects" \
LDFLAGS="$(TARGET_LDFLAGS) $(LIBRETRO_SCUMMVM_LTO_LDFLAGS) -ffat-lto-objects -shared -Wl,--no-undefined" \
$(MAKE) all TOOLSET="$(TARGET_CROSS)" -C $(@D)/backends/platform/libretro/ HEAVY=1 LITE=2 platform="$(RETROARCH_LIBRETRO_PLATFORM)"
$(TARGET_STRIP) --strip-unneeded $(@D)/backends/platform/libretro/scummvm_libretro.so
mv -fn $(@D)/backends/platform/libretro/scummvm_libretro.so $(@D)/backends/platform/libretro/scummvm_heavy_libretro.so
mv -fn $(@D)/backends/platform/libretro/scummvm_libretro.info $(@D)/backends/platform/libretro/scummvm_heavy_libretro.info
sed -i 's/display_name = "ScummVM"/display_name = "ScummVM (AGS,Glk,TsAGE,Kyra,Ultima)"/' $(@D)/backends/platform/libretro/scummvm_heavy_libretro.info
# Clean & Compile scummvm core & scummvm info file
$(MAKE) clean TOOLSET="$(TARGET_CROSS)" -C $(@D)/backends/platform/libretro/ platform="$(RETROARCH_LIBRETRO_PLATFORM)"
CFLAGS="$(TARGET_CFLAGS) $(LIBRETRO_SCUMMVM_LTO_CFLAGS) -ffat-lto-objects" \
CXXFLAGS="$(TARGET_CXXFLAGS) $(LIBRETRO_SCUMMVM_LTO_CXXFLAGS) -ffat-lto-objects" \
LDFLAGS="$(TARGET_LDFLAGS) $(LIBRETRO_SCUMMVM_LTO_LDFLAGS) -ffat-lto-objects -shared -Wl,--no-undefined" \
$(MAKE) all TOOLSET="$(TARGET_CROSS)" -C $(@D)/backends/platform/libretro/ HEAVY=2 LITE=0 platform="$(RETROARCH_LIBRETRO_PLATFORM)"
$(TARGET_STRIP) --strip-unneeded $(@D)/backends/platform/libretro/scummvm_libretro.so
endef
define LIBRETRO_SCUMMVM_INSTALL_TARGET_CMDS
mkdir -p ${BINARIES_DIR}/retroarch/cores
mkdir -p ${BINARIES_DIR}/retroarch/system/ScummVM
unzip -o $(@D)/backends/platform/libretro/scummvm.zip -d $(@D)/backends/platform/libretro/
mv -fn $(@D)/backends/platform/libretro/scummvm/* ${BINARIES_DIR}/retroarch/system/ScummVM/
$(INSTALL) -D $(@D)/backends/platform/libretro/ScummVM.dat \
${BINARIES_DIR}/retroarch/system/ScummVM.dat
$(INSTALL) -D $(@D)/backends/platform/libretro/scummvm_heavy_libretro.so \
${BINARIES_DIR}/retroarch/cores/scummvm_heavy_libretro.so
$(INSTALL) -D $(@D)/backends/platform/libretro/scummvm_libretro.so \
${BINARIES_DIR}/retroarch/cores/scummvm_libretro.so
# Overwrite existing info file with src generated one
$(INSTALL) -D -m 0644 $(@D)/backends/platform/libretro/scummvm_heavy_libretro.info \
${BINARIES_DIR}/retroarch/core_info/scummvm_heavy_libretro.info
$(INSTALL) -D -m 0644 $(@D)/backends/platform/libretro/scummvm_libretro.info \
${BINARIES_DIR}/retroarch/core_info/scummvm_libretro.info
endef
$(eval $(generic-package))