2018-03-23 22:31:29 +00:00
|
|
|
add_library(common
|
2017-03-01 12:43:43 +00:00
|
|
|
Analytics.cpp
|
|
|
|
CDUtils.cpp
|
|
|
|
ColorUtil.cpp
|
2017-04-14 19:07:37 +00:00
|
|
|
CommonFuncs.cpp
|
2017-03-01 12:43:43 +00:00
|
|
|
Config/Config.cpp
|
2017-10-30 16:22:37 +00:00
|
|
|
Config/ConfigInfo.cpp
|
2017-03-01 12:43:43 +00:00
|
|
|
Config/Layer.cpp
|
2017-08-07 06:25:14 +00:00
|
|
|
Crypto/AES.cpp
|
|
|
|
Crypto/bn.cpp
|
|
|
|
Crypto/ec.cpp
|
2018-05-21 14:46:03 +00:00
|
|
|
Debug/MemoryPatches.cpp
|
2018-01-29 16:58:02 +00:00
|
|
|
Debug/Watches.cpp
|
2017-03-01 12:43:43 +00:00
|
|
|
ENetUtil.cpp
|
2017-01-15 20:46:32 +00:00
|
|
|
File.cpp
|
2017-03-01 12:43:43 +00:00
|
|
|
FileSearch.cpp
|
|
|
|
FileUtil.cpp
|
2018-05-07 05:18:41 +00:00
|
|
|
FloatUtils.cpp
|
2017-03-01 12:43:43 +00:00
|
|
|
GekkoDisassembler.cpp
|
|
|
|
Hash.cpp
|
2017-06-12 15:17:05 +00:00
|
|
|
HttpRequest.cpp
|
2016-12-27 15:32:32 +00:00
|
|
|
Image.cpp
|
2017-03-01 12:43:43 +00:00
|
|
|
IniFile.cpp
|
|
|
|
JitRegister.cpp
|
2017-08-07 06:25:14 +00:00
|
|
|
Logging/LogManager.cpp
|
2017-03-01 12:43:43 +00:00
|
|
|
MathUtil.cpp
|
2017-08-07 06:25:14 +00:00
|
|
|
MD5.cpp
|
2017-03-01 12:43:43 +00:00
|
|
|
MemArena.cpp
|
|
|
|
MemoryUtil.cpp
|
|
|
|
MsgHandler.cpp
|
|
|
|
NandPaths.cpp
|
|
|
|
Network.cpp
|
|
|
|
PcapFile.cpp
|
|
|
|
PerformanceCounter.cpp
|
|
|
|
Profiler.cpp
|
2017-10-27 23:42:25 +00:00
|
|
|
QoSSession.cpp
|
2018-05-21 13:48:17 +00:00
|
|
|
Random.cpp
|
2017-03-01 12:43:43 +00:00
|
|
|
SDCardUtil.cpp
|
2018-07-04 21:01:50 +00:00
|
|
|
SFMLHelper.cpp
|
2017-10-30 16:22:37 +00:00
|
|
|
SettingsHandler.cpp
|
2017-03-01 12:43:43 +00:00
|
|
|
StringUtil.cpp
|
|
|
|
SymbolDB.cpp
|
|
|
|
Thread.cpp
|
|
|
|
Timer.cpp
|
|
|
|
TraversalClient.cpp
|
2017-08-07 06:26:01 +00:00
|
|
|
UPnP.cpp
|
2017-03-01 12:43:43 +00:00
|
|
|
Version.cpp
|
|
|
|
)
|
2014-06-05 23:29:54 +00:00
|
|
|
|
2018-04-01 17:49:34 +00:00
|
|
|
target_link_libraries(common
|
|
|
|
PUBLIC
|
2018-03-23 22:31:29 +00:00
|
|
|
${CMAKE_THREAD_LIBS_INIT}
|
|
|
|
enet
|
|
|
|
${MBEDTLS_LIBRARIES}
|
2018-04-01 17:49:34 +00:00
|
|
|
|
|
|
|
PRIVATE
|
2018-04-16 16:37:40 +00:00
|
|
|
${CURL_LIBRARIES}
|
2018-04-01 17:49:34 +00:00
|
|
|
${ICONV_LIBRARIES}
|
2016-12-27 15:32:32 +00:00
|
|
|
png
|
2018-04-16 16:37:40 +00:00
|
|
|
${VTUNE_LIBRARIES}
|
2018-03-23 22:31:29 +00:00
|
|
|
)
|
2017-03-25 19:11:33 +00:00
|
|
|
|
2018-03-30 19:43:49 +00:00
|
|
|
if (APPLE)
|
|
|
|
target_link_libraries(common
|
|
|
|
PRIVATE
|
|
|
|
${APPKIT_LIBRARY}
|
|
|
|
${COREFOUNDATION_LIBRARY}
|
|
|
|
${IOK_LIBRARY}
|
|
|
|
)
|
|
|
|
endif()
|
|
|
|
|
2015-10-03 13:10:43 +00:00
|
|
|
if(ANDROID)
|
2018-03-23 22:31:29 +00:00
|
|
|
target_sources(common PRIVATE
|
2018-08-19 21:38:29 +00:00
|
|
|
AndroidAnalytics.cpp
|
2018-03-23 22:31:29 +00:00
|
|
|
Logging/ConsoleListenerDroid.cpp
|
|
|
|
)
|
2017-01-20 23:28:32 +00:00
|
|
|
elseif(WIN32)
|
2018-03-23 22:31:29 +00:00
|
|
|
target_sources(common PRIVATE
|
|
|
|
Logging/ConsoleListenerWin.cpp
|
|
|
|
)
|
2015-10-03 13:10:43 +00:00
|
|
|
else()
|
2018-03-23 22:31:29 +00:00
|
|
|
target_sources(common PRIVATE
|
|
|
|
Logging/ConsoleListenerNix.cpp
|
|
|
|
)
|
2015-10-03 13:10:43 +00:00
|
|
|
endif()
|
|
|
|
|
2015-06-08 03:44:13 +00:00
|
|
|
if(_M_ARM_64)
|
2018-03-23 22:31:29 +00:00
|
|
|
target_sources(common PRIVATE
|
2017-03-01 12:43:43 +00:00
|
|
|
Arm64Emitter.cpp
|
|
|
|
ArmCPUDetect.cpp
|
|
|
|
GenericFPURoundMode.cpp
|
|
|
|
)
|
2014-06-06 01:33:35 +00:00
|
|
|
else()
|
2017-03-01 12:43:43 +00:00
|
|
|
if(_M_X86) #X86
|
2018-03-23 22:31:29 +00:00
|
|
|
target_sources(common PRIVATE
|
2018-06-21 10:41:01 +00:00
|
|
|
x64ABI.cpp
|
|
|
|
x64Emitter.cpp
|
2017-03-01 12:43:43 +00:00
|
|
|
x64FPURoundMode.cpp
|
|
|
|
x64CPUDetect.cpp
|
|
|
|
)
|
|
|
|
else() # Generic
|
2018-03-23 22:31:29 +00:00
|
|
|
target_sources(common PRIVATE
|
2017-03-01 12:43:43 +00:00
|
|
|
GenericFPURoundMode.cpp
|
|
|
|
GenericCPUDetect.cpp
|
|
|
|
)
|
|
|
|
endif()
|
2013-02-26 19:49:00 +00:00
|
|
|
endif()
|
2010-11-01 15:47:02 +00:00
|
|
|
|
2015-09-18 16:40:00 +00:00
|
|
|
# OpenGL Interface
|
2018-03-23 22:31:29 +00:00
|
|
|
target_sources(common PRIVATE
|
2017-03-01 12:43:43 +00:00
|
|
|
GL/GLUtil.cpp
|
|
|
|
GL/GLExtensions/GLExtensions.cpp
|
|
|
|
GL/GLInterface/GLInterface.cpp
|
|
|
|
)
|
2015-09-18 16:40:00 +00:00
|
|
|
|
|
|
|
if(USE_EGL)
|
2018-03-23 22:31:29 +00:00
|
|
|
target_sources(common PRIVATE GL/GLInterface/EGL.cpp)
|
2017-03-01 12:43:43 +00:00
|
|
|
if(ANDROID)
|
2018-03-23 22:31:29 +00:00
|
|
|
target_sources(common PRIVATE GL/GLInterface/EGLAndroid.cpp)
|
2017-03-01 12:43:43 +00:00
|
|
|
elseif(USE_X11)
|
2018-03-23 22:31:29 +00:00
|
|
|
target_sources(common PRIVATE GL/GLInterface/EGLX11.cpp)
|
2017-03-01 12:43:43 +00:00
|
|
|
endif()
|
2018-03-23 22:31:29 +00:00
|
|
|
target_link_libraries(common PUBLIC EGL)
|
2015-09-18 16:40:00 +00:00
|
|
|
endif()
|
|
|
|
|
|
|
|
if(WIN32)
|
2018-03-23 22:31:29 +00:00
|
|
|
target_sources(common PRIVATE
|
|
|
|
CompatPatches.cpp
|
|
|
|
GL/GLInterface/WGL.cpp
|
|
|
|
)
|
2015-09-18 16:40:00 +00:00
|
|
|
elseif(APPLE)
|
2018-03-23 22:31:29 +00:00
|
|
|
target_sources(common PRIVATE GL/GLInterface/AGL.mm)
|
2017-02-22 17:21:10 +00:00
|
|
|
elseif(HAIKU)
|
2018-03-23 22:31:29 +00:00
|
|
|
target_sources(common PRIVATE GL/GLInterface/BGL.cpp)
|
|
|
|
target_link_libraries(common PUBLIC be GL)
|
2015-09-18 16:40:00 +00:00
|
|
|
elseif(USE_X11)
|
2017-03-01 12:43:43 +00:00
|
|
|
if (NOT USE_EGL)
|
2018-03-23 22:31:29 +00:00
|
|
|
target_sources(common PRIVATE GL/GLInterface/GLX.cpp)
|
2017-03-01 12:43:43 +00:00
|
|
|
# GLX has a hard dependency on libGL.
|
|
|
|
# Make sure to link to it if using GLX.
|
2018-03-23 22:31:29 +00:00
|
|
|
target_link_libraries(common PUBLIC ${OPENGL_LIBRARIES})
|
2017-03-01 12:43:43 +00:00
|
|
|
endif()
|
2018-03-23 22:31:29 +00:00
|
|
|
target_sources(common PRIVATE GL/GLInterface/X11_Util.cpp)
|
|
|
|
target_link_libraries(common PUBLIC ${XRANDR_LIBRARIES})
|
2015-09-18 16:40:00 +00:00
|
|
|
endif()
|
|
|
|
|
2018-07-02 17:01:16 +00:00
|
|
|
if(CMAKE_SYSTEM_NAME STREQUAL "Linux")
|
2018-03-23 22:31:29 +00:00
|
|
|
target_link_libraries(common PUBLIC dl rt)
|
2015-09-18 16:40:00 +00:00
|
|
|
endif()
|
|
|
|
|
2017-08-14 22:13:49 +00:00
|
|
|
if(USE_UPNP)
|
|
|
|
target_link_libraries(common PRIVATE Miniupnpc::miniupnpc)
|
|
|
|
endif()
|
|
|
|
|
2017-08-14 21:09:32 +00:00
|
|
|
if(OPROFILE_FOUND)
|
2018-04-13 23:32:11 +00:00
|
|
|
target_link_libraries(common PRIVATE OProfile::OProfile)
|
2017-08-14 21:09:32 +00:00
|
|
|
endif()
|
|
|
|
|
2017-01-20 22:03:59 +00:00
|
|
|
if(UNIX)
|
2017-03-01 12:43:43 +00:00
|
|
|
# Posix networking code needs to be fixed for Windows
|
|
|
|
add_executable(traversal_server TraversalServer.cpp)
|
2018-05-21 13:48:17 +00:00
|
|
|
target_link_libraries(traversal_server PRIVATE common)
|
2018-03-08 06:10:17 +00:00
|
|
|
if(SYSTEMD_FOUND)
|
2018-06-08 21:40:42 +00:00
|
|
|
target_link_libraries(traversal_server PRIVATE ${SYSTEMD_LIBRARIES})
|
2018-03-08 06:10:17 +00:00
|
|
|
endif()
|
2017-02-22 17:21:10 +00:00
|
|
|
if(HAIKU)
|
2018-06-08 21:40:42 +00:00
|
|
|
target_link_libraries(traversal_server PRIVATE network)
|
2017-02-22 17:21:10 +00:00
|
|
|
endif()
|
2017-06-16 04:26:40 +00:00
|
|
|
elseif(WIN32)
|
|
|
|
target_link_libraries(common PRIVATE "-INCLUDE:enableCompatPatches")
|
2017-01-20 22:03:59 +00:00
|
|
|
endif()
|