From 733194d3d3e4c43a81ec63e1fc04a93563ee45ad Mon Sep 17 00:00:00 2001 From: KOPRajs Date: Tue, 20 Jul 2021 16:00:04 +0200 Subject: [PATCH 1/3] libretro-picodrive: revert PicoDrive removal --- .../emulation/libretro-picodrive/package.mk | 55 +++++++++++++++++++ .../game.libretro.picodrive/package.mk | 17 ++++++ 2 files changed, 72 insertions(+) create mode 100644 packages/emulation/libretro-picodrive/package.mk create mode 100644 packages/mediacenter/kodi-binary-addons/game.libretro.picodrive/package.mk diff --git a/packages/emulation/libretro-picodrive/package.mk b/packages/emulation/libretro-picodrive/package.mk new file mode 100644 index 0000000000..8a2ccab618 --- /dev/null +++ b/packages/emulation/libretro-picodrive/package.mk @@ -0,0 +1,55 @@ +# SPDX-License-Identifier: GPL-2.0 +# Copyright (C) 2016-present Team LibreELEC (https://libreelec.tv) + +PKG_NAME="libretro-picodrive" +PKG_VERSION="67cdfb8c5d407c5a4e8f25ffa0ee7fac716b0690" +PKG_SHA256="39871c4c5d2af833a4ae56ef83cfe21102edc563b728f00c56d50de9857cbf1e" +PKG_LICENSE="MAME" +PKG_SITE="https://github.com/libretro/picodrive" +PKG_URL="https://github.com/libretro/picodrive/archive/${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() { + R= make -f Makefile.libretro +} + +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..e2c5d3bac8 --- /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.96.0.16-Matrix" +PKG_SHA256="b3d30cfb97a377ebb29041b053dda363b0a7d921f2a5e8fc9cbb510ea3b0249d" +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" From ebf722ebc4d9e4e2f5ea2dba5f0c41ac4e7853b2 Mon Sep 17 00:00:00 2001 From: KOPRajs Date: Tue, 20 Jul 2021 16:00:04 +0200 Subject: [PATCH 2/3] libretro-picodrive: update version and fix the package source URL --- packages/emulation/libretro-picodrive/package.mk | 8 ++++---- .../kodi-binary-addons/game.libretro.picodrive/package.mk | 4 ++-- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/packages/emulation/libretro-picodrive/package.mk b/packages/emulation/libretro-picodrive/package.mk index 8a2ccab618..395cc22bb8 100644 --- a/packages/emulation/libretro-picodrive/package.mk +++ b/packages/emulation/libretro-picodrive/package.mk @@ -2,11 +2,11 @@ # Copyright (C) 2016-present Team LibreELEC (https://libreelec.tv) PKG_NAME="libretro-picodrive" -PKG_VERSION="67cdfb8c5d407c5a4e8f25ffa0ee7fac716b0690" -PKG_SHA256="39871c4c5d2af833a4ae56ef83cfe21102edc563b728f00c56d50de9857cbf1e" +PKG_VERSION="3620f75d20e43abd2f9d793a7c0824c764c3860b" +PKG_SHA256="cff60412dbdad246cbe8bb6673679b5b0b15f93c9cd4434bc2bb1c56aa5ec551" PKG_LICENSE="MAME" -PKG_SITE="https://github.com/libretro/picodrive" -PKG_URL="https://github.com/libretro/picodrive/archive/${PKG_VERSION}.tar.gz" +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" diff --git a/packages/mediacenter/kodi-binary-addons/game.libretro.picodrive/package.mk b/packages/mediacenter/kodi-binary-addons/game.libretro.picodrive/package.mk index e2c5d3bac8..49494e8051 100644 --- a/packages/mediacenter/kodi-binary-addons/game.libretro.picodrive/package.mk +++ b/packages/mediacenter/kodi-binary-addons/game.libretro.picodrive/package.mk @@ -2,8 +2,8 @@ # Copyright (C) 2016-present Team LibreELEC (https://libreelec.tv) PKG_NAME="game.libretro.picodrive" -PKG_VERSION="1.96.0.16-Matrix" -PKG_SHA256="b3d30cfb97a377ebb29041b053dda363b0a7d921f2a5e8fc9cbb510ea3b0249d" +PKG_VERSION="1.98.0.23-Matrix" +PKG_SHA256="f05ae0f19795a2fe52795bd7ae6ff4d8dc5337285643db3a22f541135b14d6f1" PKG_REV="1" PKG_ARCH="any" PKG_LICENSE="GPL" From ae4fc1c6a9e460db3be5df8ef7790b0f3f27fd79 Mon Sep 17 00:00:00 2001 From: KOPRajs Date: Mon, 26 Jul 2021 12:00:04 +0200 Subject: [PATCH 3/3] libretro-picodrive: fix ARM build --- .../emulation/libretro-picodrive/package.mk | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/packages/emulation/libretro-picodrive/package.mk b/packages/emulation/libretro-picodrive/package.mk index 395cc22bb8..64aeafb35b 100644 --- a/packages/emulation/libretro-picodrive/package.mk +++ b/packages/emulation/libretro-picodrive/package.mk @@ -45,7 +45,24 @@ post_configure_target() { } make_target() { - R= make -f Makefile.libretro + 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() {