--- /dev/null
+if(NOT BUILD_NEURUN)
+ return()
+endif(NOT BUILD_NEURUN)
+
+# Takes target name, source list and kernel list
+function(add_nnfw_custom_op_app NAME)
+ cmake_parse_arguments(
+ PARSED_ARGS # prefix of output variables
+ "" # list of names of the boolean arguments (only defined ones will be true)
+ "" # list of names of mono-valued arguments
+ "SOURCES;KERNELS" # list of names of multi-valued arguments (output variables are lists)
+ ${ARGN} # arguments of the function to parse, here we take the all original ones
+ )
+ add_executable(${NAME} ${PARSED_ARGS_SOURCES})
+ target_link_libraries(${NAME} PRIVATE ${PARSED_ARGS_KERNELS})
+ target_link_libraries(${NAME} PRIVATE nnfw-dev)
+ target_link_libraries(${NAME} PRIVATE dl ${LIB_PTHREAD})
+endfunction()
+
+add_subdirectories()
--- /dev/null
+nnfw_find_package(FlatBuffers REQUIRED)
+
+function(add_nnfw_kernel NAME)
+ add_library(${NAME} STATIC ${ARGN})
+ target_link_libraries(${NAME} PRIVATE nnfw-dev)
+ target_link_libraries(${NAME} PRIVATE flatbuffers)
+endfunction()
+
+add_subdirectories()