-
Notifications
You must be signed in to change notification settings - Fork 0
/
CMakeLists.txt
27 lines (17 loc) · 1.01 KB
/
CMakeLists.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
cmake_minimum_required(VERSION 3.24)
project(gazellemq_server)
set(CMAKE_CXX_STANDARD 20)
set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -O3")
add_executable(${PROJECT_NAME} main.cpp lib/MPMCQueue/MPMCQueue.hpp server/Hub.hpp server/MessageSubscriber.hpp server/MessagePublisher.hpp server/ClientConnection.hpp server/Consts.hpp server/EventLoopObject.hpp server/ServerConnection.hpp server/Enums.hpp server/MessageHandler.hpp server/SubscriberService.hpp server/StringUtils.hpp server/Message.hpp server/PublisherService.hpp server/MessageQueue.hpp server/MessageBatch.hpp)
find_package(PkgConfig REQUIRED)
find_package(Threads)
link_libraries(${Threads})
find_library(ANL anl)
link_libraries(${ANL})
pkg_check_modules(URING liburing)
find_library(URING uring)
link_libraries(${URING})
pkg_check_modules (JEMALLOC jemalloc)
pkg_search_module(JEMALLOC REQUIRED jemalloc)
include_directories(${JEMALLOC_INCLUDE_DIRS})
target_link_libraries(${PROJECT_NAME} ${JEMALLOC_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} ${URING} ${ANL})