wangzhengquan
2021-02-20 2a8bdb3fa77c1212560c4d6c76139da8de70c8bf
src/CMakeLists.txt
@@ -1,78 +1,91 @@
# should we use our own math functions
option(SUPPORT_RDMA "If support rdma" ON)
option(SUPPORT_RDMA "If support rdma" OFF)
# configure a header file to pass some of the CMake settings
# to the source code
configure_file(BusConfig.h.in BusConfig.h)
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
      queue/shm_queue_wrapper.cpp
      shm/shm_mm_wrapper.cpp
      shm/mm.cpp
      shm/hashtable.cpp
   )
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
./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
./shm/shm_mm_wrapper.cpp
./shm/mm.cpp
./shm/hashtable.cpp
)
if (BUILD_SHARED_LIBS)
  add_library(shm_queue SHARED ${_SOURCES_})
else()
 add_library(shm_queue SHARED ${_SOURCES_})
endif()
# STATIC
# add_library(shm_queue ${_SOURCES_})
target_include_directories(shm_queue PUBLIC ${EXTRA_INCLUDES} )
target_include_directories(shm_queue PUBLIC
                           ${EXTRA_INCLUDES}
                           )
target_include_directories(shm_queue PUBLIC
                                        ${PROJECT_BINARY_DIR}
                                        ${PROJECT_BINARY_DIR}/src
                           ${CMAKE_CURRENT_SOURCE_DIR}
                           ${CMAKE_CURRENT_SOURCE_DIR}/shm
                           ${CMAKE_CURRENT_SOURCE_DIR}/queue
                           ${CMAKE_CURRENT_SOURCE_DIR}/socket
                           ${CMAKE_CURRENT_SOURCE_DIR}/net
                           )
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
   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/shm_queue_wrapper.h
   queue/lock_free_queue.h
   shm/hashtable.h
   shm/mem_pool.h
   shm/mm.h
   shm/shm_allocator.h
   shm/shm_mm_wraper.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
  ./key_def.h
  ./time_util.h
  ./futex_sem.h
  ./bus_error.h
  ./bus_def.h
  ./sole.h
  ./logger_factory.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/mem_pool.h
  ./shm/mm.h
  ./shm/shm_mm_wrapper.h
  ./shm/shm_allocator.h
  DESTINATION include)
install(FILES "${PROJECT_BINARY_DIR}/src/BusConfig.h"
install(FILES "${PROJECT_BINARY_DIR}/src/bus_config.h"
   DESTINATION include
)