@@ -245,15 +245,27 @@ function(gen_operators_lib)
245245 list (REMOVE_ITEM GEN_KERNEL_LIBS ${portable_kernels_check} )
246246
247247 # Build kernels_util_all_deps, since later selected_portable_kernels depends on it
248- list (TRANSFORM _kernels_util_all_deps__srcs PREPEND "${EXECUTORCH_ROOT} /" )
248+ list (LENGTH _kernels_util_all_deps__srcs num_util_srcs)
249+ if (num_util_srcs EQUAL 0)
250+ file (GLOB_RECURSE _kernels_util_all_deps__srcs "${EXECUTORCH_DIR} /kernels/portable/cpu/util/*.cpp" )
251+ list (FILTER _kernels_util_all_deps__srcs EXCLUDE REGEX "${EXECUTORCH_DIR} /kernels/portable/cpu/util/test/.*" )
252+ else ()
253+ list (TRANSFORM _kernels_util_all_deps__srcs PREPEND "${EXECUTORCH_ROOT} /" )
254+ endif ()
249255 add_library (selected_kernels_util_all_deps ${_kernels_util_all_deps__srcs} )
250256 target_link_libraries (selected_kernels_util_all_deps PRIVATE executorch_core)
251257 target_include_directories (selected_kernels_util_all_deps PUBLIC ${_common_include_directories} )
252258 target_compile_definitions (selected_kernels_util_all_deps PUBLIC C10_USING_CUSTOM_GENERATED_MACROS)
253259 target_compile_options (selected_kernels_util_all_deps PUBLIC ${_common_compile_options} )
254260
255261 # Build selected_portable_kernels
256- list (TRANSFORM _portable_kernels__srcs PREPEND "${EXECUTORCH_ROOT} /" )
262+ list (LENGTH _portable_kernels__srcs num_kernel_srcs)
263+ if (num_kernel_srcs EQUAL 0)
264+ file (GLOB_RECURSE _portable_kernels__srcs "${EXECUTORCH_DIR} /kernels/portable/cpu/op_*.cpp" )
265+ list (FILTER _portable_kernels__srcs EXCLUDE REGEX "${EXECUTORCH_DIR} /kernels/portable/cpu/util/test/.*" )
266+ else ()
267+ list (TRANSFORM _portable_kernels__srcs PREPEND "${EXECUTORCH_ROOT} /" )
268+ endif ()
257269 add_library (selected_portable_kernels ${_portable_kernels__srcs} )
258270 target_link_libraries (selected_portable_kernels PRIVATE executorch_core selected_kernels_util_all_deps)
259271 target_compile_options (selected_portable_kernels PUBLIC ${_common_compile_options} )
0 commit comments