include(CMakePrintHelpers)
if (NOT ENABLE_OPEN_SRC)
set(METADEF_DIR ${TOP_DIR}/metadef)
set(GE_METADEF_DIR ${TOP_DIR}/air/graph_metadef)
set(GE_METADEF_INC_DIR ${TOP_DIR}/air/inc/graph_metadef)
set(METADEF_PROTO_DIR ${TOP_DIR}/air/graph_metadef/proto)
set(AIR_CODE_DIR ${TOP_DIR}/air)
endif()
message(STATUS "Variables in graph metadef project:")
include(${AIR_CODE_DIR}/cmake/intf_pub_linux.cmake)
include(${AIR_CODE_DIR}/cmake/function.cmake)
add_subdirectory(proto)
add_subdirectory(graph)
add_subdirectory(exe_graph)
add_subdirectory(register)
if (ENABLE_METADEF_UT OR ENABLE_METADEF_ST OR ENABLE_BENCHMARK)
find_package(benchmark CONFIG REQUIRED)
add_subdirectory(tests)
endif()
set(_metadef_install_targets lowering graph graph_base register aihac_symbolizer)
get_target_property(_mh_imported_install metadef_headers IMPORTED)
if(NOT _mh_imported_install)
list(APPEND _metadef_install_targets metadef_headers)
endif()
install(TARGETS ${_metadef_install_targets}
EXPORT graph_metadef-targets
LIBRARY DESTINATION ${INSTALL_LIBRARY_DIR} ${INSTALL_OPTIONAL}
ARCHIVE DESTINATION ${INSTALL_LIBRARY_DIR} ${INSTALL_OPTIONAL}
RUNTIME DESTINATION ${INSTALL_RUNTIME_DIR} ${INSTALL_OPTIONAL}
)
if (NOT ENABLE_OPEN_SRC)
install(TARGETS graph_base_static metadef_static
ARCHIVE DESTINATION ${INSTALL_LIBRARY_DIR} ${INSTALL_OPTIONAL}
)
install(TARGETS atc_stub_graph_static stub_exe_graph_static stub_register_static
ARCHIVE DESTINATION ${INSTALL_LIBRARY_DIR}/${CMAKE_SYSTEM_PROCESSOR}/stub ${INSTALL_OPTIONAL}
)
endif ()
install(FILES ${GE_METADEF_DIR}/third_party/transformer/inc/axis_util.h
${GE_METADEF_DIR}/third_party/transformer/inc/expand_dimension.h
${GE_METADEF_DIR}/third_party/transformer/inc/transfer_shape_utils.h
${GE_METADEF_DIR}/third_party/transformer/inc/transfer_range_according_to_format.h
${GE_METADEF_DIR}/third_party/transformer/inc/transfer_shape_according_to_format.h
${GE_METADEF_DIR}/third_party/transformer/inc/transfer_shape_according_to_format_ext.h
${GE_METADEF_DIR}/third_party/transformer/inc/transfer_def.h
DESTINATION ${INSTALL_INCLUDE_DIR}/metadef/transformer EXCLUDE_FROM_ALL
)
install(FILES ${GE_METADEF_DIR}/register/op_tiling/op_tiling_constants.h
${GE_METADEF_DIR}/register/op_tiling/op_compile_info_manager.h
${GE_METADEF_DIR}/register/op_tiling/op_tiling_utils.h
DESTINATION ${INSTALL_INCLUDE_DIR}/metadef/register/op_tiling EXCLUDE_FROM_ALL
)
install(FILES ${GE_METADEF_DIR}/graph/normal_graph/operator_impl.h
${GE_METADEF_DIR}/graph/normal_graph/op_io.h
DESTINATION ${INSTALL_INCLUDE_DIR}/metadef/graph EXCLUDE_FROM_ALL
)
install(FILES ${GE_METADEF_DIR}/graph/utils/dumper/ge_graph_dumper.h
DESTINATION ${INSTALL_INCLUDE_DIR}/metadef/graph/utils/dumper EXCLUDE_FROM_ALL
)
install(DIRECTORY ${GE_METADEF_INC_DIR}/ DESTINATION ${INSTALL_INCLUDE_DIR}/metadef
EXCLUDE_FROM_ALL FILES_MATCHING PATTERN "*.h"
)
install(DIRECTORY ${METADEF_PROTO_DIR}/ DESTINATION proto
EXCLUDE_FROM_ALL FILES_MATCHING PATTERN "*.proto"
)
if (PACKAGE STREQUAL "opensdk")
install(EXPORT graph_metadef-targets DESTINATION ${INSTALL_CONFIG_DIR}
FILE graph_metadef-targets.cmake EXCLUDE_FROM_ALL
)
set(PKG_NAME graph_metadef)
configure_package_config_file(${TOP_DIR}/cmake/config/pkg_config_template.cmake.in
${CMAKE_CURRENT_BINARY_DIR}/graph_metadef-config.cmake
INSTALL_DESTINATION ${INSTALL_CONFIG_DIR}
PATH_VARS INSTALL_BASE_DIR INSTALL_INCLUDE_DIR INSTALL_LIBRARY_DIR INSTALL_RUNTIME_DIR INSTALL_CONFIG_DIR
INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX}
)
unset(PKG_NAME)
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/graph_metadef-config.cmake
DESTINATION ${INSTALL_CONFIG_DIR} EXCLUDE_FROM_ALL
)
endif()
if (ENABLE_OPEN_SRC)
set(ARCH_LINX_PATH "${CMAKE_SYSTEM_PROCESSOR}-linux")
install(TARGETS
lowering
graph
graph_base
register
aihac_symbolizer
LIBRARY DESTINATION ${ARCH_LINX_PATH}/lib64 ${INSTALL_OPTIONAL} COMPONENT packages EXCLUDE_FROM_ALL
ARCHIVE DESTINATION ${ARCH_LINX_PATH}/lib64 ${INSTALL_OPTIONAL} COMPONENT packages EXCLUDE_FROM_ALL
RUNTIME DESTINATION ${ARCH_LINX_PATH}/bin ${INSTALL_OPTIONAL} COMPONENT packages EXCLUDE_FROM_ALL
)
endif()