summaryrefslogtreecommitdiffstats
path: root/cmake/Modules
diff options
context:
space:
mode:
Diffstat (limited to 'cmake/Modules')
-rw-r--r--cmake/Modules/BuildMacros.cmake9
-rw-r--r--cmake/Modules/FindWireshark.cmake39
2 files changed, 47 insertions, 1 deletions
diff --git a/cmake/Modules/BuildMacros.cmake b/cmake/Modules/BuildMacros.cmake
index ed95259b2..7119541dd 100644
--- a/cmake/Modules/BuildMacros.cmake
+++ b/cmake/Modules/BuildMacros.cmake
@@ -71,7 +71,7 @@ endmacro()
macro(build_library lib)
cmake_parse_arguments(ARG
- "SHARED;STATIC;NO_DEV"
+ "SHARED;STATIC;MODULE;NO_DEV"
"COMPONENT;"
"SOURCES;LINK_LIBRARIES;INSTALL_HEADERS;DEPENDS;INCLUDE_DIRS;DEFINITIONS;INSTALL_ROOT_DIR;INSTALL_FULL_PATH_DIR;EMPTY_PREFIX;"
${ARGN}
@@ -91,6 +91,13 @@ macro(build_library lib)
add_library(${lib}.static STATIC ${ARG_SOURCES})
endif()
+ if(ARG_MODULE)
+ list(APPEND TARGET_LIBS
+ ${lib}.module
+ )
+ add_library(${lib}.module MODULE ${ARG_SOURCES})
+ endif()
+
if(NOT ARG_COMPONENT)
set(ARG_COMPONENT hicn)
endif()
diff --git a/cmake/Modules/FindWireshark.cmake b/cmake/Modules/FindWireshark.cmake
new file mode 100644
index 000000000..aff03eec9
--- /dev/null
+++ b/cmake/Modules/FindWireshark.cmake
@@ -0,0 +1,39 @@
+# Copyright (c) 2021 Cisco and/or its affiliates.
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at:
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+# Locate the Wireshark library.
+#
+# This file is meant to be copied into projects that want to use Wireshark.
+# It will search for WiresharkConfig.cmake, which ships with Wireshark
+# and will provide up-to-date buildsystem changes. Thus there should not be
+# any need to update FindWiresharkVc.cmake again after you integrated it into
+# your project.
+#
+# This module defines the following variables:
+# Wireshark_FOUND
+# Wireshark_VERSION_MAJOR
+# Wireshark_VERSION_MINOR
+# Wireshark_VERSION_PATCH
+# Wireshark_VERSION
+# Wireshark_VERSION_STRING
+# Wireshark_INSTALL_DIR
+# Wireshark_PLUGIN_INSTALL_DIR
+# Wireshark_LIB_DIR
+# Wireshark_LIBRARY
+# Wireshark_INCLUDE_DIR
+# Wireshark_CMAKE_MODULES_DIR
+
+find_package(Wireshark ${Wireshark_FIND_VERSION} QUIET NO_MODULE PATHS $ENV{HOME} /opt/Wireshark)
+
+include(FindPackageHandleStandardArgs)
+find_package_handle_standard_args(Wireshark CONFIG_MODE)