kumquat-buildroot/package/wireshark/0001-CMake-revert-CMake-Add-libpcap-imported-library-targ.patch
Fabrice Fontaine 632dd3a518 package/wireshark: bump to version 3.2.0
- Remove patches (already in version)
- Add patch to fix static build with pcap by reverting an upstream
  commit. This patch has been sent upstream and there is already some
  comments on it. However, upstream does not seem to really care/test
  static builds. So, perhaps an easier road would to add a dynamic
  library dependency on wireshark instead of fixing things again and
  again each time wireshark is bumped...
- Add mandatory speexdsp dependency to avoid using internal one when
  building wireshark or sharkd:
  186f985793
- Disable -Werror (it is now enabled by default)
- Add brotli optional dependency:
  9ce60b173b

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2019-12-30 14:04:24 +01:00

105 lines
3.7 KiB
Diff

From 19b407fd65a11d3aa7bc70ac95d7b6f130914866 Mon Sep 17 00:00:00 2001
From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Date: Sun, 11 Aug 2019 12:10:34 +0200
Subject: [PATCH] CMake: revert "CMake: Add libpcap imported library target"
${PCAP_LIBRARIES} is added to IMPORTED_LOCATION since
https://github.com/wireshark/wireshark/commit/4c5d2f5ccf822c07746853b065322c34dc322e8a
However, this breaks static build because cmake considers that
IMPORTED_LOCATION is a string:
[ 19%] Building C object epan/dissectors/CMakeFiles/dissectors.dir/packet-aim.c.o
x86_64-linux-gcc.br_real: error: /home/fabrice/buildroot/output/host/x86_64-buildroot-linux-uclibc/sysroot/usr/lib/libpcap.a;/home/fabrice/buildroot/output/host/x86_64-buildroot-linux-uclibc/sysroot/usr/lib/libnl-genl-3.a;/home/fabrice/buildroot/output/host/x86_64-buildroot-linux-uclibc/sysroot/usr/lib/libnl-3.a: No such file or directory
make[3]: *** [CMakeFiles/mergecap.dir/build.make:102: run/mergecap] Error 1
make[3]: Leaving directory '/home/fabrice/buildroot/output/build/wireshark-3.1.0'
make[2]: *** [CMakeFiles/Makefile2:195: CMakeFiles/mergecap.dir/all] Error 2
make[2]: *** Waiting for unfinished jobs....
So revert this change to use PCAP_LIBRARIES which is used to save the
paths of libpcap as well as its static dependencies, IMPORTED_LOCATION
can't be used for this purpose as cmake considers this variable to be a
single library path and not a list of library paths
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
[Upstream status: https://code.wireshark.org/review/#/c/35567]
---
CMakeLists.txt | 2 +-
capchild/CMakeLists.txt | 2 +-
caputils/CMakeLists.txt | 2 +-
cmake/modules/FindPCAP.cmake | 8 --------
extcap/CMakeLists.txt | 2 +-
5 files changed, 4 insertions(+), 12 deletions(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 07d40e4ba6..cada0434ea 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -2633,7 +2633,7 @@ if(BUILD_dumpcap AND PCAP_FOUND)
wsutil
caputils
ui
- pcap::pcap
+ ${PCAP_LIBRARIES}
${CAP_LIBRARIES}
${GLIB2_LIBRARIES}
${GTHREAD2_LIBRARIES}
diff --git a/capchild/CMakeLists.txt b/capchild/CMakeLists.txt
index 5eba74a28d..059c399d39 100644
--- a/capchild/CMakeLists.txt
+++ b/capchild/CMakeLists.txt
@@ -29,7 +29,7 @@ add_library(capchild STATIC
target_link_libraries(capchild
PRIVATE
wsutil
- $<$<BOOL:${PCAP_FOUND}>:pcap::pcap>
+ ${PCAP_LIBRARIES}
)
set_target_properties(capchild PROPERTIES
diff --git a/caputils/CMakeLists.txt b/caputils/CMakeLists.txt
index 74c9496834..e4e9beccdc 100644
--- a/caputils/CMakeLists.txt
+++ b/caputils/CMakeLists.txt
@@ -50,7 +50,7 @@ add_library(caputils STATIC
target_link_libraries(caputils
PUBLIC
wsutil
- $<$<BOOL:${PCAP_FOUND}>:pcap::pcap>
+ ${PCAP_LIBRARIES}
PRIVATE
${NL_LIBRARIES}
)
diff --git a/cmake/modules/FindPCAP.cmake b/cmake/modules/FindPCAP.cmake
index eab41f185c..8bb9b524f7 100644
--- a/cmake/modules/FindPCAP.cmake
+++ b/cmake/modules/FindPCAP.cmake
@@ -262,11 +262,3 @@ if(PCAP_FOUND)
cmake_pop_check_state()
endif()
-
-if(PCAP_FOUND AND NOT TARGET pcap::pcap)
- add_library(pcap::pcap UNKNOWN IMPORTED)
- set_target_properties(pcap::pcap PROPERTIES
- IMPORTED_LOCATION "${PCAP_LIBRARIES}"
- INTERFACE_INCLUDE_DIRECTORIES "${PCAP_INCLUDE_DIRS}"
- )
-endif()
diff --git a/extcap/CMakeLists.txt b/extcap/CMakeLists.txt
index 03b2b0273e..8802d93678 100644
--- a/extcap/CMakeLists.txt
+++ b/extcap/CMakeLists.txt
@@ -93,7 +93,7 @@ if(BUILD_androiddump)
ui
${GLIB2_LIBRARIES}
${WIN_WS2_32_LIBRARY}
- $<$<BOOL:${PCAP_FOUND}>:pcap::pcap>
+ ${PCAP_LIBRARIES}
)
else()
message(FATAL_ERROR "You are trying to build androiddump with libpcap but do not have it")
--
2.20.1