-
Notifications
You must be signed in to change notification settings - Fork 3k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'main' into Cjian/win_c++20
- Loading branch information
Showing
255 changed files
with
13,236 additions
and
10,537 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,34 @@ | ||
# Copyright (c) Microsoft Corporation. All rights reserved. | ||
# Licensed under the MIT License. | ||
|
||
add_definitions(-DUSE_ACL=1) | ||
file(GLOB_RECURSE onnxruntime_providers_acl_cc_srcs | ||
"${ONNXRUNTIME_ROOT}/core/providers/acl/*.h" | ||
"${ONNXRUNTIME_ROOT}/core/providers/acl/*.cc" | ||
) | ||
|
||
source_group(TREE ${ONNXRUNTIME_ROOT}/core FILES ${onnxruntime_providers_acl_cc_srcs}) | ||
onnxruntime_add_static_library(onnxruntime_providers_acl ${onnxruntime_providers_acl_cc_srcs}) | ||
onnxruntime_add_include_to_target(onnxruntime_providers_acl | ||
onnxruntime_common onnxruntime_framework onnx onnx_proto ${PROTOBUF_LIB} flatbuffers::flatbuffers Boost::mp11 safeint_interface | ||
) | ||
|
||
target_link_libraries(onnxruntime_providers_acl -L$ENV{LD_LIBRARY_PATH}) | ||
add_dependencies(onnxruntime_providers_acl ${onnxruntime_EXTERNAL_DEPENDENCIES}) | ||
set_target_properties(onnxruntime_providers_acl PROPERTIES FOLDER "ONNXRuntime") | ||
target_include_directories(onnxruntime_providers_acl | ||
PRIVATE | ||
${ONNXRUNTIME_ROOT} ${eigen_INCLUDE_DIRS} ${onnxruntime_ACL_HOME} ${onnxruntime_ACL_HOME}/include | ||
) | ||
install(FILES ${PROJECT_SOURCE_DIR}/../include/onnxruntime/core/providers/acl/acl_provider_factory.h | ||
DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/onnxruntime/ | ||
) | ||
set_target_properties(onnxruntime_providers_acl PROPERTIES LINKER_LANGUAGE CXX) | ||
|
||
if (NOT onnxruntime_BUILD_SHARED_LIB) | ||
install(TARGETS onnxruntime_providers_acl | ||
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} | ||
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} | ||
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} | ||
FRAMEWORK DESTINATION ${CMAKE_INSTALL_BINDIR}) | ||
endif() |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,33 @@ | ||
# Copyright (c) Microsoft Corporation. All rights reserved. | ||
# Licensed under the MIT License. | ||
|
||
add_definitions(-DUSE_ARMNN=1) | ||
file(GLOB_RECURSE onnxruntime_providers_armnn_cc_srcs | ||
"${ONNXRUNTIME_ROOT}/core/providers/armnn/*.h" | ||
"${ONNXRUNTIME_ROOT}/core/providers/armnn/*.cc" | ||
) | ||
|
||
source_group(TREE ${ONNXRUNTIME_ROOT}/core FILES ${onnxruntime_providers_armnn_cc_srcs}) | ||
onnxruntime_add_static_library(onnxruntime_providers_armnn ${onnxruntime_providers_armnn_cc_srcs}) | ||
onnxruntime_add_include_to_target(onnxruntime_providers_armnn | ||
onnxruntime_common onnxruntime_framework onnx onnx_proto ${PROTOBUF_LIB} flatbuffers::flatbuffers Boost::mp11 safeint_interface | ||
) | ||
|
||
add_dependencies(onnxruntime_providers_armnn ${onnxruntime_EXTERNAL_DEPENDENCIES}) | ||
set_target_properties(onnxruntime_providers_armnn PROPERTIES FOLDER "ONNXRuntime") | ||
target_include_directories(onnxruntime_providers_armnn PRIVATE | ||
${ONNXRUNTIME_ROOT} ${eigen_INCLUDE_DIRS} ${onnxruntime_ARMNN_HOME} ${onnxruntime_ARMNN_HOME}/include | ||
${onnxruntime_ACL_HOME} ${onnxruntime_ACL_HOME}/include | ||
) | ||
install(FILES ${PROJECT_SOURCE_DIR}/../include/onnxruntime/core/providers/armnn/armnn_provider_factory.h | ||
DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/onnxruntime/) | ||
|
||
set_target_properties(onnxruntime_providers_armnn PROPERTIES LINKER_LANGUAGE CXX) | ||
|
||
if (NOT onnxruntime_BUILD_SHARED_LIB) | ||
install(TARGETS onnxruntime_providers_armnn | ||
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} | ||
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} | ||
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} | ||
FRAMEWORK DESTINATION ${CMAKE_INSTALL_BINDIR}) | ||
endif() |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
# Copyright (c) Microsoft Corporation. All rights reserved. | ||
# Licensed under the MIT License. | ||
|
||
file(GLOB_RECURSE onnxruntime_providers_azure_src CONFIGURE_DEPENDS | ||
"${ONNXRUNTIME_ROOT}/core/providers/azure/*.h" | ||
"${ONNXRUNTIME_ROOT}/core/providers/azure/*.cc" | ||
) | ||
source_group(TREE ${ONNXRUNTIME_ROOT}/core FILES ${onnxruntime_providers_azure_src}) | ||
onnxruntime_add_static_library(onnxruntime_providers_azure ${onnxruntime_providers_azure_src}) | ||
add_dependencies(onnxruntime_providers_azure ${onnxruntime_EXTERNAL_DEPENDENCIES}) | ||
onnxruntime_add_include_to_target(onnxruntime_providers_azure onnxruntime_common onnxruntime_framework onnx onnx_proto ${PROTOBUF_LIB} flatbuffers::flatbuffers Boost::mp11) | ||
target_link_libraries(onnxruntime_providers_azure PRIVATE onnx onnxruntime_common onnxruntime_framework) | ||
set_target_properties(onnxruntime_providers_azure PROPERTIES FOLDER "ONNXRuntime") | ||
set_target_properties(onnxruntime_providers_azure PROPERTIES LINKER_LANGUAGE CXX) | ||
|
||
install(TARGETS onnxruntime_providers_azure | ||
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} | ||
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} | ||
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} | ||
FRAMEWORK DESTINATION ${CMAKE_INSTALL_BINDIR}) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,34 @@ | ||
# Copyright (c) Microsoft Corporation. All rights reserved. | ||
# Licensed under the MIT License. | ||
|
||
add_definitions(-DUSE_CANN=1) | ||
|
||
file(GLOB_RECURSE onnxruntime_providers_cann_cc_srcs CONFIGURE_DEPENDS | ||
"${ONNXRUNTIME_ROOT}/core/providers/cann/*.h" | ||
"${ONNXRUNTIME_ROOT}/core/providers/cann/*.cc" | ||
) | ||
|
||
# The shared_library files are in a separate list since they use precompiled headers, and the above files have them disabled. | ||
file(GLOB_RECURSE onnxruntime_providers_cann_shared_srcs CONFIGURE_DEPENDS | ||
"${ONNXRUNTIME_ROOT}/core/providers/shared_library/*.h" | ||
"${ONNXRUNTIME_ROOT}/core/providers/shared_library/*.cc" | ||
) | ||
|
||
source_group(TREE ${ONNXRUNTIME_ROOT}/core FILES ${onnxruntime_providers_cann_cc_srcs} ${onnxruntime_providers_cann_shared_srcs}) | ||
set(onnxruntime_providers_cann_src ${onnxruntime_providers_cann_cc_srcs} ${onnxruntime_providers_cann_shared_srcs}) | ||
|
||
onnxruntime_add_shared_library_module(onnxruntime_providers_cann ${onnxruntime_providers_cann_src}) | ||
onnxruntime_add_include_to_target(onnxruntime_providers_cann onnxruntime_common onnxruntime_framework onnx onnx_proto ${PROTOBUF_LIB} flatbuffers::flatbuffers Boost::mp11 safeint_interface) | ||
|
||
add_dependencies(onnxruntime_providers_cann onnxruntime_providers_shared ${onnxruntime_EXTERNAL_DEPENDENCIES}) | ||
target_link_libraries(onnxruntime_providers_cann PRIVATE ascendcl acl_op_compiler fmk_onnx_parser nsync::nsync_cpp ${ABSEIL_LIBS} ${ONNXRUNTIME_PROVIDERS_SHARED}) | ||
target_link_directories(onnxruntime_providers_cann PRIVATE ${onnxruntime_CANN_HOME}/lib64) | ||
target_include_directories(onnxruntime_providers_cann PRIVATE ${ONNXRUNTIME_ROOT} ${CMAKE_CURRENT_BINARY_DIR} ${eigen_INCLUDE_DIRS} ${onnxruntime_CANN_HOME} ${onnxruntime_CANN_HOME}/include) | ||
|
||
set_target_properties(onnxruntime_providers_cann PROPERTIES LINKER_LANGUAGE CXX) | ||
set_target_properties(onnxruntime_providers_cann PROPERTIES FOLDER "ONNXRuntime") | ||
|
||
install(TARGETS onnxruntime_providers_cann | ||
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} | ||
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} | ||
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,107 @@ | ||
# Copyright (c) Microsoft Corporation. All rights reserved. | ||
# Licensed under the MIT License. | ||
|
||
if (onnxruntime_MINIMAL_BUILD AND NOT onnxruntime_EXTENDED_MINIMAL_BUILD) | ||
message(FATAL_ERROR "CoreML EP can not be used in a basic minimal build. Please build with '--minimal_build extended'") | ||
endif() | ||
|
||
add_compile_definitions(USE_COREML=1) | ||
|
||
# Compile CoreML proto definition to ${CMAKE_CURRENT_BINARY_DIR}/coreml | ||
if (CMAKE_SYSTEM_NAME STREQUAL "Darwin" OR CMAKE_SYSTEM_NAME STREQUAL "iOS") | ||
set(COREML_PROTO_ROOT ${PROJECT_SOURCE_DIR}/../onnxruntime/core/providers/coreml/mlmodel_format) | ||
file(GLOB coreml_proto_srcs | ||
"${COREML_PROTO_ROOT}/*.proto" | ||
) | ||
onnxruntime_add_static_library(onnxruntime_coreml_proto ${coreml_proto_srcs}) | ||
target_include_directories(onnxruntime_coreml_proto PUBLIC $<TARGET_PROPERTY:${PROTOBUF_LIB},INTERFACE_INCLUDE_DIRECTORIES> "${CMAKE_CURRENT_BINARY_DIR}") | ||
target_compile_definitions(onnxruntime_coreml_proto PUBLIC $<TARGET_PROPERTY:${PROTOBUF_LIB},INTERFACE_COMPILE_DEFINITIONS>) | ||
set_target_properties(onnxruntime_coreml_proto PROPERTIES COMPILE_FLAGS "-fvisibility=hidden") | ||
set_target_properties(onnxruntime_coreml_proto PROPERTIES COMPILE_FLAGS "-fvisibility-inlines-hidden") | ||
set(_src_sub_dir "coreml/") | ||
onnxruntime_protobuf_generate( | ||
APPEND_PATH | ||
GEN_SRC_SUB_DIR ${_src_sub_dir} | ||
IMPORT_DIRS ${COREML_PROTO_ROOT} | ||
TARGET onnxruntime_coreml_proto | ||
) | ||
|
||
if (NOT onnxruntime_BUILD_SHARED_LIB) | ||
install(TARGETS onnxruntime_coreml_proto | ||
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} | ||
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} | ||
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} | ||
FRAMEWORK DESTINATION ${CMAKE_INSTALL_BINDIR} | ||
) | ||
endif() | ||
endif() | ||
|
||
# These are shared utils, | ||
# TODO, move this to a separated lib when used by EPs other than NNAPI and CoreML | ||
file(GLOB_RECURSE onnxruntime_providers_shared_utils_cc_srcs CONFIGURE_DEPENDS | ||
"${ONNXRUNTIME_ROOT}/core/providers/shared/utils/utils.h" | ||
"${ONNXRUNTIME_ROOT}/core/providers/shared/utils/utils.cc" | ||
) | ||
|
||
file(GLOB | ||
onnxruntime_providers_coreml_cc_srcs_top CONFIGURE_DEPENDS | ||
"${ONNXRUNTIME_ROOT}/core/providers/coreml/*.h" | ||
"${ONNXRUNTIME_ROOT}/core/providers/coreml/*.cc" | ||
) | ||
|
||
# Add builder source code | ||
file(GLOB_RECURSE | ||
onnxruntime_providers_coreml_cc_srcs_nested CONFIGURE_DEPENDS | ||
"${ONNXRUNTIME_ROOT}/core/providers/coreml/builders/*.h" | ||
"${ONNXRUNTIME_ROOT}/core/providers/coreml/builders/*.cc" | ||
) | ||
if (NOT CMAKE_SYSTEM_NAME STREQUAL "Darwin" AND NOT CMAKE_SYSTEM_NAME STREQUAL "iOS") | ||
list(REMOVE_ITEM onnxruntime_providers_coreml_cc_srcs_nested | ||
"${ONNXRUNTIME_ROOT}/core/providers/coreml/builders/model_builder.h" | ||
"${ONNXRUNTIME_ROOT}/core/providers/coreml/builders/model_builder.cc" | ||
) | ||
endif() | ||
|
||
# Add CoreML objective c++ source code | ||
if (CMAKE_SYSTEM_NAME STREQUAL "Darwin" OR CMAKE_SYSTEM_NAME STREQUAL "iOS") | ||
file(GLOB | ||
onnxruntime_providers_coreml_objcc_srcs CONFIGURE_DEPENDS | ||
"${ONNXRUNTIME_ROOT}/core/providers/coreml/model/model.h" | ||
"${ONNXRUNTIME_ROOT}/core/providers/coreml/model/model.mm" | ||
"${ONNXRUNTIME_ROOT}/core/providers/coreml/model/host_utils.h" | ||
"${ONNXRUNTIME_ROOT}/core/providers/coreml/model/host_utils.mm" | ||
) | ||
endif() | ||
|
||
set(onnxruntime_providers_coreml_cc_srcs | ||
${onnxruntime_providers_coreml_cc_srcs_top} | ||
${onnxruntime_providers_coreml_cc_srcs_nested} | ||
${onnxruntime_providers_shared_utils_cc_srcs} | ||
) | ||
|
||
source_group(TREE ${ONNXRUNTIME_ROOT}/core FILES ${onnxruntime_providers_coreml_cc_srcs}) | ||
onnxruntime_add_static_library(onnxruntime_providers_coreml | ||
${onnxruntime_providers_coreml_cc_srcs} ${onnxruntime_providers_coreml_objcc_srcs} | ||
) | ||
onnxruntime_add_include_to_target(onnxruntime_providers_coreml | ||
onnxruntime_common onnxruntime_framework onnx onnx_proto ${PROTOBUF_LIB} flatbuffers::flatbuffers Boost::mp11 safeint_interface | ||
) | ||
if (CMAKE_SYSTEM_NAME STREQUAL "Darwin" OR CMAKE_SYSTEM_NAME STREQUAL "iOS") | ||
onnxruntime_add_include_to_target(onnxruntime_providers_coreml onnxruntime_coreml_proto) | ||
target_link_libraries(onnxruntime_providers_coreml PRIVATE onnxruntime_coreml_proto "-framework Foundation" "-framework CoreML") | ||
add_dependencies(onnxruntime_providers_coreml onnxruntime_coreml_proto) | ||
endif() | ||
add_dependencies(onnxruntime_providers_coreml ${onnxruntime_EXTERNAL_DEPENDENCIES}) | ||
|
||
set_target_properties(onnxruntime_providers_coreml PROPERTIES CXX_STANDARD_REQUIRED ON) | ||
set_target_properties(onnxruntime_providers_coreml PROPERTIES FOLDER "ONNXRuntime") | ||
target_include_directories(onnxruntime_providers_coreml PRIVATE ${ONNXRUNTIME_ROOT} ${coreml_INCLUDE_DIRS}) | ||
set_target_properties(onnxruntime_providers_coreml PROPERTIES LINKER_LANGUAGE CXX) | ||
|
||
if (NOT onnxruntime_BUILD_SHARED_LIB) | ||
install(TARGETS onnxruntime_providers_coreml | ||
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} | ||
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} | ||
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} | ||
FRAMEWORK DESTINATION ${CMAKE_INSTALL_BINDIR}) | ||
endif() |
Oops, something went wrong.