mirror of
https://git.do.srb2.org/KartKrew/Kart-Public.git
synced 2024-11-10 07:12:03 +00:00
Attempt to improve discord-rpc checking in CMake
Haven't ever gotten CMake to compile SRB2, so I'm unable to really check if this works
This commit is contained in:
parent
ed58cb5468
commit
720eced665
5 changed files with 67 additions and 39 deletions
23
cmake/Modules/FindDiscordRPC.cmake
Normal file
23
cmake/Modules/FindDiscordRPC.cmake
Normal file
|
@ -0,0 +1,23 @@
|
||||||
|
include(LibFindMacros)
|
||||||
|
|
||||||
|
libfind_pkg_check_modules(DISCORDRPC_PKGCONF DISCORDRPC)
|
||||||
|
|
||||||
|
find_path(DISCORDRPC_INCLUDE_DIR
|
||||||
|
NAMES discord-rpc.h
|
||||||
|
PATHS
|
||||||
|
${DISCORDRPC_PKGCONF_INCLUDE_DIRS}
|
||||||
|
"/usr/include/discord-rpc"
|
||||||
|
"/usr/local/include/discord-rpc"
|
||||||
|
)
|
||||||
|
|
||||||
|
find_library(DISCORDRPC_LIBRARY
|
||||||
|
NAMES discord-rpc
|
||||||
|
PATHS
|
||||||
|
${DISCORDRPC_PKGCONF_LIBRARY_DIRS}
|
||||||
|
"/usr/lib"
|
||||||
|
"/usr/local/lib"
|
||||||
|
)
|
||||||
|
|
||||||
|
set(DISCORDRPC_PROCESS_INCLUDES DISCORDRPC_INCLUDE_DIR)
|
||||||
|
set(DISCORDRPC_PROCESS_LIBS DISCORDRPC_LIBRARY)
|
||||||
|
libfind_process(DISCORDRPC)
|
|
@ -1,6 +1,6 @@
|
||||||
# SRB2Kart - Which DLLs do I need to bundle?
|
# SRB2Kart - Which DLLs do I need to bundle?
|
||||||
|
|
||||||
Updated 12/4/2018 (v2.1.21)
|
Updated 8/23/2020 (v1.3)
|
||||||
|
|
||||||
Here are the required DLLs, per build. For each architecture, copy all the binaries from these folders:
|
Here are the required DLLs, per build. For each architecture, copy all the binaries from these folders:
|
||||||
|
|
||||||
|
@ -14,6 +14,7 @@ and don't forget to build r_opengl.dll for srb2dd.
|
||||||
|
|
||||||
* libs\dll-binaries\i686\exchndl.dll
|
* libs\dll-binaries\i686\exchndl.dll
|
||||||
* libs\dll-binaries\i686\libgme.dll
|
* libs\dll-binaries\i686\libgme.dll
|
||||||
|
* libs\dll-binaries\i686\discord-rpc.dll
|
||||||
* libs\dll-binaries\i686\mgwhelp.dll (depend for exchndl.dll)
|
* libs\dll-binaries\i686\mgwhelp.dll (depend for exchndl.dll)
|
||||||
* libs\SDL2\i686-w64-mingw32\bin\SDL2.dll
|
* libs\SDL2\i686-w64-mingw32\bin\SDL2.dll
|
||||||
* libs\SDL2_mixer\i686-w64-mingw32\bin\*.dll (get everything)
|
* libs\SDL2_mixer\i686-w64-mingw32\bin\*.dll (get everything)
|
||||||
|
@ -22,22 +23,7 @@ and don't forget to build r_opengl.dll for srb2dd.
|
||||||
|
|
||||||
* libs\dll-binaries\x86_64\exchndl.dll
|
* libs\dll-binaries\x86_64\exchndl.dll
|
||||||
* libs\dll-binaries\x86_64\libgme.dll
|
* libs\dll-binaries\x86_64\libgme.dll
|
||||||
|
* libs\dll-binaries\x86_64\discord-rpc.dll
|
||||||
* libs\dll-binaries\x86_64\mgwhelp.dll (depend for exchndl.dll)
|
* libs\dll-binaries\x86_64\mgwhelp.dll (depend for exchndl.dll)
|
||||||
* libs\SDL2\x86_64-w64-mingw32\bin\SDL2.dll
|
* libs\SDL2\x86_64-w64-mingw32\bin\SDL2.dll
|
||||||
* libs\SDL2_mixer\x86_64-w64-mingw32\bin\*.dll (get everything)
|
* libs\SDL2_mixer\x86_64-w64-mingw32\bin\*.dll (get everything)
|
||||||
|
|
||||||
## srb2kartdd, 32-bit
|
|
||||||
|
|
||||||
* libs\dll-binaries\i686\exchndl.dll
|
|
||||||
* libs\dll-binaries\i686\fmodex.dll
|
|
||||||
* libs\dll-binaries\i686\libgme.dll
|
|
||||||
* libs\dll-binaries\i686\mgwhelp.dll (depend for exchndl.dll)
|
|
||||||
* r_opengl.dll (build this from make)
|
|
||||||
|
|
||||||
## srb2kartdd, 64-bit
|
|
||||||
|
|
||||||
* libs\dll-binaries\x86_64\exchndl.dll
|
|
||||||
* libs\dll-binaries\x86_64\fmodex.dll
|
|
||||||
* libs\dll-binaries\x86_64\libgme.dll
|
|
||||||
* libs\dll-binaries\x86_64\mgwhelp.dll (depend for exchndl.dll)
|
|
||||||
* r_opengl.dll (build this from make)
|
|
||||||
|
|
16
libs/discord-rpc.props
Normal file
16
libs/discord-rpc.props
Normal file
|
@ -0,0 +1,16 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
|
<ImportGroup Label="PropertySheets" />
|
||||||
|
<PropertyGroup Label="UserMacros" />
|
||||||
|
<LibraryPath Condition="'$(Platform)' == 'Win32'">$(SolutionDir)libs\discord-rpc\win32-dynamic\lib;$(LibraryPath)</LibraryPath>
|
||||||
|
<IncludePath Condition="'$(Platform)' == 'Win32'">$(SolutionDir)libs\discord-rpc\win32-dynamic\lib;$(IncludePath)</IncludePath>
|
||||||
|
<LibraryPath Condition="'$(Platform)' == 'x64'">$(SolutionDir)libs\discord-rpc\win64-dynamic\lib;$(LibraryPath)</LibraryPath>
|
||||||
|
<IncludePath Condition="'$(Platform)' == 'x64'">$(SolutionDir)libs\discord-rpc\win64-dynamic\lib;$(IncludePath)</IncludePath>
|
||||||
|
</PropertyGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Platform)' == 'Win32' OR '$(Platform)' == 'x64'">
|
||||||
|
<Link>
|
||||||
|
<AdditionalDependencies>discord-rpc.dll.a;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemGroup />
|
||||||
|
</Project>
|
|
@ -332,7 +332,7 @@ if(${SRB2_CONFIG_HAVE_GME})
|
||||||
if(${SRB2_CONFIG_USE_INTERNAL_LIBRARIES})
|
if(${SRB2_CONFIG_USE_INTERNAL_LIBRARIES})
|
||||||
set(GME_FOUND ON)
|
set(GME_FOUND ON)
|
||||||
set(GME_INCLUDE_DIRS ${CMAKE_SOURCE_DIR}/libs/gme/include)
|
set(GME_INCLUDE_DIRS ${CMAKE_SOURCE_DIR}/libs/gme/include)
|
||||||
if(${SRB2_SYSTEM_BITS} EQUAL 64)
|
if(${SRB2_SYSTEM_BITS} EQUAL 64)
|
||||||
set(GME_LIBRARIES "-L${CMAKE_SOURCE_DIR}/libs/gme/win64 -lgme")
|
set(GME_LIBRARIES "-L${CMAKE_SOURCE_DIR}/libs/gme/win64 -lgme")
|
||||||
else() # 32-bit
|
else() # 32-bit
|
||||||
set(GME_LIBRARIES "-L${CMAKE_SOURCE_DIR}/libs/gme/win32 -lgme")
|
set(GME_LIBRARIES "-L${CMAKE_SOURCE_DIR}/libs/gme/win32 -lgme")
|
||||||
|
@ -348,17 +348,31 @@ if(${SRB2_CONFIG_HAVE_GME})
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# TO-DO: make this check for the dependency like the others..
|
|
||||||
if(${SRB2_CONFIG_HAVE_DISCORDRPC})
|
if(${SRB2_CONFIG_HAVE_DISCORDRPC})
|
||||||
add_definitions(-DHAVE_DISCORDRPC)
|
if(${SRB2_CONFIG_USE_INTERNAL_LIBRARIES})
|
||||||
set(SRB2_DISCORDRPC_SOURCES
|
set(DISCORDRPC_FOUND ON)
|
||||||
discord.c
|
if(${SRB2_SYSTEM_BITS} EQUAL 64)
|
||||||
discord.h
|
set(DISCORDRPC_INCLUDE_DIRS ${CMAKE_SOURCE_DIR}/libs/discord-rpc/win64-dynamic/include)
|
||||||
)
|
set(DISCORDRPC_LIBRARIES "-L${CMAKE_SOURCE_DIR}/libs/discord-rpc/win64-dynamic/lib -ldiscord-rpc")
|
||||||
|
else() # 32-bit
|
||||||
prepend_sources(SRB2_DISCORDRPC_SOURCES)
|
set(DISCORDRPC_INCLUDE_DIRS ${CMAKE_SOURCE_DIR}/libs/discord-rpc/win32-dynamic/include)
|
||||||
|
set(DISCORDRPC_LIBRARIES "-L${CMAKE_SOURCE_DIR}/libs/discord-rpc/win32-dynamic/lib -ldiscord-rpc")
|
||||||
source_group("Discord RPC" FILES ${SRB2_DISCORDRPC_SOURCES})
|
endif()
|
||||||
|
else()
|
||||||
|
find_package(DISCORDRPC)
|
||||||
|
endif()
|
||||||
|
if(${DISCORDRPC_FOUND})
|
||||||
|
set(SRB2_HAVE_DISCORDRPC ON)
|
||||||
|
add_definitions(-DHAVE_DISCORDRPC)
|
||||||
|
set(SRB2_DISCORDRPC_SOURCES
|
||||||
|
discord.c
|
||||||
|
discord.h
|
||||||
|
)
|
||||||
|
prepend_sources(SRB2_DISCORDRPC_SOURCES)
|
||||||
|
source_group("Discord Rich Presence" FILES ${SRB2_DISCORDRPC_SOURCES})
|
||||||
|
else()
|
||||||
|
message(WARNING "You have specified that Discord Rich Presence is available but it was not found.")
|
||||||
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(${SRB2_CONFIG_HAVE_ZLIB})
|
if(${SRB2_CONFIG_HAVE_ZLIB})
|
||||||
|
|
|
@ -1,11 +0,0 @@
|
||||||
SRB2Kart Install Instructions
|
|
||||||
|
|
||||||
1. Move every file from the "new-install" folder to this main install folder.
|
|
||||||
|
|
||||||
2. DELETE "staging.bat" and "staging.txt"! These can mess up your installation if run by accident!
|
|
||||||
|
|
||||||
3. Optionally, create a folder in your user profile named "SRB2Kart". This is where your game data and addons may live. For example,
|
|
||||||
|
|
||||||
C:\Users\[User]\SRB2Kart
|
|
||||||
|
|
||||||
4. Run the game! Double-click srb2kart.exe -- or see if you have Start Menu icons under "SRB2Kart".
|
|
Loading…
Reference in a new issue