summaryrefslogtreecommitdiffstats
path: root/capture/CMakeLists.txt
diff options
context:
space:
mode:
Diffstat (limited to 'capture/CMakeLists.txt')
-rw-r--r--capture/CMakeLists.txt137
1 files changed, 137 insertions, 0 deletions
diff --git a/capture/CMakeLists.txt b/capture/CMakeLists.txt
new file mode 100644
index 00000000..65b91f8f
--- /dev/null
+++ b/capture/CMakeLists.txt
@@ -0,0 +1,137 @@
+# CMakeLists.txt
+#
+# Wireshark - Network traffic analyzer
+# By Gerald Combs <gerald@wireshark.org>
+# Copyright 1998 Gerald Combs
+#
+# SPDX-License-Identifier: GPL-2.0-or-later
+#
+
+
+if(UNIX)
+ set(PLATFORM_CAPUTILS_SRC
+ capture-pcap-util-unix.c
+ )
+endif()
+
+if(WIN32)
+ set(PLATFORM_CAPUTILS_SRC
+ capture_win_ifnames.c
+ capture-wpcap.c
+ )
+endif()
+
+set(CAPUTILS_SRC
+ ${PLATFORM_CAPUTILS_SRC}
+ capture-pcap-util.c
+)
+
+if (AIRPCAP_FOUND)
+ set(CAPUTILS_SRC
+ ${CAPUTILS_SRC}
+ airpcap_loader.c
+ )
+endif()
+
+set_source_files_properties(
+ ${CAPUTILS_SRC}
+ PROPERTIES
+ COMPILE_FLAGS "${WERROR_COMMON_FLAGS}"
+)
+
+
+add_library(caputils STATIC
+ ${CAPUTILS_SRC}
+)
+
+target_link_libraries(caputils
+ PUBLIC
+ $<$<BOOL:${PCAP_FOUND}>:pcap::pcap>
+ PRIVATE
+ wsutil
+ ${WIN_IPHLPAPI_LIBRARY}
+)
+if(WIN32)
+ target_link_libraries(caputils PRIVATE ${GMODULE2_LIBRARIES})
+endif()
+
+set_target_properties(caputils PROPERTIES
+ LINK_FLAGS "${WS_LINK_FLAGS}"
+ FOLDER "Libs")
+if(MSVC)
+ set_target_properties(caputils PROPERTIES LINK_FLAGS_DEBUG "${WS_MSVC_DEBUG_LINK_FLAGS}")
+endif()
+
+set(CAPCHILD_SRC
+ capture_ifinfo.c
+ capture_sync.c
+)
+
+set_source_files_properties(
+ ${CAPCHILD_SRC}
+ PROPERTIES
+ COMPILE_FLAGS "${WERROR_COMMON_FLAGS}"
+)
+
+file(GLOB CAPCHILD_HEADERS capture_session.h)
+
+add_library(capchild STATIC
+ ${CAPCHILD_SRC}
+)
+
+target_link_libraries(capchild
+ PRIVATE
+ wsutil
+ $<$<BOOL:${PCAP_FOUND}>:pcap::pcap>
+)
+
+set_target_properties(capchild PROPERTIES
+ LINK_FLAGS "${WS_LINK_FLAGS}"
+ FOLDER "Libs")
+if(MSVC)
+ set_target_properties(capchild PROPERTIES LINK_FLAGS_DEBUG "${WS_MSVC_DEBUG_LINK_FLAGS}")
+endif()
+
+add_library(iface_monitor STATIC
+ iface_monitor.c
+ ws80211_utils.c
+)
+
+target_link_libraries(iface_monitor
+ PRIVATE
+ ${NL_LIBRARIES}
+)
+
+target_include_directories(iface_monitor SYSTEM
+ PRIVATE
+ ${NL_INCLUDE_DIRS}
+)
+
+CHECKAPI(
+ NAME
+ caputils-base
+ SWITCHES
+ SOURCES
+ ${CAPUTILS_SRC}
+)
+CHECKAPI(
+ NAME
+ caputils-todo
+ SWITCHES
+ -M
+ SOURCES
+ ${CAPUTILS_SRC}
+)
+
+#
+# Editor modelines - https://www.wireshark.org/tools/modelines.html
+#
+# Local variables:
+# c-basic-offset: 8
+# tab-width: 8
+# indent-tabs-mode: t
+# End:
+#
+# vi: set shiftwidth=8 tabstop=8 noexpandtab:
+# :indentSize=8:tabSize=8:noTabs=false:
+#