[arch-commits] Commit in ppsspp/repos (5 files)

Laurent Carlier lcarlier at archlinux.org
Mon Mar 13 07:44:09 UTC 2017


    Date: Monday, March 13, 2017 @ 07:44:09
  Author: lcarlier
Revision: 216031

archrelease: copy trunk to community-testing-x86_64

Added:
  ppsspp/repos/community-testing-x86_64/
  ppsspp/repos/community-testing-x86_64/PKGBUILD
    (from rev 216030, ppsspp/trunk/PKGBUILD)
  ppsspp/repos/community-testing-x86_64/ppsspp-ffmpeg.patch
    (from rev 216030, ppsspp/trunk/ppsspp-ffmpeg.patch)
  ppsspp/repos/community-testing-x86_64/ppsspp-gcc5.1.patch
    (from rev 216030, ppsspp/trunk/ppsspp-gcc5.1.patch)
  ppsspp/repos/community-testing-x86_64/ppsspp.desktop
    (from rev 216030, ppsspp/trunk/ppsspp.desktop)

---------------------+
 PKGBUILD            |   87 ++++++++++++++++++++++++
 ppsspp-ffmpeg.patch |  180 ++++++++++++++++++++++++++++++++++++++++++++++++++
 ppsspp-gcc5.1.patch |   40 +++++++++++
 ppsspp.desktop      |    9 ++
 4 files changed, 316 insertions(+)

Copied: ppsspp/repos/community-testing-x86_64/PKGBUILD (from rev 216030, ppsspp/trunk/PKGBUILD)
===================================================================
--- community-testing-x86_64/PKGBUILD	                        (rev 0)
+++ community-testing-x86_64/PKGBUILD	2017-03-13 07:44:09 UTC (rev 216031)
@@ -0,0 +1,87 @@
+# $Id$
+# Maintainer: Maxime Gauduin <alucryd at archlinux.org>
+# Contributor: Bartłomiej Piotrowski <bpiotrowski at archlinux.org>
+# Contributor: Ben Reedy <thebenj88 at gmail.com>
+# Contributor: Clement Guerin <geecko.dev at free.fr>
+# Contributor: Thiago Kenji Okada <thiago.mast3r at gmail.com>
+
+pkgbase=ppsspp
+pkgname=('ppsspp' 'ppsspp-qt')
+pkgver=1.3
+pkgrel=3
+pkgdesc='A PSP emulator written in C++'
+arch=('x86_64')
+url='http://www.ppsspp.org/'
+license=('GPL2')
+depends=('glew' 'libzip' 'sdl2')
+makedepends=('cmake' 'git' 'glu' 'qt5-tools')
+source=("git+https://github.com/hrydgard/ppsspp.git#tag=v${pkgver}"
+        'git+https://github.com/hrydgard/ppsspp-ffmpeg.git#commit=81379c5'
+        'git+https://github.com/hrydgard/ppsspp-glslang.git#commit=4b3e84f'
+        'git+https://github.com/hrydgard/ppsspp-lang.git#commit=cdf4a8d'
+        'ppsspp-armips::git+https://github.com/Kingcom/armips.git#commit=1ffab37'
+        'ppsspp.desktop')
+sha256sums=('SKIP'
+            'SKIP'
+            'SKIP'
+            'SKIP'
+            'SKIP'
+            '1c332702d0aeced07df7e12ba8530bc3f19a52bc76c355f6c84c141becfd46d8')
+
+prepare() {
+  cd ppsspp
+
+  for submodule in ffmpeg lang ext/{armips,glslang}; do
+    git submodule init ${submodule}
+    git config submodule.${submodule}.url ../ppsspp-${submodule#*/}
+    git submodule update ${submodule}
+  done
+
+  for ui in sdl qt; do
+    if [[ -d build-$ui ]]; then
+      rm -rf build-$ui
+    fi
+    mkdir build-$ui
+  done
+}
+
+build() {
+  cd ppsspp/build-sdl
+
+  cmake .. \
+    -DCMAKE_BUILD_TYPE='Release' \
+    -DCMAKE_SKIP_RPATH='TRUE'
+  make
+
+  cd ../build-qt
+
+  qmake-qt5 CONFIG+='release' QMAKE_LFLAGS+='-lz' ../Qt/PPSSPPQt.pro
+  make
+}
+
+package_ppsspp() {
+  conflicts=('ppsspp-qt')
+
+  cd ppsspp/build-sdl
+
+  install -dm 755 "${pkgdir}"/usr/{bin,share/{applications,pixmaps,ppsspp}}
+  install -m 755 PPSSPPSDL "${pkgdir}"/usr/bin/ppsspp
+  cp -dr --no-preserve='ownership' assets "${pkgdir}"/usr/share/ppsspp/
+  install -m 644 ../assets/unix-icons/icon-512.svg "${pkgdir}"/usr/share/pixmaps/ppsspp.svg
+  install -m 644 ../../ppsspp.desktop "${pkgdir}"/usr/share/applications/
+}
+
+package_ppsspp-qt() {
+  depends+=('qt5-base')
+  provides=('ppsspp')
+  conflicts=('ppsspp')
+
+  cd ppsspp/build-qt
+
+  install -dm 755 "${pkgdir}"/usr/{bin,share/{applications,pixmaps}}
+  install -m 755 ppsspp "${pkgdir}"/usr/bin/
+  install -m 644 ../assets/unix-icons/icon-512.svg "${pkgdir}"/usr/share/pixmaps/ppsspp.svg
+  install -m 644 ../../ppsspp.desktop "${pkgdir}"/usr/share/applications/
+}
+
+# vim: ts=2 sw=2 et:

Copied: ppsspp/repos/community-testing-x86_64/ppsspp-ffmpeg.patch (from rev 216030, ppsspp/trunk/ppsspp-ffmpeg.patch)
===================================================================
--- community-testing-x86_64/ppsspp-ffmpeg.patch	                        (rev 0)
+++ community-testing-x86_64/ppsspp-ffmpeg.patch	2017-03-13 07:44:09 UTC (rev 216031)
@@ -0,0 +1,180 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index a1a2543..4d19fa4 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -394,145 +394,20 @@ add_library(stb_vorbis STATIC
+ 	native/ext/stb_vorbis/stb_vorbis.h)
+ include_directories(native/ext/stb_vorbis)
+ 
+-if(USE_FFMPEG AND NOT DEFINED FFMPEG_BUILDDIR)
+-	if(ANDROID)
+-		if(ARMV7)
+-			set(PLATFORM_ARCH "android/armv7")
+-		elseif(ARM)
+-			set(PLATFORM_ARCH "android/arm")
+-		elseif(X86)
+-			set(PLATFORM_ARCH "android/x86")
+-		endif()
+-	elseif(BLACKBERRY)
+-		set(PLATFORM_ARCH "blackberry/armv7")
+-	elseif(IOS)
+-		set(PLATFORM_ARCH "ios/universal")
+-	elseif(MACOSX)
+-		set(PLATFORM_ARCH "macosx/x86_64")
+-	elseif(LINUX)
+-		if(ARMV7)
+-			set(PLATFORM_ARCH "linux/armv7")
+-		elseif(ARM)
+-			set(PLATFORM_ARCH "linux/arm")
+-		elseif(MIPS)
+-			set(PLATFORM_ARCH "linux/mips32")
+-		elseif(CMAKE_SIZEOF_VOID_P EQUAL 8)
+-			set(PLATFORM_ARCH "linux/x86_64")
+-		else()
+-			set(PLATFORM_ARCH "linux/x86")
+-		endif()
+-	endif()
+-	# Using static libraries
+-	if (DEFINED PLATFORM_ARCH)
+-		include_directories(ffmpeg/${PLATFORM_ARCH}/include)
+-		link_directories(ffmpeg/${PLATFORM_ARCH}/lib)
+-		set(FFMPEG_LIBRARIES libavformat.a libavcodec.a libavutil.a libswresample.a libswscale.a)
+-	else()
+-		# Manual definition of system library locations by the user.
+-		if (DEFINED FFMPEG_INCLUDE_PATH)
+-			include_directories(ffmpeg ${FFMPEG_INCLUDE_PATH})
+-		endif()
+-		if (DEFINED AVFORMAT_PATH)
+-			add_library(libavformat STATIC IMPORTED)
+-			set_target_properties(libavformat PROPERTIES IMPORTED_LOCATION ${AVFORMAT_PATH})
+-			SET (FFMPEG_LIBRARIES ${FFMPEG_LIBRARIES} libavformat)
+-		endif()
+-		if (DEFINED AVCODEC_PATH)
+-			add_library(libavcodec STATIC IMPORTED)
+-			set_target_properties(libavcodec PROPERTIES IMPORTED_LOCATION ${AVCODEC_PATH})
+-			SET (FFMPEG_LIBRARIES ${FFMPEG_LIBRARIES} libavcodec)
+-		endif()
+-		if (DEFINED AVUTIL_PATH)
+-			add_library(libavutil STATIC IMPORTED)
+-			set_target_properties(libavutil PROPERTIES IMPORTED_LOCATION ${AVUTIL_PATH})
+-			SET (FFMPEG_LIBRARIES ${FFMPEG_LIBRARIES} libavutil)
+-		endif()
+-		if (DEFINED SWRESAMPLE_PATH)
+-			add_library(libswresample STATIC IMPORTED)
+-			set_target_properties(libswresample PROPERTIES IMPORTED_LOCATION ${SWRESAMPLE_PATH})
+-			SET (FFMPEG_LIBRARIES ${FFMPEG_LIBRARIES} libswresample)
+-		endif()
+-		if (DEFINED SWSCALE_PATH)
+-			add_library(libswscale STATIC IMPORTED)
+-			set_target_properties(libswscale PROPERTIES IMPORTED_LOCATION ${SWSCALE_PATH})
+-			SET (FFMPEG_LIBRARIES ${FFMPEG_LIBRARIES} libswscale)
+-		endif()
+-	endif(DEFINED PLATFORM_ARCH)
+-endif(USE_FFMPEG AND NOT DEFINED FFMPEG_BUILDDIR)
+-
+ if(USE_FFMPEG)
+-	# Using shared libraries
+-	if(DEFINED FFMPEG_BUILDDIR)
+-		include_directories(ffmpeg ${FFMPEG_BUILDDIR})
+-
+-		add_library(libavformat STATIC IMPORTED)
+-		set_target_properties(libavformat PROPERTIES IMPORTED_LOCATION ${FFMPEG_BUILDDIR}/libavformat/libavformat.a)
+-		add_library(libavcodec STATIC IMPORTED)
+-		set_target_properties(libavcodec PROPERTIES IMPORTED_LOCATION ${FFMPEG_BUILDDIR}/libavcodec/libavcodec.a)
+-		add_library(libavutil STATIC IMPORTED)
+-		set_target_properties(libavutil PROPERTIES IMPORTED_LOCATION ${FFMPEG_BUILDDIR}/libavutil/libavutil.a)
+-		add_library(libswresample STATIC IMPORTED)
+-		set_target_properties(libswresample PROPERTIES IMPORTED_LOCATION ${FFMPEG_BUILDDIR}/libswresample/libswresample.a)
+-		add_library(libswscale STATIC IMPORTED)
+-		set_target_properties(libswscale PROPERTIES IMPORTED_LOCATION ${FFMPEG_BUILDDIR}/libswscale/libswscale.a)
+-
+-		SET (FFMPEG_LIBRARIES
+-			libavformat
+-			libavcodec
+-			libavutil
+-			libswresample
+-			libswscale
+-		)
+-	endif()
+-
+-	find_library(ICONV_LIBRARY NAMES iconv)
+-	if (ICONV_LIBRARY)
+-		set(FFMPEG_LIBRARIES ${FFMPEG_LIBRARIES} ${ICONV_LIBRARY})
+-	endif()
+-
+-	if(APPLE)
+-		set(FFMPEG_LIBRARIES ${FFMPEG_LIBRARIES} bz2 "-framework CoreVideo")
+-		if (NOT IOS)
+-			set(FFMPEG_LIBRARIES ${FFMPEG_LIBRARIES} "-framework VideoDecodeAcceleration")
+-		endif()
+-	endif(APPLE)
++	SET (FFMPEG_LIBRARIES
++		avformat
++		avcodec
++		avutil
++		swresample
++		swscale
++	)
+ 
+-	set(LinkCommon ${LinkCommon} ${FFMPEG_LIBRARIES})
++	set(nativeExtraLibs ${nativeExtraLibs} ${FFMPEG_LIBRARIES})
++	target_link_libraries(Common ${FFMPEG_LIBRARIES})
+ 	add_definitions(-DUSE_FFMPEG)
+ endif(USE_FFMPEG)
+ 
+-# Modification to show where we are pulling the ffmpeg libraries from.
+-if(USE_FFMPEG AND DEFINED FFMPEG_LIBRARIES)
+-	target_link_libraries(Common ${FFMPEG_LIBRARIES})
+-	message(STATUS "FFMPEG library locations:")
+-	if(DEFINED PLATFORM_ARCH)
+-		set(TEMP ${CMAKE_SOURCE_DIR}/ffmpeg/${PLATFORM_ARCH}/lib)
+-		message(STATUS "libavcodec location: ${TEMP}/libavcodec.a")
+-		message(STATUS "libavformat location: ${TEMP}/libavformat.a")
+-		message(STATUS "libavutil location: ${TEMP}/libavutil.a")
+-		message(STATUS "libswresample location: ${TEMP}/libswresample.a")
+-		message(STATUS "libswscale location: ${TEMP}/libswscale.a")
+-	else()
+-		get_target_property(TEMP libavcodec IMPORTED_LOCATION)
+-		message(STATUS "libavcodec location: ${TEMP}")
+-		get_target_property(TEMP libavformat IMPORTED_LOCATION)
+-		message(STATUS "libavformat location: ${TEMP}")
+-		get_target_property(TEMP libavutil IMPORTED_LOCATION)
+-		message(STATUS "libavutil location: ${TEMP}")
+-		get_target_property(TEMP libswresample IMPORTED_LOCATION)
+-		message(STATUS "libswresample location: ${TEMP}")
+-		get_target_property(TEMP libswscale IMPORTED_LOCATION)
+-		message(STATUS "libswscale location: ${TEMP}")
+-	endif(DEFINED PLATFORM_ARCH)
+-else()
+-	message(STATUS "ERROR: No FFMPEG library locations")
+-endif()
+-
+-if(USE_FFMPEG AND NOT DEFINED FFMPEG_LIBRARIES)
+-	message(WARNING "FFMPEG_BUILDDIR variable or manual path definition is required to enable FFmpeg. Disabling it.")
+-	unset(USE_FFMPEG)
+-endif()
+-
+ find_package(ZLIB)
+ if(ZLIB_FOUND)
+ 	include_directories(${ZLIB_INCLUDE_DIR})
+diff --git a/Core/HW/MediaEngine.h b/Core/HW/MediaEngine.h
+index c384faf..d38993d 100644
+--- a/Core/HW/MediaEngine.h
++++ b/Core/HW/MediaEngine.h
+@@ -34,9 +34,14 @@ class PointerWrap;
+ class SimpleAudio;
+ 
+ #ifdef USE_FFMPEG
++extern "C" {
++#include <libavformat/avformat.h>
++#include <libavutil/old_pix_fmts.h>
++}
++
+ struct SwsContext;
+ struct AVFrame;
+-struct AVIOContext;
++//struct AVIOContext;
+ struct AVFormatContext;
+ struct AVCodecContext;
+ #endif
+

Copied: ppsspp/repos/community-testing-x86_64/ppsspp-gcc5.1.patch (from rev 216030, ppsspp/trunk/ppsspp-gcc5.1.patch)
===================================================================
--- community-testing-x86_64/ppsspp-gcc5.1.patch	                        (rev 0)
+++ community-testing-x86_64/ppsspp-gcc5.1.patch	2017-03-13 07:44:09 UTC (rev 216031)
@@ -0,0 +1,40 @@
+diff -rupN ppsspp.orig/ext/xbrz/xbrz.cpp ppsspp/ext/xbrz/xbrz.cpp
+--- ppsspp.orig/ext/xbrz/xbrz.cpp	2015-06-01 10:48:46.841998475 +0200
++++ ppsspp/ext/xbrz/xbrz.cpp	2015-06-01 10:50:31.379058513 +0200
+@@ -616,23 +616,21 @@ void scalePixel(const Kernel_3x3& ker,
+ 		auto eq   = [&](uint32_t col1, uint32_t col2) { return ColorDistance::dist(col1, col2, cfg.luminanceWeight_) < cfg.equalColorTolerance_; };
+ 		auto dist = [&](uint32_t col1, uint32_t col2) { return ColorDistance::dist(col1, col2, cfg.luminanceWeight_); };
+ 
+-		const bool doLineBlend = [&]() -> bool
+-		{
+-			if (getBottomR(blend) >= BLEND_DOMINANT)
+-				return true;
++	bool doLineBlend;
+ 
+-			//make sure there is no second blending in an adjacent rotation for this pixel: handles insular pixels, mario eyes
+-			if (getTopR(blend) != BLEND_NONE && !eq(e, g)) //but support double-blending for 90° corners
+-				return false;
+-			if (getBottomL(blend) != BLEND_NONE && !eq(e, c))
+-				return false;
++	if (getBottomR(blend) >= BLEND_DOMINANT)
++		doLineBlend = true;
+ 
+-			//no full blending for L-shapes; blend corner only (handles "mario mushroom eyes")
+-			if (eq(g, h) &&  eq(h , i) && eq(i, f) && eq(f, c) && !eq(e, i))
+-				return false;
+-
+-			return true;
+-		}();
++	//make sure there is no second blending in an adjacent rotation for this pixel: handles insular pixels, mario eyes
++	else if (getTopR(blend) != BLEND_NONE && !eq(e, g)) //but support double-blending for 90° corners
++		doLineBlend = false;
++	else if (getBottomL(blend) != BLEND_NONE && !eq(e, c))
++	doLineBlend = false;
++	//no full blending for L-shapes; blend corner only (handles "mario mushroom eyes")
++	else if (!eq(e, i) && eq(g, h) && eq(h , i) && eq(i, f) && eq(f, c))
++		doLineBlend = false;
++	else
++		doLineBlend = true;
+ 
+ 		const uint32_t px = dist(e, f) <= dist(e, h) ? f : h; //choose most similar color
+ 

Copied: ppsspp/repos/community-testing-x86_64/ppsspp.desktop (from rev 216030, ppsspp/trunk/ppsspp.desktop)
===================================================================
--- community-testing-x86_64/ppsspp.desktop	                        (rev 0)
+++ community-testing-x86_64/ppsspp.desktop	2017-03-13 07:44:09 UTC (rev 216031)
@@ -0,0 +1,9 @@
+[Desktop Entry]
+Version=1.0
+Type=Application
+Name=PPSSPP
+GenericName=PSP Emulator
+Comment=PlayStation Portable Simulator Suitable for Playing Portably (PPSSPP)
+Exec=ppsspp %f
+Icon=ppsspp
+Categories=Game


More information about the arch-commits mailing list