diff --git a/.SRCINFO b/.SRCINFO index cc43a3f..7304171 100644 --- a/.SRCINFO +++ b/.SRCINFO @@ -1,23 +1,21 @@ # Generated by mksrcinfo v8 -# Tue Apr 4 18:57:43 UTC 2017 +# Wed Apr 5 21:34:33 UTC 2017 pkgbase = ppsspp-git pkgdesc = A PSP emulator written in C++ - pkgver = 1.4.r37.e99f1c00f + pkgver = 1.4.r48.f66e54c4c pkgrel = 1 url = http://www.ppsspp.org/ - arch = i686 arch = x86_64 license = GPL2 makedepends = cmake makedepends = git makedepends = glu - makedepends = qt5-multimedia + makedepends = libzip makedepends = qt5-tools depends = gcc-libs depends = glew depends = glibc depends = libgl - depends = libzip depends = sdl2 depends = zlib source = git+https://github.com/hrydgard/ppsspp.git @@ -27,7 +25,12 @@ pkgbase = ppsspp-git source = git+https://github.com/Kingcom/armips.git source = armips-tinyformat::git+https://github.com/Kingcom/tinyformat.git source = git+https://github.com/KhronosGroup/SPIRV-Cross.git + source = ppsspp.sh + source = ppsspp-headless.sh + source = ppsspp-qt.sh source = ppsspp.desktop + source = ppsspp-qt.desktop + source = ppsspp-flags.patch sha256sums = SKIP sha256sums = SKIP sha256sums = SKIP @@ -35,25 +38,42 @@ pkgbase = ppsspp-git sha256sums = SKIP sha256sums = SKIP sha256sums = SKIP + sha256sums = e479cc5f6b998807ecea1793551cd9f080fe136243cd1d5212eb70e389e48eb0 + sha256sums = 86b1748137d7c05f7e6da11f148b36aa2c64e25f432de1220b47cf17baa53175 + sha256sums = b9c1c638f13c41c9ddaf818fea3349cf14841aade2287d086f1e2c96584e99ea sha256sums = 1c332702d0aeced07df7e12ba8530bc3f19a52bc76c355f6c84c141becfd46d8 + sha256sums = b3b1fb9e0ecd3c4472b51f27d028a69514b1a3823c26e33da6ffaebfb1522b7f + sha256sums = 6694643d96dae673f01555637139468eb277f3379afbcceccad3f7e0ae670278 pkgname = ppsspp-git + depends = gcc-libs + depends = glew + depends = glibc + depends = libgl + depends = sdl2 + depends = zlib + depends = hicolor-icon-theme + depends = libzip provides = ppsspp conflicts = ppsspp conflicts = ppsspp-qt conflicts = ppsspp-qt-git +pkgname = ppsspp-headless-git + provides = ppsspp-headless + conflicts = ppsspp-headless + pkgname = ppsspp-qt-git depends = gcc-libs depends = glew depends = glibc depends = libgl - depends = libzip depends = sdl2 depends = zlib + depends = hicolor-icon-theme + depends = libzip depends = qt5-base - depends = qt5-multimedia - provides = ppsspp + provides = ppsspp-qt conflicts = ppsspp conflicts = ppsspp-git conflicts = ppsspp-qt diff --git a/PKGBUILD b/PKGBUILD index fba0170..c0f019d 100644 --- a/PKGBUILD +++ b/PKGBUILD @@ -6,15 +6,15 @@ # Contributor: uberushaximus pkgbase=ppsspp-git -pkgname=('ppsspp-git' 'ppsspp-qt-git') -pkgver=1.4.r37.e99f1c00f +pkgname=('ppsspp-git' 'ppsspp-headless-git' 'ppsspp-qt-git') +pkgver=1.4.r48.f66e54c4c pkgrel=1 pkgdesc='A PSP emulator written in C++' -arch=('i686' 'x86_64') +arch=('x86_64') url='http://www.ppsspp.org/' license=('GPL2') -depends=('gcc-libs' 'glew' 'glibc' 'libgl' 'libzip' 'sdl2' 'zlib') -makedepends=('cmake' 'git' 'glu' 'qt5-multimedia' 'qt5-tools') +depends=('gcc-libs' 'glew' 'glibc' 'libgl' 'sdl2' 'zlib') +makedepends=('cmake' 'git' 'glu' 'libzip' 'qt5-tools') source=('git+https://github.com/hrydgard/ppsspp.git' 'ppsspp-ffmpeg::git+https://github.com/hrydgard/ppsspp-ffmpeg.git' 'ppsspp-glslang::git+https://github.com/hrydgard/glslang.git' @@ -22,7 +22,12 @@ source=('git+https://github.com/hrydgard/ppsspp.git' 'git+https://github.com/Kingcom/armips.git' 'armips-tinyformat::git+https://github.com/Kingcom/tinyformat.git' 'git+https://github.com/KhronosGroup/SPIRV-Cross.git' - 'ppsspp.desktop') + 'ppsspp.sh' + 'ppsspp-headless.sh' + 'ppsspp-qt.sh' + 'ppsspp.desktop' + 'ppsspp-qt.desktop' + 'ppsspp-flags.patch') sha256sums=('SKIP' 'SKIP' 'SKIP' @@ -30,7 +35,12 @@ sha256sums=('SKIP' 'SKIP' 'SKIP' 'SKIP' - '1c332702d0aeced07df7e12ba8530bc3f19a52bc76c355f6c84c141becfd46d8') + 'e479cc5f6b998807ecea1793551cd9f080fe136243cd1d5212eb70e389e48eb0' + '86b1748137d7c05f7e6da11f148b36aa2c64e25f432de1220b47cf17baa53175' + 'b9c1c638f13c41c9ddaf818fea3349cf14841aade2287d086f1e2c96584e99ea' + '1c332702d0aeced07df7e12ba8530bc3f19a52bc76c355f6c84c141becfd46d8' + 'b3b1fb9e0ecd3c4472b51f27d028a69514b1a3823c26e33da6ffaebfb1522b7f' + '6694643d96dae673f01555637139468eb277f3379afbcceccad3f7e0ae670278') pkgver() { cd ppsspp @@ -41,6 +51,8 @@ pkgver() { prepare() { cd ppsspp + patch -Np1 -i ../ppsspp-flags.patch + for submodule in ffmpeg assets/lang ext/glslang; do git submodule init ${submodule} git config submodule.${submodule}.url ../ppsspp-${submodule#*/} @@ -75,7 +87,8 @@ build() { cmake .. \ -DCMAKE_BUILD_TYPE='Release' \ - -DCMAKE_SKIP_RPATH='ON' + -DCMAKE_SKIP_RPATH='ON' \ + -DHEADLESS='ON' make cd ../build-qt @@ -88,32 +101,46 @@ build() { } package_ppsspp-git() { + depends+=('hicolor-icon-theme' 'libzip') provides=('ppsspp') conflicts=('ppsspp' 'ppsspp-qt' 'ppsspp-qt-git') cd ppsspp/build-sdl - install -dm 755 "${pkgdir}"/usr/{bin,share/{applications,icons,man/man1,pixmaps,ppsspp}} - install -m 755 PPSSPPSDL "${pkgdir}"/usr/bin/ppsspp - cp -dr --no-preserve='ownership' assets "${pkgdir}"/usr/share/ppsspp/ + install -dm 755 "${pkgdir}"/{opt/ppsspp,usr/{bin,share/{applications,icons,pixmaps}}} + install -m 755 PPSSPPSDL "${pkgdir}"/opt/ppsspp/ + cp -dr --no-preserve='ownership' assets "${pkgdir}"/opt/ppsspp/ cp -dr --no-preserve='ownership' ../icons/hicolor "${pkgdir}"/usr/share/icons/ install -m 644 ../icons/icon-512.svg "${pkgdir}"/usr/share/pixmaps/ppsspp.svg + install -m 755 ../../ppsspp.sh "${pkgdir}"/usr/bin/ppsspp install -m 644 ../../ppsspp.desktop "${pkgdir}"/usr/share/applications/ } +package_ppsspp-headless-git() { + provides=('ppsspp-headless') + conflicts=('ppsspp-headless') + + cd ppsspp/build-sdl + + install -dm 755 "${pkgdir}"/{opt/ppsspp,usr/bin} + install -m 755 PPSSPPHeadless "${pkgdir}"/opt/ppsspp/ + install -m 755 ../../ppsspp-headless.sh "${pkgdir}"/usr/bin/ppsspp-headless +} + package_ppsspp-qt-git() { - depends+=('qt5-base' 'qt5-multimedia') - provides=('ppsspp') + depends+=('hicolor-icon-theme' 'libzip' 'qt5-base') + provides=('ppsspp-qt') conflicts=('ppsspp' 'ppsspp-git' 'ppsspp-qt') cd ppsspp/build-qt - install -dm 755 "${pkgdir}"/usr/{bin,share/{applications,man/man1,pixmaps}} - install -m 755 PPSSPPQt "${pkgdir}"/usr/bin/ppsspp - cp -dr --no-preserve='ownership' assets "${pkgdir}"/usr/share/ppsspp/ + install -dm 755 "${pkgdir}"/{opt/ppsspp,usr/{bin,share/{applications,icons,pixmaps}}} + install -m 755 PPSSPPQt "${pkgdir}"/opt/ppsspp/ + cp -dr --no-preserve='ownership' assets "${pkgdir}"/opt/ppsspp/ cp -dr --no-preserve='ownership' ../icons/hicolor "${pkgdir}"/usr/share/icons/ install -m 644 ../icons/icon-512.svg "${pkgdir}"/usr/share/pixmaps/ppsspp.svg - install -m 644 ../../ppsspp.desktop "${pkgdir}"/usr/share/applications/ + install -m 755 ../../ppsspp-qt.sh "${pkgdir}"/usr/bin/ppsspp-qt + install -m 644 ../../ppsspp-qt.desktop "${pkgdir}"/usr/share/applications/ } # vim ts=2 sw=2 et: diff --git a/ppsspp-flags.patch b/ppsspp-flags.patch new file mode 100644 index 0000000..5aa492f --- /dev/null +++ b/ppsspp-flags.patch @@ -0,0 +1,33 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 19038c88a436..bf50f5cf52fb 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -195,11 +195,11 @@ if(NOT MSVC) + + set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -g -D_DEBUG") + set(CMAKE_CXX_FLAGS_MINSIZEREL "${CMAKE_CXX_FLAGS_MINSIZEREL} -Os -D_NDEBUG") +- set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -O3 -D_NDEBUG") ++ set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -O2 -D_NDEBUG") + set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} -O2 -g -D_NDEBUG") + set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -g -D_DEBUG") + set(CMAKE_C_FLAGS_MINSIZEREL "${CMAKE_C_FLAGS_MINSIZEREL} -Os -D_NDEBUG") +- set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -O3 -D_NDEBUG") ++ set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -O2 -D_NDEBUG") + set(CMAKE_C_FLAGS_RELWITHDEBINFO "${CMAKE_C_FLAGS_RELWITHDEBINFO} -O2 -g -D_NDEBUG") + #TODO: Remove this and include the file properly everywhere it makes sense + # First step is too use the macros everywhere +@@ -509,10 +509,10 @@ include_directories(ext/cityhash) + + if (NOT MSVC) + # These can be fast even for debug. +- set_target_properties(udis86 PROPERTIES COMPILE_FLAGS "-O3") +- set_target_properties(cityhash PROPERTIES COMPILE_FLAGS "-O3") ++ set_target_properties(udis86 PROPERTIES COMPILE_FLAGS "-O2") ++ set_target_properties(cityhash PROPERTIES COMPILE_FLAGS "-O2") + if(NOT ZLIB_FOUND) +- set_target_properties(zlib PROPERTIES COMPILE_FLAGS "-O3") ++ set_target_properties(zlib PROPERTIES COMPILE_FLAGS "-O2") + endif() + endif() + + diff --git a/ppsspp-headless.sh b/ppsspp-headless.sh new file mode 100644 index 0000000..b4d3d7d --- /dev/null +++ b/ppsspp-headless.sh @@ -0,0 +1,4 @@ +#!/bin/sh + +cd /opt/ppsspp +exec ./PPSSPPHeadless diff --git a/ppsspp-qt.desktop b/ppsspp-qt.desktop new file mode 100644 index 0000000..adbe5ca --- /dev/null +++ b/ppsspp-qt.desktop @@ -0,0 +1,9 @@ +[Desktop Entry] +Version=1.0 +Type=Application +Name=PPSSPP (Qt) +GenericName=PSP Emulator +Comment=PlayStation Portable Simulator Suitable for Playing Portably (PPSSPP) +Exec=ppsspp-qt %f +Icon=ppsspp +Categories=Game diff --git a/ppsspp-qt.sh b/ppsspp-qt.sh new file mode 100644 index 0000000..5da3c6a --- /dev/null +++ b/ppsspp-qt.sh @@ -0,0 +1,4 @@ +#!/bin/sh + +cd /opt/ppsspp +exec ./PPSSPPQt diff --git a/ppsspp.sh b/ppsspp.sh new file mode 100644 index 0000000..673c05a --- /dev/null +++ b/ppsspp.sh @@ -0,0 +1,4 @@ +#!/bin/sh + +cd /opt/ppsspp +exec ./PPSSPPSDL