diff options
Diffstat (limited to 'NvBlast/sdk/compiler/cmake/NvBlastExtShaders.cmake')
| -rw-r--r-- | NvBlast/sdk/compiler/cmake/NvBlastExtShaders.cmake | 74 |
1 files changed, 74 insertions, 0 deletions
diff --git a/NvBlast/sdk/compiler/cmake/NvBlastExtShaders.cmake b/NvBlast/sdk/compiler/cmake/NvBlastExtShaders.cmake new file mode 100644 index 0000000..df4a3ad --- /dev/null +++ b/NvBlast/sdk/compiler/cmake/NvBlastExtShaders.cmake @@ -0,0 +1,74 @@ +# +# Build NvBlastExtShaders Common +# + + +SET(COMMON_SOURCE_DIR ${PROJECT_SOURCE_DIR}/common) +SET(SHADERS_EXT_SOURCE_DIR ${PROJECT_SOURCE_DIR}/extensions/shaders/source) +SET(SHADERS_EXT_INCLUDE_DIR ${PROJECT_SOURCE_DIR}/extensions/shaders/include) + +# Include here after the directories are defined so that the platform specific file can use the variables. +include(${PROJECT_CMAKE_FILES_DIR}/${TARGET_BUILD_PLATFORM}/NvBlastExtShaders.cmake) + +SET(COMMON_FILES + ${BLASTEXT_PLATFORM_COMMON_FILES} + + ${COMMON_SOURCE_DIR}/NvBlastAssert.cpp + ${COMMON_SOURCE_DIR}/NvBlastAssert.h +) + +SET(PUBLIC_FILES + ${SHADERS_EXT_INCLUDE_DIR}/NvBlastExtDamageShaders.h +) + +SET(EXT_SOURCE_FILES + ${SHADERS_EXT_SOURCE_DIR}/NvBlastExtRadialShaders.cpp + ${SHADERS_EXT_SOURCE_DIR}/NvBlastExtShearShaders.cpp +) + +ADD_LIBRARY(NvBlastExtShaders ${BLAST_EXT_SHARED_LIB_TYPE} + ${COMMON_FILES} + ${PUBLIC_FILES} + + ${EXT_SOURCE_FILES} +) + +SOURCE_GROUP("common" FILES ${COMMON_FILES}) +SOURCE_GROUP("public" FILES ${PUBLIC_FILES}) +SOURCE_GROUP("src" FILES ${EXT_SOURCE_FILES}) + + +# Target specific compile options + +TARGET_INCLUDE_DIRECTORIES(NvBlastExtShaders + PRIVATE ${BLASTEXT_PLATFORM_INCLUDES} + + PUBLIC ${PROJECT_SOURCE_DIR}/lowlevel/include + PUBLIC ${SHADERS_EXT_INCLUDE_DIR} + + PRIVATE ${SHADERS_EXT_SOURCE_DIR} + PRIVATE ${PROJECT_SOURCE_DIR}/common +) + +TARGET_COMPILE_DEFINITIONS(NvBlastExtShaders + PRIVATE ${BLASTEXT_COMPILE_DEFS} +) + +# Warning disables for Capn Proto +TARGET_COMPILE_OPTIONS(NvBlastExtShaders + PRIVATE ${BLASTEXT_PLATFORM_COMPILE_OPTIONS} +) + +SET_TARGET_PROPERTIES(NvBlastExtShaders PROPERTIES + PDB_NAME_DEBUG "NvBlastExtShaders${CMAKE_DEBUG_POSTFIX}" + PDB_NAME_CHECKED "NvBlastExtShaders${CMAKE_CHECKED_POSTFIX}" + PDB_NAME_PROFILE "NvBlastExtShaders${CMAKE_PROFILE_POSTFIX}" + PDB_NAME_RELEASE "NvBlastExtShaders${CMAKE_RELEASE_POSTFIX}" +) + +# Do final direct sets after the target has been defined +#TARGET_LINK_LIBRARIES(NvBlastExtShaders NvBlast ${PHYSXSDK_LIBRARIES} ${APEXSDK_LIBRARIES} ${PXSHAREDSDK_LIBRARIES}) +TARGET_LINK_LIBRARIES(NvBlastExtShaders + PUBLIC NvBlast + PUBLIC ${BLASTEXT_PLATFORM_LINKED_LIBS} +) |