diff --git a/packages/emulation/libretro-picodrive/package.mk b/packages/emulation/libretro-picodrive/package.mk new file mode 100644 index 0000000000..64aeafb35b --- /dev/null +++ b/packages/emulation/libretro-picodrive/package.mk @@ -0,0 +1,72 @@ +# SPDX-License-Identifier: GPL-2.0 +# Copyright (C) 2016-present Team LibreELEC (https://libreelec.tv) + +PKG_NAME="libretro-picodrive" +PKG_VERSION="3620f75d20e43abd2f9d793a7c0824c764c3860b" +PKG_SHA256="cff60412dbdad246cbe8bb6673679b5b0b15f93c9cd4434bc2bb1c56aa5ec551" +PKG_LICENSE="MAME" +PKG_SITE="https://github.com/kodi-game/picodrive" +PKG_URL="https://github.com/kodi-game/picodrive/releases/download/picodrive-${PKG_VERSION}/picodrive-${PKG_VERSION}.tar.gz" +PKG_DEPENDS_HOST="toolchain:host" +PKG_DEPENDS_TARGET="toolchain kodi-platform ${PKG_NAME}:host" +PKG_DEPENDS_UNPACK="cyclone68000" +PKG_LONGDESC="Fast MegaDrive/MegaCD/32X emulator" +PKG_TOOLCHAIN="manual" +PKG_BUILD_FLAGS="-gold" + +PKG_LIBNAME="picodrive_libretro.so" +PKG_LIBPATH="${PKG_LIBNAME}" +PKG_LIBVAR="PICODRIVE_LIB" + +pre_build_host() { + cp -a $(get_build_dir cyclone68000)/* ${PKG_BUILD}/cpu/cyclone/ +} + +pre_configure_host() { + # fails to build in subdirs + cd ${PKG_BUILD} + rm -rf .${HOST_NAME} +} + +make_host() { + if [ "${ARCH}" = "arm" ]; then + make -C cpu/cyclone CONFIG_FILE=../cyclone_config.h + fi +} + +pre_configure_target() { + # fails to build in subdirs + cd ${PKG_BUILD} + rm -rf .${TARGET_NAME} +} + +post_configure_target() { + sed -e "s|^GIT_VERSION :=.*$|GIT_VERSION := \" ${PKG_VERSION:0:7}\"|" -i Makefile.libretro +} + +make_target() { + if target_has_feature neon; then + export HAVE_NEON=1 + export BUILTIN_GPU=neon + else + export HAVE_NEON=0 + fi + + case ${TARGET_ARCH} in + aarch64) + R= make -f Makefile.libretro platform=aarch64 + ;; + arm) + R= make -f Makefile.libretro platform=armv + ;; + x86_64) + R= make -f Makefile.libretro + ;; + esac +} + +makeinstall_target() { + mkdir -p ${SYSROOT_PREFIX}/usr/lib/cmake/${PKG_NAME} + cp ${PKG_LIBPATH} ${SYSROOT_PREFIX}/usr/lib/${PKG_LIBNAME} + echo "set(${PKG_LIBVAR} ${SYSROOT_PREFIX}/usr/lib/${PKG_LIBNAME})" > ${SYSROOT_PREFIX}/usr/lib/cmake/${PKG_NAME}/${PKG_NAME}-config.cmake +} diff --git a/packages/mediacenter/kodi-binary-addons/game.libretro.picodrive/package.mk b/packages/mediacenter/kodi-binary-addons/game.libretro.picodrive/package.mk new file mode 100644 index 0000000000..49494e8051 --- /dev/null +++ b/packages/mediacenter/kodi-binary-addons/game.libretro.picodrive/package.mk @@ -0,0 +1,17 @@ +# SPDX-License-Identifier: GPL-2.0 +# Copyright (C) 2016-present Team LibreELEC (https://libreelec.tv) + +PKG_NAME="game.libretro.picodrive" +PKG_VERSION="1.98.0.23-Matrix" +PKG_SHA256="f05ae0f19795a2fe52795bd7ae6ff4d8dc5337285643db3a22f541135b14d6f1" +PKG_REV="1" +PKG_ARCH="any" +PKG_LICENSE="GPL" +PKG_SITE="https://github.com/kodi-game/game.libretro.picodrive" +PKG_URL="https://github.com/kodi-game/game.libretro.picodrive/archive/${PKG_VERSION}.tar.gz" +PKG_DEPENDS_TARGET="toolchain kodi-platform libretro-picodrive" +PKG_SECTION="" +PKG_LONGDESC="game.libretro.picodrive: picodrive for Kodi" + +PKG_IS_ADDON="yes" +PKG_ADDON_TYPE="kodi.gameclient"