cpp-ipc: Fix builds on non-FreeBSD BSDs

cpp-ipc is explicitely only available on Windows, Linux, QNX, and FreeBSD. Trying to build dolphin on any another BSD such as OpenBSD or Haiku currently leads to failure because of this.
This commit is contained in:
Joshua Vandaële
2026-01-06 21:20:54 +01:00
parent fb2a46c4cf
commit 2005b0365e
5 changed files with 8 additions and 5 deletions

View File

@@ -786,8 +786,10 @@ endif()
add_subdirectory(Externals/watcher) add_subdirectory(Externals/watcher)
if(NOT ANDROID AND NOT APPLE) # Any other platform or BSD is currently unsupported by cpp-ipc
if(WIN32 OR LINUX OR CMAKE_SYSTEM_NAME STREQUAL "FreeBSD" OR CMAKE_SYSTEM_NAME STREQUAL "QNX")
add_subdirectory(Externals/cpp-ipc) add_subdirectory(Externals/cpp-ipc)
add_definitions(-DHAVE_CPPIPC)
endif() endif()
######################################## ########################################

View File

@@ -799,7 +799,7 @@ if(UNIX)
) )
endif() endif()
if(NOT ANDROID AND NOT APPLE) if(TARGET cpp-ipc::ipc)
target_sources(core PRIVATE HW/EXI/BBA/IPC.cpp) target_sources(core PRIVATE HW/EXI/BBA/IPC.cpp)
target_link_libraries(core PRIVATE cpp-ipc::ipc) target_link_libraries(core PRIVATE cpp-ipc::ipc)
endif() endif()

View File

@@ -15,7 +15,7 @@
#endif #endif
#include <SFML/Network.hpp> #include <SFML/Network.hpp>
#if !defined(__ANDROID__) && !defined(__APPLE__) #ifdef HAVE_CPPIPC
#include <libipc/ipc.h> #include <libipc/ipc.h>
#endif #endif
@@ -483,7 +483,7 @@ private:
public: public:
explicit IPCBBAInterface(CEXIETHERNET* const eth_ref) : NetworkInterface(eth_ref) {} explicit IPCBBAInterface(CEXIETHERNET* const eth_ref) : NetworkInterface(eth_ref) {}
#if !defined(__ANDROID__) && !defined(__APPLE__) #ifdef HAVE_CPPIPC
bool Activate() override; bool Activate() override;
void Deactivate() override; void Deactivate() override;

View File

@@ -143,7 +143,7 @@ void GameCubePane::CreateWidgets()
EXIDeviceType::EthernetXLink, EXIDeviceType::EthernetXLink,
EXIDeviceType::EthernetTapServer, EXIDeviceType::EthernetTapServer,
EXIDeviceType::EthernetBuiltIn, EXIDeviceType::EthernetBuiltIn,
#if !defined(__APPLE__) #ifdef HAVE_CPPIPC
EXIDeviceType::EthernetIPC, EXIDeviceType::EthernetIPC,
#endif #endif
EXIDeviceType::ModemTapServer, EXIDeviceType::ModemTapServer,

View File

@@ -50,6 +50,7 @@
<PreprocessorDefinitions>RC_CLIENT_SUPPORTS_HASH;%(PreprocessorDefinitions)</PreprocessorDefinitions> <PreprocessorDefinitions>RC_CLIENT_SUPPORTS_HASH;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions>RC_CLIENT_SUPPORTS_RAINTEGRATION;%(PreprocessorDefinitions)</PreprocessorDefinitions> <PreprocessorDefinitions>RC_CLIENT_SUPPORTS_RAINTEGRATION;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions Condition="'$(EnableCubeb)'!='false'">HAVE_CUBEB;%(PreprocessorDefinitions)</PreprocessorDefinitions> <PreprocessorDefinitions Condition="'$(EnableCubeb)'!='false'">HAVE_CUBEB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions>HAVE_CPPIPC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<!-- Warnings one may want to ignore when using Level4. <!-- Warnings one may want to ignore when using Level4.
4201 nonstandard extension used : nameless struct/union 4201 nonstandard extension used : nameless struct/union