Files
ReCaveGame/ClientApp/CMakeLists.txt
2025-02-28 22:30:26 -05:00

56 lines
1.7 KiB
CMake

cmake_minimum_required(VERSION 3.18..3.29)
file(GLOB_RECURSE CaveClientApp_HEADERS "include/*.hpp")
file(GLOB_RECURSE CaveClientApp_SRC "src/*.cpp")
#file(COPY "assets" DESTINATION "${PROJECT_BINARY_DIR}/ClientApp")
file(COPY "${CMAKE_CURRENT_SOURCE_DIR}/assets/"
DESTINATION ${CMAKE_CURRENT_BINARY_DIR}/assets)
if (CLIENT_BUILD_WITH_STEAM)
file(COPY ${CMAKE_CURRENT_SOURCE_DIR}/steam_appid.txt
DESTINATION ${CMAKE_CURRENT_BINARY_DIR})
endif()
add_executable(CaveClientApp main.cpp ${CaveClientApp_SRC})
target_include_directories(CaveClientApp PUBLIC
${CaveClient_SOURCE_DIR}/include
${ReWindow_SOURCE_DIR}/include
${J3ML_SOURCE_DIR}/include
${JGL_SOURCE_DIR}/include)
target_include_directories(CaveClientApp PUBLIC "include")
target_link_libraries(CaveClientApp PUBLIC CaveClient ReWindow J3ML JGL )
target_compile_definitions(CaveClientApp PUBLIC CAVE_CLIENT)
if (CLIENT_BUILD_WITH_STEAM)
target_compile_definitions(CaveClientApp PUBLIC STEAM_BUILD)
add_library(SteamworksSDK SHARED IMPORTED)
# TODO: Can we legally ship the steam SDK with source code?
#set_target_properties(SteamworksSDK PROPERTIES IMPORTED_LOCATION "${CMAKE_CURRENT_SOURCE_DIR}/assets/steamworks_sdk/linux64/libsteam_api.so")
target_include_directories(CaveClientApp PUBLIC "../Steam/")
target_link_libraries(CaveClientApp PUBLIC SteamworksSDK)
endif()
add_custom_command(TARGET CaveClientApp POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy_directory "${PROJECT_BINARY_DIR}/lib/" ${CMAKE_CURRENT_BINARY_DIR}/lib
COMMENT "Copied libraries to build directory")
#file(COPY "${PROJECT_BINARY_DIR}/lib/"
#DESTINATION ${CMAKE_CURRENT_BINARY_DIR}/lib)