2021-08-09 19:42:12 -07:00
|
|
|
cmake_minimum_required (VERSION 3.16)
|
|
|
|
|
|
|
|
|
|
set(CMAKE_CXX_STANDARD 17)
|
|
|
|
|
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
|
|
|
|
set(CMAKE_CXX_EXTENSIONS OFF)
|
2017-10-05 14:31:51 -07:00
|
|
|
|
2020-07-22 17:37:22 -07:00
|
|
|
if (WIN32)
|
|
|
|
|
add_definitions(-D_HAS_EXCEPTIONS=0)
|
|
|
|
|
endif()
|
|
|
|
|
|
2018-11-13 18:39:32 +07:00
|
|
|
if (NOT WIN32 AND NOT ANDROID)
|
2017-10-05 14:31:51 -07:00
|
|
|
set(CMAKE_CXX_COMPILER "clang++")
|
|
|
|
|
endif()
|
|
|
|
|
|
2017-10-04 17:14:29 -07:00
|
|
|
project (Kraken)
|
|
|
|
|
|
|
|
|
|
macro (add_sources)
|
|
|
|
|
file (RELATIVE_PATH _relPath "${PROJECT_SOURCE_DIR}" "${CMAKE_CURRENT_SOURCE_DIR}")
|
|
|
|
|
foreach (_src ${ARGN})
|
|
|
|
|
if (_relPath)
|
|
|
|
|
list (APPEND SRCS "${_relPath}/${_src}")
|
|
|
|
|
else()
|
|
|
|
|
list (APPEND SRCS "${_src}")
|
|
|
|
|
endif()
|
|
|
|
|
endforeach()
|
|
|
|
|
if (_relPath)
|
|
|
|
|
# propagate SRCS to parent directory
|
|
|
|
|
set (SRCS ${SRCS} PARENT_SCOPE)
|
|
|
|
|
endif()
|
|
|
|
|
endmacro()
|
|
|
|
|
|
2019-07-20 13:55:16 -07:00
|
|
|
macro (add_standard_asset)
|
|
|
|
|
file (RELATIVE_PATH _relPath "${PROJECT_SOURCE_DIR}" "${CMAKE_CURRENT_SOURCE_DIR}")
|
|
|
|
|
foreach (_src ${ARGN})
|
|
|
|
|
if (_relPath)
|
|
|
|
|
list (APPEND KRAKEN_STANDARD_ASSETS "${_relPath}/${_src}")
|
|
|
|
|
else()
|
|
|
|
|
list (APPEND KRAKEN_STANDARD_ASSETS "${_src}")
|
|
|
|
|
endif()
|
|
|
|
|
endforeach()
|
|
|
|
|
if (_relPath)
|
|
|
|
|
# propagate KRAKEN_STANDARD_ASSETS to parent directory
|
|
|
|
|
set (KRAKEN_STANDARD_ASSETS ${KRAKEN_STANDARD_ASSETS} PARENT_SCOPE)
|
|
|
|
|
endif()
|
|
|
|
|
endmacro()
|
|
|
|
|
|
2017-10-04 21:21:29 -07:00
|
|
|
macro (add_public_header)
|
|
|
|
|
file (RELATIVE_PATH _relPath "${PROJECT_SOURCE_DIR}" "${CMAKE_CURRENT_SOURCE_DIR}")
|
|
|
|
|
foreach (_src ${ARGN})
|
|
|
|
|
if (_relPath)
|
|
|
|
|
list (APPEND KRAKEN_PUBLIC_HEADERS "${_relPath}/${_src}")
|
|
|
|
|
else()
|
|
|
|
|
list (APPEND KRAKEN_PUBLIC_HEADERS "${_src}")
|
|
|
|
|
endif()
|
|
|
|
|
endforeach()
|
|
|
|
|
if (_relPath)
|
|
|
|
|
# propagate KRAKEN_PUBLIC_HEADERS to parent directory
|
|
|
|
|
set (KRAKEN_PUBLIC_HEADERS ${KRAKEN_PUBLIC_HEADERS} PARENT_SCOPE)
|
|
|
|
|
endif()
|
|
|
|
|
endmacro()
|
|
|
|
|
|
2024-01-21 13:48:43 -08:00
|
|
|
macro (add_private_headers)
|
|
|
|
|
file (RELATIVE_PATH _relPath "${PROJECT_SOURCE_DIR}" "${CMAKE_CURRENT_SOURCE_DIR}")
|
|
|
|
|
foreach (_src ${ARGN})
|
|
|
|
|
if (_relPath)
|
|
|
|
|
list (APPEND KRAKEN_PRIVATE_HEADERS "${_relPath}/${_src}")
|
|
|
|
|
else()
|
|
|
|
|
list (APPEND KRAKEN_PRIVATE_HEADERS "${_src}")
|
|
|
|
|
endif()
|
|
|
|
|
endforeach()
|
|
|
|
|
if (_relPath)
|
|
|
|
|
# propagate KRAKEN_PRIVATE_HEADERS to parent directory
|
|
|
|
|
set (KRAKEN_PRIVATE_HEADERS ${KRAKEN_PRIVATE_HEADERS} PARENT_SCOPE)
|
|
|
|
|
endif()
|
|
|
|
|
endmacro()
|
|
|
|
|
|
|
|
|
|
macro (add_source_and_header)
|
|
|
|
|
foreach (_src ${ARGN})
|
|
|
|
|
add_sources("${_src}.cpp")
|
|
|
|
|
add_private_headers("${_src}.h")
|
|
|
|
|
endforeach()
|
|
|
|
|
endmacro()
|
|
|
|
|
|
2017-10-04 21:21:29 -07:00
|
|
|
IF(APPLE)
|
2019-07-11 21:27:05 -07:00
|
|
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-deprecated -Wno-deprecated-declarations -Wno-c++11-extensions")
|
|
|
|
|
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-deprecated -Wno-deprecated-declarations -Wno-c++11-extensions")
|
2017-10-04 21:21:29 -07:00
|
|
|
# SET(GUI_TYPE MACOSX_BUNDLE)
|
|
|
|
|
# INCLUDE_DIRECTORIES ( /Developer/Headers/FlatCarbon )
|
2017-11-05 21:27:09 -08:00
|
|
|
FIND_LIBRARY(APPKIT_LIBRARY AppKit)
|
2017-10-04 21:21:29 -07:00
|
|
|
FIND_LIBRARY(OPENGL_LIBRARY OpenGL)
|
|
|
|
|
FIND_LIBRARY(AUDIO_TOOLBOX_LIBRARY AudioToolbox)
|
2017-11-05 23:41:22 -08:00
|
|
|
FIND_LIBRARY(ACCELERATE_LIBRARY Accelerate)
|
2017-11-05 21:27:09 -08:00
|
|
|
MARK_AS_ADVANCED (APPKIT_LIBRARY
|
|
|
|
|
OPENGL_LIBRARY
|
2017-11-05 23:41:22 -08:00
|
|
|
AUDIO_TOOLBOX_LIBRARY
|
|
|
|
|
ACCELERATE_LIBRARY)
|
|
|
|
|
SET(EXTRA_LIBS ${APPKIT_LIBRARY} ${OPENGL_LIBRARY} ${AUDIO_TOOLBOX_LIBRARY} ${ACCELERATE_LIBRARY})
|
2017-10-04 21:21:29 -07:00
|
|
|
FIND_PATH(COCOA_INCLUDE_DIR OpenGL/gl3.h)
|
|
|
|
|
ENDIF (APPLE)
|
2017-10-04 17:14:29 -07:00
|
|
|
|
|
|
|
|
add_subdirectory(kraken)
|
2024-08-17 14:56:43 -07:00
|
|
|
source_group(TREE ${CMAKE_CURRENT_SOURCE_DIR}/kraken PREFIX Source FILES ${SRCS} ${KRAKEN_PRIVATE_HEADERS})
|
2017-10-04 17:14:29 -07:00
|
|
|
|
2018-07-29 23:37:41 -07:00
|
|
|
add_public_header(hydra/include/aabb.h)
|
|
|
|
|
add_public_header(hydra/include/hitinfo.h)
|
|
|
|
|
add_public_header(hydra/include/hydra.h)
|
|
|
|
|
add_public_header(hydra/include/matrix2.h)
|
|
|
|
|
add_public_header(hydra/include/matrix2x3.h)
|
|
|
|
|
add_public_header(hydra/include/matrix4.h)
|
|
|
|
|
add_public_header(hydra/include/quaternion.h)
|
|
|
|
|
add_public_header(hydra/include/scalar.h)
|
|
|
|
|
add_public_header(hydra/include/triangle3.h)
|
|
|
|
|
add_public_header(hydra/include/vector2.h)
|
|
|
|
|
add_public_header(hydra/include/vector3.h)
|
|
|
|
|
add_public_header(hydra/include/vector4.h)
|
|
|
|
|
add_public_header(hydra/include/vector2i.h)
|
|
|
|
|
|
2023-08-05 17:15:55 -07:00
|
|
|
add_public_header(mimir/include/mimir.h)
|
|
|
|
|
add_public_header(mimir/include/block.h)
|
|
|
|
|
|
2023-12-03 23:06:17 -08:00
|
|
|
add_public_header(siren/include/siren.h)
|
|
|
|
|
add_public_header(siren/include/dsp.h)
|
|
|
|
|
|
2018-11-13 18:39:32 +07:00
|
|
|
# ---- Android ----
|
|
|
|
|
if(ANDROID)
|
|
|
|
|
add_subdirectory(kraken_android)
|
2017-10-30 20:58:14 -07:00
|
|
|
endif()
|
|
|
|
|
|
2018-04-22 23:27:20 -07:00
|
|
|
# ---- Hydra ----
|
|
|
|
|
add_subdirectory(hydra)
|
|
|
|
|
include_directories(hydra/include)
|
2018-10-27 12:47:52 -07:00
|
|
|
list (APPEND EXTRA_LIBS hydra)
|
2018-04-22 23:27:20 -07:00
|
|
|
|
2023-12-03 23:06:17 -08:00
|
|
|
# ---- Siren ----
|
|
|
|
|
add_subdirectory(siren)
|
|
|
|
|
include_directories(siren/include)
|
|
|
|
|
list (APPEND EXTRA_LIBS siren)
|
|
|
|
|
|
2023-08-05 17:15:55 -07:00
|
|
|
# ---- Mimir ----
|
|
|
|
|
add_subdirectory(mimir)
|
|
|
|
|
include_directories(mimir/include)
|
|
|
|
|
list (APPEND EXTRA_LIBS mimir)
|
|
|
|
|
|
2022-09-28 23:20:44 -07:00
|
|
|
# ---- Compressonator CMP_Core ----
|
|
|
|
|
add_subdirectory(3rdparty/compressonator/cmp_core)
|
|
|
|
|
include_directories("${CMAKE_CURRENT_SOURCE_DIR}/3rdparty/compressonator/cmp_core/source")
|
|
|
|
|
list (APPEND EXTRA_LIBS CMP_Core)
|
|
|
|
|
|
2018-08-06 21:34:16 -07:00
|
|
|
# ---- Vulkan ----
|
2020-06-23 15:08:39 -07:00
|
|
|
add_library(vulkan INTERFACE)
|
|
|
|
|
set(VULKAN_INCLUDE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/3rdparty/vulkan/include)
|
|
|
|
|
target_sources(vulkan INTERFACE ${VULKAN_INCLUDE_DIR}/vulkan/vulkan.h)
|
2024-08-17 14:56:43 -07:00
|
|
|
source_group("3rd Party/Vulkan" FILES ${VULKAN_INCLUDE_DIR}/vulkan/vulkan.h)
|
2020-06-23 15:08:39 -07:00
|
|
|
target_include_directories(vulkan INTERFACE ${VULKAN_INCLUDE_DIR})
|
|
|
|
|
|
|
|
|
|
target_compile_definitions(vulkan INTERFACE VK_NO_PROTOTYPES)
|
|
|
|
|
|
|
|
|
|
if(ANDROID)
|
|
|
|
|
target_compile_definitions(vulkan INTERFACE VK_USE_PLATFORM_ANDROID_KHR)
|
|
|
|
|
elseif(WIN32)
|
|
|
|
|
target_compile_definitions(vulkan INTERFACE VK_USE_PLATFORM_WIN32_KHR)
|
|
|
|
|
elseif(APPLE)
|
2024-01-11 23:05:13 -08:00
|
|
|
target_compile_definitions(vulkan INTERFACE VK_USE_PLATFORM_METAL_EXT)
|
2020-06-23 15:08:39 -07:00
|
|
|
elseif(UNIX)
|
|
|
|
|
# See whether X11 is available. If not, fall back to direct-to-display mode.
|
|
|
|
|
find_package(X11 QUIET)
|
|
|
|
|
if (X11_FOUND)
|
|
|
|
|
target_compile_definitions(vulkan INTERFACE VK_USE_PLATFORM_XCB_KHR)
|
|
|
|
|
else()
|
|
|
|
|
set(DIRECT_TO_DISPLAY TRUE)
|
|
|
|
|
set(DIRECT_TO_DISPLAY TRUE PARENT_SCOPE)
|
|
|
|
|
target_compile_definitions(vulkan INTERFACE VK_USE_PLATFORM_DISPLAY_KHR)
|
|
|
|
|
endif()
|
2018-11-13 18:39:32 +07:00
|
|
|
endif()
|
2018-07-29 23:37:41 -07:00
|
|
|
|
2020-06-23 15:08:39 -07:00
|
|
|
list (APPEND EXTRA_LIBS vulkan)
|
|
|
|
|
|
2022-01-14 18:37:14 -08:00
|
|
|
# ---- Vulkan Memory Allocator ----
|
|
|
|
|
include_directories("${CMAKE_CURRENT_SOURCE_DIR}/3rdparty/vma/include")
|
|
|
|
|
|
2020-06-23 15:08:39 -07:00
|
|
|
# ---- Volk ----
|
|
|
|
|
# volk
|
|
|
|
|
set(VOLK_DIR "${CMAKE_CURRENT_SOURCE_DIR}/3rdparty/volk")
|
|
|
|
|
set(VOLK_FILES
|
|
|
|
|
"${VOLK_DIR}/volk.c"
|
|
|
|
|
"${VOLK_DIR}/volk.h")
|
|
|
|
|
|
|
|
|
|
add_library(volk STATIC ${VOLK_FILES})
|
|
|
|
|
|
|
|
|
|
target_link_libraries(volk PUBLIC vulkan)
|
|
|
|
|
|
|
|
|
|
target_include_directories(volk PUBLIC ${VOLK_DIR})
|
|
|
|
|
|
|
|
|
|
set_property(TARGET volk PROPERTY FOLDER "3rdparty")
|
|
|
|
|
|
|
|
|
|
list (APPEND EXTRA_LIBS volk)
|
2019-12-01 15:49:49 -08:00
|
|
|
|
|
|
|
|
# ---- GLSlang ----
|
|
|
|
|
if(NOT ANDROID)
|
|
|
|
|
set(ENABLE_GLSLANG_BINARIES OFF)
|
|
|
|
|
set(ENABLE_GLSLANG_INSTALL OFF)
|
|
|
|
|
set(ENABLE_SPVREMAPPER OFF)
|
|
|
|
|
add_subdirectory(3rdparty/glslang)
|
|
|
|
|
include_directories(3rdparty/glslang/Public)
|
|
|
|
|
list (APPEND EXTRA_LIBS "glslang")
|
|
|
|
|
list (APPEND EXTRA_LIBS "SPIRV")
|
|
|
|
|
endif()
|
|
|
|
|
|
2022-02-21 19:35:55 -08:00
|
|
|
# ---- SPIRV-Reflect ----
|
|
|
|
|
include_directories(3rdparty/spirv-reflect)
|
2024-08-17 14:56:43 -07:00
|
|
|
add_source_and_header(3rdparty/spirv-reflect/spirv_reflect)
|
|
|
|
|
source_group("3rd Party/SPIRV Reflect" FILES 3rdparty/spirv-reflect/spirv_reflect.h 3rdparty/spirv-reflect/spirv_reflect.c 3rdparty/spirv-reflect/spirv_reflect.cpp)
|
|
|
|
|
|
|
|
|
|
# ---- TinyXML2 ----
|
|
|
|
|
add_source_and_header(3rdparty/tinyxml2/tinyxml2)
|
|
|
|
|
source_group("3rd Party/TinyXML 2" FILES 3rdparty/tinyxml2/tinyxml2.h 3rdparty/tinyxml2/tinyxml2.cpp)
|
|
|
|
|
|
|
|
|
|
# ---- Forsyth ----
|
|
|
|
|
add_source_and_header(3rdparty/forsyth/forsyth)
|
|
|
|
|
source_group("3rd Party/Forsyth" FILES 3rdparty/forsyth/forsyth.h 3rdparty/forsyth/forsyth.cpp)
|
2022-02-21 19:35:55 -08:00
|
|
|
|
2024-01-21 14:08:45 -08:00
|
|
|
source_group("Public Headers", FILES ${KRAKEN_PUBLIC_HEADERS})
|
2024-08-17 14:56:43 -07:00
|
|
|
# source_group("Private Headers", FILES ${KRAKEN_PRIVATE_HEADERS})
|
2024-01-21 14:08:45 -08:00
|
|
|
|
2024-01-21 13:48:43 -08:00
|
|
|
add_library(kraken STATIC ${SRCS} ${KRAKEN_PUBLIC_HEADERS} ${KRAKEN_PRIVATE_HEADERS})
|
2019-01-10 22:11:43 -08:00
|
|
|
TARGET_LINK_LIBRARIES( kraken ${EXTRA_LIBS} )
|
2018-07-27 01:09:03 -07:00
|
|
|
SET_TARGET_PROPERTIES(
|
2019-01-10 22:11:43 -08:00
|
|
|
kraken
|
2018-07-27 01:09:03 -07:00
|
|
|
PROPERTIES
|
|
|
|
|
PUBLIC_HEADER "${KRAKEN_PUBLIC_HEADERS}"
|
2024-01-21 13:48:43 -08:00
|
|
|
PRIVATE_HEADER "${KRAKEN_PRIVATE_HEADERS}"
|
2019-01-10 22:11:43 -08:00
|
|
|
ARCHIVE_OUTPUT_DIRECTORY "lib${LIB_SUFFIX}"
|
2021-08-09 19:42:12 -07:00
|
|
|
OUTPUT_NAME kraken_static
|
2018-10-27 12:47:52 -07:00
|
|
|
)
|
2018-07-29 23:37:41 -07:00
|
|
|
|
2024-01-21 13:48:43 -08:00
|
|
|
add_library(kraken_dynamic SHARED ${SRCS} ${KRAKEN_PUBLIC_HEADERS} ${KRAKEN_PRIVATE_HEADERS})
|
2020-06-24 22:01:21 -07:00
|
|
|
TARGET_LINK_LIBRARIES( kraken_dynamic ${EXTRA_LIBS} )
|
|
|
|
|
SET_TARGET_PROPERTIES(
|
|
|
|
|
kraken_dynamic
|
|
|
|
|
PROPERTIES
|
|
|
|
|
PUBLIC_HEADER "${KRAKEN_PUBLIC_HEADERS}"
|
2024-01-21 13:48:43 -08:00
|
|
|
PRIVATE_HEADER "${KRAKEN_PRIVATE_HEADERS}"
|
2020-06-24 22:01:21 -07:00
|
|
|
ARCHIVE_OUTPUT_DIRECTORY "lib${LIB_SUFFIX}"
|
|
|
|
|
OUTPUT_NAME kraken
|
|
|
|
|
)
|
2018-10-27 12:47:52 -07:00
|
|
|
|
2019-01-10 22:11:43 -08:00
|
|
|
install(TARGETS kraken
|
2019-07-11 14:15:39 -07:00
|
|
|
RUNTIME DESTINATION ${CMAKE_CURRENT_BINARY_DIR}/export/${CMAKE_BUILD_TYPE}/bin/win
|
2018-10-27 12:47:52 -07:00
|
|
|
PUBLIC_HEADER DESTINATION ${CMAKE_CURRENT_BINARY_DIR}/export/include
|
2019-07-11 14:15:39 -07:00
|
|
|
ARCHIVE DESTINATION ${CMAKE_CURRENT_BINARY_DIR}/export/${CMAKE_BUILD_TYPE}/lib/win
|
|
|
|
|
LIBRARY DESTINATION ${CMAKE_CURRENT_BINARY_DIR}/export/${CMAKE_BUILD_TYPE}/lib/win
|
2018-10-27 12:47:52 -07:00
|
|
|
)
|
|
|
|
|
|
|
|
|
|
IF(CMAKE_BUILD_TYPE MATCHES DEBUG)
|
2019-01-10 22:11:43 -08:00
|
|
|
install (FILES $<TARGET_PDB_FILE:kraken>
|
2019-07-11 14:15:39 -07:00
|
|
|
DESTINATION ${CMAKE_CURRENT_BINARY_DIR}/export/lib/win)
|
2018-10-27 12:47:52 -07:00
|
|
|
ENDIF(CMAKE_BUILD_TYPE MATCHES DEBUG)
|
2019-04-03 13:53:09 -07:00
|
|
|
|
2019-11-30 17:57:45 -08:00
|
|
|
add_subdirectory(standard_assets)
|
|
|
|
|
|
2023-12-07 22:44:39 -08:00
|
|
|
|
2020-08-09 19:05:43 -07:00
|
|
|
SET(STANDARD_ASSET_LIST_FILE "${CMAKE_BINARY_DIR}/standard_assets_list")
|
2019-11-30 18:28:42 -08:00
|
|
|
SET(STANDARD_ASSET_BUNDLE "${CMAKE_BINARY_DIR}/output/assets/standard_assets.krbundle")
|
|
|
|
|
|
2020-08-09 19:05:43 -07:00
|
|
|
SET(STANDARD_ASSET_LIST_FILE_CONTENTS "")
|
|
|
|
|
FOREACH(line ${KRAKEN_STANDARD_ASSETS})
|
|
|
|
|
SET(STANDARD_ASSET_LIST_FILE_CONTENTS "${STANDARD_ASSET_LIST_FILE_CONTENTS}${line}\n")
|
|
|
|
|
ENDFOREACH(line)
|
|
|
|
|
FILE(WRITE ${STANDARD_ASSET_LIST_FILE} ${STANDARD_ASSET_LIST_FILE_CONTENTS})
|
2023-12-07 22:44:39 -08:00
|
|
|
FILE(MAKE_DIRECTORY "${CMAKE_BINARY_DIR}/output/assets")
|
2020-08-09 19:05:43 -07:00
|
|
|
|
2019-11-30 17:57:45 -08:00
|
|
|
add_custom_command(
|
2019-11-30 18:28:42 -08:00
|
|
|
OUTPUT ${STANDARD_ASSET_BUNDLE}
|
2020-08-09 19:05:43 -07:00
|
|
|
COMMAND kraken_convert -c -i ${STANDARD_ASSET_LIST_FILE} -o ${STANDARD_ASSET_BUNDLE}
|
|
|
|
|
DEPENDS kraken_convert ${KRAKEN_STANDARD_ASSETS} ${STANDARD_ASSET_LIST_FILE}
|
2019-11-30 17:57:45 -08:00
|
|
|
WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}
|
|
|
|
|
COMMENT "Creating Standard Assets"
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
add_custom_target(standard_assets ALL
|
2019-11-30 18:28:42 -08:00
|
|
|
DEPENDS ${STANDARD_ASSET_BUNDLE}
|
2020-12-30 15:19:11 -08:00
|
|
|
SOURCES ${KRAKEN_STANDARD_ASSETS}
|
2019-11-30 17:57:45 -08:00
|
|
|
VERBATIM
|
|
|
|
|
)
|
|
|
|
|
|
2020-06-23 18:52:31 -07:00
|
|
|
foreach(header_file ${KRAKEN_PUBLIC_HEADERS})
|
|
|
|
|
get_filename_component(header_file_name "${header_file}" NAME)
|
|
|
|
|
list(APPEND KRAKEN_PUBLIC_HEADERS_OUTPUT "${header_file_name}")
|
|
|
|
|
endforeach()
|
|
|
|
|
list(TRANSFORM KRAKEN_PUBLIC_HEADERS_OUTPUT PREPEND "${CMAKE_BINARY_DIR}/output/include/")
|
|
|
|
|
|
|
|
|
|
file(COPY ${KRAKEN_PUBLIC_HEADERS} DESTINATION "${CMAKE_BINARY_DIR}/output/include")
|
|
|
|
|
|
|
|
|
|
add_custom_target(kraken_sdk ALL
|
|
|
|
|
DEPENDS ${STANDARD_ASSET_BUNDLE} ${KRAKEN_PUBLIC_HEADERS_OUTPUT}
|
|
|
|
|
VERBATIM
|
|
|
|
|
)
|
|
|
|
|
|
2020-06-24 22:01:21 -07:00
|
|
|
add_custom_command(
|
|
|
|
|
TARGET kraken_sdk
|
|
|
|
|
POST_BUILD
|
|
|
|
|
COMMAND ${CMAKE_COMMAND} -E copy
|
|
|
|
|
$<TARGET_FILE:kraken>
|
|
|
|
|
${CMAKE_BINARY_DIR}/output/lib/$<TARGET_FILE_NAME:kraken>
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
add_custom_command(
|
|
|
|
|
TARGET kraken_sdk
|
|
|
|
|
POST_BUILD
|
|
|
|
|
COMMAND ${CMAKE_COMMAND} -E copy
|
|
|
|
|
$<TARGET_FILE:kraken_dynamic>
|
|
|
|
|
${CMAKE_BINARY_DIR}/output/lib/$<TARGET_FILE_NAME:kraken_dynamic>
|
|
|
|
|
)
|
|
|
|
|
|
2019-04-03 13:53:09 -07:00
|
|
|
add_subdirectory(tests)
|
2019-07-17 23:41:01 -07:00
|
|
|
add_subdirectory(tools)
|
2019-11-30 18:28:42 -08:00
|
|
|
|
|
|
|
|
set_target_properties( kraken PROPERTIES
|
|
|
|
|
RUNTIME_OUTPUT_DIRECTORY_DEBUG ${CMAKE_BINARY_DIR}/output/lib
|
|
|
|
|
RUNTIME_OUTPUT_DIRECTORY_RELEASE ${CMAKE_BINARY_DIR}/output/lib
|
|
|
|
|
)
|