Add all useful classes as well: Jid, Iid, IrcChannel, IrcUser etc to properly keep the informations about what we receive from the IRC server. Only handle the MUC join stanza, and send the list of users in the IRC channel to the XMPP user, and the IRC channel’s topic, for now.
57 lines
1.2 KiB
CMake
57 lines
1.2 KiB
CMake
cmake_minimum_required(VERSION 2.6)
|
|
|
|
project(biboumi)
|
|
|
|
set(${PROJECT_NAME}_VERSION_MAJOR 0)
|
|
set(${PROJECT_NAME}_VERSION_MINOR 1)
|
|
|
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -pedantic -Wall -Wextra")
|
|
set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -Og -fsanitize=address")
|
|
|
|
#
|
|
## Look for external libraries
|
|
#
|
|
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/cmake/Modules/")
|
|
find_package(Cryptopp REQUIRED)
|
|
|
|
include_directories("src/")
|
|
# the SYSTEM flag tells the compiler that we don't care about warnings
|
|
# coming from these headers.
|
|
include_directories(SYSTEM ${CRYPTO++_INCLUDE_DIR})
|
|
|
|
#
|
|
## network
|
|
#
|
|
file(GLOB source_network
|
|
src/network/*.[hc]pp)
|
|
add_library(network STATIC ${source_network})
|
|
|
|
#
|
|
## irclib
|
|
#
|
|
file(GLOB source_irc
|
|
src/irc/*.[hc]pp)
|
|
add_library(irc STATIC ${source_irc})
|
|
target_link_libraries(irc network)
|
|
|
|
#
|
|
## xmpplib
|
|
#
|
|
file(GLOB source_xmpp
|
|
src/xmpp/*.[hc]pp)
|
|
add_library(xmpp STATIC ${source_xmpp})
|
|
target_link_libraries(xmpp bridge network ${CRYPTO++_LIBRARIES} expatpp)
|
|
|
|
#
|
|
## bridge
|
|
#
|
|
file(GLOB source_bridge
|
|
src/bridge/*.[hc]pp)
|
|
add_library(bridge STATIC ${source_bridge})
|
|
target_link_libraries(bridge xmpp irc)
|
|
|
|
add_executable(${PROJECT_NAME} src/main.cpp)
|
|
target_link_libraries(${PROJECT_NAME}
|
|
xmpp
|
|
irc
|
|
bridge) |