Redo of render paths
This commit is contained in:
+32
-34
@@ -1,12 +1,19 @@
|
||||
include (ExternalProject)
|
||||
|
||||
set_property(DIRECTORY PROPERTY EP_BASE external)
|
||||
|
||||
set(DEPENDENCIES)
|
||||
set(EXTRA_CMAKE_ARGS)
|
||||
set(DEPENDENT_BINARIES "")
|
||||
execute_process(COMMAND git submodule update --init --recursive -- ${CMAKE_SOURCE_DIR})
|
||||
|
||||
#------------ASSIMP---------------
|
||||
list(APPEND DEPENDENCIES assimp)
|
||||
set(ASSIMP_BUILD_TESTS OFF CACHE INTERNAL "")
|
||||
set(ASSIMP_BUILD_ASSIMP_TOOLS OFF CACHE INTERNAL "")
|
||||
set(ASSIMP_INSTALL OFF CACHE INTERNAL "")
|
||||
set(ASSIMP_INJECT_DEBUG_POSTFIX OFF CACHE INTERNAL "")
|
||||
|
||||
add_subdirectory(${ASSIMP_ROOT} ${ASSIMP_ROOT})
|
||||
target_compile_definitions(assimp PRIVATE _SILENCE_CXX17_ITERATOR_BASE_CLASS_DEPRECATION_WARNING)
|
||||
|
||||
#-------------BOOST----------------
|
||||
list(APPEND DEPENDENCIES boost)
|
||||
if(WIN32)
|
||||
@@ -38,48 +45,41 @@ list(APPEND EXTRA_CMAKE_ARGS
|
||||
)
|
||||
|
||||
#--------------------JSON------------------
|
||||
#list(APPEND DEPENDENCIES nlohmann_json)
|
||||
list(APPEND DEPENDENCIES nlohmann_json)
|
||||
set(JSON_MultipleHeaders ON CACHE INTERNAL "")
|
||||
set(JSON_BuildTests OFF CACHE INTERNAL "")
|
||||
set(JSON_Install OFF CACHE INTERNAL "")
|
||||
|
||||
add_subdirectory(${JSON_ROOT})
|
||||
export(TARGETS nlohmann_json
|
||||
NAMESPACE nlohmann_json::
|
||||
FILE ${nlohmann_json_BINARY_DIR}/json_target.cmake)
|
||||
|
||||
list(APPEND EXTRA_CMAKE_ARGS
|
||||
-DJSON_IMPORT=${nlohmann_json_BINARY_DIR}/json_target.cmake
|
||||
)
|
||||
|
||||
|
||||
#--------------GLFW------------------------------
|
||||
list(APPEND DEPENDENCIES glfw)
|
||||
set(GLFW_BUILD_DOCS OFF CACHE BOOL "" FORCE)
|
||||
set(GLFW_BUILD_TESTS OFF CACHE BOOL "" FORCE)
|
||||
set(GLFW_BUILD_EXAMPLES OFF CACHE BOOL "" FORCE)
|
||||
set(ENKITS_BUILD_EXAMPLES OFF CACHE BOOL "Build basic example applications" )
|
||||
set(GLFW_BUILD_EXAMPLES OFF CACHE BOOL "GLFW lib only" )
|
||||
set(GLFW_BUILD_TESTS OFF CACHE BOOL "GLFW lib only" )
|
||||
set(GLFW_BUILD_DOCS OFF CACHE BOOL "GLFW lib only" )
|
||||
set(GLFW_BUILD_INSTALL OFF CACHE BOOL "GLFW lib only" )
|
||||
|
||||
add_subdirectory(${GLFW_ROOT})
|
||||
export(TARGETS glfw
|
||||
FILE ${GLFW_BINARY_DIR}/glfw.cmake)
|
||||
add_subdirectory(${GLFW_ROOT} ${GLFW_ROOT})
|
||||
|
||||
#---------------STB_IMAGE------------------------
|
||||
list(APPEND EXTRA_CMAKE_ARGS
|
||||
-DGLFW_IMPORT=${GLFW_BINARY_DIR}/glfw.cmake
|
||||
)
|
||||
-DSTB_INCLUDE_DIRS=${STB_ROOT})
|
||||
|
||||
#--------------SLang------------------------------
|
||||
list(APPEND DEPENDENCIES slang)
|
||||
string(TOLOWER ${CMAKE_BUILD_TYPE}_${CMAKE_PLATFORM} SLANG_CONFIG)
|
||||
string(TOLOWER release_${CMAKE_PLATFORM} SLANG_CONFIG)
|
||||
if(WIN32)
|
||||
ExternalProject_Add(slang
|
||||
SOURCE_DIR ${SLANG_ROOT}
|
||||
BINARY_DIR ${CMAKE_BINARY_DIR}/lib
|
||||
CONFIGURE_COMMAND devenv /upgrade ${SLANG_ROOT}/source/slang/slang.vcxproj
|
||||
BUILD_COMMAND msbuild -p:Configuration=${CMAKE_BUILD_TYPE} -p:Platform=${CMAKE_PLATFORM} -p:WindowsTargetPlatformVersion=10.0 ${SLANG_ROOT}/source/slang/slang.vcxproj
|
||||
BUILD_COMMAND msbuild -p:Configuration=Release -p:Platform=${CMAKE_PLATFORM} -p:WindowsTargetPlatformVersion=10.0 ${SLANG_ROOT}/source/slang/slang.vcxproj
|
||||
INSTALL_COMMAND "")
|
||||
|
||||
string(TOLOWER bin/windows-${CMAKE_PLATFORM}/${CMAKE_BUILD_TYPE}/slang.dll SLANG_BINARY)
|
||||
string(TOLOWER bin/windows-${CMAKE_PLATFORM}/${CMAKE_BUILD_TYPE}/slang.lib SLANG_LIB_PATH)
|
||||
string(TOLOWER bin/windows-${CMAKE_PLATFORM}/Release/slang.dll SLANG_BINARY)
|
||||
string(TOLOWER bin/windows-${CMAKE_PLATFORM}/Release/slang-glslang.dll SLANG_GLSLANG)
|
||||
string(TOLOWER bin/windows-${CMAKE_PLATFORM}/Release/slang.lib SLANG_LIB_PATH)
|
||||
set(SLANG_LIB_PATH ${SLANG_ROOT}/${SLANG_LIB_PATH})
|
||||
elseif(UNIX)
|
||||
ExternalProject_Add(slang
|
||||
@@ -89,24 +89,22 @@ ExternalProject_Add(slang
|
||||
BUILD_COMMAND make -C ${CMAKE_SOURCE_DIR}/external/slang/build.linux config=${SLANG_CONFIG}
|
||||
INSTALL_COMMAND "")
|
||||
|
||||
string(TOLOWER bin/linux-${CMAKE_PLATFORM}/${CMAKE_BUILD_TYPE}/libslang.so SLANG_BINARY)
|
||||
string(TOLOWER bin/linux-${CMAKE_PLATFORM}/Release/libslang.so SLANG_BINARY)
|
||||
string(TOLOWER bin/linux-${CMAKE_PLATFORM}/Release/libslang-glslang.so SLANG_GLSLANG)
|
||||
set(SLANG_LIB_PATH)
|
||||
endif()
|
||||
|
||||
|
||||
|
||||
list(APPEND EXTRA_CMAKE_ARGS
|
||||
-DSLANG_INCLUDE_DIRS=${EXTERNAL_ROOT}/slang
|
||||
-DSLANG_LIBRARY=${SLANG_LIB_PATH})
|
||||
|
||||
list(APPEND DEPENDENT_BINARIES ${SLANG_ROOT}/${SLANG_BINARY})
|
||||
-DSLANG_LIBRARY=${SLANG_LIB_PATH}
|
||||
-DSLANG_BINARY=${SLANG_BINARY}
|
||||
-DSLANG_GLSLANG=${SLANG_GLSLANG})
|
||||
|
||||
list(APPEND EXTRA_CMAKE_ARGS
|
||||
-DDEPENDENT_BINARIES=${DEPENDENT_BINARIES})
|
||||
#-----------------SeeleEngine--------------------
|
||||
ExternalProject_Add(SeeleEngine
|
||||
DEPENDS ${DEPENDENCIES}
|
||||
SOURCE_DIR ${PROJECT_SOURCE_DIR}
|
||||
PREFIX ${CMAKE_BINARY_DIR}
|
||||
BINARY_DIR ${CMAKE_BINARY_DIR}
|
||||
CMAKE_ARGS -DUSE_SUPERBUILD=OFF ${EXTRA_CMAKE_ARGS}
|
||||
INSTALL_COMMAND ""
|
||||
BINARY_DIR ${CMAKE_BINARY_DIR})
|
||||
INSTALL_COMMAND "")
|
||||
|
||||
Reference in New Issue
Block a user