CMakeLists.txt 1.6 KB

1234567891011121314151617181920212223242526272829
  1. # Create AnKiNgx. Inspired by the DLSS example
  2. if(ANKI_DLSS)
  3. set(NGX_SDK_ROOT "${CMAKE_CURRENT_LIST_DIR}/sdk")
  4. # Only Linux and Windows support working with Nvidia SDK (NGX)
  5. if(WINDOWS)
  6. add_library(AnKiNgx IMPORTED SHARED GLOBAL)
  7. set_property(TARGET AnKiNgx APPEND PROPERTY IMPORTED_CONFIGURATIONS DEBUG)
  8. set_property(TARGET AnKiNgx APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE)
  9. set_target_properties(AnKiNgx PROPERTIES IMPORTED_IMPLIB_DEBUG ${NGX_SDK_ROOT}/lib/Windows_x86_64/x86_64/nvsdk_ngx_d_dbg_iterator0.lib)
  10. set_target_properties(AnKiNgx PROPERTIES IMPORTED_IMPLIB_RELEASE ${NGX_SDK_ROOT}/lib/Windows_x86_64/x86_64/nvsdk_ngx_d.lib)
  11. set_target_properties(AnKiNgx PROPERTIES
  12. MAP_IMPORTED_CONFIG_MINSIZEREL Release
  13. MAP_IMPORTED_CONFIG_RELWITHDEBINFO Release
  14. )
  15. set_target_properties(AnKiNgx PROPERTIES IMPORTED_LOCATION
  16. "${NGX_SDK_ROOT}/lib/Windows_x86_64/$<IF:$<CONFIG:Debug>,dev,rel>/nvngx_dlss.dll")
  17. elseif(LINUX)
  18. add_library(AnKiNgx IMPORTED STATIC GLOBAL)
  19. set_property(TARGET AnKiNgx APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE)
  20. set_property(TARGET AnKiNgx APPEND PROPERTY IMPORTED_CONFIGURATIONS DEBUG)
  21. set_property(TARGET AnKiNgx PROPERTY IMPORTED_LOCATION ${NGX_SDK_ROOT}/lib/Linux_x86_64/libnvsdk_ngx.a)
  22. # set the list of DLLs that need copying to target folder of application
  23. set(__NGX_DLLS_LIST "${NGX_SDK_ROOT}/lib/Linux_x86_64/rel/libnvidia-ngx-*.so.*")
  24. else()
  25. message(FATAL_ERROR "Trying to use NGX for invalid platform")
  26. endif()
  27. set_property(TARGET AnKiNgx APPEND PROPERTY ANKINGX_EXTRA_DLLS "${__NGX_DLLS_LIST}")
  28. endif()