Merge pull request #2141 from CGarces/remove_device_hardcodes

emulation: Replace DEVICE and PROJECT variables with TARGET_CPU
This commit is contained in:
CvH 2018-02-08 00:25:44 +01:00 committed by GitHub
commit 661795de8f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
10 changed files with 144 additions and 169 deletions

View File

@ -34,28 +34,21 @@ PKG_LIBPATH="$PKG_LIBNAME"
PKG_LIBVAR="BEETLE-PCFX_LIB" PKG_LIBVAR="BEETLE-PCFX_LIB"
make_target() { make_target() {
case $PROJECT in case $TARGET_CPU in
RPi) arm1176jzf-s)
case $DEVICE in make platform=armv6-hardfloat
RPi)
make platform=armv6-hardfloat
;;
RPi2)
make platform=armv7-neon-hardfloat
;;
esac
;; ;;
imx6) cortex-a7)
make platform=armv7-cortexa9-neon-hardfloat make platform=armv7-neon-hardfloat
;; ;;
WeTek_Play|WeTek_Core|Odroid_C2|WeTek_Hub|WeTek_Play_2) cortex-a9|cortex-a53|cortex-a17)
if [ "$TARGET_ARCH" = "aarch64" ]; then if [ "$TARGET_ARCH" = "aarch64" ]; then
make platform=aarch64 make platform=aarch64
else else
make platform=armv7-cortexa9-neon-hardfloat make platform=armv7-cortexa9-neon-hardfloat
fi fi
;; ;;
Generic) x86-64)
make make
;; ;;
esac esac

View File

@ -40,30 +40,29 @@ pre_configure_target() {
} }
make_target() { make_target() {
case $PROJECT in
RPi) if [ -z "$DEVICE" ]; then
case $DEVICE in PKG_DEVICE_NAME=$PROJECT
RPi) else
make -f Makefile.libretro platform=rpi PKG_DEVICE_NAME=$DEVICE
;; fi
RPi2)
make -f Makefile.libretro platform=rpi2 case $PKG_DEVICE_NAME in
;; RPi|RPi2)
esac make -f Makefile.libretro platform=${PKG_DEVICE_NAME,,}
;;
imx6)
make -f Makefile.libretro platform=imx6
;;
WeTek_Play|WeTek_Core|Odroid_C2|WeTek_Hub|WeTek_Play_2)
if [ "$TARGET_ARCH" = "aarch64" ]; then
make -f Makefile.libretro platform=aarch64
else
make -f Makefile.libretro platform=armv7-neon-gles-cortex-a9
fi
;; ;;
Generic) Generic)
make -f Makefile.libretro make -f Makefile.libretro
;; ;;
*)
if [ "$TARGET_CPU" = "cortex-a9" ] || [ "$TARGET_CPU" = "cortex-a53" ] || [ "$TARGET_CPU" = "cortex-a17" ]; then
if [ "$TARGET_ARCH" = "aarch64" ]; then
make -f Makefile.libretro platform=aarch64
else
make -f Makefile.libretro platform=armv7-neon-gles-cortex-a9
fi
fi
;;
esac esac
} }

View File

@ -17,42 +17,33 @@
################################################################################ ################################################################################
PKG_NAME="libretro-desmume" PKG_NAME="libretro-desmume"
PKG_VERSION="1dd58e4" PKG_VERSION="9464582"
PKG_SHA256="0cc647defbbfbe0995e4dfe825e5bf67345ad1f9d8e7e29cdb94c32032c490c4" PKG_SHA256="706af70135e1a33845d1b24163b9ab496f61219c958598d90d2283f6b4ee79b9"
PKG_ARCH="any" PKG_ARCH="any"
PKG_LICENSE="GPLv2" PKG_LICENSE="GPLv2"
PKG_SITE="https://github.com/libretro/desmume-libretro" PKG_SITE="https://github.com/libretro/desmume"
PKG_URL="https://github.com/libretro/desmume-libretro/archive/$PKG_VERSION.tar.gz" PKG_URL="https://github.com/libretro/desmume/archive/$PKG_VERSION.tar.gz"
PKG_SOURCE_DIR="desmume-libretro-$PKG_VERSION*" PKG_SOURCE_DIR="desmume-$PKG_VERSION*"
PKG_DEPENDS_TARGET="toolchain kodi-platform" PKG_DEPENDS_TARGET="toolchain kodi-platform"
PKG_SECTION="emulation" PKG_SECTION="emulation"
PKG_SHORTDESC="libretro wrapper for desmume NDS emulator." PKG_SHORTDESC="libretro wrapper for desmume NDS emulator."
PKG_LONGDESC="libretro wrapper for desmume NDS emulator." PKG_LONGDESC="libretro wrapper for desmume NDS emulator."
PKG_TOOLCHAIN="make"
PKG_LIBNAME="desmume_libretro.so" PKG_LIBNAME="desmume_libretro.so"
PKG_LIBPATH="$PKG_LIBNAME" PKG_LIBPATH="desmume/$PKG_LIBNAME"
PKG_LIBVAR="DESMUME_LIB" PKG_LIBVAR="DESMUME_LIB"
make_target() { make_target() {
case $PROJECT in case $TARGET_CPU in
RPi) arm1176jzf-s)
case $DEVICE in make -C desmume -f Makefile.libretro platform=armv6-hardfloat-$TARGET_CPU
RPi)
make -f Makefile.libretro platform=armv6-hardfloat-arm1176jzf-s
;;
RPi2)
make -f Makefile.libretro platform=armv7-neon-hardfloat-cortex-a7
;;
esac
;; ;;
imx6) cortex-a7|cortex-a9)
make -f Makefile.libretro platform=armv7-neon-hardfloat-cortex-a9 make -C desmume -f Makefile.libretro platform=armv7-neon-hardfloat-$TARGET_CPU
;; ;;
WeTek_Play|WeTek_Core) x86-64)
make -f Makefile.libretro platform=armv7-neon-hardfloat-cortex-a9 make -C desmume -f Makefile.libretro
;;
Generic)
make -f Makefile.libretro
;; ;;
esac esac
} }

View File

@ -41,28 +41,21 @@ pre_make_target() {
} }
make_target() { make_target() {
case $PROJECT in case $TARGET_CPU in
RPi) arm1176jzf-s)
case $DEVICE in make platform=armv6-hardfloat-$TARGET_CPU
RPi)
make platform=armv6-hardfloat-arm1176jzf-s
;;
RPi2)
make platform=armv7-neon-hardfloat-cortex-a7
;;
esac
;; ;;
imx6) cortex-a7|cortex-a9)
make platform=armv7-neon-hardfloat-cortex-a9 make platform=armv7-neon-hardfloat-$TARGET_CPU
;; ;;
WeTek_Play|WeTek_Core|Odroid_C2|WeTek_Hub|WeTek_Play_2) cortex-a53|cortex-a17)
if [ "$TARGET_ARCH" = "aarch64" ]; then if [ "$TARGET_ARCH" = "aarch64" ]; then
make platform=aarch64 make platform=aarch64
else else
make platform=armv7-neon-hardfloat-cortex-a9 make platform=armv7-neon-hardfloat-cortex-a9
fi fi
;; ;;
Generic) x86-64)
make make
;; ;;
esac esac

View File

@ -41,28 +41,21 @@ pre_make_target() {
} }
make_target() { make_target() {
case $PROJECT in case $TARGET_CPU in
RPi) arm1176jzf-s)
case $DEVICE in make platform=armv6-hardfloat-$TARGET_CPU
RPi)
make platform=armv6-hardfloat-arm1176jzf-s
;;
RPi2)
make platform=armv7-neon-hardfloat-cortex-a7
;;
esac
;; ;;
imx6) cortex-a7|cortex-a9)
make platform=armv7-neon-hardfloat-cortex-a9 make platform=armv7-neon-hardfloat-$TARGET_CPU
;; ;;
WeTek_Play|WeTek_Core|Odroid_C2|WeTek_Hub|WeTek_Play_2) cortex-a53|cortex-a17)
if [ "$TARGET_ARCH" = "aarch64" ]; then if [ "$TARGET_ARCH" = "aarch64" ]; then
make platform=aarch64 make platform=aarch64
else else
make platform=armv7-neon-hardfloat-cortex-a9 make platform=armv7-neon-hardfloat-cortex-a9
fi fi
;; ;;
Generic) x86-64)
make make
;; ;;
esac esac

View File

@ -34,30 +34,33 @@ PKG_LIBPATH="$PKG_LIBNAME"
PKG_LIBVAR="MUPEN64PLUS_LIB" PKG_LIBVAR="MUPEN64PLUS_LIB"
make_target() { make_target() {
case $PROJECT in
RPi) if target_has_feature neon; then
case $DEVICE in export HAVE_NEON=1
RPi) fi
make platform=rpi
;; if [ -z "$DEVICE" ]; then
RPi2) PKG_DEVICE_NAME=$PROJECT
make platform=rpi2 else
;; PKG_DEVICE_NAME=$DEVICE
esac fi
;;
imx6) case $PKG_DEVICE_NAME in
make platform=imx6 RPi|RPi2)
;; make platform=${PKG_DEVICE_NAME,,}
WeTek_Play|WeTek_Core|Odroid_C2|WeTek_Hub|WeTek_Play_2)
if [ "$TARGET_ARCH" = "aarch64" ]; then
make platform=aarch64
else
make platform=armv7-neon-gles-cortex-a9
fi
;; ;;
Generic) Generic)
make WITH_DYNAREC=x86_64 make WITH_DYNAREC=x86_64
;; ;;
*)
if [ "$TARGET_CPU" = "cortex-a9" ] || [ "$TARGET_CPU" = "cortex-a53" ] || [ "$TARGET_CPU" = "cortex-a17" ]; then
if [ "$TARGET_ARCH" = "aarch64" ]; then
make platform=aarch64
else
make platform=linux-gles FORCE_GLES=1 WITH_DYNAREC=arm
fi
fi
;;
esac esac
} }

View File

@ -40,28 +40,21 @@ pre_make_target() {
make_target() { make_target() {
cd $PKG_BUILD cd $PKG_BUILD
case $PROJECT in
RPi) if target_has_feature neon; then
case $DEVICE in export HAVE_NEON=1
RPi) else
make -f Makefile.libretro platform=armv6-hardfloat-arm1176jzf-s export HAVE_NEON=0
;; fi
RPi2)
make -f Makefile.libretro platform=armv7-neon-hardfloat-cortex-a7 case $TARGET_ARCH in
;; aarch64)
esac make -f Makefile.libretro platform=aarch64
;; ;;
imx6) arm)
make -f Makefile.libretro platform=armv7-neon-hardfloat-cortex-a9 make -f Makefile.libretro USE_DYNAREC=1
;; ;;
WeTek_Play|WeTek_Core|Odroid_C2|WeTek_Hub|WeTek_Play_2) x86-64)
if [ "$TARGET_ARCH" = "aarch64" ]; then
make -f Makefile.libretro platform=aarch64
else
make -f Makefile.libretro platform=armv7-neon-hardfloat-cortex-a9
fi
;;
Generic)
make -f Makefile.libretro make -f Makefile.libretro
;; ;;
esac esac

View File

@ -17,8 +17,8 @@
################################################################################ ################################################################################
PKG_NAME="libretro-ppsspp" PKG_NAME="libretro-ppsspp"
PKG_VERSION="9145287" PKG_VERSION="5f7bcf7"
PKG_SHA256="e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" PKG_SHA256="09e61300c05705b1f98e1b575e44d366e5a243cc3be97b3a09ad420581459f87"
PKG_ARCH="any" PKG_ARCH="any"
PKG_LICENSE="GPLv2" PKG_LICENSE="GPLv2"
PKG_SITE="https://github.com/libretro/libretro-ppsspp" PKG_SITE="https://github.com/libretro/libretro-ppsspp"
@ -27,6 +27,7 @@ PKG_DEPENDS_TARGET="toolchain kodi-platform"
PKG_SECTION="emulation" PKG_SECTION="emulation"
PKG_SHORTDESC="A PSP emulator for Android, Windows, Mac, Linux and Blackberry 10, written in C++." PKG_SHORTDESC="A PSP emulator for Android, Windows, Mac, Linux and Blackberry 10, written in C++."
PKG_LONGDESC="A PSP emulator for Android, Windows, Mac, Linux and Blackberry 10, written in C++." PKG_LONGDESC="A PSP emulator for Android, Windows, Mac, Linux and Blackberry 10, written in C++."
PKG_TOOLCHAIN="make"
PKG_LIBNAME="ppsspp_libretro.so" PKG_LIBNAME="ppsspp_libretro.so"
PKG_LIBPATH="libretro/$PKG_LIBNAME" PKG_LIBPATH="libretro/$PKG_LIBNAME"
@ -45,27 +46,27 @@ pre_make_target() {
} }
make_target() { make_target() {
case $PROJECT in if [ -z "$DEVICE" ]; then
RPi) PKG_DEVICE_NAME=$PROJECT
case $DEVICE in else
RPi) PKG_DEVICE_NAME=$DEVICE
make -C libretro platform=armv6-gles-hardfloat-arm1176jzf-s fi
;;
RPi2) if [ "$PKG_DEVICE_NAME" = "RPi" ]; then
make -C libretro platform=armv7-neon-gles-hardfloat-cortex-a7 make -C libretro platform=${DEVICE,,}
;; else
esac case $TARGET_CPU in
;; arm1176jzf-s)
imx6) make -C libretro CC=$CC CXX=$CXX platform=armv6-gles-hardfloat-$TARGET_CPU
make -C libretro platform=armv7-neon-gles-hardfloat-cortex-a9 ;;
;; cortex-a7|cortex-a9)
WeTek_Play|WeTek_Core) make -C libretro CC=$CC CXX=$CXX platform=armv7-neon-gles-hardfloat-$TARGET_CPU
make -C libretro platform=armv7-neon-gles-hardfloat-cortex-a9 ;;
;; x86-64)
Generic) make -C libretro CC=$CC CXX=$CXX
make -C libretro ;;
;; esac
esac fi
} }
makeinstall_target() { makeinstall_target() {

View File

@ -0,0 +1,15 @@
--- a/Core/HLE/sceMpeg.cpp
+++ b/Core/HLE/sceMpeg.cpp
@@ -768,10 +768,10 @@
// GE_CMODE_16BIT_ABGR5551 <--> AV_PIX_FMT_BGR555LE;
// GE_CMODE_16BIT_ABGR4444 <--> AV_PIX_FMT_BGR444LE;
// GE_CMODE_32BIT_ABGR8888 <--> AV_PIX_FMT_RGBA;
- pmp_want_pix_fmt = PIX_FMT_RGBA;
+ pmp_want_pix_fmt = AV_PIX_FMT_RGBA;
// Create H264 video codec
- AVCodec * pmp_Codec = avcodec_find_decoder(CODEC_ID_H264);
+ AVCodec * pmp_Codec = avcodec_find_decoder(AV_CODEC_ID_H264);
if (pmp_Codec == NULL){
ERROR_LOG(ME, "Can not find H264 codec, please update ffmpeg");
return false;

View File

@ -34,27 +34,21 @@ PKG_LIBPATH="$PKG_LIBNAME"
PKG_LIBVAR="REICAST_LIB" PKG_LIBVAR="REICAST_LIB"
make_target() { make_target() {
case $PROJECT in if [ "$DEVICE" = "RPi2" ]; then
RPi) make platform=${DEVICE,,}
case $DEVICE in else
RPi) case $TARGET_CPU in
make platform=armv6-hardfloat-arm1176jzf-s arm1176jzf-s)
;; make platform=arm FORCE_GLES=1
RPi2) ;;
make platform=rpi2 cortex-a7|cortex-a9)
;; make platform=armv7-neon-hardfloat-$TARGET_CPU FORCE_GLES=1
esac ;;
;; x86-64)
imx6) make
make platform=armv7-neon-hardfloat-cortex-a9 ;;
;; esac
WeTek_Play|WeTek_Core) fi
make platform=armv7-neon-hardfloat-cortex-a9
;;
Generic)
make
;;
esac
} }
makeinstall_target() { makeinstall_target() {