Reland "[libclc] Create aliases with custom_command (#115885)" (#116025)
This relands commit 2c980310f67c13dd89c8702d40abeab47a4a2b4b after
fixing an issue.
GitOrigin-RevId: 76befc86dea9cad6be870c04732379f7ecf596dd
diff --git a/cmake/modules/AddLibclc.cmake b/cmake/modules/AddLibclc.cmake
index ee7c850..b520626 100644
--- a/cmake/modules/AddLibclc.cmake
+++ b/cmake/modules/AddLibclc.cmake
@@ -355,11 +355,14 @@
install( FILES ${CMAKE_CURRENT_BINARY_DIR}/${obj_suffix} DESTINATION "${CMAKE_INSTALL_DATADIR}/clc" )
foreach( a ${ARG_ALIASES} )
set( alias_suffix "${a}-${ARG_TRIPLE}.bc" )
- add_custom_target( ${alias_suffix} ALL
+ add_custom_command(
+ OUTPUT ${alias_suffix}
COMMAND ${CMAKE_COMMAND} -E create_symlink ${obj_suffix} ${alias_suffix}
DEPENDS prepare-${obj_suffix} )
- set_target_properties( "${alias_suffix}" PROPERTIES FOLDER "libclc/Device IR/Aliases" )
- install( FILES ${CMAKE_CURRENT_BINARY_DIR}/${alias_suffix} DESTINATION "${CMAKE_INSTALL_DATADIR}/clc" )
+ add_custom_target( alias-${alias_suffix} ALL DEPENDS ${alias_suffix} )
+ set_target_properties( alias-${alias_suffix} PROPERTIES FOLDER "libclc/Device IR/Aliases" )
+ install( FILES ${CMAKE_CURRENT_BINARY_DIR}/${alias_suffix}
+ DESTINATION "${CMAKE_INSTALL_DATADIR}/clc" )
endforeach( a )
endfunction(add_libclc_builtin_set)