@@ -27,7 +27,7 @@ set_target_properties(
2727)
2828
2929target_include_directories (D3D12MemoryAllocator PUBLIC
30- " $ {PROJECT_SOURCE_DIR} /include"
30+ $< BUILD_INTERFACE : $ {PROJECT_SOURCE_DIR} /include > $< INSTALL_INTERFACE :./ include >
3131)
3232
3333target_link_libraries (D3D12MemoryAllocator PUBLIC
@@ -46,7 +46,32 @@ if(BUILD_SHARED_LIBS)
4646 )
4747endif ()
4848
49+ set (D3D12MA_GENERATED_DIR "${CMAKE_CURRENT_BINARY_DIR} /generated" )
50+ set (D3D12MA_VERSION_CONFIG "${D3D12MA_GENERATED_DIR} /${PROJECT_NAME} ConfigVersion.cmake" )
51+ set (D3D12MA_PROJECT_CONFIG "${D3D12MA_GENERATED_DIR} /${PROJECT_NAME} Config.cmake" )
52+ set (D3D12MA_TARGETS_EXPORT_NAME "${PROJECT_NAME} Targets" )
53+ set (D3D12MA_CONFIG_INSTALL_DIR "share/cmake/${PROJECT_NAME} " )
54+ set (D3D12MA_NAMESPACE "GPUOpen::" )
55+ set (D3D12MA_VERSION ${PROJECT_VERSION} )
56+
57+ include (CMakePackageConfigHelpers )
58+ write_basic_package_version_file (
59+ "${D3D12MA_VERSION_CONFIG} " VERSION ${D3D12MA_VERSION} COMPATIBILITY SameMajorVersion
60+ )
61+ configure_file ("${CMAKE_CURRENT_SOURCE_DIR} /cmake/config.cmake.in" "${D3D12MA_PROJECT_CONFIG} " @ONLY )
62+
63+ # Install cmake config files
64+ install (
65+ FILES "${D3D12MA_PROJECT_CONFIG} " "${D3D12MA_VERSION_CONFIG} "
66+ DESTINATION "${D3D12MA_CONFIG_INSTALL_DIR} " )
67+
68+ install (
69+ EXPORT "${D3D12MA_TARGETS_EXPORT_NAME} "
70+ NAMESPACE "${D3D12MA_NAMESPACE} "
71+ DESTINATION "${D3D12MA_CONFIG_INSTALL_DIR} " )
72+
4973install (TARGETS D3D12MemoryAllocator
74+ EXPORT ${D3D12MA_TARGETS_EXPORT_NAME}
5075 RUNTIME DESTINATION "bin"
5176 ARCHIVE DESTINATION "lib"
5277 LIBRARY DESTINATION "lib" )
0 commit comments