Browse Source

feat(lite): fix load_and_run_depend_shared on windows

GitOrigin-RevId: 344808a3ad
tags/v1.7.2.m1
Megvii Engine Team 3 years ago
parent
commit
f7cf3e344a
2 changed files with 32 additions and 33 deletions
  1. +29
    -31
      lite/load_and_run/CMakeLists.txt
  2. +3
    -2
      lite/src/misc.h

+ 29
- 31
lite/load_and_run/CMakeLists.txt View File

@@ -27,35 +27,33 @@ if(UNIX)
endif()

install (TARGETS load_and_run EXPORT ${LITE_EXPORT_TARGETS} RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
# FIXME: using shared lib to build load and run(lite shared lib is not work correctly )
# if(BUILD_SHARED_LIBS)
# add_executable(load_and_run_depends_shared ${SOURCES})
# target_link_libraries(load_and_run_depends_shared lite_shared)
# target_link_libraries(load_and_run_depends_shared megengine)
# target_link_libraries(load_and_run_depends_shared gflags)
# if(WIN32 OR MSVC)
# target_compile_definitions(load_and_run_depends_shared PRIVATE MGE_DLL_IMPORT_DATA)
# endif()

# if(LITE_BUILD_WITH_RKNPU)
# #rknn sdk1.0.0 depend on libc++_shared, use gold to remove NEEDED so symbol check
# target_link_options(load_and_run_depends_shared PRIVATE "-fuse-ld=gold")
# endif()

# if(MGE_WITH_ROCM)
# # FIXME: hip obj can not find cpp obj only through lite_static
# target_link_libraries(load_and_run_depends_shared megdnn)
# endif()

# if(UNIX)
# if(APPLE OR ANDROID)
# target_link_libraries(load_and_run_depends_shared dl)
# else()
# target_link_libraries(load_and_run_depends_shared dl rt)
# endif()
# endif()

# install(TARGETS load_and_run_depends_shared EXPORT ${MGE_EXPORT_TARGETS} RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
# endif()
if(BUILD_SHARED_LIBS)
add_executable(load_and_run_depends_shared ${SOURCES})
target_link_libraries(load_and_run_depends_shared lite_shared)
target_link_libraries(load_and_run_depends_shared gflags)
target_link_libraries(load_and_run_depends_shared megengine)

if(WIN32 OR MSVC)
target_compile_definitions(load_and_run_depends_shared PRIVATE MGE_DLL_IMPORT_DATA)
endif()

if(LITE_BUILD_WITH_RKNPU)
#rknn sdk1.0.0 depend on libc++_shared, use gold to remove NEEDED so symbol check
target_link_options(load_and_run_depends_shared PRIVATE "-fuse-ld=gold")
endif()

if(MGE_WITH_ROCM)
# FIXME: hip obj can not find cpp obj only through lite_static
target_link_libraries(load_and_run_depends_shared megdnn)
endif()

if(UNIX)
if(APPLE OR ANDROID)
target_link_libraries(load_and_run_depends_shared dl)
else()
target_link_libraries(load_and_run_depends_shared dl rt)
endif()
endif()

install(TARGETS load_and_run_depends_shared EXPORT ${MGE_EXPORT_TARGETS} RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
endif()

+ 3
- 2
lite/src/misc.h View File

@@ -40,7 +40,8 @@ private:
};
#endif

std::string ssprintf(const char* fmt = 0, ...) __attribute__((format(printf, 1, 2)));
LITE_API std::string ssprintf(const char* fmt = 0, ...)
__attribute__((format(printf, 1, 2)));

/*!
* \brief Print a message.
@@ -48,7 +49,7 @@ std::string ssprintf(const char* fmt = 0, ...) __attribute__((format(printf, 1,
* The message is printed only if level is above or equals to the current log
* level.
*/
void print_log(LiteLogLevel level, const char* format = 0, ...)
LITE_API void print_log(LiteLogLevel level, const char* format = 0, ...)
__attribute__((format(printf, 2, 3)));
} // namespace lite



Loading…
Cancel
Save