diff options
-rw-r--r-- | CMakeLists.txt | 6 | ||||
-rw-r--r-- | NetEx/CMakeLists.txt | 9 | ||||
-rw-r--r-- | Stars45/CMakeLists.txt | 48 |
3 files changed, 46 insertions, 17 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index 286f0ea..b1cb04b 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -2,8 +2,10 @@ cmake_minimum_required(VERSION 3.20) set(CMAKE_CXX_STANDARD 11) set(CMAKE_CXX_EXTENSIONS Yes) project(Starshatter) -set(WINDOWSSDK_LIBPATH "C:/Program Files (x86)/Windows Kits/10/Lib/10.0.19041.0" CACHE FILEPATH "Path to a versioned lib directory of selected Windows SDK") -set(WINDOWSSDK_PATH "C:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0" CACHE FILEPATH "Path to a versioned include directory of selected Windows SDK") +if(MSVC) + set(WINDOWSSDK_LIBPATH "C:/Program Files (x86)/Windows Kits/10/Lib/10.0.19041.0" CACHE FILEPATH "Path to a versioned lib directory of selected Windows SDK") + set(WINDOWSSDK_PATH "C:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0" CACHE FILEPATH "Path to a versioned include directory of selected Windows SDK") +endif() add_subdirectory(Datafile) # /Doc contains various documentation and pre-generated Doxygen docs. add_subdirectory(FoundationEx) diff --git a/NetEx/CMakeLists.txt b/NetEx/CMakeLists.txt index c3c6652..5bce174 100644 --- a/NetEx/CMakeLists.txt +++ b/NetEx/CMakeLists.txt @@ -20,10 +20,15 @@ add_library( target_include_directories( NetEx PUBLIC ${CMAKE_CURRENT_SOURCE_DIR} - PUBLIC ${WINDOWSSDK_PATH}/um # FIXME - PUBLIC ${WINDOWSSDK_PATH}/shared ) target_link_libraries( NetEx PUBLIC FoundationEx ) +if(MSVC) + target_include_directories( + NetEx + PUBLIC ${WINDOWSSDK_PATH}/um + PUBLIC ${WINDOWSSDK_PATH}/shared + ) +endif() diff --git a/Stars45/CMakeLists.txt b/Stars45/CMakeLists.txt index fd0f182..0232606 100644 --- a/Stars45/CMakeLists.txt +++ b/Stars45/CMakeLists.txt @@ -280,9 +280,6 @@ target_include_directories( Stars45 PUBLIC ${CMAKE_CURRENT_SOURCE_DIR} PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/../Opcode # FIXME: Opcode is badly injured. - PUBLIC $ENV{DXSDK_DIR}/Include - PUBLIC ${WINDOWSSDK_PATH}/um # FIXME: Resolve this with a Find module or even find out why is going wrong - most sources say that it should be guaranteed. - PUBLIC ${WINDOWSSDK_PATH}/shared ) target_precompile_headers( Stars45 @@ -298,18 +295,43 @@ target_link_libraries( PUBLIC Ogg::ogg PUBLIC Png::png PUBLIC Opcode # FIXME: Add opcode to a namespace. - PUBLIC ${WINDOWSSDK_LIBPATH}/um/x86/Ws2_32.lib - PUBLIC ${WINDOWSSDK_LIBPATH}/um/x86/Vfw32.lib - PUBLIC ${WINDOWSSDK_LIBPATH}/um/x86/wsock32.lib - PUBLIC ${WINDOWSSDK_LIBPATH}/um/x86/winmm.lib - PUBLIC ${WINDOWSSDK_LIBPATH}/um/x86/version.lib - PUBLIC $ENV{DXSDK_DIR}/Lib/x86/dinput8.lib - PUBLIC $ENV{DXSDK_DIR}/Lib/x86/dsound.lib - PUBLIC $ENV{DXSDK_DIR}/Lib/x86/d3d9.lib - PUBLIC $ENV{DXSDK_DIR}/Lib/x86/d3dx9.lib - PUBLIC $ENV{DXSDK_DIR}/Lib/x86/dxguid.lib ) target_compile_definitions( Stars45 PRIVATE _ALLOW_KEYWORD_MACROS ) +if(MSVC) + target_include_directories( + Stars45 + PUBLIC $ENV{DXSDK_DIR}/Include + PUBLIC ${WINDOWSSDK_PATH}/um + PUBLIC ${WINDOWSSDK_PATH}/shared + ) + target_link_libraries( + Stars45 + PUBLIC ${WINDOWSSDK_LIBPATH}/um/x86/Ws2_32.lib + PUBLIC ${WINDOWSSDK_LIBPATH}/um/x86/Vfw32.lib + PUBLIC ${WINDOWSSDK_LIBPATH}/um/x86/wsock32.lib + PUBLIC ${WINDOWSSDK_LIBPATH}/um/x86/winmm.lib + PUBLIC ${WINDOWSSDK_LIBPATH}/um/x86/version.lib + PUBLIC $ENV{DXSDK_DIR}/Lib/x86/dinput8.lib + PUBLIC $ENV{DXSDK_DIR}/Lib/x86/dsound.lib + PUBLIC $ENV{DXSDK_DIR}/Lib/x86/d3d9.lib + PUBLIC $ENV{DXSDK_DIR}/Lib/x86/d3dx9.lib + PUBLIC $ENV{DXSDK_DIR}/Lib/x86/dxguid.lib + ) +else() + target_link_libraries( + Stars45 + PUBLIC -l:libws2_32.a + PUBLIC -l:libvfw32.a + PUBLIC -l:libwsock32.a + PUBLIC -l:libwinmm.a + PUBLIC -l:libversion.a + PUBLIC -l:libdinput8.a + PUBLIC -l:libdsound.a + PUBLIC -l:libd3d9.a + PUBLIC -l:libd3dx9.a + PUBLIC -l:libdxguid.a + ) +endif() |