set(PYBIND_DEPS pybind python paddle_api_light paddle_api) if (NOT LITE_ON_TINY_PUBLISH) set(PYBIND_DEPS ${PYBIND_DEPS} paddle_api_full opt_base) endif() if(WIN32) lite_cc_library(lite_pybind SHARED SRCS pybind.cc DEPS ${PYBIND_DEPS}) get_property (os_dependency_modules GLOBAL PROPERTY OS_DEPENDENCY_MODULES) target_link_libraries(lite_pybind ${os_dependency_modules}) elseif(APPLE) lite_cc_library(lite_pybind SHARED SRCS pybind.cc DEPS ${PYBIND_DEPS}) set(LINK_MAP_FILE "${PADDLE_SOURCE_DIR}/lite/core/exported_symbols.lds") set(LINK_FLAGS "-Wl,-exported_symbols_list, ${LINK_MAP_FILE}") add_custom_command(OUTPUT ${LINK_MAP_FILE} COMMAND ...) set_target_properties(lite_pybind PROPERTIES LINK_FLAGS ${LINK_FLAGS}) add_dependencies(lite_pybind custom_linker_map) else() lite_cc_library(lite_pybind SHARED SRCS pybind.cc DEPS ${PYBIND_DEPS}) set(LINK_MAP_FILE "${PADDLE_SOURCE_DIR}/lite/core/lite.map") set(LINK_FLAGS "-Wl,--version-script ${LINK_MAP_FILE}") add_custom_command(OUTPUT ${LINK_MAP_FILE} COMMAND ...) set_target_properties(lite_pybind PROPERTIES LINK_FLAGS ${LINK_FLAGS}) add_dependencies(lite_pybind custom_linker_map) endif(WIN32) if (LITE_ON_TINY_PUBLISH) set_target_properties(lite_pybind PROPERTIES COMPILE_FLAGS "-flto -fdata-sections") endif()