mirror of
https://github.com/saymrwulf/onnxruntime.git
synced 2026-05-26 22:35:43 +00:00
* fix boost download url (#7843) * Topo sort the model before saving (#7913) * checkin toposort * review comments * revert and add TODO * Add shape inference to custom symbolic functions (#7937) **Description**: As title. **Motivation and Context** - PyTorch ONNX exporter heavily depends on ONNX shape inference to export accurate and efficient model. Custom symbolic function exports the op as contrib ops, thus exporter is unable to perform standard onnx shape inference. Models with dynamic shape inputs are affected. * Fix missing files on linux (#8066) * [Mobile package] Update required operator config with additional ops for wav2vec2. (#8079) Add some additional ops to the mobile package that are needed for the wav2vec2 model. * Add module attribute to ORTModule to support HuggingFace Trainer save_model (#8088) * Fix input schema extrator for ORTModule (#8098) * Fix 32bit Android java API crash (#8122) * Fix 32bit Android java API crash * fix code formating * [Mobile package] Update required operator config with additional ops for newer version of Wav2Vec 2. (#8123) This is an update to https://github.com/microsoft/onnxruntime/pull/8079 The sample application motivating the original update changed to use an updated version of the model. Now, fewer ops are required. This change removes the previously added ops which are no longer needed. * Add int64 as a required type to ConstantOfShape as it's used by the pytorch converter for Pad. (#8128) It's also used pointlessly for torch.tensor.repeat (although that usage should always be able to be constant folded). * Update logic in props.xml to account for shared provider library changes (#8138) * Ortmodule override torch.manual_seed() (#8131) * Ortmodule override torch.manual_seed() * Fix Python Cuda loading issues (#7939) * Fix mac shared_provider warning (#8153) Co-authored-by: Guoyu Wang <62914304+gwang-msft@users.noreply.github.com> Co-authored-by: Ye Wang <52801275+wangyems@users.noreply.github.com> Co-authored-by: Bowen Bao <bowbao@microsoft.com> Co-authored-by: Ryan Hill <38674843+RyanUnderhill@users.noreply.github.com> Co-authored-by: Edward Chen <18449977+edgchen1@users.noreply.github.com> Co-authored-by: baijumeswani <bmeswani@microsoft.com> Co-authored-by: Thiago Crepaldi <thiago.crepaldi@microsoft.com> Co-authored-by: Scott McKay <skottmckay@gmail.com> Co-authored-by: Hariharan Seshadri <shariharan91@gmail.com> Co-authored-by: Sherlock <baihan.huang@gmail.com>
105 lines
3.4 KiB
CMake
105 lines
3.4 KiB
CMake
# Copyright (c) Microsoft Corporation. All rights reserved.
|
|
# Licensed under the MIT License.
|
|
|
|
set(BOOST_REQUESTED_VERSION 1.69.0 CACHE STRING "")
|
|
set(BOOST_SHA1 8f32d4617390d1c2d16f26a27ab60d97807b35440d45891fa340fc2648b04406 CACHE STRING "")
|
|
set(BOOST_USE_STATIC_LIBS true CACHE BOOL "")
|
|
|
|
set(BOOST_COMPONENTS program_options system thread)
|
|
|
|
# These components are only needed for Windows
|
|
if(WIN32)
|
|
list(APPEND BOOST_COMPONENTS date_time regex)
|
|
endif()
|
|
|
|
# MSVC doesn't set these variables
|
|
if(WIN32)
|
|
set(CMAKE_STATIC_LIBRARY_PREFIX lib)
|
|
set(CMAKE_SHARED_LIBRARY_PREFIX lib)
|
|
endif()
|
|
|
|
# Set lib prefixes and suffixes for linking
|
|
if(BOOST_USE_STATIC_LIBS)
|
|
set(LIBRARY_PREFIX ${CMAKE_STATIC_LIBRARY_PREFIX})
|
|
set(LIBRARY_SUFFIX ${CMAKE_STATIC_LIBRARY_SUFFIX})
|
|
else()
|
|
set(LIBRARY_PREFIX ${CMAKE_SHARED_LIBRARY_PREFIX})
|
|
set(LIBRARY_SUFFIX ${CMAKE_SHARED_LIBRARY_SUFFIX})
|
|
endif()
|
|
|
|
# Create list of components in Boost format
|
|
foreach(component ${BOOST_COMPONENTS})
|
|
list(APPEND BOOST_COMPONENTS_FOR_BUILD --with-${component})
|
|
endforeach()
|
|
|
|
set(BOOST_ROOT_DIR ${CMAKE_BINARY_DIR}/boost CACHE PATH "")
|
|
|
|
# TODO: let user give their own Boost installation
|
|
macro(DOWNLOAD_BOOST)
|
|
if(NOT BOOST_REQUESTED_VERSION)
|
|
message(FATAL_ERROR "BOOST_REQUESTED_VERSION is not defined.")
|
|
endif()
|
|
|
|
string(REPLACE "." "_" BOOST_REQUESTED_VERSION_UNDERSCORE ${BOOST_REQUESTED_VERSION})
|
|
|
|
set(BOOST_MAYBE_STATIC)
|
|
if(BOOST_USE_STATIC_LIBS)
|
|
set(BOOST_MAYBE_STATIC "link=static")
|
|
endif()
|
|
|
|
set(VARIANT "release")
|
|
if(CMAKE_BUILD_TYPE MATCHES Debug)
|
|
set(VARIANT "debug")
|
|
endif()
|
|
|
|
set(WINDOWS_B2_OPTIONS)
|
|
set(WINDOWS_LIB_NAME_SCHEME)
|
|
if(WIN32)
|
|
set(BOOTSTRAP_FILE_TYPE "bat")
|
|
set(WINDOWS_B2_OPTIONS "toolset=msvc-14.1" "architecture=x86" "address-model=64")
|
|
set(WINDOWS_LIB_NAME_SCHEME "-vc141-mt-gd-x64-1_69")
|
|
else()
|
|
set(BOOTSTRAP_FILE_TYPE "sh")
|
|
endif()
|
|
|
|
foreach(component ${BOOST_COMPONENTS})
|
|
list(APPEND BOOST_BUILD_BYPRODUCTS <INSTALL_DIR>/lib/${LIBRARY_PREFIX}boost_${component}${WINDOWS_LIB_NAME_SCHEME}${LIBRARY_SUFFIX})
|
|
endforeach()
|
|
|
|
message(STATUS "Adding Boost components")
|
|
include(ExternalProject)
|
|
ExternalProject_Add(
|
|
Boost
|
|
URL https://boostorg.jfrog.io/artifactory/main/release/${BOOST_REQUESTED_VERSION}/source/boost_${BOOST_REQUESTED_VERSION_UNDERSCORE}.tar.bz2
|
|
URL_HASH SHA256=${BOOST_SHA1}
|
|
DOWNLOAD_DIR ${BOOST_ROOT_DIR}
|
|
SOURCE_DIR ${BOOST_ROOT_DIR}
|
|
UPDATE_COMMAND ""
|
|
CONFIGURE_COMMAND ./bootstrap.${BOOTSTRAP_FILE_TYPE} --prefix=${BOOST_ROOT_DIR}
|
|
BUILD_COMMAND ./b2 install ${BOOST_MAYBE_STATIC} --prefix=${BOOST_ROOT_DIR} variant=${VARIANT} ${WINDOWS_B2_OPTIONS} ${BOOST_COMPONENTS_FOR_BUILD}
|
|
BUILD_IN_SOURCE true
|
|
BUILD_BYPRODUCTS ${BOOST_BUILD_BYPRODUCTS}
|
|
INSTALL_COMMAND ""
|
|
INSTALL_DIR ${BOOST_ROOT_DIR}
|
|
)
|
|
|
|
# Set include folders
|
|
ExternalProject_Get_Property(Boost INSTALL_DIR)
|
|
set(Boost_INCLUDE_DIR ${INSTALL_DIR}/include)
|
|
if(WIN32)
|
|
set(Boost_INCLUDE_DIR ${INSTALL_DIR}/include/boost-1_69)
|
|
endif()
|
|
|
|
# Set libraries to link
|
|
macro(libraries_to_fullpath varname)
|
|
set(${varname})
|
|
foreach(component ${BOOST_COMPONENTS})
|
|
list(APPEND ${varname} ${INSTALL_DIR}/lib/${LIBRARY_PREFIX}boost_${component}${WINDOWS_LIB_NAME_SCHEME}${LIBRARY_SUFFIX})
|
|
endforeach()
|
|
endmacro()
|
|
|
|
libraries_to_fullpath(Boost_LIBRARIES)
|
|
mark_as_advanced(Boost_LIBRARIES Boost_INCLUDE_DIR)
|
|
endmacro()
|
|
|
|
DOWNLOAD_BOOST()
|