mirror of
https://github.com/yann64/haikuports.git
synced 2026-03-19 01:46:00 +01:00
dolphin_emu: bump version
stays disabled, crash in GL code
This commit is contained in:
152
games-emulation/dolphin_emu/dolphin_emu-2412.recipe
Normal file
152
games-emulation/dolphin_emu/dolphin_emu-2412.recipe
Normal file
@@ -0,0 +1,152 @@
|
||||
SUMMARY="A GameCube and Wii emulator"
|
||||
DESCRIPTION="Dolphin is an emulator for two recent Nintendo video game consoles: the \
|
||||
GameCube and the Wii. It allows PC gamers to enjoy games for these two consoles in \
|
||||
full HD (1080p) with several enhancements: compatibility with all PC controllers, \
|
||||
turbo speed, networked multiplayer, and even more!"
|
||||
HOMEPAGE="https://dolphin-emu.org/"
|
||||
COPYRIGHT="2020 Dolphin Emulator Project"
|
||||
LICENSE="GNU GPL v2"
|
||||
REVISION="1"
|
||||
SOURCE_URI="git+https://github.com/dolphin-emu/dolphin.git#tag=$portVersion"
|
||||
CHECKSUM_SHA256="e67600ab50dbe26fb4cdf621ba80488cd8cac73df1e3efe3d89c5c20d8d9e290"
|
||||
SOURCE_DIR="dolphin-$portVersion"
|
||||
PATCHES="dolphin_emu-$portVersion.patchset"
|
||||
SOURCE_URI_2="git+https://github.com/mozilla/cubeb.git#commit=54217bc"
|
||||
CHECKSUM_SHA256_2="70edb5c0f5ff2c3653be498bd9a0b07384bff43eeff3916829a12f2c61fc8e00"
|
||||
SOURCE_URI_3="git+https://github.com/epezent/implot.git#commit=cc5e1da"
|
||||
CHECKSUM_SHA256_3="5e303f14f146dc6240be42bb85cf7f0a3ae143bf2f7fdc44152d29ab08d8dda1"
|
||||
SOURCE_URI_4="git+https://github.com/mgba-emu/mgba.git#commit=8739b22"
|
||||
CHECKSUM_SHA256_4="57783b17701e5a160a1c3c2fb513a3d80d665a0a6332ec55076a2d7ecd730c52"
|
||||
SOURCE_URI_5="git+https://github.com/zlib-ng/zlib-ng.git#commit=ce01b1e"
|
||||
CHECKSUM_SHA256_5="3b3e97dfb54ebed427c2c34fa7fe292ca8d9e0d34de76df0a260a723dff0d193"
|
||||
SOURCE_URI_6="git+https://github.com/zlib-ng/minizip-ng.git#commit=3eed562"
|
||||
CHECKSUM_SHA256_6="72bfcd8e46361a1d6c0c43b701260f41661a2f60b6bf6b23f8ea75db32d8f16c"
|
||||
SOURCE_URI_7="git+https://github.com/RetroAchievements/rcheevos.git#commit=d54cf8f"
|
||||
CHECKSUM_SHA256_7="f3833d2440b453bc8277076200e1984fa2d19952b3095a847d9d952623066284"
|
||||
SOURCE_URI_8="git+https://github.com/syoyo/tinygltf.git#commit=c5641f2"
|
||||
CHECKSUM_SHA256_8="a0748212304f0b77de962ee8704bacf9cc71f4f0c36cbbf1a1b1e8dda837ab96"
|
||||
SOURCE_URI_9="git+https://github.com/arsenm/sanitizers-cmake.git#commit=aab6948"
|
||||
CHECKSUM_SHA256_9="a24b426203153fe25c9678a0ed2335293eec40e4a922a81d61fe0b60987573bc"
|
||||
|
||||
ADDITIONAL_FILES="dolphin_emu.rdef.in"
|
||||
|
||||
ARCHITECTURES="?x86_64 !x86_gcc2"
|
||||
|
||||
PROVIDES="
|
||||
dolphin_emu = $portVersion
|
||||
app:Dolphin = $portVersion
|
||||
"
|
||||
REQUIRES="
|
||||
haiku
|
||||
lib:libavcodec
|
||||
lib:libavformat
|
||||
lib:libavutil
|
||||
lib:libbz2
|
||||
lib:libcurl
|
||||
lib:libenet
|
||||
lib:libfmt
|
||||
lib:libGL
|
||||
lib:libiconv
|
||||
lib:liblzma
|
||||
lib:liblzo2
|
||||
lib:liblz4
|
||||
lib:libmbedtls
|
||||
lib:libmbedx509
|
||||
lib:libminiupnpc
|
||||
lib:libQt6Core
|
||||
lib:libQt6DBus
|
||||
lib:libQt6Widgets
|
||||
lib:libpugixml
|
||||
lib:libsdl2_2.0
|
||||
lib:libspng
|
||||
lib:libswresample
|
||||
lib:libswscale
|
||||
lib:libusb_1.0
|
||||
lib:libxxhash
|
||||
lib:libzstd
|
||||
"
|
||||
|
||||
BUILD_REQUIRES="
|
||||
haiku_devel
|
||||
devel:libavcodec
|
||||
devel:libavformat
|
||||
devel:libavutil
|
||||
devel:libbz2
|
||||
devel:libcurl
|
||||
devel:libenet$secondaryArchSuffix
|
||||
devel:libfmt$secondaryArchSuffix >= 11
|
||||
devel:libiconv
|
||||
devel:libGL
|
||||
devel:liblz4
|
||||
devel:liblzo2
|
||||
devel:liblzma
|
||||
devel:libmbedtls$secondaryArchSuffix
|
||||
devel:libminiupnpc
|
||||
devel:libpugixml
|
||||
devel:libQt6Core
|
||||
devel:libQt6Svg
|
||||
devel:libQt6Widgets
|
||||
devel:libsdl2_2.0
|
||||
devel:libspng
|
||||
devel:libswscale
|
||||
devel:libusb_1.0
|
||||
devel:libxxhash$secondaryArchSuffix
|
||||
devel:libzstd
|
||||
"
|
||||
BUILD_PREREQUIRES="
|
||||
cmd:cmake
|
||||
cmd:gcc
|
||||
cmd:ld
|
||||
cmd:ninja
|
||||
cmd:msgfmt$secondaryArchSuffix
|
||||
cmd:pkg_config
|
||||
"
|
||||
|
||||
BUILD()
|
||||
{
|
||||
rmdir Externals/cubeb/cubeb && ln -srf $sourceDir2 Externals/cubeb/cubeb || true
|
||||
rmdir Externals/implot/implot && ln -srf $sourceDir3 Externals/implot/implot || true
|
||||
rmdir Externals/mGBA/mgba && ln -srf $sourceDir4 Externals/mGBA/mgba || true
|
||||
rmdir Externals/zlib-ng/zlib-ng && ln -srf $sourceDir5 Externals/zlib-ng/zlib-ng || true
|
||||
rmdir Externals/minizip-ng/minizip-ng && ln -srf $sourceDir6 Externals/minizip-ng/minizip-ng || true
|
||||
rmdir Externals/rcheevos/rcheevos && ln -srf $sourceDir7 Externals/rcheevos/rcheevos || true
|
||||
rmdir Externals/tinygltf/tinygltf && ln -srf $sourceDir8 Externals/tinygltf/tinygltf || true
|
||||
rmdir Externals/cubeb/cubeb/cmake/sanitizers-cmake && ln -srf $sourceDir9 Externals/cubeb/cubeb/cmake/sanitizers-cmake || true
|
||||
cmake -Bbuild -S. \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-GNinja \
|
||||
-DCMAKE_INSTALL_PREFIX=$appsDir/Dolphin/ \
|
||||
-DCMAKE_INSTALL_BINDIR=$appsDir/Dolphin/ \
|
||||
-DDOLPHIN_WC_DESCRIBE="$portVersion" \
|
||||
-DENABLE_VULKAN=OFF \
|
||||
-DENABLE_NOGUI=OFF \
|
||||
-DENABLE_AUTOUPDATE=OFF \
|
||||
-DENABLE_ANALYTICS=OFF \
|
||||
-DENABLE_TESTS=OFF \
|
||||
-Wno-dev
|
||||
|
||||
cmake --build build $jobArgs
|
||||
}
|
||||
|
||||
INSTALL()
|
||||
{
|
||||
cmake --install build
|
||||
mv $appsDir/Dolphin/dolphin-emu $appsDir/Dolphin/Dolphin
|
||||
|
||||
local APP_SIGNATURE="application/x-vnd.dolphin"
|
||||
local MAJOR="`echo "$portVersion" | cut -d. -f1`"
|
||||
local MIDDLE="`echo "$portVersion" | cut -d. -f2`"
|
||||
local MINOR="`echo "$portVersion" | cut -d. -f3`"
|
||||
local LONG_INFO="$SUMMARY"
|
||||
sed \
|
||||
-e "s|@APP_SIGNATURE@|$APP_SIGNATURE|" \
|
||||
-e "s|@MAJOR@|$MAJOR|" \
|
||||
-e "s|@MIDDLE@|$MIDDLE|" \
|
||||
-e "s|@MINOR@|$MINOR|" \
|
||||
-e "s|@LONG_INFO@|$LONG_INFO|" \
|
||||
$portDir/additional-files/dolphin_emu.rdef.in > dolphin_emu.rdef
|
||||
|
||||
addResourcesToBinaries dolphin_emu.rdef $appsDir/Dolphin/Dolphin
|
||||
|
||||
addAppDeskbarSymlink $appsDir/Dolphin/Dolphin Dolphin
|
||||
}
|
||||
@@ -1,109 +0,0 @@
|
||||
SUMMARY="A GameCube and Wii emulator"
|
||||
DESCRIPTION="Dolphin is an emulator for two recent Nintendo video game consoles: the \
|
||||
GameCube and the Wii. It allows PC gamers to enjoy games for these two consoles in \
|
||||
full HD (1080p) with several enhancements: compatibility with all PC controllers, \
|
||||
turbo speed, networked multiplayer, and even more!"
|
||||
HOMEPAGE="https://dolphin-emu.org/"
|
||||
COPYRIGHT="2020 Dolphin Emulator Project"
|
||||
LICENSE="GNU GPL v2"
|
||||
REVISION="5"
|
||||
gitRevision="a34823df61df65168aa40ef5e82e44defd4a0138"
|
||||
SOURCE_URI="https://github.com/dolphin-emu/dolphin/archive/$gitRevision.tar.gz"
|
||||
CHECKSUM_SHA256="f2fcdcd26e8156b15adc0bc031fdaae3ff29bee59f46376ad57d7165b3c1f0c9"
|
||||
SOURCE_DIR="dolphin-$gitRevision"
|
||||
PATCHES="dolphin_emu-$portVersion.patchset"
|
||||
ADDITIONAL_FILES="dolphin_emu.rdef.in"
|
||||
|
||||
ARCHITECTURES="?all !x86_gcc2 !x86"
|
||||
|
||||
PROVIDES="
|
||||
dolphin_emu = $portVersion
|
||||
app:Dolphin = $portVersion
|
||||
"
|
||||
REQUIRES="
|
||||
haiku
|
||||
lib:libavcodec
|
||||
lib:libavformat
|
||||
lib:libavutil
|
||||
lib:libbz2
|
||||
lib:libcubeb
|
||||
lib:libcurl
|
||||
lib:libGL
|
||||
lib:libiconv
|
||||
lib:liblzma
|
||||
lib:libminiupnpc
|
||||
lib:libopenal
|
||||
lib:libpng16
|
||||
lib:libQt5Core
|
||||
lib:libQt5Widgets
|
||||
lib:libsdl_1.2
|
||||
lib:libswscale
|
||||
lib:libusb_1.0
|
||||
lib:libz
|
||||
"
|
||||
|
||||
BUILD_REQUIRES="
|
||||
haiku_devel
|
||||
devel:libavcodec
|
||||
devel:libavformat
|
||||
devel:libavutil
|
||||
devel:libbz2
|
||||
devel:libcubeb
|
||||
devel:libcurl
|
||||
devel:libGL
|
||||
devel:liblzma
|
||||
devel:libminiupnpc
|
||||
devel:libopenal
|
||||
devel:libpng16
|
||||
devel:libQt5Core
|
||||
devel:libQt5Widgets
|
||||
devel:libsdl_1.2
|
||||
devel:libswscale
|
||||
devel:libusb_1.0
|
||||
devel:libz
|
||||
"
|
||||
BUILD_PREREQUIRES="
|
||||
cmd:cmake
|
||||
cmd:gcc
|
||||
cmd:ld
|
||||
cmd:lrelease >= 5
|
||||
cmd:ninja
|
||||
cmd:pkg_config
|
||||
"
|
||||
|
||||
BUILD()
|
||||
{
|
||||
cmake . \
|
||||
-GNinja \
|
||||
-DCMAKE_INSTALL_PREFIX=$appsDir/Dolphin/ \
|
||||
-DCMAKE_INSTALL_BINDIR=$appsDir/Dolphin/ \
|
||||
-DDOLPHIN_WC_DESCRIBE="$portVersion" \
|
||||
-DENABLE_VULKAN=OFF \
|
||||
-DENABLE_NOGUI=OFF
|
||||
|
||||
ninja $jobArgs
|
||||
}
|
||||
|
||||
INSTALL()
|
||||
{
|
||||
ninja install
|
||||
mv $appsDir/Dolphin/bin/dolphin-emu $appsDir/Dolphin/Dolphin
|
||||
rm -rf $appsDir/Dolphin/bin
|
||||
|
||||
local APP_SIGNATURE="application/x-vnd.dolphin"
|
||||
local MAJOR="`echo "$portVersion" | cut -d. -f1`"
|
||||
local MIDDLE="`echo "$portVersion" | cut -d. -f2`"
|
||||
local MINOR="`echo "$portVersion" | cut -d. -f3`"
|
||||
local LONG_INFO="$SUMMARY"
|
||||
sed \
|
||||
-e "s|@APP_SIGNATURE@|$APP_SIGNATURE|" \
|
||||
-e "s|@MAJOR@|$MAJOR|" \
|
||||
-e "s|@MIDDLE@|$MIDDLE|" \
|
||||
-e "s|@MINOR@|$MINOR|" \
|
||||
-e "s|@LONG_INFO@|$LONG_INFO|" \
|
||||
$portDir/additional-files/dolphin_emu.rdef.in > dolphin_emu.rdef
|
||||
|
||||
addResourcesToBinaries dolphin_emu.rdef $appsDir/Dolphin/Dolphin
|
||||
|
||||
addAppDeskbarSymlink $appsDir/Dolphin/Dolphin Dolphin
|
||||
}
|
||||
294
games-emulation/dolphin_emu/patches/dolphin_emu-2412.patchset
Normal file
294
games-emulation/dolphin_emu/patches/dolphin_emu-2412.patchset
Normal file
@@ -0,0 +1,294 @@
|
||||
From bc20c7f7d98d5a8ae8f362267ebb7907d0e69405 Mon Sep 17 00:00:00 2001
|
||||
From: Gerasim Troeglazov <3dEyes@gmail.com>
|
||||
Date: Wed, 23 Dec 2020 14:30:54 +1000
|
||||
Subject: applying patch dolphin-5.0.13178.patch
|
||||
|
||||
|
||||
diff --git a/Source/Core/Core/HW/EXI/EXI_DeviceEthernet.h b/Source/Core/Core/HW/EXI/EXI_DeviceEthernet.h
|
||||
index e432056..9e8fdd6 100644
|
||||
--- a/Source/Core/Core/HW/EXI/EXI_DeviceEthernet.h
|
||||
+++ b/Source/Core/Core/HW/EXI/EXI_DeviceEthernet.h
|
||||
@@ -347,7 +347,7 @@ private:
|
||||
|
||||
protected:
|
||||
#if defined(WIN32) || defined(__linux__) || defined(__APPLE__) || defined(__FreeBSD__) || \
|
||||
- defined(__OpenBSD__)
|
||||
+ defined(__OpenBSD__) || defined(__HAIKU__)
|
||||
std::thread readThread;
|
||||
Common::Flag readEnabled;
|
||||
Common::Flag readThreadShutdown;
|
||||
--
|
||||
2.45.2
|
||||
|
||||
|
||||
From 6e5de969acb8d51423919a1b5d49585f0fa71d88 Mon Sep 17 00:00:00 2001
|
||||
From: Gerasim Troeglazov <3dEyes@gmail.com>
|
||||
Date: Wed, 23 Dec 2020 14:43:33 +1000
|
||||
Subject: Add haiku platform for SFML
|
||||
|
||||
|
||||
diff --git a/Externals/SFML/include/SFML/Config.hpp b/Externals/SFML/include/SFML/Config.hpp
|
||||
index aae5f54..4ea7e52 100644
|
||||
--- a/Externals/SFML/include/SFML/Config.hpp
|
||||
+++ b/Externals/SFML/include/SFML/Config.hpp
|
||||
@@ -75,11 +75,11 @@
|
||||
|
||||
// Android
|
||||
#define SFML_SYSTEM_ANDROID
|
||||
-
|
||||
+
|
||||
#elif defined(__linux__)
|
||||
|
||||
// Linux
|
||||
- #define SFML_SYSTEM_LINUX
|
||||
+ #define SFML_SYSTEM_LINUXs
|
||||
|
||||
#elif defined(__FreeBSD__) || defined(__FreeBSD_kernel__)
|
||||
|
||||
@@ -98,6 +98,10 @@
|
||||
|
||||
#endif
|
||||
|
||||
+#elif defined(__HAIKU__)
|
||||
+
|
||||
+ // Haiku
|
||||
+ #define SFML_SYSTEM_HAIKU
|
||||
#else
|
||||
|
||||
// Unsupported system
|
||||
--
|
||||
2.45.2
|
||||
|
||||
|
||||
From bded2601b503eba5f39666e84cc2f8aee8630125 Mon Sep 17 00:00:00 2001
|
||||
From: Gerasim Troeglazov <3dEyes@gmail.com>
|
||||
Date: Wed, 23 Dec 2020 14:43:58 +1000
|
||||
Subject: Fix build miniupnpc
|
||||
|
||||
|
||||
diff --git a/Externals/miniupnpc/src/minissdpc.c b/Externals/miniupnpc/src/minissdpc.c
|
||||
index 235175c..10942cd 100644
|
||||
--- a/Externals/miniupnpc/src/minissdpc.c
|
||||
+++ b/Externals/miniupnpc/src/minissdpc.c
|
||||
@@ -63,7 +63,7 @@ struct sockaddr_un {
|
||||
#define PRINT_SOCKET_ERROR(x) perror(x)
|
||||
#endif
|
||||
|
||||
-#if !defined(__DragonFly__) && !defined(__OpenBSD__) && !defined(__NetBSD__) && !defined(__APPLE__) && !defined(_WIN32) && !defined(__CYGWIN__) && !defined(__sun) && !defined(__GNU__) && !defined(__FreeBSD_kernel__)
|
||||
+#if !defined(__HAIKU__) && !defined(__DragonFly__) && !defined(__OpenBSD__) && !defined(__NetBSD__) && !defined(__APPLE__) && !defined(_WIN32) && !defined(__CYGWIN__) && !defined(__sun) && !defined(__GNU__) && !defined(__FreeBSD_kernel__)
|
||||
#define HAS_IP_MREQN
|
||||
#endif
|
||||
|
||||
diff --git a/Externals/miniupnpc/src/portlistingparse.c b/Externals/miniupnpc/src/portlistingparse.c
|
||||
index 0e09278..ed6165d 100644
|
||||
--- a/Externals/miniupnpc/src/portlistingparse.c
|
||||
+++ b/Externals/miniupnpc/src/portlistingparse.c
|
||||
@@ -31,7 +31,7 @@ static const struct {
|
||||
|
||||
/* Helper function */
|
||||
static UNSIGNED_INTEGER
|
||||
-atoui(const char * p, int l)
|
||||
+atoui2(const char * p, int l)
|
||||
{
|
||||
UNSIGNED_INTEGER r = 0;
|
||||
while(l > 0 && *p)
|
||||
@@ -107,7 +107,7 @@ data(void * d, const char * data, int l)
|
||||
pm->remoteHost[l] = '\0';
|
||||
break;
|
||||
case NewExternalPort:
|
||||
- pm->externalPort = (unsigned short)atoui(data, l);
|
||||
+ pm->externalPort = (unsigned short)atoui2(data, l);
|
||||
break;
|
||||
case NewProtocol:
|
||||
if(l > 3)
|
||||
@@ -116,21 +116,21 @@ data(void * d, const char * data, int l)
|
||||
pm->protocol[l] = '\0';
|
||||
break;
|
||||
case NewInternalPort:
|
||||
- pm->internalPort = (unsigned short)atoui(data, l);
|
||||
+ pm->internalPort = (unsigned short)atoui2(data, l);
|
||||
break;
|
||||
case NewInternalClient:
|
||||
memcpy(pm->internalClient, data, l);
|
||||
pm->internalClient[l] = '\0';
|
||||
break;
|
||||
case NewEnabled:
|
||||
- pm->enabled = (unsigned char)atoui(data, l);
|
||||
+ pm->enabled = (unsigned char)atoui2(data, l);
|
||||
break;
|
||||
case NewDescription:
|
||||
memcpy(pm->description, data, l);
|
||||
pm->description[l] = '\0';
|
||||
break;
|
||||
case NewLeaseTime:
|
||||
- pm->leaseTime = atoui(data, l);
|
||||
+ pm->leaseTime = atoui2(data, l);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
--
|
||||
2.45.2
|
||||
|
||||
|
||||
From d06a517757f14848440a6b2934303c3935c976c3 Mon Sep 17 00:00:00 2001
|
||||
From: Gerasim Troeglazov <3dEyes@gmail.com>
|
||||
Date: Wed, 23 Dec 2020 15:22:09 +1000
|
||||
Subject: Disable SetLocale for Haiku
|
||||
|
||||
|
||||
diff --git a/Source/Core/UICommon/UICommon.cpp b/Source/Core/UICommon/UICommon.cpp
|
||||
index e4f79a6..cdf8942 100644
|
||||
--- a/Source/Core/UICommon/UICommon.cpp
|
||||
+++ b/Source/Core/UICommon/UICommon.cpp
|
||||
@@ -190,6 +190,7 @@ void ShutdownControllers()
|
||||
|
||||
void SetLocale(std::string locale_name)
|
||||
{
|
||||
+#ifndef __HAIKU__
|
||||
auto set_locale = [](const std::string& locale) {
|
||||
#ifdef __linux__
|
||||
std::string adjusted_locale = locale;
|
||||
@@ -243,6 +244,7 @@ void SetLocale(std::string locale_name)
|
||||
|
||||
// If none of the locales tried above are supported, we just keep using whatever locale is set
|
||||
// (which is the classic locale by default).
|
||||
+#endif
|
||||
}
|
||||
|
||||
void CreateDirectories()
|
||||
--
|
||||
2.45.2
|
||||
|
||||
|
||||
From 2dfeb05bce365d4d7d36bfb620a62e3d662a6f4c Mon Sep 17 00:00:00 2001
|
||||
From: Ferdinand Bachmann <ferdinand.bachmann@yrlf.at>
|
||||
Date: Sat, 4 Jan 2025 18:45:32 +0100
|
||||
Subject: BBA/HLE: Fix incorrect fmt format string
|
||||
|
||||
|
||||
diff --git a/Source/Core/Core/HW/EXI/BBA/BuiltIn.cpp b/Source/Core/Core/HW/EXI/BBA/BuiltIn.cpp
|
||||
index 8e9248f..f1c0a5f 100644
|
||||
--- a/Source/Core/Core/HW/EXI/BBA/BuiltIn.cpp
|
||||
+++ b/Source/Core/Core/HW/EXI/BBA/BuiltIn.cpp
|
||||
@@ -686,7 +686,7 @@ bool CEXIETHERNET::BuiltInBBAInterface::SendFrame(const u8* frame, u32 size)
|
||||
}
|
||||
|
||||
default:
|
||||
- ERROR_LOG_FMT(SP1, "Unsupported EtherType {#06x}", *ethertype);
|
||||
+ ERROR_LOG_FMT(SP1, "Unsupported EtherType {:#06x}", *ethertype);
|
||||
return false;
|
||||
}
|
||||
|
||||
--
|
||||
2.45.2
|
||||
|
||||
|
||||
From 3e0c63d49650be0e438f56034217de210048cb3a Mon Sep 17 00:00:00 2001
|
||||
From: Ferdinand Bachmann <ferdinand.bachmann@yrlf.at>
|
||||
Date: Sat, 4 Jan 2025 18:46:04 +0100
|
||||
Subject: Common: Fix compile failure with fmt>=11
|
||||
|
||||
|
||||
diff --git a/Source/Core/Common/Logging/Log.h b/Source/Core/Common/Logging/Log.h
|
||||
index a13e9fe..4b40297 100644
|
||||
--- a/Source/Core/Common/Logging/Log.h
|
||||
+++ b/Source/Core/Common/Logging/Log.h
|
||||
@@ -99,7 +99,13 @@ void GenericLogFmt(LogLevel level, LogType type, const char* file, int line, con
|
||||
static_assert(NumFields == sizeof...(args),
|
||||
"Unexpected number of replacement fields in format string; did you pass too few or "
|
||||
"too many arguments?");
|
||||
- GenericLogFmtImpl(level, type, file, line, format, fmt::make_format_args(args...));
|
||||
+
|
||||
+#if FMT_VERSION >= 110000
|
||||
+ auto&& format_str = fmt::format_string<Args...>(format);
|
||||
+#else
|
||||
+ auto&& format_str = format;
|
||||
+#endif
|
||||
+ GenericLogFmtImpl(level, type, file, line, format_str, fmt::make_format_args(args...));
|
||||
}
|
||||
} // namespace Common::Log
|
||||
|
||||
diff --git a/Source/Core/Common/MsgHandler.h b/Source/Core/Common/MsgHandler.h
|
||||
index 23f8e90..0220c78 100644
|
||||
--- a/Source/Core/Common/MsgHandler.h
|
||||
+++ b/Source/Core/Common/MsgHandler.h
|
||||
@@ -41,12 +41,17 @@ bool MsgAlertFmt(bool yes_no, MsgType style, Common::Log::LogType log_type, cons
|
||||
static_assert(NumFields == sizeof...(args),
|
||||
"Unexpected number of replacement fields in format string; did you pass too few or "
|
||||
"too many arguments?");
|
||||
-#if FMT_VERSION >= 90000
|
||||
+#if FMT_VERSION >= 110000
|
||||
+ static_assert(std::is_base_of_v<fmt::detail::compile_string, S>);
|
||||
+ auto&& format_str = fmt::format_string<Args...>(format);
|
||||
+#elif FMT_VERSION >= 90000
|
||||
static_assert(fmt::detail::is_compile_string<S>::value);
|
||||
+ auto&& format_str = format;
|
||||
#else
|
||||
static_assert(fmt::is_compile_string<S>::value);
|
||||
+ auto&& format_str = format;
|
||||
#endif
|
||||
- return MsgAlertFmtImpl(yes_no, style, log_type, file, line, format,
|
||||
+ return MsgAlertFmtImpl(yes_no, style, log_type, file, line, format_str,
|
||||
fmt::make_format_args(args...));
|
||||
}
|
||||
|
||||
@@ -60,7 +65,9 @@ bool MsgAlertFmtT(bool yes_no, MsgType style, Common::Log::LogType log_type, con
|
||||
static_assert(NumFields == sizeof...(args),
|
||||
"Unexpected number of replacement fields in format string; did you pass too few or "
|
||||
"too many arguments?");
|
||||
-#if FMT_VERSION >= 90000
|
||||
+#if FMT_VERSION >= 110000
|
||||
+ static_assert(std::is_base_of_v<fmt::detail::compile_string, S>);
|
||||
+#elif FMT_VERSION >= 90000
|
||||
static_assert(fmt::detail::is_compile_string<S>::value);
|
||||
#else
|
||||
static_assert(fmt::is_compile_string<S>::value);
|
||||
--
|
||||
2.45.2
|
||||
|
||||
|
||||
From 461708b6456d6b3b61a531c7d6c3c0a6a1fb7683 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?J=C3=A9r=C3=B4me=20Duval?= <jerome.duval@gmail.com>
|
||||
Date: Sat, 25 Jan 2025 17:44:12 +0100
|
||||
Subject: hidapi not present on Haiku
|
||||
|
||||
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 3495e3b..0612acf 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -727,7 +727,7 @@ else()
|
||||
add_subdirectory(Externals/libiconv-1.14 EXCLUDE_FROM_ALL)
|
||||
endif()
|
||||
|
||||
-if(NOT ANDROID)
|
||||
+if(NOT ANDROID AND NOT HAIKU)
|
||||
dolphin_find_optional_system_library(HIDAPI Externals/hidapi)
|
||||
endif()
|
||||
|
||||
--
|
||||
2.45.2
|
||||
|
||||
|
||||
From 0a4d0a2c8081e5a0753fe58e10b2deb5b6284152 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?J=C3=A9r=C3=B4me=20Duval?= <jerome.duval@gmail.com>
|
||||
Date: Sun, 26 Jan 2025 11:29:50 +0100
|
||||
Subject: traversal_server links with libnetwork on Haiku
|
||||
|
||||
|
||||
diff --git a/Source/Core/Common/CMakeLists.txt b/Source/Core/Common/CMakeLists.txt
|
||||
index 81431e5..051f2d2 100644
|
||||
--- a/Source/Core/Common/CMakeLists.txt
|
||||
+++ b/Source/Core/Common/CMakeLists.txt
|
||||
@@ -210,7 +210,7 @@ elseif (ANDROID)
|
||||
androidcommon
|
||||
)
|
||||
elseif(HAIKU)
|
||||
- target_link_libraries(common PRIVATE be GL)
|
||||
+ target_link_libraries(common PRIVATE be GL network)
|
||||
endif()
|
||||
|
||||
if(ANDROID)
|
||||
--
|
||||
2.45.2
|
||||
|
||||
@@ -1,447 +0,0 @@
|
||||
From d22595086216d3c145e1c0c876ccdf70a50fe6ed Mon Sep 17 00:00:00 2001
|
||||
From: Gerasim Troeglazov <3dEyes@gmail.com>
|
||||
Date: Wed, 23 Dec 2020 14:30:54 +1000
|
||||
Subject: applying patch dolphin-5.0.13178.patch
|
||||
|
||||
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index b01b90f..0685107 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -20,7 +20,7 @@ set(DISTRIBUTOR "None" CACHE STRING "Name of the distributor.")
|
||||
if(UNIX AND NOT APPLE AND NOT ANDROID)
|
||||
option(ENABLE_X11 "Enables X11 Support" ON)
|
||||
endif()
|
||||
-if(NOT WIN32 AND NOT APPLE)
|
||||
+if(NOT WIN32 AND NOT APPLE AND NOT HAIKU)
|
||||
option(ENABLE_EGL "Enables EGL OpenGL Interface" ON)
|
||||
endif()
|
||||
|
||||
diff --git a/Source/Core/Common/CMakeLists.txt b/Source/Core/Common/CMakeLists.txt
|
||||
index 543c4cf..7656fd1 100644
|
||||
--- a/Source/Core/Common/CMakeLists.txt
|
||||
+++ b/Source/Core/Common/CMakeLists.txt
|
||||
@@ -168,6 +168,8 @@ elseif (ANDROID)
|
||||
PRIVATE
|
||||
androidcommon
|
||||
)
|
||||
+elseif(HAIKU)
|
||||
+ target_link_libraries(common PRIVATE be GL)
|
||||
endif()
|
||||
|
||||
if(ANDROID)
|
||||
@@ -256,6 +258,11 @@ elseif(APPLE)
|
||||
GL/GLInterface/AGL.h
|
||||
GL/GLInterface/AGL.mm
|
||||
)
|
||||
+elseif(HAIKU)
|
||||
+ target_sources(common PRIVATE
|
||||
+ GL/GLInterface/BGL.h
|
||||
+ GL/GLInterface/BGL.cpp
|
||||
+ )
|
||||
elseif(ENABLE_X11 AND X11_FOUND)
|
||||
target_sources(common PRIVATE
|
||||
GL/GLX11Window.cpp
|
||||
diff --git a/Source/Core/Common/GL/GLContext.cpp b/Source/Core/Common/GL/GLContext.cpp
|
||||
index 2f72204..9450085 100644
|
||||
--- a/Source/Core/Common/GL/GLContext.cpp
|
||||
+++ b/Source/Core/Common/GL/GLContext.cpp
|
||||
@@ -12,6 +12,9 @@
|
||||
#if defined(_WIN32)
|
||||
#include "Common/GL/GLInterface/WGL.h"
|
||||
#endif
|
||||
+#if defined(__HAIKU__)
|
||||
+#include "Common/GL/GLInterface/BGL.h"
|
||||
+#endif
|
||||
#if HAVE_X11
|
||||
#include "Common/GL/GLInterface/GLX.h"
|
||||
#endif
|
||||
@@ -92,6 +95,10 @@ std::unique_ptr<GLContext> GLContext::Create(const WindowSystemInfo& wsi, bool s
|
||||
if (wsi.type == WindowSystemType::Android)
|
||||
context = std::make_unique<GLContextEGLAndroid>();
|
||||
#endif
|
||||
+#if defined(__HAIKU__)
|
||||
+ if (wsi.type == WindowSystemType::Haiku)
|
||||
+ context = std::make_unique<GLContextBGL>();
|
||||
+#endif
|
||||
#if HAVE_X11
|
||||
if (wsi.type == WindowSystemType::X11)
|
||||
{
|
||||
diff --git a/Source/Core/Common/GL/GLInterface/BGL.cpp b/Source/Core/Common/GL/GLInterface/BGL.cpp
|
||||
new file mode 100644
|
||||
index 0000000..118639c
|
||||
--- /dev/null
|
||||
+++ b/Source/Core/Common/GL/GLInterface/BGL.cpp
|
||||
@@ -0,0 +1,93 @@
|
||||
+// Copyright 2017 Dolphin Emulator Project
|
||||
+// Licensed under GPLv2+
|
||||
+// Refer to the license.txt file included.
|
||||
+
|
||||
+#include "Common/GL/GLInterface/BGL.h"
|
||||
+
|
||||
+#include <GLView.h>
|
||||
+#include <Size.h>
|
||||
+#include <Window.h>
|
||||
+
|
||||
+BGLView* GLContextBGL::m_current = nullptr;
|
||||
+
|
||||
+GLContextBGL::~GLContextBGL()
|
||||
+{
|
||||
+ if (!m_window)
|
||||
+ delete m_gl;
|
||||
+}
|
||||
+
|
||||
+bool GLContextBGL::Initialize(const WindowSystemInfo& wsi, bool stereo, bool core)
|
||||
+{
|
||||
+ m_window = static_cast<BWindow*>(wsi.render_window);
|
||||
+
|
||||
+ m_gl = new BGLView(m_window ? m_window->Bounds() : BRect(), "GLContextBGL", B_FOLLOW_ALL_SIDES, 0,
|
||||
+ BGL_RGB | BGL_DOUBLE | BGL_ALPHA);
|
||||
+ if (m_window)
|
||||
+ m_window->AddChild(m_gl);
|
||||
+
|
||||
+ m_opengl_mode = Mode::OpenGL;
|
||||
+
|
||||
+ m_gl->LockLooper();
|
||||
+ BRect size = m_gl->Frame();
|
||||
+ m_gl->UnlockLooper();
|
||||
+
|
||||
+ m_backbuffer_width = size.IntegerWidth();
|
||||
+ m_backbuffer_height = size.IntegerHeight();
|
||||
+
|
||||
+ MakeCurrent();
|
||||
+
|
||||
+ return true;
|
||||
+}
|
||||
+
|
||||
+bool GLContextBGL::IsHeadless() const
|
||||
+{
|
||||
+ return !m_window;
|
||||
+}
|
||||
+
|
||||
+bool GLContextBGL::MakeCurrent()
|
||||
+{
|
||||
+ if (m_current)
|
||||
+ m_current->UnlockGL();
|
||||
+ m_gl->LockGL();
|
||||
+ m_current = m_gl;
|
||||
+ return true;
|
||||
+}
|
||||
+
|
||||
+bool GLContextBGL::ClearCurrent()
|
||||
+{
|
||||
+ if (!m_current)
|
||||
+ return true;
|
||||
+
|
||||
+ //assert(m_gl == m_current);
|
||||
+ m_current->UnlockGL();
|
||||
+ m_current = nullptr;
|
||||
+ return true;
|
||||
+}
|
||||
+
|
||||
+void GLContextBGL::Swap()
|
||||
+{
|
||||
+ m_gl->SwapBuffers();
|
||||
+}
|
||||
+
|
||||
+void GLContextBGL::Update()
|
||||
+{
|
||||
+ m_gl->LockLooper();
|
||||
+ BRect size = m_gl->Frame();
|
||||
+ if (m_backbuffer_width == size.IntegerWidth() && m_backbuffer_height == size.IntegerHeight()) {
|
||||
+ m_gl->UnlockLooper();
|
||||
+ return;
|
||||
+ }
|
||||
+
|
||||
+ ClearCurrent();
|
||||
+ m_gl->FrameResized(size.Width(), size.Height());
|
||||
+ MakeCurrent();
|
||||
+ m_gl->UnlockLooper();
|
||||
+
|
||||
+ m_backbuffer_width = size.IntegerWidth();
|
||||
+ m_backbuffer_height = size.IntegerHeight();
|
||||
+}
|
||||
+
|
||||
+void* GLContextBGL::GetFuncAddress(const std::string& name)
|
||||
+{
|
||||
+ return m_gl->GetGLProcAddress(name.c_str());
|
||||
+}
|
||||
diff --git a/Source/Core/Common/GL/GLInterface/BGL.h b/Source/Core/Common/GL/GLInterface/BGL.h
|
||||
new file mode 100644
|
||||
index 0000000..54089a3
|
||||
--- /dev/null
|
||||
+++ b/Source/Core/Common/GL/GLInterface/BGL.h
|
||||
@@ -0,0 +1,36 @@
|
||||
+// Copyright 2017 Dolphin Emulator Project
|
||||
+// Licensed under GPLv2+
|
||||
+// Refer to the license.txt file included.
|
||||
+
|
||||
+#pragma once
|
||||
+
|
||||
+#include "Common/GL/GLContext.h"
|
||||
+
|
||||
+class BWindow;
|
||||
+class BGLView;
|
||||
+
|
||||
+class GLContextBGL final : public GLContext
|
||||
+{
|
||||
+public:
|
||||
+ ~GLContextBGL() override;
|
||||
+
|
||||
+ bool IsHeadless() const override;
|
||||
+
|
||||
+ bool MakeCurrent() override;
|
||||
+ bool ClearCurrent() override;
|
||||
+
|
||||
+ void Update() override;
|
||||
+
|
||||
+ void Swap() override;
|
||||
+
|
||||
+ void* GetFuncAddress(const std::string& name) override;
|
||||
+
|
||||
+protected:
|
||||
+ bool Initialize(const WindowSystemInfo& wsi, bool stereo, bool core) override;
|
||||
+
|
||||
+private:
|
||||
+ BWindow* m_window;
|
||||
+ BGLView* m_gl;
|
||||
+
|
||||
+ static BGLView* m_current;
|
||||
+};
|
||||
diff --git a/Source/Core/Common/WindowSystemInfo.h b/Source/Core/Common/WindowSystemInfo.h
|
||||
index 244a985..ff2beba 100644
|
||||
--- a/Source/Core/Common/WindowSystemInfo.h
|
||||
+++ b/Source/Core/Common/WindowSystemInfo.h
|
||||
@@ -13,6 +13,7 @@ enum class WindowSystemType
|
||||
X11,
|
||||
Wayland,
|
||||
FBDev,
|
||||
+ Haiku,
|
||||
};
|
||||
|
||||
struct WindowSystemInfo
|
||||
diff --git a/Source/Core/Core/HW/EXI/EXI_DeviceEthernet.h b/Source/Core/Core/HW/EXI/EXI_DeviceEthernet.h
|
||||
index ed79b9a..0075e40 100644
|
||||
--- a/Source/Core/Core/HW/EXI/EXI_DeviceEthernet.h
|
||||
+++ b/Source/Core/Core/HW/EXI/EXI_DeviceEthernet.h
|
||||
@@ -383,7 +383,7 @@ private:
|
||||
bool m_bba_link_up = false;
|
||||
bool m_bba_failure_notified = false;
|
||||
#if defined(WIN32) || defined(__linux__) || defined(__APPLE__) || defined(__FreeBSD__) || \
|
||||
- defined(__OpenBSD__)
|
||||
+ defined(__OpenBSD__) || defined(__HAIKU__)
|
||||
sf::UdpSocket m_sf_socket;
|
||||
sf::IpAddress m_sf_recipient_ip;
|
||||
char m_in_frame[9004];
|
||||
diff --git a/Source/Core/DolphinQt/MainWindow.cpp b/Source/Core/DolphinQt/MainWindow.cpp
|
||||
index 54deeb4..f4a062a 100644
|
||||
--- a/Source/Core/DolphinQt/MainWindow.cpp
|
||||
+++ b/Source/Core/DolphinQt/MainWindow.cpp
|
||||
@@ -152,6 +152,8 @@ static WindowSystemType GetWindowSystemType()
|
||||
return WindowSystemType::X11;
|
||||
else if (platform_name == QStringLiteral("wayland"))
|
||||
return WindowSystemType::Wayland;
|
||||
+ else if (platform_name == QStringLiteral("haiku"))
|
||||
+ return WindowSystemType::Haiku;
|
||||
|
||||
ModalMessageBox::critical(
|
||||
nullptr, QStringLiteral("Error"),
|
||||
@@ -165,7 +167,7 @@ static WindowSystemInfo GetWindowSystemInfo(QWindow* window)
|
||||
wsi.type = GetWindowSystemType();
|
||||
|
||||
// Our Win32 Qt external doesn't have the private API.
|
||||
-#if defined(WIN32) || defined(__APPLE__)
|
||||
+#if defined(WIN32) || defined(__APPLE__) || defined(__HAIKU__)
|
||||
wsi.render_window = window ? reinterpret_cast<void*>(window->winId()) : nullptr;
|
||||
wsi.render_surface = wsi.render_window;
|
||||
#else
|
||||
diff --git a/Source/Core/VideoCommon/DriverDetails.cpp b/Source/Core/VideoCommon/DriverDetails.cpp
|
||||
index 88a482e..990894f 100644
|
||||
--- a/Source/Core/VideoCommon/DriverDetails.cpp
|
||||
+++ b/Source/Core/VideoCommon/DriverDetails.cpp
|
||||
@@ -35,6 +35,8 @@ constexpr u32 m_os = OS_ALL | OS_LINUX;
|
||||
constexpr u32 m_os = OS_ALL | OS_FREEBSD;
|
||||
#elif __OpenBSD__
|
||||
constexpr u32 m_os = OS_ALL | OS_OPENBSD;
|
||||
+#elif __HAIKU__
|
||||
+constexpr u32 m_os = OS_ALL | OS_HAIKU;
|
||||
#endif
|
||||
|
||||
static API m_api = API_OPENGL;
|
||||
diff --git a/Source/Core/VideoCommon/DriverDetails.h b/Source/Core/VideoCommon/DriverDetails.h
|
||||
index 3e58a5f..9707b1b 100644
|
||||
--- a/Source/Core/VideoCommon/DriverDetails.h
|
||||
+++ b/Source/Core/VideoCommon/DriverDetails.h
|
||||
@@ -27,6 +27,7 @@ enum OS
|
||||
OS_ANDROID = (1 << 4),
|
||||
OS_FREEBSD = (1 << 5),
|
||||
OS_OPENBSD = (1 << 6),
|
||||
+ OS_HAIKU = (1 << 7),
|
||||
};
|
||||
// Enum of known vendors
|
||||
// Tegra and Nvidia are separated out due to such substantial differences
|
||||
--
|
||||
2.28.0
|
||||
|
||||
|
||||
From ea8df0aac409204f109b9738a08af246f19076ca Mon Sep 17 00:00:00 2001
|
||||
From: Gerasim Troeglazov <3dEyes@gmail.com>
|
||||
Date: Wed, 23 Dec 2020 14:43:33 +1000
|
||||
Subject: Add haiku platform for SFML
|
||||
|
||||
|
||||
diff --git a/Externals/SFML/include/SFML/Config.hpp b/Externals/SFML/include/SFML/Config.hpp
|
||||
index aae5f54..4ea7e52 100644
|
||||
--- a/Externals/SFML/include/SFML/Config.hpp
|
||||
+++ b/Externals/SFML/include/SFML/Config.hpp
|
||||
@@ -75,11 +75,11 @@
|
||||
|
||||
// Android
|
||||
#define SFML_SYSTEM_ANDROID
|
||||
-
|
||||
+
|
||||
#elif defined(__linux__)
|
||||
|
||||
// Linux
|
||||
- #define SFML_SYSTEM_LINUX
|
||||
+ #define SFML_SYSTEM_LINUXs
|
||||
|
||||
#elif defined(__FreeBSD__) || defined(__FreeBSD_kernel__)
|
||||
|
||||
@@ -98,6 +98,10 @@
|
||||
|
||||
#endif
|
||||
|
||||
+#elif defined(__HAIKU__)
|
||||
+
|
||||
+ // Haiku
|
||||
+ #define SFML_SYSTEM_HAIKU
|
||||
#else
|
||||
|
||||
// Unsupported system
|
||||
--
|
||||
2.28.0
|
||||
|
||||
|
||||
From 98edbfb2c281c59c6cc9e4b0f110e81c2ba1033f Mon Sep 17 00:00:00 2001
|
||||
From: Gerasim Troeglazov <3dEyes@gmail.com>
|
||||
Date: Wed, 23 Dec 2020 14:43:58 +1000
|
||||
Subject: Fix build miniupnpc
|
||||
|
||||
|
||||
diff --git a/Externals/miniupnpc/src/minissdpc.c b/Externals/miniupnpc/src/minissdpc.c
|
||||
index 235175c..10942cd 100644
|
||||
--- a/Externals/miniupnpc/src/minissdpc.c
|
||||
+++ b/Externals/miniupnpc/src/minissdpc.c
|
||||
@@ -63,7 +63,7 @@ struct sockaddr_un {
|
||||
#define PRINT_SOCKET_ERROR(x) perror(x)
|
||||
#endif
|
||||
|
||||
-#if !defined(__DragonFly__) && !defined(__OpenBSD__) && !defined(__NetBSD__) && !defined(__APPLE__) && !defined(_WIN32) && !defined(__CYGWIN__) && !defined(__sun) && !defined(__GNU__) && !defined(__FreeBSD_kernel__)
|
||||
+#if !defined(__HAIKU__) && !defined(__DragonFly__) && !defined(__OpenBSD__) && !defined(__NetBSD__) && !defined(__APPLE__) && !defined(_WIN32) && !defined(__CYGWIN__) && !defined(__sun) && !defined(__GNU__) && !defined(__FreeBSD_kernel__)
|
||||
#define HAS_IP_MREQN
|
||||
#endif
|
||||
|
||||
diff --git a/Externals/miniupnpc/src/portlistingparse.c b/Externals/miniupnpc/src/portlistingparse.c
|
||||
index 0e09278..ed6165d 100644
|
||||
--- a/Externals/miniupnpc/src/portlistingparse.c
|
||||
+++ b/Externals/miniupnpc/src/portlistingparse.c
|
||||
@@ -31,7 +31,7 @@ static const struct {
|
||||
|
||||
/* Helper function */
|
||||
static UNSIGNED_INTEGER
|
||||
-atoui(const char * p, int l)
|
||||
+atoui2(const char * p, int l)
|
||||
{
|
||||
UNSIGNED_INTEGER r = 0;
|
||||
while(l > 0 && *p)
|
||||
@@ -107,7 +107,7 @@ data(void * d, const char * data, int l)
|
||||
pm->remoteHost[l] = '\0';
|
||||
break;
|
||||
case NewExternalPort:
|
||||
- pm->externalPort = (unsigned short)atoui(data, l);
|
||||
+ pm->externalPort = (unsigned short)atoui2(data, l);
|
||||
break;
|
||||
case NewProtocol:
|
||||
if(l > 3)
|
||||
@@ -116,21 +116,21 @@ data(void * d, const char * data, int l)
|
||||
pm->protocol[l] = '\0';
|
||||
break;
|
||||
case NewInternalPort:
|
||||
- pm->internalPort = (unsigned short)atoui(data, l);
|
||||
+ pm->internalPort = (unsigned short)atoui2(data, l);
|
||||
break;
|
||||
case NewInternalClient:
|
||||
memcpy(pm->internalClient, data, l);
|
||||
pm->internalClient[l] = '\0';
|
||||
break;
|
||||
case NewEnabled:
|
||||
- pm->enabled = (unsigned char)atoui(data, l);
|
||||
+ pm->enabled = (unsigned char)atoui2(data, l);
|
||||
break;
|
||||
case NewDescription:
|
||||
memcpy(pm->description, data, l);
|
||||
pm->description[l] = '\0';
|
||||
break;
|
||||
case NewLeaseTime:
|
||||
- pm->leaseTime = atoui(data, l);
|
||||
+ pm->leaseTime = atoui2(data, l);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
--
|
||||
2.28.0
|
||||
|
||||
|
||||
From 666173360da2692c19590baa9fe7185988a9c708 Mon Sep 17 00:00:00 2001
|
||||
From: Gerasim Troeglazov <3dEyes@gmail.com>
|
||||
Date: Wed, 23 Dec 2020 15:21:28 +1000
|
||||
Subject: Fix minizip build
|
||||
|
||||
|
||||
diff --git a/Externals/minizip/ioapi.h b/Externals/minizip/ioapi.h
|
||||
index efb94a4..4644eaf 100644
|
||||
--- a/Externals/minizip/ioapi.h
|
||||
+++ b/Externals/minizip/ioapi.h
|
||||
@@ -25,7 +25,7 @@
|
||||
# define ftello64 ftell
|
||||
# define fseeko64 fseek
|
||||
#else
|
||||
-# if defined(__FreeBSD__) || defined(__NetBSD__) || defined(__DragonFly__) || defined(__OpenBSD__) || defined(__APPLE__)
|
||||
+# if defined(__FreeBSD__) || defined(__NetBSD__) || defined(__DragonFly__) || defined(__OpenBSD__) || defined(__APPLE__) || defined(__HAIKU__)
|
||||
# define fopen64 fopen
|
||||
# define ftello64 ftello
|
||||
# define fseeko64 fseeko
|
||||
--
|
||||
2.28.0
|
||||
|
||||
|
||||
From 1f562378b2a8d3a26a530846b9e3f54fbf5b23b0 Mon Sep 17 00:00:00 2001
|
||||
From: Gerasim Troeglazov <3dEyes@gmail.com>
|
||||
Date: Wed, 23 Dec 2020 15:22:09 +1000
|
||||
Subject: Disable SetLocale for Haiku
|
||||
|
||||
|
||||
diff --git a/Source/Core/UICommon/UICommon.cpp b/Source/Core/UICommon/UICommon.cpp
|
||||
index ec612df..dcd00ec 100644
|
||||
--- a/Source/Core/UICommon/UICommon.cpp
|
||||
+++ b/Source/Core/UICommon/UICommon.cpp
|
||||
@@ -116,6 +116,7 @@ void Shutdown()
|
||||
|
||||
void SetLocale(std::string locale_name)
|
||||
{
|
||||
+#ifndef __HAIKU__
|
||||
auto set_locale = [](const std::string& locale) {
|
||||
#ifdef __linux__
|
||||
std::string adjusted_locale = locale;
|
||||
@@ -169,6 +170,7 @@ void SetLocale(std::string locale_name)
|
||||
|
||||
// If none of the locales tried above are supported, we just keep using whatever locale is set
|
||||
// (which is the classic locale by default).
|
||||
+#endif
|
||||
}
|
||||
|
||||
void CreateDirectories()
|
||||
--
|
||||
2.28.0
|
||||
|
||||
Reference in New Issue
Block a user