metaforce/hecl/lib/CMakeLists.txt

105 lines
3.3 KiB
CMake
Raw Normal View History

macro(hecl_add_list rel_path a_list)
unset(tmp_list)
foreach(path IN LISTS ${a_list})
list(APPEND tmp_list "${rel_path}/${path}")
endforeach(path)
set(${a_list} "${tmp_list}" PARENT_SCOPE)
endmacro(hecl_add_list)
add_subdirectory(Blender)
2015-07-12 23:30:20 -07:00
add_subdirectory(Runtime)
2015-07-06 20:24:09 -07:00
2015-07-22 12:14:50 -07:00
if(WIN32)
2019-06-12 18:29:52 -07:00
list(APPEND PLAT_SRCS ../include/hecl/winsupport.hpp)
2015-07-22 12:14:50 -07:00
endif()
if("${CMAKE_BUILD_TYPE}" STREQUAL "Release" OR "${CMAKE_BUILD_TYPE}" STREQUAL "RelWithDebInfo")
add_definitions(-DHECL_MULTIPROCESSOR)
endif()
2018-01-09 22:16:18 -08:00
set(HECL_HEADERS
../include/hecl/CVar.hpp
../include/hecl/CVarManager.hpp
2018-01-11 01:35:27 -08:00
../include/hecl/Console.hpp
2018-01-09 22:16:18 -08:00
../include/hecl/CVarCommons.hpp
../include/hecl/hecl.hpp
2018-03-23 14:40:12 -07:00
../include/hecl/MultiProgressPrinter.hpp
2018-01-09 22:16:18 -08:00
../include/hecl/FourCC.hpp
2019-05-07 20:47:34 -07:00
../include/hecl/TypedVariant.hpp
2018-01-09 22:16:18 -08:00
../include/hecl/HMDLMeta.hpp
2019-05-07 20:47:34 -07:00
../include/hecl/Backend.hpp
2018-01-09 22:16:18 -08:00
../include/hecl/Blender/Connection.hpp
2018-10-22 01:14:32 -07:00
../include/hecl/Blender/SDNARead.hpp
2018-01-09 22:16:18 -08:00
../include/hecl/Blender/Token.hpp
../include/hecl/SteamFinder.hpp
../include/hecl/Database.hpp
../include/hecl/Runtime.hpp
../include/hecl/ClientProcess.hpp
../include/hecl/SystemChar.hpp
../include/hecl/BitVector.hpp
../include/hecl/MathExtras.hpp
../include/hecl/UniformBufferPool.hpp
2018-10-06 19:53:57 -07:00
../include/hecl/VertexBufferPool.hpp
../include/hecl/PipelineBase.hpp
../include/hecl/Pipeline.hpp
../include/hecl/Compilers.hpp)
2018-01-09 22:16:18 -08:00
set(COMMON_SOURCES
hecl.cpp
2018-03-23 14:40:12 -07:00
MultiProgressPrinter.cpp
2018-01-09 22:16:18 -08:00
Project.cpp
ProjectPath.cpp
HumanizeNumber.cpp
CVar.cpp
2021-02-27 18:36:43 -08:00
CVarCommons.cpp
2018-01-09 22:16:18 -08:00
CVarManager.cpp
2018-01-11 01:35:27 -08:00
Console.cpp
2018-01-09 22:16:18 -08:00
ClientProcess.cpp
SteamFinder.cpp
WideStringConvert.cpp
2021-04-06 12:02:50 -07:00
Compilers.cpp)
2018-01-09 22:16:18 -08:00
2019-02-26 21:13:19 -08:00
if(UNIX)
list(APPEND PLAT_SRCS closefrom.c)
endif()
2018-01-09 22:16:18 -08:00
add_library(hecl-full
${FRONTEND_SOURCES}
${RUNTIME_SOURCES}
2018-01-09 22:16:18 -08:00
${BLENDER_SOURCES}
${COMMON_SOURCES}
${HECL_HEADERS}
2021-04-06 12:02:50 -07:00
${PLAT_SRCS}
Pipeline.cpp)
target_include_directories(hecl-full PUBLIC ../include)
target_link_libraries(hecl-full PUBLIC ${HECL_APPLICATION_REPS_TARGETS_LIST}
hecl-blender-addon boo athena-core logvisor)
target_atdna(hecl-full atdna_HMDLMeta_full.cpp ../include/hecl/HMDLMeta.hpp)
target_atdna(hecl-full atdna_CVar_full.cpp ../include/hecl/CVar.hpp)
target_atdna(hecl-full atdna_SDNARead_full.cpp ../include/hecl/Blender/SDNARead.hpp)
2018-01-09 22:16:18 -08:00
add_library(hecl-light
${RUNTIME_SOURCES}
${COMMON_SOURCES}
${HECL_HEADERS}
${PLAT_SRCS})
target_include_directories(hecl-light PUBLIC ../include)
target_link_libraries(hecl-light PUBLIC ${HECL_APPLICATION_REPS_TARGETS_LIST} boo athena-core logvisor)
target_atdna(hecl-light atdna_HMDLMeta_light.cpp ../include/hecl/HMDLMeta.hpp)
target_atdna(hecl-light atdna_CVar_light.cpp ../include/hecl/CVar.hpp)
2018-10-06 19:53:57 -07:00
add_library(hecl-compilers Compilers.cpp WideStringConvert.cpp)
2019-07-27 18:19:48 -07:00
get_target_property(BOO_INCLUDES boo INTERFACE_INCLUDE_DIRECTORIES)
target_include_directories(hecl-compilers PUBLIC ../include ${BOO_INCLUDES})
target_link_libraries(hecl-compilers PUBLIC athena-core logvisor xxhash
glslang OSDependent OGLCompiler SPIRV glslang-default-resource-limits)
2018-01-09 22:16:18 -08:00
2017-12-11 18:05:28 -08:00
if(COMMAND add_sanitizers)
2018-01-09 22:16:18 -08:00
add_sanitizers(hecl-full)
add_sanitizers(hecl-light)
2018-10-06 19:53:57 -07:00
add_sanitizers(hecl-compilers)
2017-12-28 23:56:31 -08:00
endif()
2017-12-06 20:09:27 -08:00
if(WINDOWS_STORE)
2018-01-09 22:16:18 -08:00
set_property(TARGET hecl-full PROPERTY VS_WINRT_COMPONENT TRUE)
2017-12-06 20:09:27 -08:00
endif()