123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657 |
- From 89ad9c143825b13d028c2f1713d55e83135d5c0f Mon Sep 17 00:00:00 2001
- From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
- Date: Sat, 5 Sep 2020 15:38:33 +0200
- Subject: [PATCH] CMakesLists.txt: fix static build with pcap
- Use pkg-config to find the dependencies of pcap such as libnl otherwise
- a static-only build will fail on:
- [100%] Linking C executable ef
- /srv/storage/autobuild/run/instance-0/output-1/host/opt/ext-toolchain/bin/../lib/gcc/arm-buildroot-linux-uclibcgnueabi/8.3.0/../../../../arm-buildroot-linux-uclibcgnueabi/bin/ld: /srv/storage/autobuild/run/instance-0/output-1/host/arm-buildroot-linux-uclibcgnueabi/sysroot/usr/lib/libpcap.a(pcap-linux.o): in function `nl80211_init':
- pcap-linux.c:(.text+0x460): undefined reference to `nl_socket_alloc'
- /srv/storage/autobuild/run/instance-0/output-1/host/opt/ext-toolchain/bin/../lib/gcc/arm-buildroot-linux-uclibcgnueabi/8.3.0/../../../../arm-buildroot-linux-uclibcgnueabi/bin/ld: pcap-linux.c:(.text+0x498): undefined reference to `genl_connect'
- Fixes:
- - http://autobuild.buildroot.org/results/99062bfc8c21c32bc835acae675aede7c9cf0c90
- Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
- [Upstream status: https://github.com/microchip-ung/easyframes/pull/2]
- ---
- CMakeLists.txt | 20 ++++++++++++++------
- 1 file changed, 14 insertions(+), 6 deletions(-)
- diff --git a/CMakeLists.txt b/CMakeLists.txt
- index a62a950..5be128c 100644
- --- a/CMakeLists.txt
- +++ b/CMakeLists.txt
- @@ -7,13 +7,21 @@ include_directories(src)
-
-
- set(_LIBPCAP "")
- -FIND_PATH(PCAP_INCLUDE_DIR NAMES pcap/pcap.h)
- -FIND_LIBRARY(PCAP_LIBRARY NAMES pcap)
- -
- -if (PCAP_LIBRARY)
- +find_package(PkgConfig)
- +pkg_check_modules(PCAP libpcap)
- +if (PCAP_FOUND)
- add_definitions(-DHAS_LIBPCAP)
- - include_directories(${PCAP_INCLUDE_DIR})
- - set(_LIBPCAP ${PCAP_LIBRARY})
- + include_directories(${PCAP_INCLUDE_DIRS})
- + set(_LIBPCAP ${PCAP_LIBRARIES})
- +else()
- + FIND_PATH(PCAP_INCLUDE_DIR NAMES pcap/pcap.h)
- + FIND_LIBRARY(PCAP_LIBRARY NAMES pcap)
- +
- + if (PCAP_LIBRARY)
- + add_definitions(-DHAS_LIBPCAP)
- + include_directories(${PCAP_INCLUDE_DIR})
- + set(_LIBPCAP ${PCAP_LIBRARY})
- + endif()
- endif()
-
- add_library(libef STATIC
- --
- 2.28.0
|