@@ -99,7 +99,6 @@ if (Vulkan_FOUND)
9999
100100    if  (GGML_VULKAN_SHADER_DEBUG_INFO)
101101        add_compile_definitions (GGML_VULKAN_SHADER_DEBUG_INFO)
102-         list (APPEND  VULKAN_SHADER_GEN_CMAKE_ARGS -DGGML_VULKAN_SHADER_DEBUG_INFO=ON )
103102    endif ()
104103
105104    if  (GGML_VULKAN_VALIDATE)
@@ -144,17 +143,10 @@ if (Vulkan_FOUND)
144143                   -DCMAKE_BUILD_TYPE=$<CONFIG>
145144                   ${VULKAN_SHADER_GEN_CMAKE_ARGS} 
146145
147-         BUILD_COMMAND  ${CMAKE_COMMAND}  --build  . --config $<CONFIG>
148-         BUILD_ALWAYS  TRUE 
149- 
150-         # NOTE: When DESTDIR is set using Makefile generators and 
151-         # "make install" triggers the build step, vulkan-shaders-gen 
152-         # would be installed into the DESTDIR prefix, so it is unset 
153-         # to ensure that does not happen. 
154- 
155-         INSTALL_COMMAND ${CMAKE_COMMAND}  -E env --unset=DESTDIR
156-                         ${CMAKE_COMMAND}  --install  . --config $<CONFIG>
146+         BUILD_COMMAND    ${CMAKE_COMMAND}  --build    . --config $<CONFIG>
147+         INSTALL_COMMAND ${CMAKE_COMMAND}  --install  . --config $<CONFIG>
157148    )
149+     ExternalProject_Add_StepTargets(vulkan-shaders-gen build  install )
158150
159151    set  (_ggml_vk_host_suffix $<IF:$<STREQUAL :${CMAKE_HOST_SYSTEM_NAME} ,Windows>,.exe,>)
160152    set  (_ggml_vk_genshaders_dir "${CMAKE_BINARY_DIR} /$<CONFIG>" )
@@ -166,14 +158,6 @@ if (Vulkan_FOUND)
166158
167159    file (GLOB _ggml_vk_shader_files CONFIGURE_DEPENDS "${_ggml_vk_input_dir} /*.comp" )
168160
169-     # Because external projects do not provide source-level tracking, 
170-     # the vulkan-shaders-gen sources need to be explicitly added to 
171-     # ensure that changes will cascade into shader re-generation. 
172- 
173-     file (GLOB _ggml_vk_shaders_gen_sources
174-               CONFIGURE_DEPENDS "${_ggml_vk_input_dir} /*.cpp" 
175-                                 "${_ggml_vk_input_dir} /*.h" )
176- 
177161    add_custom_command (
178162        OUTPUT  ${_ggml_vk_header} 
179163               ${_ggml_vk_source} 
@@ -187,8 +171,9 @@ if (Vulkan_FOUND)
187171            --no -clean
188172
189173        DEPENDS  ${_ggml_vk_shader_files} 
190-                 ${_ggml_vk_shaders_gen_sources} 
191174                vulkan-shaders-gen
175+                 vulkan-shaders-gen-build 
176+                 vulkan-shaders-gen-install 
192177
193178        COMMENT  "Generate vulkan shaders" 
194179    )
0 commit comments