cmake_minimum_required(VERSION 3.6) project(wifi-triangulator) include(CheckIncludeFiles) include(CheckLibraryExists) include(FindProtobuf) set(CMAKE_CXX_STANDARD 14) ###################################################### # Check dependencies check_include_files("pcap.h" HAVE_PCAP_H) if (NOT HAVE_PCAP_H) message(FATAL_ERROR "Missing pcap.h. You should probably install libpcap-dev or similar.") endif () find_package(Protobuf REQUIRED) include_directories(${Protobuf_INCLUDE_DIRS} ${Protobuf_INCLUDE_DIR}) # lib wifi-triangulator protobuf_generate_cpp(PROTO_SRC PROTO_HEADER wifi-triangulator.proto) add_library(wifi-triangulator core.cpp misc.cpp ${PROTO_SRC} ${PROTO_HEADER} include/wifi-triangulator/core.h third-party/radiotap-library/radiotap.c third-party/radiotap-library/radiotap.h third-party/radiotap-library/radiotap_iter.h third-party/radiotap-library/platform.h) target_include_directories(wifi-triangulator PUBLIC include ${CMAKE_CURRENT_BINARY_DIR}) target_link_libraries(wifi-triangulator PUBLIC pcap ${Protobuf_LIBRARIES}) # capture add_executable(capture capture.cpp) target_link_libraries(capture PUBLIC wifi-triangulator) # receiver add_executable(receiver receiver.cpp) target_link_libraries(receiver PUBLIC wifi-triangulator)