From 165798bf9cacc8008799bfd9b1f947ac425d9e1e Mon Sep 17 00:00:00 2001 From: Megvii Engine Team Date: Tue, 22 Sep 2020 18:41:49 +0800 Subject: [PATCH] fix(mge/build): move version.ld to src under project source root GitOrigin-RevId: 04f39943c4cbe0cc116ef5d68c47c6a114d799ee --- CMakeLists.txt | 2 ++ imperative/CMakeLists.txt | 7 +++---- src/CMakeLists.txt | 2 +- {imperative/src => src}/version.ld | 0 4 files changed, 6 insertions(+), 5 deletions(-) rename {imperative/src => src}/version.ld (100%) diff --git a/CMakeLists.txt b/CMakeLists.txt index 363bbe07..4fe36c64 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -710,6 +710,8 @@ endif() set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${MARCH}") +set(MGE_VERSION_SCRIPT ${PROJECT_SOURCE_DIR}/src/version.ld CACHE INTERNAL "Path to linker version script") + # Write out megbrain_build_config.h # It defines macros needed by both megbrain and dnn configure_file(src/megbrain_build_config.h.in ${CMAKE_CURRENT_BINARY_DIR}/genfiles/megbrain_build_config.h) diff --git a/imperative/CMakeLists.txt b/imperative/CMakeLists.txt index 910f5bb4..24d788ba 100644 --- a/imperative/CMakeLists.txt +++ b/imperative/CMakeLists.txt @@ -47,8 +47,7 @@ add_custom_target(gen_opr_py DEPENDS ${GEN_OPS_FILE}) ##################### end of opdef generation ######################### -set(VERSION_SCRIPT ${CMAKE_CURRENT_SOURCE_DIR}/src/version.ld) -add_custom_target(_version_ld SOURCES ${VERSION_SCRIPT}) +add_custom_target(_version_ld SOURCES ${MGE_VERSION_SCRIPT}) add_subdirectory(${PROJECT_SOURCE_DIR}/third_party/pybind11 ${PROJECT_BINARY_DIR}/third_party/pybind11) pybind11_add_module(${MODULE_NAME} NO_EXTRAS ${SRCS}) @@ -62,11 +61,11 @@ elseif (MSVC OR WIN32) else() if (MGE_WITH_PYTHON_MODULE) # use to fix runtime crash when build both mgb(MGE_WITH_PYTHON_MODULE) and imperative(MGE_BUILD_IMPERATIVE_RT) - target_link_libraries(${MODULE_NAME} PRIVATE megengine_export -Wl,--version-script=${VERSION_SCRIPT}) + target_link_libraries(${MODULE_NAME} PRIVATE megengine_export -Wl,--version-script=${MGE_VERSION_SCRIPT}) else() # use to reduce whl size by depend on megbrain/dnn directly, caused by cmake create two cuda fatbin # elf section on both megengine_export and target which depend on megengine_export - target_link_libraries(${MODULE_NAME} PRIVATE megbrain megdnn -Wl,--version-script=${VERSION_SCRIPT}) + target_link_libraries(${MODULE_NAME} PRIVATE megbrain megdnn -Wl,--version-script=${MGE_VERSION_SCRIPT}) if (MGE_WITH_DISTRIBUTED) message("-- Imperative configured to link megray") target_link_libraries(${MODULE_NAME} PRIVATE megray) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index ef96423e..12d6e957 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -181,7 +181,7 @@ if(ANDROID) target_link_libraries(megbrain PUBLIC log) endif() -set (_VER_FILE ${PROJECT_SOURCE_DIR}/imperative/src/version.ld) +set (_VER_FILE ${PROJECT_SOURCE_DIR}/src/version.ld) if(MGE_BUILD_IMPERATIVE_RT ) diff --git a/imperative/src/version.ld b/src/version.ld similarity index 100% rename from imperative/src/version.ld rename to src/version.ld -- GitLab