aboutsummaryrefslogtreecommitdiff
path: root/ports/onnx-optimizer/fix-cmakelists.patch
blob: 4c54d77e057957c7dbcb8654ed13ef5315ed3d5e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
diff --git a/CMakeLists.txt b/CMakeLists.txt
index c2e48b3..5716fbb 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -7,10 +7,18 @@ if(NOT MSVC)
   set(CMAKE_CXX_STANDARD 11)
 endif(NOT MSVC)
 
+# Add MSVC RunTime Flag
+function(add_msvc_runtime_flag lib)
+  if(${ONNX_USE_MSVC_STATIC_RUNTIME})
+    target_compile_options(${lib} PRIVATE $<$<NOT:$<CONFIG:Debug>>:/MT> $<$<CONFIG:Debug>:/MTd>)    
+  else()
+    target_compile_options(${lib} PRIVATE $<$<NOT:$<CONFIG:Debug>>:/MD> $<$<CONFIG:Debug>:/MDd>)
+  endif()
+endfunction()
 set(CMAKE_POSITION_INDEPENDENT_CODE ON)
 
-set(ONNX_ROOT ${PROJECT_SOURCE_DIR}/third_party/onnx)
-add_subdirectory(${ONNX_ROOT})
+find_package(protobuf CONFIG REQUIRED)
+find_package(ONNX CONFIG REQUIRED)
 
 file(READ "${PROJECT_SOURCE_DIR}/VERSION_NUMBER" ONNX_OPTIMIZER_VERSION)
 string(STRIP "${ONNX_OPTIMIZER_VERSION}" ONNX_OPTIMIZER_VERSION)
@@ -31,6 +39,7 @@ add_executable(onnx_optimizer_exec examples/onnx_optimizer_exec.cpp)
 target_link_libraries(onnx_optimizer_exec onnx_optimizer)
 
 if(BUILD_ONNX_PYTHON)
+  find_package(Python3 COMPONENTS Development REQUIRED)
   if("${PY_EXT_SUFFIX}" STREQUAL "")
     if(MSVC)
       set(PY_EXT_SUFFIX ".pyd")
@@ -51,7 +60,7 @@ if(BUILD_ONNX_PYTHON)
                              $<INSTALL_INTERFACE:include>
                              ${PYTHON_INCLUDE_DIR})
   # pybind11 is a header only lib
-  find_package(pybind11 2.2)
+  find_package(pybind11 2.2 CONFIG REQUIRED)
   if(pybind11_FOUND)
     target_include_directories(onnx_opt_cpp2py_export PUBLIC
       ${pybind11_INCLUDE_DIRS})
@@ -87,11 +96,9 @@ if(BUILD_ONNX_PYTHON)
   endif()
 
   target_link_libraries(onnx_opt_cpp2py_export PRIVATE onnx_optimizer)
-
+  target_link_directories(onnx_opt_cpp2py_export PRIVATE ${Python3_LIBRARY_DIRS})
+  target_link_libraries(onnx_opt_cpp2py_export PRIVATE ${Python3_LIBRARIES})
   if(MSVC)
-    find_package(PythonInterp ${PY_VERSION} REQUIRED)
-    find_package(PythonLibs ${PY_VERSION} REQUIRED)
-    target_link_libraries(onnx_opt_cpp2py_export PRIVATE ${PYTHON_LIBRARIES})
     target_compile_options(onnx_opt_cpp2py_export
                            PRIVATE /MP
                                    /WX