在这个问题中:
我们看到了如何制定一对add_custom_command()
和命令,用于从文件add_custom_target()
中构建文件:.fatbin
.cu
add_custom_command(
OUTPUT my_src.fatbin
COMMAND ${CMAKE_CUDA_COMPILER} -fatbin -o foo.fatbin
"${CMAKE_CURRENT_SOURCE_DIR}/my_src.cu"
MAIN_DEPENDENCY my_src.cu
)
add_custom_target(dummy ALL DEPENDS my_src.fatbin)
. 这些文件是什么以及如何使用它们的细节对于这个问题并不重要(我希望);我想做的是概括这两个特定的命令,以便我不只是my_src.fatbin
从构建my_src.cu
,而是可以轻松地将.cu
我指定的任何文件构建到.fatbin
文件中。本质上,相当于 Make 的:
$(OBJDIR)/%.fatbin : $(SRCDIR)/%.cu
$(CUDA_COMPILER) $(CUDA_CPP_FLAGS) -fatbin -o $@ $<
这样做的适当成语是什么?