2018-03-23 16:31:29 -06:00
|
|
|
add_library(common
|
2016-06-17 18:43:59 -06:00
|
|
|
Analytics.cpp
|
2019-05-29 02:16:24 -06:00
|
|
|
Analytics.h
|
2022-12-18 01:43:28 -07:00
|
|
|
Assembler/AssemblerShared.cpp
|
|
|
|
Assembler/AssemblerShared.h
|
|
|
|
Assembler/AssemblerTables.cpp
|
|
|
|
Assembler/AssemblerTables.h
|
|
|
|
Assembler/GekkoAssembler.cpp
|
|
|
|
Assembler/GekkoAssembler.h
|
|
|
|
Assembler/GekkoIRGen.cpp
|
|
|
|
Assembler/GekkoIRGen.h
|
|
|
|
Assembler/GekkoLexer.cpp
|
|
|
|
Assembler/GekkoLexer.h
|
|
|
|
Assembler/GekkoParser.cpp
|
|
|
|
Assembler/GekkoParser.h
|
2019-05-29 02:16:24 -06:00
|
|
|
Assert.h
|
|
|
|
BitField.h
|
|
|
|
BitSet.h
|
|
|
|
BitUtils.h
|
|
|
|
BlockingLoop.h
|
|
|
|
ChunkFile.h
|
|
|
|
CodeBlock.h
|
2014-06-05 17:29:54 -06:00
|
|
|
ColorUtil.cpp
|
2019-05-29 02:16:24 -06:00
|
|
|
ColorUtil.h
|
|
|
|
Common.h
|
2017-04-14 13:07:37 -06:00
|
|
|
CommonFuncs.cpp
|
2019-05-29 02:16:24 -06:00
|
|
|
CommonFuncs.h
|
|
|
|
CommonPaths.h
|
|
|
|
CommonTypes.h
|
2017-02-16 08:58:40 -07:00
|
|
|
Config/Config.cpp
|
2019-05-29 02:16:24 -06:00
|
|
|
Config/Config.h
|
2017-10-30 10:22:37 -06:00
|
|
|
Config/ConfigInfo.cpp
|
2019-05-29 02:16:24 -06:00
|
|
|
Config/ConfigInfo.h
|
|
|
|
Config/Enums.h
|
2017-02-16 08:58:40 -07:00
|
|
|
Config/Layer.cpp
|
2019-05-29 02:16:24 -06:00
|
|
|
Config/Layer.h
|
|
|
|
CPUDetect.h
|
2017-08-07 00:25:14 -06:00
|
|
|
Crypto/AES.cpp
|
2019-05-29 02:16:24 -06:00
|
|
|
Crypto/AES.h
|
2017-08-07 00:25:14 -06:00
|
|
|
Crypto/bn.cpp
|
2019-05-29 02:16:24 -06:00
|
|
|
Crypto/bn.h
|
2017-08-07 00:25:14 -06:00
|
|
|
Crypto/ec.cpp
|
2019-05-29 02:16:24 -06:00
|
|
|
Crypto/ec.h
|
2023-08-14 19:02:57 -06:00
|
|
|
Crypto/HMAC.cpp
|
|
|
|
Crypto/HMAC.h
|
2022-07-23 23:45:10 -06:00
|
|
|
Crypto/SHA1.cpp
|
|
|
|
Crypto/SHA1.h
|
2018-05-21 08:46:03 -06:00
|
|
|
Debug/MemoryPatches.cpp
|
2019-05-29 02:16:24 -06:00
|
|
|
Debug/MemoryPatches.h
|
2020-03-21 01:48:49 -06:00
|
|
|
Debug/Threads.h
|
2018-01-29 09:58:02 -07:00
|
|
|
Debug/Watches.cpp
|
2019-05-29 02:16:24 -06:00
|
|
|
Debug/Watches.h
|
2019-03-09 06:31:33 -07:00
|
|
|
DynamicLibrary.cpp
|
2019-05-29 02:16:24 -06:00
|
|
|
DynamicLibrary.h
|
2023-04-11 09:48:46 -06:00
|
|
|
ENet.cpp
|
|
|
|
ENet.h
|
2021-02-10 13:46:32 -07:00
|
|
|
EnumFormatter.h
|
2021-04-24 20:26:27 -06:00
|
|
|
EnumMap.h
|
2023-06-16 23:08:07 -06:00
|
|
|
EnumUtils.h
|
2019-05-29 02:16:24 -06:00
|
|
|
Event.h
|
2022-04-16 19:06:55 -06:00
|
|
|
FatFsUtil.cpp
|
2022-04-16 22:08:59 -06:00
|
|
|
FatFsUtil.h
|
2014-06-05 17:29:54 -06:00
|
|
|
FileSearch.cpp
|
2019-05-29 02:16:24 -06:00
|
|
|
FileSearch.h
|
2014-06-05 17:29:54 -06:00
|
|
|
FileUtil.cpp
|
2019-05-29 02:16:24 -06:00
|
|
|
FileUtil.h
|
|
|
|
FixedSizeQueue.h
|
|
|
|
Flag.h
|
2018-05-06 23:18:41 -06:00
|
|
|
FloatUtils.cpp
|
2019-05-29 02:16:24 -06:00
|
|
|
FloatUtils.h
|
2020-11-18 18:51:56 -07:00
|
|
|
FormatUtil.h
|
2019-05-29 02:16:24 -06:00
|
|
|
FPURoundMode.h
|
2014-07-17 19:33:51 -06:00
|
|
|
GekkoDisassembler.cpp
|
2019-05-29 02:16:24 -06:00
|
|
|
GekkoDisassembler.h
|
2014-06-05 17:29:54 -06:00
|
|
|
Hash.cpp
|
2019-05-29 02:16:24 -06:00
|
|
|
Hash.h
|
2023-02-02 17:37:42 -07:00
|
|
|
HookableEvent.h
|
2024-07-28 20:12:21 -06:00
|
|
|
HostDisassembler.cpp
|
|
|
|
HostDisassembler.h
|
2017-06-12 09:17:05 -06:00
|
|
|
HttpRequest.cpp
|
2019-05-29 02:16:24 -06:00
|
|
|
HttpRequest.h
|
2016-12-27 08:32:32 -07:00
|
|
|
Image.cpp
|
2019-05-29 02:16:24 -06:00
|
|
|
Image.h
|
2014-06-05 17:29:54 -06:00
|
|
|
IniFile.cpp
|
2019-05-29 02:16:24 -06:00
|
|
|
IniFile.h
|
2020-05-03 11:42:12 -06:00
|
|
|
Inline.h
|
2020-09-15 04:29:41 -06:00
|
|
|
IOFile.cpp
|
|
|
|
IOFile.h
|
2014-10-31 13:12:54 -06:00
|
|
|
JitRegister.cpp
|
2019-05-29 02:16:24 -06:00
|
|
|
JitRegister.h
|
2024-01-23 00:05:16 -07:00
|
|
|
JsonUtil.h
|
2024-05-31 22:08:39 -06:00
|
|
|
JsonUtil.cpp
|
2019-05-29 02:16:24 -06:00
|
|
|
Lazy.h
|
|
|
|
LinearDiskCache.h
|
|
|
|
Logging/ConsoleListener.h
|
|
|
|
Logging/Log.h
|
2017-08-07 00:25:14 -06:00
|
|
|
Logging/LogManager.cpp
|
2019-05-29 02:16:24 -06:00
|
|
|
Logging/LogManager.h
|
|
|
|
MathUtil.h
|
2019-01-29 15:05:51 -07:00
|
|
|
Matrix.cpp
|
2019-05-29 02:16:24 -06:00
|
|
|
Matrix.h
|
|
|
|
MemArena.h
|
2014-06-05 17:29:54 -06:00
|
|
|
MemoryUtil.cpp
|
2019-05-29 02:16:24 -06:00
|
|
|
MemoryUtil.h
|
2019-08-23 14:38:44 -06:00
|
|
|
MinizipUtil.h
|
2014-06-05 17:29:54 -06:00
|
|
|
MsgHandler.cpp
|
2019-05-29 02:16:24 -06:00
|
|
|
MsgHandler.h
|
2014-06-05 17:29:54 -06:00
|
|
|
NandPaths.cpp
|
2019-05-29 02:16:24 -06:00
|
|
|
NandPaths.h
|
2014-06-05 17:29:54 -06:00
|
|
|
Network.cpp
|
2019-05-29 02:16:24 -06:00
|
|
|
Network.h
|
2014-06-05 17:29:54 -06:00
|
|
|
PcapFile.cpp
|
2019-05-29 02:16:24 -06:00
|
|
|
PcapFile.h
|
2014-11-19 11:57:12 -07:00
|
|
|
Profiler.cpp
|
2019-05-29 02:16:24 -06:00
|
|
|
Profiler.h
|
2017-10-27 17:42:25 -06:00
|
|
|
QoSSession.cpp
|
2019-05-29 02:16:24 -06:00
|
|
|
QoSSession.h
|
2018-05-21 07:48:17 -06:00
|
|
|
Random.cpp
|
2019-05-29 02:16:24 -06:00
|
|
|
Random.h
|
|
|
|
Result.h
|
|
|
|
ScopeGuard.h
|
2014-06-05 17:29:54 -06:00
|
|
|
SDCardUtil.cpp
|
2019-05-29 02:16:24 -06:00
|
|
|
SDCardUtil.h
|
|
|
|
Semaphore.h
|
2017-10-30 10:22:37 -06:00
|
|
|
SettingsHandler.cpp
|
2019-05-29 02:16:24 -06:00
|
|
|
SettingsHandler.h
|
2020-09-15 04:29:41 -06:00
|
|
|
SFMLHelper.cpp
|
|
|
|
SFMLHelper.h
|
2023-08-21 08:12:49 -06:00
|
|
|
SmallVector.h
|
2021-03-04 12:43:35 -07:00
|
|
|
SocketContext.cpp
|
|
|
|
SocketContext.h
|
2024-04-13 10:29:52 -06:00
|
|
|
SpanUtils.h
|
2019-05-29 02:16:24 -06:00
|
|
|
SPSCQueue.h
|
2023-01-30 02:36:25 -07:00
|
|
|
StringLiteral.h
|
2014-06-05 17:29:54 -06:00
|
|
|
StringUtil.cpp
|
2019-05-29 02:16:24 -06:00
|
|
|
StringUtil.h
|
2014-06-05 17:29:54 -06:00
|
|
|
SymbolDB.cpp
|
2019-05-29 02:16:24 -06:00
|
|
|
SymbolDB.h
|
2014-06-05 17:29:54 -06:00
|
|
|
Thread.cpp
|
2019-05-29 02:16:24 -06:00
|
|
|
Thread.h
|
2014-06-05 17:29:54 -06:00
|
|
|
Timer.cpp
|
2019-05-29 02:16:24 -06:00
|
|
|
Timer.h
|
2024-02-17 20:40:25 -07:00
|
|
|
TimeUtil.cpp
|
|
|
|
TimeUtil.h
|
2015-02-02 03:08:58 -07:00
|
|
|
TraversalClient.cpp
|
2019-05-29 02:16:24 -06:00
|
|
|
TraversalClient.h
|
|
|
|
TraversalProto.h
|
2021-04-10 20:34:20 -06:00
|
|
|
TypeUtils.h
|
2024-05-24 18:47:25 -06:00
|
|
|
Unreachable.h
|
2017-08-07 00:26:01 -06:00
|
|
|
UPnP.cpp
|
2019-05-29 02:16:24 -06:00
|
|
|
UPnP.h
|
|
|
|
VariantUtil.h
|
2014-06-05 17:29:54 -06:00
|
|
|
Version.cpp
|
2019-05-29 02:16:24 -06:00
|
|
|
Version.h
|
|
|
|
WindowSystemInfo.h
|
|
|
|
WorkQueueThread.h
|
2014-06-05 17:29:54 -06:00
|
|
|
)
|
|
|
|
|
2023-06-28 11:44:01 -06:00
|
|
|
add_dependencies(common dolphin_scmrev)
|
|
|
|
|
2022-07-27 02:51:19 -06:00
|
|
|
if(NOT MSVC AND _M_ARM_64)
|
|
|
|
set_source_files_properties(
|
|
|
|
Crypto/AES.cpp
|
2022-08-03 00:05:07 -06:00
|
|
|
Crypto/SHA1.cpp
|
2022-07-27 02:51:19 -06:00
|
|
|
PROPERTIES COMPILE_FLAGS "-march=armv8-a+crypto")
|
|
|
|
endif()
|
|
|
|
|
2018-04-01 11:49:34 -06:00
|
|
|
target_link_libraries(common
|
|
|
|
PUBLIC
|
2018-03-23 16:31:29 -06:00
|
|
|
${CMAKE_THREAD_LIBS_INIT}
|
2023-04-15 23:57:34 -06:00
|
|
|
enet::enet
|
2019-06-10 13:00:30 -06:00
|
|
|
fmt::fmt
|
2023-04-15 23:57:34 -06:00
|
|
|
MbedTLS::mbedtls
|
|
|
|
minizip::minizip
|
|
|
|
sfml-network
|
2018-04-01 11:49:34 -06:00
|
|
|
|
|
|
|
PRIVATE
|
2023-04-15 23:57:34 -06:00
|
|
|
CURL::libcurl
|
2022-04-16 19:06:55 -06:00
|
|
|
FatFs
|
2023-03-30 12:12:48 -06:00
|
|
|
Iconv::Iconv
|
2023-04-15 23:57:34 -06:00
|
|
|
spng::spng
|
2018-04-16 10:37:40 -06:00
|
|
|
${VTUNE_LIBRARIES}
|
2018-03-23 16:31:29 -06:00
|
|
|
)
|
2017-03-25 13:11:33 -06:00
|
|
|
|
2024-07-28 20:12:21 -06:00
|
|
|
if ((DEFINED CMAKE_ANDROID_ARCH_ABI AND CMAKE_ANDROID_ARCH_ABI MATCHES "x86|x86_64") OR
|
|
|
|
(NOT DEFINED CMAKE_ANDROID_ARCH_ABI AND _M_X86_64))
|
|
|
|
target_link_libraries(common PRIVATE bdisasm)
|
|
|
|
endif()
|
|
|
|
|
2018-03-30 13:43:49 -06:00
|
|
|
if (APPLE)
|
|
|
|
target_link_libraries(common
|
|
|
|
PRIVATE
|
|
|
|
${APPKIT_LIBRARY}
|
|
|
|
${COREFOUNDATION_LIBRARY}
|
|
|
|
${IOK_LIBRARY}
|
|
|
|
)
|
2019-05-08 13:41:07 -06:00
|
|
|
elseif(WIN32)
|
|
|
|
target_link_libraries(common
|
|
|
|
PRIVATE
|
|
|
|
kernel32.lib
|
|
|
|
shlwapi.lib
|
|
|
|
winmm.lib
|
|
|
|
)
|
2020-02-11 16:07:56 -07:00
|
|
|
if (_M_X86_64)
|
2021-12-12 13:04:13 -07:00
|
|
|
target_link_libraries(common PRIVATE opengl32.lib)
|
2020-02-11 16:07:56 -07:00
|
|
|
endif()
|
2020-06-26 09:52:31 -06:00
|
|
|
elseif (ANDROID)
|
|
|
|
target_link_libraries(common
|
|
|
|
PRIVATE
|
|
|
|
androidcommon
|
|
|
|
)
|
2020-12-12 13:25:51 -07:00
|
|
|
elseif(HAIKU)
|
|
|
|
target_link_libraries(common PRIVATE be GL)
|
2018-03-30 13:43:49 -06:00
|
|
|
endif()
|
|
|
|
|
2015-10-03 07:10:43 -06:00
|
|
|
if(ANDROID)
|
2018-03-23 16:31:29 -06:00
|
|
|
target_sources(common PRIVATE
|
2018-08-19 15:38:29 -06:00
|
|
|
AndroidAnalytics.cpp
|
2019-05-29 02:16:24 -06:00
|
|
|
AndroidAnalytics.h
|
2018-03-23 16:31:29 -06:00
|
|
|
Logging/ConsoleListenerDroid.cpp
|
2021-06-20 17:17:07 -06:00
|
|
|
MemArenaAndroid.cpp
|
2018-03-23 16:31:29 -06:00
|
|
|
)
|
2017-01-20 16:28:32 -07:00
|
|
|
elseif(WIN32)
|
2018-03-23 16:31:29 -06:00
|
|
|
target_sources(common PRIVATE
|
2019-05-08 13:41:07 -06:00
|
|
|
LdrWatcher.cpp
|
2019-05-29 02:16:24 -06:00
|
|
|
LdrWatcher.h
|
2018-03-23 16:31:29 -06:00
|
|
|
Logging/ConsoleListenerWin.cpp
|
2021-06-20 17:17:07 -06:00
|
|
|
MemArenaWin.cpp
|
2018-03-23 16:31:29 -06:00
|
|
|
)
|
2015-10-03 07:10:43 -06:00
|
|
|
else()
|
2018-03-23 16:31:29 -06:00
|
|
|
target_sources(common PRIVATE
|
|
|
|
Logging/ConsoleListenerNix.cpp
|
2021-06-20 17:17:07 -06:00
|
|
|
MemArenaUnix.cpp
|
2018-03-23 16:31:29 -06:00
|
|
|
)
|
2015-10-03 07:10:43 -06:00
|
|
|
endif()
|
|
|
|
|
2015-06-07 21:44:13 -06:00
|
|
|
if(_M_ARM_64)
|
2018-03-23 16:31:29 -06:00
|
|
|
target_sources(common PRIVATE
|
2015-06-07 21:44:13 -06:00
|
|
|
Arm64Emitter.cpp
|
2019-05-29 02:16:24 -06:00
|
|
|
Arm64Emitter.h
|
|
|
|
ArmCommon.h
|
2015-06-07 21:44:13 -06:00
|
|
|
ArmCPUDetect.cpp
|
2021-01-20 06:18:05 -07:00
|
|
|
ArmFPURoundMode.cpp
|
2015-06-07 21:44:13 -06:00
|
|
|
)
|
2014-06-05 19:33:35 -06:00
|
|
|
else()
|
2022-08-07 18:18:36 -06:00
|
|
|
if(_M_X86_64) #X86
|
2018-03-23 16:31:29 -06:00
|
|
|
target_sources(common PRIVATE
|
2018-06-21 04:41:01 -06:00
|
|
|
x64ABI.cpp
|
2019-05-29 02:16:24 -06:00
|
|
|
x64ABI.h
|
2018-06-21 04:41:01 -06:00
|
|
|
x64Emitter.cpp
|
2019-05-29 02:16:24 -06:00
|
|
|
x64Emitter.h
|
2014-09-22 19:02:21 -06:00
|
|
|
x64FPURoundMode.cpp
|
|
|
|
x64CPUDetect.cpp
|
2019-05-29 02:16:24 -06:00
|
|
|
x64Reg.h
|
2014-09-22 19:02:21 -06:00
|
|
|
)
|
2014-09-08 21:24:23 -06:00
|
|
|
else() # Generic
|
2018-03-23 16:31:29 -06:00
|
|
|
target_sources(common PRIVATE
|
2014-09-22 19:02:21 -06:00
|
|
|
GenericFPURoundMode.cpp
|
|
|
|
GenericCPUDetect.cpp
|
|
|
|
)
|
2014-06-05 19:33:35 -06:00
|
|
|
endif()
|
2013-02-26 12:49:00 -07:00
|
|
|
endif()
|
2010-11-01 09:47:02 -06:00
|
|
|
|
2015-09-18 10:40:00 -06:00
|
|
|
# OpenGL Interface
|
2018-03-23 16:31:29 -06:00
|
|
|
target_sources(common PRIVATE
|
2019-05-29 02:16:24 -06:00
|
|
|
GL/GLContext.cpp
|
|
|
|
GL/GLContext.h
|
2015-09-18 10:40:00 -06:00
|
|
|
GL/GLUtil.cpp
|
2019-05-29 02:16:24 -06:00
|
|
|
GL/GLUtil.h
|
2015-09-18 10:40:00 -06:00
|
|
|
GL/GLExtensions/GLExtensions.cpp
|
2019-05-29 02:16:24 -06:00
|
|
|
GL/GLExtensions/GLExtensions.h
|
2015-09-18 10:40:00 -06:00
|
|
|
)
|
|
|
|
|
2018-10-14 07:17:31 -06:00
|
|
|
if(ENABLE_EGL AND EGL_FOUND)
|
2019-05-29 02:16:24 -06:00
|
|
|
target_sources(common PRIVATE
|
|
|
|
GL/GLInterface/EGL.cpp
|
|
|
|
GL/GLInterface/EGL.h
|
|
|
|
)
|
2015-09-18 10:40:00 -06:00
|
|
|
if(ANDROID)
|
2019-05-29 02:16:24 -06:00
|
|
|
target_sources(common PRIVATE
|
|
|
|
GL/GLInterface/EGLAndroid.cpp
|
|
|
|
GL/GLInterface/EGLAndroid.h
|
|
|
|
)
|
2018-10-14 07:17:31 -06:00
|
|
|
elseif(ENABLE_X11 AND X11_FOUND)
|
2019-05-29 02:16:24 -06:00
|
|
|
target_sources(common PRIVATE
|
|
|
|
GL/GLInterface/EGLX11.cpp
|
|
|
|
GL/GLInterface/EGLX11.h
|
|
|
|
)
|
2015-09-18 10:40:00 -06:00
|
|
|
endif()
|
2018-10-14 07:17:31 -06:00
|
|
|
target_include_directories(common PRIVATE ${EGL_INCLUDE_DIRS})
|
|
|
|
target_link_libraries(common PUBLIC ${EGL_LIBRARIES})
|
2015-09-18 10:40:00 -06:00
|
|
|
endif()
|
|
|
|
|
|
|
|
if(WIN32)
|
2018-03-23 16:31:29 -06:00
|
|
|
target_sources(common PRIVATE
|
|
|
|
CompatPatches.cpp
|
|
|
|
GL/GLInterface/WGL.cpp
|
2019-05-29 02:16:24 -06:00
|
|
|
GL/GLInterface/WGL.h
|
2023-01-17 02:23:44 -07:00
|
|
|
WindowsRegistry.cpp
|
2018-03-23 16:31:29 -06:00
|
|
|
)
|
2015-09-18 10:40:00 -06:00
|
|
|
elseif(APPLE)
|
2019-05-29 02:16:24 -06:00
|
|
|
target_sources(common PRIVATE
|
|
|
|
GL/GLInterface/AGL.h
|
|
|
|
GL/GLInterface/AGL.mm
|
|
|
|
)
|
2020-12-12 13:25:51 -07:00
|
|
|
elseif(HAIKU)
|
|
|
|
target_sources(common PRIVATE
|
|
|
|
GL/GLInterface/BGL.h
|
|
|
|
GL/GLInterface/BGL.cpp
|
|
|
|
)
|
2018-10-14 07:17:31 -06:00
|
|
|
elseif(ENABLE_X11 AND X11_FOUND)
|
2018-10-03 07:03:36 -06:00
|
|
|
target_sources(common PRIVATE
|
|
|
|
GL/GLX11Window.cpp
|
2019-05-29 02:16:24 -06:00
|
|
|
GL/GLX11Window.h
|
|
|
|
GL/GLInterface/GLX.cpp
|
|
|
|
GL/GLInterface/GLX.h
|
|
|
|
)
|
2018-10-03 07:03:36 -06:00
|
|
|
|
|
|
|
# GLX has a hard dependency on libGL.
|
|
|
|
# Make sure to link to it if using GLX.
|
|
|
|
target_link_libraries(common PUBLIC ${OPENGL_LIBRARIES})
|
2015-09-18 10:40:00 -06:00
|
|
|
endif()
|
|
|
|
|
2018-07-02 11:01:16 -06:00
|
|
|
if(CMAKE_SYSTEM_NAME STREQUAL "Linux")
|
2018-03-23 16:31:29 -06:00
|
|
|
target_link_libraries(common PUBLIC dl rt)
|
2015-09-18 10:40:00 -06:00
|
|
|
endif()
|
|
|
|
|
2023-04-06 19:37:45 -06:00
|
|
|
if(WIN32)
|
2022-04-27 00:22:02 -06:00
|
|
|
target_sources(common PRIVATE HRWrap.h HRWrap.cpp)
|
2021-12-12 13:04:13 -07:00
|
|
|
endif()
|
|
|
|
|
2017-08-14 16:13:49 -06:00
|
|
|
if(USE_UPNP)
|
|
|
|
target_link_libraries(common PRIVATE Miniupnpc::miniupnpc)
|
|
|
|
endif()
|
|
|
|
|
2017-08-14 15:09:32 -06:00
|
|
|
if(OPROFILE_FOUND)
|
2018-04-13 17:32:11 -06:00
|
|
|
target_link_libraries(common PRIVATE OProfile::OProfile)
|
2017-08-14 15:09:32 -06:00
|
|
|
endif()
|
|
|
|
|
2024-07-28 20:12:21 -06:00
|
|
|
if(ENABLE_LLVM)
|
|
|
|
find_package(LLVM CONFIG)
|
|
|
|
if(LLVM_FOUND)
|
|
|
|
message(STATUS "LLVM found, enabling LLVM support in disassembler")
|
|
|
|
target_compile_definitions(common PRIVATE HAVE_LLVM)
|
|
|
|
# Minimal documentation about LLVM's CMake functions is available here:
|
|
|
|
# https://releases.llvm.org/16.0.0/docs/CMake.html#embedding-llvm-in-your-project
|
|
|
|
# https://groups.google.com/g/llvm-dev/c/YeEVe7HTasQ?pli=1
|
|
|
|
#
|
|
|
|
# However, you have to read the source code in any case.
|
|
|
|
# Look for LLVM-Config.cmake in your (Unix) system:
|
|
|
|
# $ find /usr -name LLVM-Config\\.cmake 2>/dev/null
|
|
|
|
llvm_expand_pseudo_components(LLVM_EXPAND_COMPONENTS
|
|
|
|
AllTargetsInfos AllTargetsDisassemblers AllTargetsCodeGens
|
|
|
|
)
|
|
|
|
llvm_config(common USE_SHARED
|
|
|
|
mcdisassembler target ${LLVM_EXPAND_COMPONENTS}
|
|
|
|
)
|
|
|
|
target_include_directories(common PRIVATE ${LLVM_INCLUDE_DIRS})
|
|
|
|
endif()
|
|
|
|
endif()
|
|
|
|
|
2017-01-20 15:03:59 -07:00
|
|
|
if(UNIX)
|
|
|
|
# Posix networking code needs to be fixed for Windows
|
|
|
|
add_executable(traversal_server TraversalServer.cpp)
|
2023-12-18 08:48:42 -07:00
|
|
|
target_link_libraries(traversal_server PRIVATE common fmt::fmt)
|
2018-03-07 23:10:17 -07:00
|
|
|
if(SYSTEMD_FOUND)
|
2018-06-08 15:40:42 -06:00
|
|
|
target_link_libraries(traversal_server PRIVATE ${SYSTEMD_LIBRARIES})
|
2018-03-07 23:10:17 -07:00
|
|
|
endif()
|
2017-06-15 22:26:40 -06:00
|
|
|
elseif(WIN32)
|
2022-09-11 00:21:12 -06:00
|
|
|
find_package(PowerShell REQUIRED)
|
|
|
|
execute_process(
|
|
|
|
COMMAND ${POWERSHELL_EXE} -Command "[System.Diagnostics.FileVersionInfo]::GetVersionInfo('$ENV{VCToolsRedistDir}vc_redist.x64.exe').ProductVersion"
|
|
|
|
OUTPUT_VARIABLE VC_TOOLS_VERSION
|
|
|
|
OUTPUT_STRIP_TRAILING_WHITESPACE
|
|
|
|
)
|
|
|
|
configure_file(
|
|
|
|
"${CMAKE_CURRENT_SOURCE_DIR}/build_info.txt.in"
|
|
|
|
"${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/build_info.txt"
|
|
|
|
)
|
|
|
|
|
2017-06-15 22:26:40 -06:00
|
|
|
target_link_libraries(common PRIVATE "-INCLUDE:enableCompatPatches")
|
2017-01-20 15:03:59 -07:00
|
|
|
endif()
|
2022-04-27 00:57:13 -06:00
|
|
|
|
|
|
|
if(MSVC)
|
|
|
|
# Add precompiled header
|
2022-05-21 17:19:44 -06:00
|
|
|
target_link_libraries(common PRIVATE use_pch)
|
2022-04-27 00:57:13 -06:00
|
|
|
endif()
|