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
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
|
From: Pavel Sobolev <contact@paveloom.dev>
Subject: [PATCH] Use system libraries
Everything, except for Eigen3.
Signed-off-by: Pavel Sobolev <contact@paveloom.dev>
--- a/cmake/external/abseil-cpp.cmake
+++ b/cmake/external/abseil-cpp.cmake
@@ -39,7 +39,7 @@ onnxruntime_fetchcontent_declare(
URL_HASH SHA1=${DEP_SHA1_abseil_cpp}
EXCLUDE_FROM_ALL
PATCH_COMMAND ${ABSL_PATCH_COMMAND}
- FIND_PACKAGE_ARGS 20250814 NAMES absl
+ FIND_PACKAGE_ARGS NAMES absl REQUIRED
)
onnxruntime_fetchcontent_makeavailable(abseil_cpp)
--- a/cmake/external/onnxruntime_external_deps.cmake
+++ b/cmake/external/onnxruntime_external_deps.cmake
@@ -43,7 +43,7 @@ onnxruntime_fetchcontent_declare(
URL ${DEP_URL_re2}
URL_HASH SHA1=${DEP_SHA1_re2}
EXCLUDE_FROM_ALL
- FIND_PACKAGE_ARGS NAMES re2
+ FIND_PACKAGE_ARGS NAMES re2 REQUIRED
)
onnxruntime_fetchcontent_makeavailable(re2)
@@ -71,7 +71,7 @@ if (onnxruntime_BUILD_UNIT_TESTS)
URL ${DEP_URL_googletest}
URL_HASH SHA1=${DEP_SHA1_googletest}
EXCLUDE_FROM_ALL
- FIND_PACKAGE_ARGS 1.14.0...<2.0.0 NAMES GTest
+ FIND_PACKAGE_ARGS 1.14.0...<2.0.0 NAMES GTest REQUIRED
)
FetchContent_MakeAvailable(googletest)
endif()
@@ -87,7 +87,7 @@ if (onnxruntime_BUILD_BENCHMARKS)
URL ${DEP_URL_google_benchmark}
URL_HASH SHA1=${DEP_SHA1_google_benchmark}
EXCLUDE_FROM_ALL
- FIND_PACKAGE_ARGS NAMES benchmark
+ FIND_PACKAGE_ARGS NAMES benchmark REQUIRED
)
onnxruntime_fetchcontent_makeavailable(google_benchmark)
endif()
@@ -105,7 +105,7 @@ if(onnxruntime_USE_MIMALLOC)
URL ${DEP_URL_mimalloc}
URL_HASH SHA1=${DEP_SHA1_mimalloc}
EXCLUDE_FROM_ALL
- FIND_PACKAGE_ARGS NAMES mimalloc
+ FIND_PACKAGE_ARGS NAMES mimalloc REQUIRED
)
FetchContent_MakeAvailable(mimalloc)
endif()
@@ -199,7 +199,7 @@ onnxruntime_fetchcontent_declare(
URL_HASH SHA1=${DEP_SHA1_protobuf}
PATCH_COMMAND ${ONNXRUNTIME_PROTOBUF_PATCH_COMMAND}
EXCLUDE_FROM_ALL
- FIND_PACKAGE_ARGS NAMES Protobuf protobuf
+ FIND_PACKAGE_ARGS NAMES Protobuf protobuf REQUIRED
)
set(protobuf_BUILD_TESTS OFF CACHE BOOL "Build protobuf tests" FORCE)
@@ -276,7 +276,7 @@ onnxruntime_fetchcontent_declare(
EXCLUDE_FROM_ALL
PATCH_COMMAND
${Patch_EXECUTABLE} --binary --ignore-whitespace -p1 < ${PROJECT_SOURCE_DIR}/patches/date/date.patch
- FIND_PACKAGE_ARGS 3...<4 NAMES date
+ FIND_PACKAGE_ARGS 3...<4 NAMES date REQUIRED
)
onnxruntime_fetchcontent_makeavailable(date)
@@ -290,12 +290,11 @@ if(NOT TARGET Boost::mp11)
mp11
URL ${DEP_URL_mp11}
EXCLUDE_FROM_ALL
- FIND_PACKAGE_ARGS NAMES Boost
+ FIND_PACKAGE_ARGS NAMES Boost REQUIRED
)
- FetchContent_Populate(mp11)
+ onnxruntime_fetchcontent_makeavailable(mp11)
if(NOT TARGET Boost::mp11)
- add_library(Boost::mp11 IMPORTED INTERFACE)
- target_include_directories(Boost::mp11 INTERFACE $<BUILD_INTERFACE:${mp11_SOURCE_DIR}/include>)
+ add_library(Boost::mp11 ALIAS Boost::headers)
endif()
endif()
endif()
@@ -308,7 +307,7 @@ onnxruntime_fetchcontent_declare(
URL ${DEP_URL_json}
URL_HASH SHA1=${DEP_SHA1_json}
EXCLUDE_FROM_ALL
- FIND_PACKAGE_ARGS 3.10 NAMES nlohmann_json
+ FIND_PACKAGE_ARGS 3.10 NAMES nlohmann_json REQUIRED
)
onnxruntime_fetchcontent_makeavailable(nlohmann_json)
@@ -372,7 +371,7 @@ if (CPUINFO_SUPPORTED)
${Patch_EXECUTABLE} -p1 < ${PROJECT_SOURCE_DIR}/patches/cpuinfo/patch_cpuinfo_h_for_arm64ec.patch &&
# https://github.com/pytorch/cpuinfo/pull/324
${Patch_EXECUTABLE} -p1 < ${PROJECT_SOURCE_DIR}/patches/cpuinfo/patch_vcpkg_arm64ec_support.patch
- FIND_PACKAGE_ARGS NAMES cpuinfo
+ FIND_PACKAGE_ARGS NAMES cpuinfo REQUIRED
)
elseif(CMAKE_SYSTEM_NAME STREQUAL "Linux")
message(STATUS "Applying sysfs fallback patch for cpuinfo on Linux")
@@ -384,7 +383,7 @@ if (CPUINFO_SUPPORTED)
PATCH_COMMAND
# https://github.com/microsoft/onnxruntime/issues/10038
${Patch_EXECUTABLE} -p1 < ${PROJECT_SOURCE_DIR}/patches/cpuinfo/fix_missing_sysfs_fallback.patch
- FIND_PACKAGE_ARGS NAMES cpuinfo
+ FIND_PACKAGE_ARGS NAMES cpuinfo REQUIRED
)
else()
onnxruntime_fetchcontent_declare(
@@ -392,7 +391,7 @@ if (CPUINFO_SUPPORTED)
URL ${DEP_URL_pytorch_cpuinfo}
URL_HASH SHA1=${DEP_SHA1_pytorch_cpuinfo}
EXCLUDE_FROM_ALL
- FIND_PACKAGE_ARGS NAMES cpuinfo
+ FIND_PACKAGE_ARGS NAMES cpuinfo REQUIRED
)
endif()
set(ONNXRUNTIME_CPUINFO_PROJ pytorch_cpuinfo)
@@ -411,7 +410,7 @@ onnxruntime_fetchcontent_declare(
# containing microsoft/GSL#1213 (commit 543d0dd).
PATCH_COMMAND ${Patch_EXECUTABLE} --binary --ignore-whitespace -p1 < ${PROJECT_SOURCE_DIR}/patches/gsl/1213.patch
EXCLUDE_FROM_ALL
- FIND_PACKAGE_ARGS 4.0 NAMES Microsoft.GSL
+ FIND_PACKAGE_ARGS 4.0 NAMES Microsoft.GSL REQUIRED
)
set(GSL_TARGET "Microsoft.GSL::GSL")
set(GSL_INCLUDE_DIR "$<TARGET_PROPERTY:${GSL_TARGET},INTERFACE_INCLUDE_DIRECTORIES>")
@@ -424,7 +423,7 @@ if (NOT GSL_FOUND AND NOT onnxruntime_BUILD_SHARED_LIB)
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
endif()
-find_path(safeint_SOURCE_DIR NAMES "SafeInt.hpp")
+find_path(safeint_SOURCE_DIR NAMES "SafeInt.hpp" REQUIRED)
if(NOT safeint_SOURCE_DIR)
unset(safeint_SOURCE_DIR)
onnxruntime_fetchcontent_declare(
@@ -466,10 +465,14 @@ onnxruntime_fetchcontent_declare(
URL_HASH SHA1=${DEP_SHA1_flatbuffers}
PATCH_COMMAND ${ONNXRUNTIME_FLATBUFFERS_PATCH_COMMAND}
EXCLUDE_FROM_ALL
- FIND_PACKAGE_ARGS 23.5.9 NAMES Flatbuffers flatbuffers
+ FIND_PACKAGE_ARGS 23.5.9 NAMES Flatbuffers flatbuffers REQUIRED
)
onnxruntime_fetchcontent_makeavailable(flatbuffers)
+if(TARGET flatbuffers::flatbuffers_shared AND NOT TARGET flatbuffers::flatbuffers)
+ message(STATUS "Aliasing flatbuffers::flatbuffers to flatbuffers::flatbuffers_shared")
+ add_library(flatbuffers::flatbuffers ALIAS flatbuffers::flatbuffers_shared)
+endif()
if(NOT flatbuffers_FOUND)
if(NOT TARGET flatbuffers::flatbuffers)
add_library(flatbuffers::flatbuffers ALIAS flatbuffers)
@@ -531,7 +534,7 @@ onnxruntime_fetchcontent_declare(
URL_HASH SHA1=${DEP_SHA1_onnx}
PATCH_COMMAND ${ONNXRUNTIME_ONNX_PATCH_COMMAND}
EXCLUDE_FROM_ALL
- FIND_PACKAGE_ARGS NAMES ONNX onnx
+ FIND_PACKAGE_ARGS NAMES ONNX onnx REQUIRED
)
onnxruntime_fetchcontent_makeavailable(onnx)
@@ -606,7 +609,7 @@ if(onnxruntime_ENABLE_DLPACK)
URL ${DEP_URL_dlpack}
URL_HASH SHA1=${DEP_SHA1_dlpack}
EXCLUDE_FROM_ALL
- FIND_PACKAGE_ARGS NAMES dlpack
+ FIND_PACKAGE_ARGS NAMES dlpack REQUIRED
)
onnxruntime_fetchcontent_makeavailable(dlpack)
endif()
@@ -626,7 +629,7 @@ if(onnxruntime_ENABLE_TRAINING OR (onnxruntime_ENABLE_TRAINING_APIS AND onnxrunt
URL_HASH SHA1=${DEP_SHA1_cxxopts}
PATCH_COMMAND ${ONNXRUNTIME_CXXOPTS_PATCH_COMMAND}
EXCLUDE_FROM_ALL
- FIND_PACKAGE_ARGS NAMES cxxopts
+ FIND_PACKAGE_ARGS NAMES cxxopts REQUIRED
)
set(CXXOPTS_BUILD_EXAMPLES OFF CACHE BOOL "" FORCE)
set(CXXOPTS_BUILD_TESTS OFF CACHE BOOL "" FORCE)
--- a/cmake/external/pybind11.cmake
+++ b/cmake/external/pybind11.cmake
@@ -6,6 +6,6 @@ onnxruntime_fetchcontent_declare(
URL ${DEP_URL_pybind11}
URL_HASH SHA1=${DEP_SHA1_pybind11}
EXCLUDE_FROM_ALL
- FIND_PACKAGE_ARGS 3.0 NAMES pybind11
+ FIND_PACKAGE_ARGS 3.0 NAMES pybind11 REQUIRED
)
onnxruntime_fetchcontent_makeavailable(pybind11_project)
--- a/cmake/external/wil.cmake
+++ b/cmake/external/wil.cmake
@@ -8,7 +8,7 @@ onnxruntime_fetchcontent_declare(
URL ${DEP_URL_microsoft_wil}
URL_HASH SHA1=${DEP_SHA1_microsoft_wil}
EXCLUDE_FROM_ALL
- FIND_PACKAGE_ARGS NAMES wil
+ FIND_PACKAGE_ARGS NAMES wil REQUIRED
)
if(WIN32)
--- a/cmake/external/xnnpack.cmake
+++ b/cmake/external/xnnpack.cmake
@@ -17,11 +17,11 @@ if(CMAKE_ANDROID_ARCH_ABI STREQUAL armeabi-v7a)
endif()
# pthreadpool depends on fxdiv
-onnxruntime_fetchcontent_declare(fxdiv URL ${DEP_URL_fxdiv} URL_HASH SHA1=${DEP_SHA1_fxdiv} EXCLUDE_FROM_ALL FIND_PACKAGE_ARGS NAMES fxdiv)
+onnxruntime_fetchcontent_declare(fxdiv URL ${DEP_URL_fxdiv} URL_HASH SHA1=${DEP_SHA1_fxdiv} EXCLUDE_FROM_ALL FIND_PACKAGE_ARGS NAMES fxdiv REQUIRED)
onnxruntime_fetchcontent_makeavailable(fxdiv)
set(FXDIV_SOURCE_DIR ${fxdiv_SOURCE_DIR})
-onnxruntime_fetchcontent_declare(pthreadpool URL ${DEP_URL_pthreadpool} URL_HASH SHA1=${DEP_SHA1_pthreadpool} EXCLUDE_FROM_ALL FIND_PACKAGE_ARGS NAMES unofficial-pthreadpool)
+onnxruntime_fetchcontent_declare(pthreadpool URL ${DEP_URL_pthreadpool} URL_HASH SHA1=${DEP_SHA1_pthreadpool} EXCLUDE_FROM_ALL FIND_PACKAGE_ARGS NAMES unofficial-pthreadpool REQUIRED)
onnxruntime_fetchcontent_makeavailable(pthreadpool)
# --- Determine target processor
@@ -86,7 +86,7 @@ endif()
onnxruntime_fetchcontent_declare(googlexnnpack URL ${DEP_URL_googlexnnpack} URL_HASH SHA1=${DEP_SHA1_googlexnnpack}
PATCH_COMMAND ${Patch_EXECUTABLE} --binary --ignore-whitespace -p1 < ${PROJECT_SOURCE_DIR}/patches/xnnpack/AddEmscriptenAndIosSupport.patch
EXCLUDE_FROM_ALL
- FIND_PACKAGE_ARGS NAMES xnnpack
+ FIND_PACKAGE_ARGS NAMES xnnpack REQUIRED
)
onnxruntime_fetchcontent_makeavailable(googlexnnpack)
set(XNNPACK_DIR ${googlexnnpack_SOURCE_DIR})
|