libretro-ppsspp: update to 7f88688

This commit is contained in:
CvH 2018-07-04 14:17:23 +02:00
parent 3bfcd2607f
commit a55234904b
4 changed files with 11 additions and 182 deletions

View File

@ -17,55 +17,30 @@
################################################################################
PKG_NAME="libretro-ppsspp"
PKG_VERSION="9145287"
PKG_SHA256="e209a04cd076855e4a8e644ddb1035eda919d81adef7ed1321de5b9f2fce8881"
PKG_ARCH="any"
PKG_VERSION="7f88688"
PKG_SHA256="4e7c5c40fb16021bf99c56392d2a105c0739aa975540513dba8f6e7044e2f88a"
PKG_ARCH="x86_64"
PKG_LICENSE="GPLv2"
PKG_SITE="https://github.com/libretro/libretro-ppsspp"
PKG_SITE="https://github.com/hrydgard/ppsspp"
PKG_URL="$DISTRO_SRC/$PKG_NAME-$PKG_VERSION.tar.xz"
PKG_DEPENDS_TARGET="toolchain kodi-platform"
PKG_DEPENDS_TARGET="toolchain glew kodi-platform SDL2 zlib"
PKG_SECTION="emulation"
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_TOOLCHAIN="make"
PKG_TOOLCHAIN="cmake-make"
PKG_LIBNAME="ppsspp_libretro.so"
PKG_LIBPATH="libretro/$PKG_LIBNAME"
PKG_LIBPATH="lib/$PKG_LIBNAME"
PKG_LIBVAR="PPSSPP_LIB"
PKG_CMAKE_OPTS_TARGET="-DLIBRETRO=ON"
pre_configure_target() {
# fails to build in subdirs
cd $PKG_BUILD
rm -rf .$TARGET_NAME
LDFLAGS="$LDFLAGS -lpthread"
}
pre_make_target() {
export CFLAGS="$CFLAGS -I$SYSROOT_PREFIX/usr/include/interface/vcos/pthreads"
export CXXFLAGS="$CXXFLAGS -I$SYSROOT_PREFIX/usr/include/interface/vcos/pthreads"
}
make_target() {
if [ -z "$DEVICE" ]; then
PKG_DEVICE_NAME=$PROJECT
else
PKG_DEVICE_NAME=$DEVICE
fi
if [ "$PKG_DEVICE_NAME" = "RPi" ]; then
make -C libretro platform=${DEVICE,,}
else
case $TARGET_CPU in
arm1176jzf-s)
make -C libretro CC=$CC CXX=$CXX platform=armv6-gles-hardfloat-$TARGET_CPU
;;
cortex-a7|cortex-a9)
make -C libretro CC=$CC CXX=$CXX platform=armv7-neon-gles-hardfloat-$TARGET_CPU
;;
x86-64)
make -C libretro CC=$CC CXX=$CXX
;;
esac
fi
find . -name flags.make -exec sed -i "s:isystem :I:g" \{} \;
}
makeinstall_target() {

View File

@ -1,27 +0,0 @@
diff -Naur a/libretro/Makefile b/libretro/Makefile
--- a/libretro/Makefile 2016-05-10 10:13:03.235599098 -0700
+++ b/libretro/Makefile 2016-05-10 10:41:33.975635164 -0700
@@ -237,6 +237,23 @@
PLATCFLAGS += -DARM
LDFLAGS += -lrt -ldl
+# aarch64
+else ifneq (,$(findstring aarch64,$(platform)))
+ CC ?= gcc
+ CXX ?= g++
+ TARGET := $(TARGET_NAME)_libretro.so
+ fpic := -fPIC
+ LDFLAGS += -shared -Wl,--version-script=link.T -Wl,--no-undefined
+ FFMPEGINCFLAGS += -I$(FFMPEGDIR)/linux/$(FFMPEG_ARCH)/include
+ FFMPEGLIBDIR := $(FFMPEGDIR)/linux/$(FFMPEG_ARCH)/lib
+ FFMPEGLDFLAGS += -L$(FFMPEGLIBDIR) -lavformat -lavcodec -lavutil -lswresample -lswscale
+ INCFLAGS += -I.
+ WITH_DYNAREC=arm64
+ GLES := 1
+ GL_LIB := -lGLESv2 -lEGL
+ LDFLAGS += -lGLESv2 -lEGL
+ LDFLAGS += -lrt -ldl
+
# emscripten
else ifeq ($(platform), emscripten)
TARGET := $(TARGET_NAME)_libretro_emscripten.bc

View File

@ -1,104 +0,0 @@
diff -Naur a/ffmpeg/linux_aarch64.sh b/ffmpeg/linux_aarch64.sh
--- a/ffmpeg/linux_aarch64.sh 1969-12-31 16:00:00.000000000 -0800
+++ b/ffmpeg/linux_aarch64.sh 2016-05-10 10:27:20.971393139 -0700
@@ -0,0 +1,100 @@
+#!/bin/bash
+
+GENERAL="\
+ --enable-cross-compile \
+ --extra-libs="-lgcc" \
+ --arch=aarch64 \
+ --cc=aarch64-libreelec-linux-gnueabi-gcc \
+ --cross-prefix=aarch64-libreelec-linux-gnueabi- \
+ --nm=aarch64-libreelec-linux-gnueabi-nm"
+
+MODULES="\
+ --disable-avdevice \
+ --disable-filters \
+ --disable-programs \
+ --disable-network \
+ --disable-avfilter \
+ --disable-postproc \
+ --disable-encoders \
+ --disable-protocols \
+ --disable-hwaccels \
+ --disable-doc"
+
+VIDEO_DECODERS="\
+ --enable-decoder=h264 \
+ --enable-decoder=mpeg4 \
+ --enable-decoder=mpeg2video \
+ --enable-decoder=mjpeg \
+ --enable-decoder=mjpegb"
+
+AUDIO_DECODERS="\
+ --enable-decoder=aac \
+ --enable-decoder=aac_latm \
+ --enable-decoder=atrac3 \
+ --enable-decoder=atrac3p \
+ --enable-decoder=mp3 \
+ --enable-decoder=pcm_s16le \
+ --enable-decoder=pcm_s8"
+
+DEMUXERS="\
+ --enable-demuxer=h264 \
+ --enable-demuxer=m4v \
+ --enable-demuxer=mpegvideo \
+ --enable-demuxer=mpegps \
+ --enable-demuxer=mp3 \
+ --enable-demuxer=avi \
+ --enable-demuxer=aac \
+ --enable-demuxer=pmp \
+ --enable-demuxer=oma \
+ --enable-demuxer=pcm_s16le \
+ --enable-demuxer=pcm_s8 \
+ --enable-demuxer=wav"
+
+VIDEO_ENCODERS="\
+ --enable-encoder=huffyuv \
+ --enable-encoder=ffv1 \
+ --enable-encoder=mjpeg"
+
+AUDIO_ENCODERS="\
+ --enable-encoder=pcm_s16le"
+
+MUXERS="\
+ --enable-muxer=avi"
+
+
+PARSERS="\
+ --enable-parser=h264 \
+ --enable-parser=mpeg4video \
+ --enable-parser=mpegaudio \
+ --enable-parser=mpegvideo \
+ --enable-parser=aac \
+ --enable-parser=aac_latm"
+
+
+function build_aarch64
+{
+./configure --target-os=linux \
+ --prefix=./linux/aarch64 \
+ ${GENERAL} \
+ --extra-cflags=" -O3 -fasm -Wno-psabi -fno-short-enums -fno-strict-aliasing -finline-limit=300" \
+ --disable-shared \
+ --enable-static \
+ --enable-zlib \
+ --enable-pic \
+ --disable-everything \
+ ${MODULES} \
+ ${VIDEO_DECODERS} \
+ ${AUDIO_DECODERS} \
+ ${VIDEO_ENCODERS} \
+ ${AUDIO_ENCODERS} \
+ ${DEMUXERS} \
+ ${MUXERS} \
+ ${PARSERS} \
+ --disable-neon
+
+make clean
+make install
+}
+
+build_aarch64
+echo Linux aarch64 build finished

View File

@ -1,15 +0,0 @@
--- 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;