33 lines
1.5 KiB
CMake
33 lines
1.5 KiB
CMake
project(package_windows)
|
|
|
|
option(BUILD_DFLAUNCH "Whether to build the Steam launcher exectuable (requires Steam SDK)." OFF)
|
|
|
|
if(WIN32 AND BUILD_DFLAUNCH)
|
|
# builder must manually download Steam SDK
|
|
set (STEAMAPI_DIR ${dfhack_SOURCE_DIR}/depends/steam)
|
|
set (STEAMAPI_VER 156)
|
|
set (STEAMAPI_ZIP_EXPECTED_HASH af5a579990dbe5ae4c1b0689260d001b)
|
|
set (STEAMSDK_ZIP ${STEAMAPI_DIR}/steamworks_sdk_${STEAMAPI_VER}.zip)
|
|
|
|
set (STEAM_SDK_HASH "NOT FOUND")
|
|
file(MD5 ${STEAMSDK_ZIP} STEAM_SDK_HASH)
|
|
if (NOT (${STEAM_SDK_HASH} STREQUAL ${STEAMAPI_ZIP_EXPECTED_HASH}))
|
|
message(FATAL_ERROR "You need the Steamworks SDK at ${STEAMSDK_ZIP} to build launchdf.exe. Please disable the BUILD_DFLAUNCH CMake option or download the Steam SDK from: https://partner.steamgames.com/downloads/steamworks_sdk_${STEAMAPI_VER}.zip")
|
|
endif()
|
|
if (${STEAMSDK_ZIP} IS_NEWER_THAN ${STEAMAPI_DIR}/sdk)
|
|
file(ARCHIVE_EXTRACT
|
|
INPUT ${STEAMSDK_ZIP}
|
|
DESTINATION ${STEAMAPI_DIR})
|
|
endif()
|
|
|
|
set(STEAMAPI_LIBRARY "${STEAMAPI_DIR}/sdk/redistributable_bin/win64/steam_api64.lib")
|
|
set(STEAMAPI_SOURCE_DIR "${STEAMAPI_DIR}/sdk/public/steam")
|
|
set(STEAMAPI_SHARED_LIBRARY "${STEAMAPI_DIR}/sdk/redistributable_bin/win64/steam_api64.dll")
|
|
|
|
include_directories(${STEAMAPI_SOURCE_DIR})
|
|
link_libraries(${STEAMAPI_LIBRARY})
|
|
add_executable(launchdf WIN32 launchdf.cpp)
|
|
install(TARGETS launchdf DESTINATION ${DFHACK_DATA_DESTINATION})
|
|
install(FILES ${STEAMAPI_SHARED_LIBRARY} DESTINATION ${DFHACK_DATA_DESTINATION})
|
|
endif()
|