netvu-Netview/netvu/src/CMakeLists.txt
2021-01-31 13:53:41 +01:00

63 lines
1.3 KiB
CMake

cmake_minimum_required(VERSION 3.16)
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED True)
project(netvu VERSION 1.0)
add_executable(netvu netvu.cpp)
find_package(Boost REQUIRED COMPONENTS
program_options
filesystem
system
)
if(Boost_FOUND)
list(APPEND EXTRA_LIBS
Boost::program_options
Boost::filesystem
Boost::system
)
endif()
# set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY "${PROJECT_BINARY_DIR}")
# set(CMAKE_LIBRARY_OUTPUT_DIRECTORY "${PROJECT_BINARY_DIR}")
# set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${PROJECT_BINARY_DIR}")
# option(BUILD_SHARED_LIBS "Build using shared libraries" ON)
option(USE_SCANNER "Use 802.11 scanner" ON)
option(USE_ANALYZER "Use pcap files analyzer" ON)
option(USE_SERVER "Use listen server to interact with database" ON)
if(USE_SCANNER)
add_subdirectory(Scanner)
list(APPEND EXTRA_LIBS Scanner)
endif()
if(USE_ANALYZER)
add_subdirectory(Analyzer)
list(APPEND EXTRA_LIBS Analyzer)
endif()
if(USE_SERVER)
add_subdirectory(Server)
list(APPEND EXTRA_LIBS Server)
endif()
configure_file(netvuconfig.h.in netvuconfig.h)
target_link_libraries(netvu PUBLIC ${EXTRA_LIBS} )
target_include_directories(
netvu PUBLIC
"${PROJECT_BINARY_DIR}"
)
install(TARGETS netvu DESTINATION bin)
install(
FILES "${PROJECT_BINARY_DIR}/netvuconfig.h"
DESTINATION include
)