-nncc_find_package(ONNXProto QUIET)
+nncc_find_package(ONNXSource EXACT 1.5.0 QUIET)
+nncc_find_package(Protobuf QUIET)
-if (NOT ONNXProto_FOUND)
+if (NOT ONNXSource_FOUND)
return()
endif ()
+if (NOT Protobuf_FOUND)
+ return()
+endif ()
+
+Protobuf_Generate(MIR_ONNX_PROTO
+ ${CMAKE_CURRENT_BINARY_DIR}/generated
+ ${ONNXSource_DIR}
+ onnx/onnx.proto)
+
+add_library(mir_onnx_proto STATIC ${MIR_ONNX_PROTO_SOURCES})
+set_target_properties(mir_onnx_proto PROPERTIES POSITION_INDEPENDENT_CODE ON)
+target_include_directories(mir_onnx_proto PUBLIC ${MIR_ONNX_PROTO_INCLUDE_DIRS})
+target_link_libraries(mir_onnx_proto PUBLIC libprotobuf)
+
set(MIR_ONNX_IMPORTER_SOURCES
ONNXHelpers.cpp
ONNXHelpers.h
add_library(mir_onnx_importer STATIC ${MIR_ONNX_IMPORTER_SOURCES})
set_target_properties(mir_onnx_importer PROPERTIES POSITION_INDEPENDENT_CODE ON)
-target_compile_definitions(mir_onnx_importer PUBLIC ONNX_NAMESPACE=onnx)
target_include_directories(mir_onnx_importer PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
-target_link_libraries(mir_onnx_importer PUBLIC onnxproto mir PRIVATE stdex)
+target_link_libraries(mir_onnx_importer PUBLIC mir_onnx_proto mir PRIVATE stdex)