From 2561a007b8d8999a4750046d0cfb3b1ad5af50ac Mon Sep 17 00:00:00 2001 From: zhangmeng <775834166@qq.com> Date: 星期二, 09 四月 2024 15:29:32 +0800 Subject: [PATCH] test for perf --- src/CMakeLists.txt | 138 ++++++++++++++++++++++++++++----------------- 1 files changed, 85 insertions(+), 53 deletions(-) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 85de799..d0c367c 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -1,5 +1,3 @@ - - # should we use our own math functions option(SUPPORT_RDMA "If support rdma" OFF) @@ -7,71 +5,105 @@ # to the source code configure_file(bus_config.h.in bus_config.h) -add_library(shm_queue - logger_factory.cpp - socket/bus_server_socket.cpp - socket/bus_server_socket_wrapper.cpp - socket/shm_stream_mod_socket.cpp - socket/shm_socket.cpp - socket/net_conn_pool.cpp - socket/shm_mod_socket.cpp - socket/net_mod_server_socket_wrapper.cpp - socket/net_mod_socket_wrapper.cpp - socket/net_mod_socket.cpp - socket/net_mod_socket_io.cpp - socket/net_mod_server_socket.cpp - bus_error.cpp - shm/shm_mm_wrapper.cpp - shm/mm.cpp - shm/hashtable.cpp - px_sem_util.cpp - svsem_util.cpp +set(CMAKE_SHARED_LINKER_FLAGS ${CMAKE_SHARED_LINKER_FLAGS} "-Wl,--version-script=${CMAKE_CURRENT_SOURCE_DIR}/exported_symbols") +#set_property(TARGET shm_queue PROPERTY POSITION_INDEPENDENT_CODE ON) +add_compile_options(-fPIC) +#target_compile_options(shm_queue PRIVATE -fPIC) - ) +list(APPEND _SOURCES_ +./logger_factory.cpp +./socket/bus_server_socket.cpp +./socket/bus_server_socket_wrapper.cpp +./socket/shm_socket.cpp +./socket/shm_mod_socket.cpp +./time_util.cpp +./bus_error.cpp +./futex_sem.cpp +./svsem.cpp +./bh_api.cpp +./net/net_conn_pool.cpp +./net/net_mod_server_socket_wrapper.cpp +./net/net_mod_socket_wrapper.cpp +./net/net_mod_socket.cpp +./net/net_mod_socket_io.cpp +./net/net_mod_server_socket.cpp +../proto/source/bhome_msg_api.pb.cc +../proto/source/bhome_msg.pb.cc +../proto/source/error_msg.pb.cc +./shm/shm_mm_wrapper.cpp +./msg_trigger/msg_mgr.cpp +./shm/mm.cpp +./shm/hashtable.cpp +./shm/shm_mm.cpp -target_include_directories(shm_queue PUBLIC - ${EXTRA_INCLUDES} - ) +) + +if (BUILD_SHARED_LIBS) + add_library(shm_queue SHARED ${_SOURCES_}) + target_compile_options(shm_queue PRIVATE -fPIC) + set_property(TARGET shm_queue PROPERTY POSITION_INDEPENDENT_CODE ON) +else() + add_library(shm_queue STATIC ${_SOURCES_}) +endif() + +# STATIC SHARED +#add_library(shm_queue ${_SOURCES_}) + +target_include_directories(shm_queue PUBLIC ${EXTRA_INCLUDES} ) target_include_directories(shm_queue PUBLIC ${PROJECT_BINARY_DIR}/src ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/shm + ${CMAKE_CURRENT_SOURCE_DIR}/proto ${CMAKE_CURRENT_SOURCE_DIR}/queue ${CMAKE_CURRENT_SOURCE_DIR}/socket + ${CMAKE_CURRENT_SOURCE_DIR}/msg_trigger + ${CMAKE_CURRENT_SOURCE_DIR}/net ) - + +add_executable(bus_proxy_start bus_proxy_start.cpp) +target_link_libraries(bus_proxy_start PRIVATE shm_queue ${EXTRA_LIBS} ) + target_link_libraries(shm_queue PUBLIC ${EXTRA_LIBS} ) # install rules -install(TARGETS shm_queue DESTINATION lib) +install(TARGETS shm_queue DESTINATION lib) install(FILES - socket/socket_def.h - socket/net_conn_pool.h - socket/bus_server_socket.h - socket/shm_socket.h - socket/net_mod_socket.h - socket/shm_stream_mod_socket.h - socket/net_mod_server_socket_wrapper.h - socket/net_mod_socket_io.h - socket/net_mod_server_socket.h - socket/shm_mod_socket.h - socket/net_mod_socket_wrapper.h - socket/bus_server_socket_wrapper.h - key_def.h - bus_error.h - px_sem_util.h - logger_factory.h - queue/linked_lock_free_queue.h - queue/array_lock_free_queue2.h - queue/array_lock_free_queue.h - queue/shm_queue.h - queue/lock_free_queue.h - shm/hashtable.h - shm/mem_pool.h - shm/mm.h - shm/shm_mm_wrapper.h - shm/shm_allocator.h + ./socket/socket_def.h +./socket/bus_server_socket.h +./socket/shm_socket.h +./socket/shm_mod_socket.h +./socket/bus_server_socket_wrapper.h +./psem.h +./pread_write_lock.h +./key_def.h +./time_util.h +./sv_read_write_lock.h +./futex_sem.h +./bus_error.h +./bus_def.h +./logger_factory.h +./sole.h +./proc_def.h +./queue/linked_lock_free_queue.h +./queue/array_lock_free_queue.h +./queue/shm_queue.h +./queue/array_lock_free_sem_queue.h +./queue/lock_free_queue.h +./svsem.h +./net/net_conn_pool.h +./net/net_mod_socket.h +./net/net_mod_server_socket_wrapper.h +./net/net_mod_socket_io.h +./net/net_mod_server_socket.h +./net/net_mod_socket_wrapper.h +./shm/hashtable.h +./shm/mm.h +./shm/shm_mm_wrapper.h +./shm/shm_allocator.h +./shm/shm_mm.h + DESTINATION include) -- Gitblit v1.8.0