From d196c480a005cd1c32b1a6a76d43fbbfa59f3812 Mon Sep 17 00:00:00 2001 From: Gerasim Troeglazov <3dEyes@gmail.com> Date: Thu, 4 Apr 2019 20:59:28 +1000 Subject: [PATCH] PPSSPP: bump version --- ...p-1.7.1.patchset => ppsspp-1.8.0.patchset} | 185 ++++++++---------- ...psspp-1.7.1.recipe => ppsspp-1.8.0.recipe} | 18 +- 2 files changed, 94 insertions(+), 109 deletions(-) rename games-emulation/ppsspp/patches/{ppsspp-1.7.1.patchset => ppsspp-1.8.0.patchset} (73%) rename games-emulation/ppsspp/{ppsspp-1.7.1.recipe => ppsspp-1.8.0.recipe} (85%) diff --git a/games-emulation/ppsspp/patches/ppsspp-1.7.1.patchset b/games-emulation/ppsspp/patches/ppsspp-1.8.0.patchset similarity index 73% rename from games-emulation/ppsspp/patches/ppsspp-1.7.1.patchset rename to games-emulation/ppsspp/patches/ppsspp-1.8.0.patchset index dbed2b11e..217c215a4 100644 --- a/games-emulation/ppsspp/patches/ppsspp-1.7.1.patchset +++ b/games-emulation/ppsspp/patches/ppsspp-1.8.0.patchset @@ -1,29 +1,24 @@ -From 9361d6cabcfab31e3490c5bb2ab5431591c0b809 Mon Sep 17 00:00:00 2001 +From abc5fcacf3d90c1d0869e3dae6094226a02ccfda Mon Sep 17 00:00:00 2001 From: Gerasim Troeglazov <3dEyes@gmail.com> -Date: Sat, 22 Sep 2018 20:20:53 +1000 +Date: Thu, 4 Apr 2019 19:44:46 +1000 Subject: Fixes for Haiku diff --git a/CMakeLists.txt b/CMakeLists.txt -index 82d3034..e6ea7dc 100644 +index 1d443e1..6ae2487 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt -@@ -88,8 +88,12 @@ if(${CMAKE_SYSTEM_NAME} MATCHES "Android") - set(ANDROID ON) +@@ -85,7 +85,7 @@ if(${CMAKE_SYSTEM_NAME} MATCHES "Android") endif() -+if(${CMAKE_SYSTEM_NAME} MATCHES "Haiku") -+ set(HAIKU ON) -+endif() -+ # We only support Vulkan on Unix, Android and Windows. -if(ANDROID OR WIN32 OR (UNIX AND NOT APPLE AND NOT ARM_NO_VULKAN)) +if(ANDROID OR WIN32 OR (UNIX AND NOT APPLE AND NOT ARM_NO_VULKAN AND NOT HAIKU)) set(VULKAN ON) endif() -@@ -137,7 +141,7 @@ option(USE_SYSTEM_LIBZIP "Dynamically link against system libzip" ${USE_SYSTEM_L - option(USE_WAYLAND_WSI "Set to ON to require Wayland support for Vulkan" ${USE_WAYLAND_WSI}) +@@ -124,7 +124,7 @@ option(USE_SYSTEM_FFMPEG "Dynamically link against system FFMPEG" ${USE_SYSTEM_F + option(USE_SYSTEM_LIBZIP "Dynamically link against system libzip" ${USE_SYSTEM_LIBZIP}) option(USE_ADDRESS_SANITIZER "Use Clang memory sanitizer" ${USE_ADDRESS_SANITIZER}) -if(UNIX AND NOT (APPLE OR ANDROID) AND VULKAN) @@ -31,16 +26,16 @@ index 82d3034..e6ea7dc 100644 if(USING_X11_VULKAN) message("Using X11 for Vulkan") add_definitions(-DVK_USE_PLATFORM_XLIB_KHR) -@@ -1770,7 +1774,7 @@ if(FFmpeg_FOUND) +@@ -1787,7 +1787,7 @@ if(FFmpeg_FOUND) endif() # Discord integration --if(NOT IOS) -+if(NOT IOS AND NOT HAIKU) - target_link_libraries(${CoreLibName} discord-rpc) +-if(USE_DISCORD AND NOT IOS) ++if(USE_DISCORD AND NOT IOS AND NOT HAIKU) + add_definitions(-DUSE_DISCORD=1) + target_link_libraries(${CoreLibName} discord-rpc) endif() - -@@ -1883,6 +1887,10 @@ set(WindowsFiles +@@ -1906,6 +1906,10 @@ set(WindowsFiles list(APPEND LinkCommon ${CoreLibName} ${CMAKE_THREAD_LIBS_INIT}) @@ -51,11 +46,67 @@ index 82d3034..e6ea7dc 100644 if(WIN32) list(APPEND LinkCommon kernel32 user32 gdi32 shell32 comctl32 dsound xinput d3d9 winmm dinput8 ole32 winspool ksuser) #setup_target_project(${TargetBin} Windows) +diff --git a/Core/Config.cpp b/Core/Config.cpp +index f1805da..c35485a 100644 +--- a/Core/Config.cpp ++++ b/Core/Config.cpp +@@ -483,7 +483,7 @@ static int DefaultRenderingMode() { + + static int DefaultInternalResolution() { + // Auto on Windows, 2x on large screens, 1x elsewhere. +-#if defined(USING_WIN_UI) ++#if defined(USING_WIN_UI) || defined(__HAIKU__) + return 0; + #else + int longestDisplaySide = std::max(System_GetPropertyInt(SYSPROP_DISPLAY_XRES), System_GetPropertyInt(SYSPROP_DISPLAY_YRES)); +@@ -612,7 +612,11 @@ static ConfigSetting graphicsSettings[] = { + ReportedConfigSetting("InternalResolution", &g_Config.iInternalResolution, &DefaultInternalResolution, true, true), + ReportedConfigSetting("AndroidHwScale", &g_Config.iAndroidHwScale, &DefaultAndroidHwScale), + ReportedConfigSetting("HighQualityDepth", &g_Config.bHighQualityDepth, true, true, true), ++#ifdef __HAIKU__ ++ ReportedConfigSetting("FrameSkip", &g_Config.iFrameSkip, 2, true, true), ++#else + ReportedConfigSetting("FrameSkip", &g_Config.iFrameSkip, 0, true, true), ++#endif + ReportedConfigSetting("FrameSkipType", &g_Config.iFrameSkipType, 0, true, true), + ReportedConfigSetting("AutoFrameSkip", &g_Config.bAutoFrameSkip, false, true, true), + ConfigSetting("FrameRate", &g_Config.iFpsLimit1, 0, true, true), +@@ -623,10 +627,17 @@ static ConfigSetting graphicsSettings[] = { + #endif + + // Most low-performance (and many high performance) mobile GPUs do not support aniso anyway so defaulting to 4 is fine. ++#ifdef __HAIKU__ ++ ConfigSetting("AnisotropyLevel", &g_Config.iAnisotropyLevel, 0, true, true), ++#else + ConfigSetting("AnisotropyLevel", &g_Config.iAnisotropyLevel, 4, true, true), +- ++#endif + ReportedConfigSetting("VertexDecCache", &g_Config.bVertexCache, &DefaultVertexCache, true, true), ++#ifdef __HAIKU__ ++ ReportedConfigSetting("TextureBackoffCache", &g_Config.bTextureBackoffCache, true, true, true), ++#else + ReportedConfigSetting("TextureBackoffCache", &g_Config.bTextureBackoffCache, false, true, true), ++#endif + ReportedConfigSetting("TextureSecondaryCache", &g_Config.bTextureSecondaryCache, false, true, true), + ReportedConfigSetting("VertexDecJit", &g_Config.bVertexDecoderJit, &DefaultCodeGen, false), + +@@ -658,7 +669,11 @@ static ConfigSetting graphicsSettings[] = { + ReportedConfigSetting("PostShader", &g_Config.sPostShaderName, "Off", true, true), + + ReportedConfigSetting("MemBlockTransferGPU", &g_Config.bBlockTransferGPU, true, true, true), ++#ifdef __HAIKU__ ++ ReportedConfigSetting("DisableSlowFramebufEffects", &g_Config.bDisableSlowFramebufEffects, true, true, true), ++#else + ReportedConfigSetting("DisableSlowFramebufEffects", &g_Config.bDisableSlowFramebufEffects, false, true, true), ++#endif + ReportedConfigSetting("FragmentTestCache", &g_Config.bFragmentTestCache, true, true, true), + + ConfigSetting("GfxDebugOutput", &g_Config.bGfxDebugOutput, false, false, false), diff --git a/SDL/SDLMain.cpp b/SDL/SDLMain.cpp -index 6dd6d22..b3be204 100644 +index 7c4ae40..dd17922 100644 --- a/SDL/SDLMain.cpp +++ b/SDL/SDLMain.cpp -@@ -128,7 +128,7 @@ void LaunchBrowser(const char *url) { +@@ -131,7 +131,7 @@ void LaunchBrowser(const char *url) { #elif defined(_WIN32) std::wstring wurl = ConvertUTF8ToWString(url); ShellExecute(NULL, L"open", wurl.c_str(), NULL, NULL, SW_SHOWNORMAL); @@ -64,7 +115,7 @@ index 6dd6d22..b3be204 100644 std::string command = std::string("open ") + url; system(command.c_str()); #else -@@ -146,7 +146,7 @@ void LaunchMarket(const char *url) { +@@ -149,7 +149,7 @@ void LaunchMarket(const char *url) { #elif defined(_WIN32) std::wstring wurl = ConvertUTF8ToWString(url); ShellExecute(NULL, L"open", wurl.c_str(), NULL, NULL, SW_SHOWNORMAL); @@ -73,7 +124,7 @@ index 6dd6d22..b3be204 100644 std::string command = std::string("open ") + url; system(command.c_str()); #else -@@ -164,7 +164,7 @@ void LaunchEmail(const char *email_address) { +@@ -167,7 +167,7 @@ void LaunchEmail(const char *email_address) { #elif defined(_WIN32) std::wstring mailto = std::wstring(L"mailto:") + ConvertUTF8ToWString(email_address); ShellExecute(NULL, L"open", mailto.c_str(), NULL, NULL, SW_SHOWNORMAL); @@ -82,7 +133,7 @@ index 6dd6d22..b3be204 100644 std::string command = std::string("open mailto:") + email_address; system(command.c_str()); #else -@@ -185,6 +185,8 @@ std::string System_GetProperty(SystemProperty prop) { +@@ -188,6 +188,8 @@ std::string System_GetProperty(SystemProperty prop) { return "SDL:Linux"; #elif __APPLE__ return "SDL:OSX"; @@ -91,7 +142,7 @@ index 6dd6d22..b3be204 100644 #else return "SDL:"; #endif -@@ -339,6 +341,23 @@ int main(int argc, char *argv[]) { +@@ -342,6 +344,23 @@ int main(int argc, char *argv[]) { } } @@ -116,97 +167,31 @@ index 6dd6d22..b3be204 100644 #if PPSSPP_PLATFORM(RPI) diff --git a/UI/NativeApp.cpp b/UI/NativeApp.cpp -index 00bf8a3..278d855 100644 +index 38e9466..e17e08c 100644 --- a/UI/NativeApp.cpp +++ b/UI/NativeApp.cpp -@@ -452,6 +452,9 @@ void NativeInit(int argc, const char *argv[], const char *savegame_dir, const ch - // most sense. - g_Config.memStickDirectory = std::string(external_dir) + "/"; - g_Config.flash0Directory = std::string(external_dir) + "/flash0/"; +@@ -475,6 +475,9 @@ void NativeInit(int argc, const char *argv[], const char *savegame_dir, const ch + g_Config.memStickDirectory = memstickDir + "/"; + } + } +#elif defined(__HAIKU__) -+ g_Config.memStickDirectory = "/boot/home/config/settings/ppsspp/"; ++ g_Config.memStickDirectory = getenv("HOME") + std::string("/config/settings/ppsspp/"); + g_Config.flash0Directory = File::GetExeDirectory() + "/assets/flash0/"; #elif defined(IOS) g_Config.memStickDirectory = user_data_path; g_Config.flash0Directory = std::string(external_dir) + "/flash0/"; diff --git a/ext/CMakeLists.txt b/ext/CMakeLists.txt -index ade6594..0c85ffa 100644 +index b259a6f..601ac45 100644 --- a/ext/CMakeLists.txt +++ b/ext/CMakeLists.txt @@ -12,6 +12,6 @@ add_subdirectory(glslang) add_subdirectory(snappy) add_subdirectory(udis86) add_subdirectory(SPIRV-Cross-build) --if(NOT IOS) -+if(NOT IOS AND NOT HAIKU) - add_subdirectory(discord-rpc-build) +-if(USE_DISCORD AND NOT IOS) ++if(USE_DISCORD AND NOT IOS AND NOT HAIKU) + add_subdirectory(discord-rpc-build) endif() -- -2.19.0 - - -From 6babd0c990ba7903b5f35032dd43808cae45390f Mon Sep 17 00:00:00 2001 -From: Gerasim Troeglazov <3dEyes@gmail.com> -Date: Sat, 22 Sep 2018 20:21:20 +1000 -Subject: Tune default settings for Haiku - - -diff --git a/Core/Config.cpp b/Core/Config.cpp -index e2fd65c..0860562 100644 ---- a/Core/Config.cpp -+++ b/Core/Config.cpp -@@ -482,7 +482,7 @@ static int DefaultRenderingMode() { - - static int DefaultInternalResolution() { - // Auto on Windows, 2x on large screens, 1x elsewhere. --#if defined(USING_WIN_UI) -+#if defined(USING_WIN_UI) || defined(__HAIKU__) - return 0; - #else - int longestDisplaySide = std::max(System_GetPropertyInt(SYSPROP_DISPLAY_XRES), System_GetPropertyInt(SYSPROP_DISPLAY_YRES)); -@@ -620,7 +620,11 @@ static ConfigSetting graphicsSettings[] = { - ReportedConfigSetting("InternalResolution", &g_Config.iInternalResolution, &DefaultInternalResolution, true, true), - ReportedConfigSetting("AndroidHwScale", &g_Config.iAndroidHwScale, &DefaultAndroidHwScale), - ReportedConfigSetting("HighQualityDepth", &g_Config.bHighQualityDepth, true, true, true), -+#ifdef __HAIKU__ -+ ReportedConfigSetting("FrameSkip", &g_Config.iFrameSkip, 2, true, true), -+#else - ReportedConfigSetting("FrameSkip", &g_Config.iFrameSkip, 0, true, true), -+#endif - ReportedConfigSetting("AutoFrameSkip", &g_Config.bAutoFrameSkip, false, true, true), - ConfigSetting("FrameRate", &g_Config.iFpsLimit1, 0, true, true), - ConfigSetting("FrameRate2", &g_Config.iFpsLimit2, -1, true, true), -@@ -631,10 +635,17 @@ static ConfigSetting graphicsSettings[] = { - ReportedConfigSetting("ForceMaxEmulatedFPS", &g_Config.iForceMaxEmulatedFPS, 60, true, true), - - // Most low-performance (and many high performance) mobile GPUs do not support aniso anyway so defaulting to 4 is fine. -+#ifdef __HAIKU__ -+ ConfigSetting("AnisotropyLevel", &g_Config.iAnisotropyLevel, 0, true, true), -+#else - ConfigSetting("AnisotropyLevel", &g_Config.iAnisotropyLevel, 4, true, true), -- -+#endif - ReportedConfigSetting("VertexDecCache", &g_Config.bVertexCache, &DefaultVertexCache, true, true), -+#ifdef __HAIKU__ -+ ReportedConfigSetting("TextureBackoffCache", &g_Config.bTextureBackoffCache, true, true, true), -+#else - ReportedConfigSetting("TextureBackoffCache", &g_Config.bTextureBackoffCache, false, true, true), -+#endif - ReportedConfigSetting("TextureSecondaryCache", &g_Config.bTextureSecondaryCache, false, true, true), - ReportedConfigSetting("VertexDecJit", &g_Config.bVertexDecoderJit, &DefaultCodeGen, false), - -@@ -668,7 +679,11 @@ static ConfigSetting graphicsSettings[] = { - ReportedConfigSetting("PostShader", &g_Config.sPostShaderName, "Off", true, true), - - ReportedConfigSetting("MemBlockTransferGPU", &g_Config.bBlockTransferGPU, true, true, true), -+#ifdef __HAIKU__ -+ ReportedConfigSetting("DisableSlowFramebufEffects", &g_Config.bDisableSlowFramebufEffects, true, true, true), -+#else - ReportedConfigSetting("DisableSlowFramebufEffects", &g_Config.bDisableSlowFramebufEffects, false, true, true), -+#endif - ReportedConfigSetting("FragmentTestCache", &g_Config.bFragmentTestCache, true, true, true), - - ConfigSetting("GfxDebugOutput", &g_Config.bGfxDebugOutput, false, false, false), --- -2.19.0 +2.19.1 diff --git a/games-emulation/ppsspp/ppsspp-1.7.1.recipe b/games-emulation/ppsspp/ppsspp-1.8.0.recipe similarity index 85% rename from games-emulation/ppsspp/ppsspp-1.7.1.recipe rename to games-emulation/ppsspp/ppsspp-1.8.0.recipe index fd2ba7ab7..0ab320eac 100644 --- a/games-emulation/ppsspp/ppsspp-1.7.1.recipe +++ b/games-emulation/ppsspp/ppsspp-1.8.0.recipe @@ -3,21 +3,21 @@ DESCRIPTION="PPSSPP is a PSP (PlayStation Portable) emulator capable of playing majority of the games made for Sony’s first portable console right on your favorite \ Android or PC device." HOMEPAGE="https://www.ppsspp.org/" -COPYRIGHT="2012-2018 PPSSPP Project" +COPYRIGHT="2012-2019 PPSSPP Project" LICENSE="GNU GPL v2" REVISION="1" SOURCE_URI="https://github.com/hrydgard/ppsspp/archive/v$portVersion.tar.gz" -CHECKSUM_SHA256="4c325d585407f65b7b4012c407e3e2f246e57e821f780c3af12aa2874356f2bd" +CHECKSUM_SHA256="a7011feb0480a352d60e6a3c939d88d4d2e3a2e76620886b183aa2cb36f910de" SOURCE_FILENAME="ppsspp-$portVersion.tar.gz" SOURCE_DIR="ppsspp-$portVersion" -srcGitRev_2="9efe3367284d2d1eeb14fc302a2c12c36e3e255e" +srcGitRev_2="7885552b208493a6a0f21663770c446c3ba65576" SOURCE_URI_2="https://github.com/Kingcom/armips/archive/$srcGitRev_2.tar.gz" -CHECKSUM_SHA256_2="73b366f30e8f3863501723e13eb5dcaf6d424b80382d17c27635567b79705ca3" +CHECKSUM_SHA256_2="f8a03906135fb6f2932b80b7ef5991f39ccac46b36ec3690776fb38c69775c3d" SOURCE_FILENAME_2="armips-$srcGitRev_2.tar.gz" SOURCE_DIR_2="armips-$srcGitRev_2" -srcGitRev_3="29619b2312f7bc862221749f3f4d37c3e6a0dee2" +srcGitRev_3="9983f99e87ab0b6608b236ea59bcf873f90e1435" SOURCE_URI_3="https://github.com/hrydgard/glslang/archive/$srcGitRev_3.tar.gz" -CHECKSUM_SHA256_3="5125620520d25f9a39c6d62dfcd3e087fd610dc5d163ddff6377365011c8b13f" +CHECKSUM_SHA256_3="ea5c3ca101b9635508052e0f52966303e8fc94edf564ecfd0fda147b74625c9a" SOURCE_FILENAME_3="glslang-$srcGitRev_3.tar.gz" SOURCE_DIR_3="glslang-$srcGitRev_3" srcGitRev_4="be7425ef70231ab82930331959ab487d605d0482" @@ -25,9 +25,9 @@ SOURCE_URI_4="https://github.com/KhronosGroup/SPIRV-Cross/archive/$srcGitRev_4.t CHECKSUM_SHA256_4="21afa0e32dd2d75ee51c4f5c0d16330a9d80d435d6ac9900d0c13bffdfd7b682" SOURCE_FILENAME_4="SPIRV-Cross-$srcGitRev_4.tar.gz" SOURCE_DIR_4="SPIRV-Cross-$srcGitRev_4" -srcGitRev_5="f60be494a43a49fd7ff61603e132c1e24c160d88" +srcGitRev_5="18e0d460e187556e9510e2e9b5ae85fa435cefd9" SOURCE_URI_5="https://github.com/hrydgard/ppsspp-lang/archive/$srcGitRev_5.tar.gz" -CHECKSUM_SHA256_5="ac11b688f4fd35b730736af252829ae61bce2b409c7462f487c6c888157e749b" +CHECKSUM_SHA256_5="3d313170bb387d466e2bf267b23dd5689174355537f728b42a99f9ea77af0d37" SOURCE_FILENAME_5="ppsspp-lang-$srcGitRev_5.tar.gz" SOURCE_DIR_5="ppsspp-lang-$srcGitRev_5" PATCHES="ppsspp-$portVersion.patchset" @@ -101,7 +101,7 @@ INSTALL() local APP_SIGNATURE="application/x-vnd.ppsspp" local MAJOR="`echo "$portVersion" | cut -d. -f1`" local MIDDLE="`echo "$portVersion" | cut -d. -f2`" - local MINOR="`echo "$portVersion" | cut -d. -f3 | cut -d~ -f1`" + local MINOR="`echo "$portVersion" | cut -d. -f3`" local LONG_INFO="$SUMMARY" sed \ -e "s|@APP_SIGNATURE@|$APP_SIGNATURE|" \