49 lines
1.2 KiB
CMake
49 lines
1.2 KiB
CMake
cmake_minimum_required(VERSION 3.31)
|
|
project(network-traffic-analyzer)
|
|
|
|
set(CMAKE_CXX_STANDARD 20)
|
|
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
|
set(CMAKE_CXX_EXTENSIONS OFF)
|
|
|
|
link_libraries(pcap)
|
|
|
|
find_package(Boost REQUIRED COMPONENTS program_options)
|
|
add_executable(network-traffic-analyzer main.cpp
|
|
"include/capture/pcapCapture.hpp"
|
|
src/capture/pcapCapture.cpp
|
|
"include/cli/argsParse.hpp"
|
|
include/packet/packet.hpp
|
|
include/packet/IP.hpp
|
|
src/packet/IP.cpp
|
|
include/stats/protocolStats.hpp
|
|
src/stats/protocolStats.cpp
|
|
src/packet/packet.cpp
|
|
src/cli/argsParse.cpp
|
|
include/cli/filter.hpp
|
|
src/cli/filter.cpp
|
|
include/TUI/view.hpp
|
|
src/TUI/view.cpp
|
|
)
|
|
|
|
include(FetchContent)
|
|
|
|
set(FETCHCONTENT_UPDATES_DISCONNECTED ON)
|
|
set(FETCHCONTENT_QUIET OFF)
|
|
|
|
FetchContent_Declare(ftxui
|
|
GIT_REPOSITORY https://github.com/arthursonzogni/ftxui.git
|
|
GIT_TAG v5.0.0
|
|
GIT_PROGRESS TRUE
|
|
GIT_SHALLOW TRUE
|
|
EXCLUDE_FROM_ALL
|
|
)
|
|
FetchContent_MakeAvailable(ftxui)
|
|
|
|
|
|
target_link_libraries(network-traffic-analyzer
|
|
Boost::program_options
|
|
ftxui::screen
|
|
ftxui::dom
|
|
ftxui::component
|
|
)
|