mirror of
https://github.com/LibreELEC/LibreELEC.tv.git
synced 2025-07-24 11:16:51 +00:00
libretro-ppsspp: update to 7f88688
This commit is contained in:
parent
3bfcd2607f
commit
a55234904b
@ -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() {
|
||||
|
@ -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
|
@ -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
|
@ -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;
|
Loading…
x
Reference in New Issue
Block a user