All of lore.kernel.org
 help / color / mirror / Atom feed
From: Martin Jansa <martin.jansa@gmail.com>
To: Fabio Berton <fabio.berton@ossystems.com.br>
Cc: openembedded-core@lists.openembedded.org
Subject: Re: [PATCH v2] libpcap: Update to version 1.8.1
Date: Wed, 16 Nov 2016 20:41:41 +0100	[thread overview]
Message-ID: <20161116194141.GC16451@jama> (raw)
In-Reply-To: <1478605968-18575-1-git-send-email-fabio.berton@ossystems.com.br>

[-- Attachment #1: Type: text/plain, Size: 14711 bytes --]

On Tue, Nov 08, 2016 at 09:52:48AM -0200, Fabio Berton wrote:
>   - Option --enable-canusb was removed on commit:
>     https://github.com/the-tcpdump-group/libpcap/commit/93ca5ff7030aaf1219e1de05ec89a68384bfc50b
>   - Autotools class was improved and we can now stop aclocal from running at all.
>   - File configure.in was renamed to configure.ac, rework libpcap-pkgconfig-support
>     patch and do_configure_prepend task to use configure.ac file.
> 
> Signed-off-by: Fabio Berton <fabio.berton@ossystems.com.br>
> ---
>  meta/recipes-connectivity/libpcap/libpcap.inc      |   5 +-
>  .../libpcap/libpcap/aclocal.patch                  | 167 ---------------------
>  .../libpcap/libpcap-pkgconfig-support.patch        |  32 ++--
>  .../libpcap/{libpcap_1.7.4.bb => libpcap_1.8.1.bb} |  13 +-
>  4 files changed, 25 insertions(+), 192 deletions(-)
>  delete mode 100644 meta/recipes-connectivity/libpcap/libpcap/aclocal.patch
>  rename meta/recipes-connectivity/libpcap/{libpcap_1.7.4.bb => libpcap_1.8.1.bb} (67%)
> 
> diff --git a/meta/recipes-connectivity/libpcap/libpcap.inc b/meta/recipes-connectivity/libpcap/libpcap.inc
> index 7b29a52..4453a9e 100644
> --- a/meta/recipes-connectivity/libpcap/libpcap.inc
> +++ b/meta/recipes-connectivity/libpcap/libpcap.inc
> @@ -19,6 +19,7 @@ BINCONFIG = "${bindir}/pcap-config"
>  inherit autotools binconfig-disabled pkgconfig bluetooth
>  
>  EXTRA_OECONF = "--with-pcap=linux"
> +EXTRA_AUTORECONF += "--exclude=aclocal"
>  
>  PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'bluetooth', '${BLUEZ}', '', d)} \
>                     ${@bb.utils.contains('DISTRO_FEATURES', 'ipv6', 'ipv6', '', d)} \
> @@ -26,7 +27,6 @@ PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'bluetooth', '${BLUEZ
>  PACKAGECONFIG[bluez4] = "--enable-bluetooth,--disable-bluetooth,bluez4"
>  # Add a dummy PACKAGECONFIG for bluez5 since it is not supported by libpcap.
>  PACKAGECONFIG[bluez5] = ",,"
> -PACKAGECONFIG[canusb] = "--enable-canusb,--enable-canusb=no,libusb"
>  PACKAGECONFIG[dbus] = "--enable-dbus,--disable-dbus,dbus"
>  PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6,"

This version fails to build without ipv6 in PACKAGECONFIG with this
error:

| i586-oe-linux-gcc  -m32 -march=i586 --sysroot=/OE/build/oe-core/tmp-glibc/sysroots/qemux86 -I../libpcap-1.8.1 -fvisibility=hidden -fpic -I/OE/build/oe-core/tmp-glibc/work/i586-oe-linux/libpcap/1.8.1-r0/libpcap-1.8.1 -O2 -pipe -g -feliminate-unused-debug-types -fdebug-prefix-map=/OE/build/oe-core/tmp-glibc/work/i586-oe-linux/libpcap/1.8.1-r0=/usr/src/debug/libpcap/1.8.1-r0 -fdebug-prefix-map=/OE/build/oe-core/tmp-glibc/sysroots/x86_64-linux= -fdebug-prefix-map=/OE/build/oe-core/tmp-glibc/sysroots/qemux86= -I.  -DBUILDING_PCAP -DHAVE_CONFIG_H  -D_U_="__attribute__((unused))" -I/OE/build/oe-core/tmp-glibc/work/i586-oe-linux/libpcap/1.8.1-r0/libpcap-1.8.1 -O2 -pipe -g -feliminate-unused-debug-types -fdebug-prefix-map=/OE/build/oe-core/tmp-glibc/work/i586-oe-linux/libpcap/1.8.1-r0=/usr/src/debug/libpcap/1.8.1-r0 -fdebug-prefix-map=/OE/build/oe-core/tmp-glibc/sysroots/x86_64-linux= -fdebug-prefix-map=/OE/build/oe-core/tmp-glibc/sysroots/qemux86=    -c scanner.c
| ../libpcap-1.8.1/gencode.c: In function 'pcap_compile':
| ../libpcap-1.8.1/gencode.c:693:8: error: 'compiler_state_t {aka struct _compiler_state}' has no member named 'ai'
|   cstate.ai = NULL;
|         ^
| ../libpcap-1.8.1/gencode.c: In function 'gen_gateway':
| ../libpcap-1.8.1/gencode.c:4914:13: error: 'cstate' undeclared (first use in this function)
|    bpf_error(cstate, "direction applied to 'gateway'");
|              ^~~~~~
| ../libpcap-1.8.1/gencode.c:4914:13: note: each undeclared identifier is reported only once for each function it appears in
| config.status: creating pcap-config.tmp
| make: *** [Makefile:478: gencode.o] Error 1
| make: *** Waiting for unfinished jobs....
| mv pcap-config.tmp pcap-config
| chmod a+x pcap-config

Version 1.7.4 was building fine without it.

>  PACKAGECONFIG[libnl] = "--with-libnl,--without-libnl,libnl"
> @@ -36,8 +36,5 @@ CFLAGS_prepend = "-I${S} "
>  CXXFLAGS_prepend = "-I${S} "
>  
>  do_configure_prepend () {
> -    if [ ! -e ${S}/acinclude.m4 ]; then
> -        cat ${S}/aclocal.m4 > ${S}/acinclude.m4
> -    fi
>      sed -i -e's,^V_RPATH_OPT=.*$,V_RPATH_OPT=,' ${S}/pcap-config.in
>  }
> diff --git a/meta/recipes-connectivity/libpcap/libpcap/aclocal.patch b/meta/recipes-connectivity/libpcap/libpcap/aclocal.patch
> deleted file mode 100644
> index 2151982..0000000
> --- a/meta/recipes-connectivity/libpcap/libpcap/aclocal.patch
> +++ /dev/null
> @@ -1,167 +0,0 @@
> -Upstream-Status: Inappropriate [configuration]
> -
> -diff -ruN libpcap-1.1.1-orig/aclocal.m4 libpcap-1.1.1/aclocal.m4
> ---- libpcap-1.1.1-orig/aclocal.m4	2010-06-29 10:46:32.815117569 +0800
> -+++ libpcap-1.1.1/aclocal.m4	2010-06-29 10:49:17.150149949 +0800
> -@@ -37,7 +37,7 @@
> - dnl AC_LBL_C_INIT.  Now, we run AC_LBL_C_INIT_BEFORE_CC, AC_PROG_CC,
> - dnl and AC_LBL_C_INIT at the top level.
> - dnl
> --AC_DEFUN(AC_LBL_C_INIT_BEFORE_CC,
> -+AC_DEFUN([AC_LBL_C_INIT_BEFORE_CC],
> - [
> -     AC_BEFORE([$0], [AC_LBL_C_INIT])
> -     AC_BEFORE([$0], [AC_PROG_CC])
> -@@ -90,7 +90,7 @@
> - dnl     LDFLAGS
> - dnl     LBL_CFLAGS
> - dnl
> --AC_DEFUN(AC_LBL_C_INIT,
> -+AC_DEFUN([AC_LBL_C_INIT],
> - [
> -     AC_BEFORE([$0], [AC_LBL_FIXINCLUDES])
> -     AC_BEFORE([$0], [AC_LBL_DEVEL])
> -@@ -217,7 +217,7 @@
> - dnl	V_SONAME_OPT
> - dnl	V_RPATH_OPT
> - dnl
> --AC_DEFUN(AC_LBL_SHLIBS_INIT,
> -+AC_DEFUN([AC_LBL_SHLIBS_INIT],
> -     [AC_PREREQ(2.50)
> -     if test "$GCC" = yes ; then
> - 	    #
> -@@ -361,7 +361,7 @@
> - # Make sure we use the V_CCOPT flags, because some of those might
> - # disable inlining.
> - #
> --AC_DEFUN(AC_LBL_C_INLINE,
> -+AC_DEFUN([AC_LBL_C_INLINE],
> -     [AC_MSG_CHECKING(for inline)
> -     save_CFLAGS="$CFLAGS"
> -     CFLAGS="$V_CCOPT"
> -@@ -407,7 +407,7 @@
> - dnl
> - dnl	AC_LBL_FIXINCLUDES
> - dnl
> --AC_DEFUN(AC_LBL_FIXINCLUDES,
> -+AC_DEFUN([AC_LBL_FIXINCLUDES],
> -     [if test "$GCC" = yes ; then
> - 	    AC_MSG_CHECKING(for ANSI ioctl definitions)
> - 	    AC_CACHE_VAL(ac_cv_lbl_gcc_fixincludes,
> -@@ -453,7 +453,7 @@
> - dnl	$2 (yacc appended)
> - dnl	$3 (optional flex and bison -P prefix)
> - dnl
> --AC_DEFUN(AC_LBL_LEX_AND_YACC,
> -+AC_DEFUN([AC_LBL_LEX_AND_YACC],
> -     [AC_ARG_WITH(flex, [  --without-flex          don't use flex])
> -     AC_ARG_WITH(bison, [  --without-bison         don't use bison])
> -     if test "$with_flex" = no ; then
> -@@ -506,7 +506,7 @@
> - dnl
> - dnl	DECLWAITSTATUS (defined)
> - dnl
> --AC_DEFUN(AC_LBL_UNION_WAIT,
> -+AC_DEFUN([AC_LBL_UNION_WAIT],
> -     [AC_MSG_CHECKING(if union wait is used)
> -     AC_CACHE_VAL(ac_cv_lbl_union_wait,
> - 	AC_TRY_COMPILE([
> -@@ -535,7 +535,7 @@
> - dnl
> - dnl	HAVE_SOCKADDR_SA_LEN (defined)
> - dnl
> --AC_DEFUN(AC_LBL_SOCKADDR_SA_LEN,
> -+AC_DEFUN([AC_LBL_SOCKADDR_SA_LEN],
> -     [AC_MSG_CHECKING(if sockaddr struct has the sa_len member)
> -     AC_CACHE_VAL(ac_cv_lbl_sockaddr_has_sa_len,
> - 	AC_TRY_COMPILE([
> -@@ -560,7 +560,7 @@
> - dnl
> - dnl	HAVE_SOCKADDR_STORAGE (defined)
> - dnl
> --AC_DEFUN(AC_LBL_SOCKADDR_STORAGE,
> -+AC_DEFUN([AC_LBL_SOCKADDR_STORAGE],
> -     [AC_MSG_CHECKING(if sockaddr_storage struct exists)
> -     AC_CACHE_VAL(ac_cv_lbl_has_sockaddr_storage,
> - 	AC_TRY_COMPILE([
> -@@ -593,7 +593,7 @@
> - dnl won't be using code that would use that member, or we wouldn't
> - dnl compile in any case).
> - dnl
> --AC_DEFUN(AC_LBL_HP_PPA_INFO_T_DL_MODULE_ID_1,
> -+AC_DEFUN([AC_LBL_HP_PPA_INFO_T_DL_MODULE_ID_1],
> -     [AC_MSG_CHECKING(if dl_hp_ppa_info_t struct has dl_module_id_1 member)
> -     AC_CACHE_VAL(ac_cv_lbl_dl_hp_ppa_info_t_has_dl_module_id_1,
> - 	AC_TRY_COMPILE([
> -@@ -619,7 +619,7 @@
> - dnl
> - dnl	ac_cv_lbl_have_run_path (yes or no)
> - dnl
> --AC_DEFUN(AC_LBL_HAVE_RUN_PATH,
> -+AC_DEFUN([AC_LBL_HAVE_RUN_PATH],
> -     [AC_MSG_CHECKING(for ${CC-cc} -R)
> -     AC_CACHE_VAL(ac_cv_lbl_have_run_path,
> - 	[echo 'main(){}' > conftest.c
> -@@ -644,7 +644,7 @@
> - dnl
> - dnl	LBL_ALIGN (DEFINED)
> - dnl
> --AC_DEFUN(AC_LBL_UNALIGNED_ACCESS,
> -+AC_DEFUN([AC_LBL_UNALIGNED_ACCESS],
> -     [AC_MSG_CHECKING(if unaligned accesses fail)
> -     AC_CACHE_VAL(ac_cv_lbl_unaligned_fail,
> - 	[case "$host_cpu" in
> -@@ -749,7 +749,7 @@
> - dnl	HAVE_OS_PROTO_H (defined)
> - dnl	os-proto.h (symlinked)
> - dnl
> --AC_DEFUN(AC_LBL_DEVEL,
> -+AC_DEFUN([AC_LBL_DEVEL],
> -     [rm -f os-proto.h
> -     if test "${LBL_CFLAGS+set}" = set; then
> - 	    $1="$$1 ${LBL_CFLAGS}"
> -@@ -886,7 +886,7 @@
> - dnl statically and happen to have a libresolv.a lying around (and no
> - dnl libnsl.a).
> - dnl
> --AC_DEFUN(AC_LBL_LIBRARY_NET, [
> -+AC_DEFUN([AC_LBL_LIBRARY_NET], [
> -     # Most operating systems have gethostbyname() in the default searched
> -     # libraries (i.e. libc):
> -     # Some OSes (eg. Solaris) place it in libnsl
> -@@ -909,7 +909,7 @@
> - dnl Test for __attribute__
> - dnl
> - 
> --AC_DEFUN(AC_C___ATTRIBUTE__, [
> -+AC_DEFUN([AC_C___ATTRIBUTE__], [
> - AC_MSG_CHECKING(for __attribute__)
> - AC_CACHE_VAL(ac_cv___attribute__, [
> - AC_COMPILE_IFELSE(
> -@@ -947,7 +947,7 @@
> - dnl
> - dnl -Scott Barron
> - dnl
> --AC_DEFUN(AC_LBL_TPACKET_STATS,
> -+AC_DEFUN([AC_LBL_TPACKET_STATS],
> -    [AC_MSG_CHECKING(if if_packet.h has tpacket_stats defined)
> -    AC_CACHE_VAL(ac_cv_lbl_tpacket_stats,
> -    AC_TRY_COMPILE([
> -@@ -976,7 +976,7 @@
> - dnl doesn't have that member (which is OK, as either we won't be using
> - dnl code that would use that member, or we wouldn't compile in any case).
> - dnl
> --AC_DEFUN(AC_LBL_LINUX_TPACKET_AUXDATA_TP_VLAN_TCI,
> -+AC_DEFUN([AC_LBL_LINUX_TPACKET_AUXDATA_TP_VLAN_TCI],
> -     [AC_MSG_CHECKING(if tpacket_auxdata struct has tp_vlan_tci member)
> -     AC_CACHE_VAL(ac_cv_lbl_dl_hp_ppa_info_t_has_dl_module_id_1,
> - 	AC_TRY_COMPILE([
> -@@ -1003,7 +1003,7 @@
> - dnl 
> - dnl 	HAVE_DLPI_PASSIVE (defined)
> - dnl
> --AC_DEFUN(AC_LBL_DL_PASSIVE_REQ_T,
> -+AC_DEFUN([AC_LBL_DL_PASSIVE_REQ_T],
> -         [AC_MSG_CHECKING(if dl_passive_req_t struct exists)
> -        AC_CACHE_VAL(ac_cv_lbl_has_dl_passive_req_t,
> -                 AC_TRY_COMPILE([
> diff --git a/meta/recipes-connectivity/libpcap/libpcap/libpcap-pkgconfig-support.patch b/meta/recipes-connectivity/libpcap/libpcap/libpcap-pkgconfig-support.patch
> index b861513..afaa3be 100644
> --- a/meta/recipes-connectivity/libpcap/libpcap/libpcap-pkgconfig-support.patch
> +++ b/meta/recipes-connectivity/libpcap/libpcap/libpcap-pkgconfig-support.patch
> @@ -1,25 +1,27 @@
> -From 8887132e85892a72a84ca3878e60f254ad2ce939 Mon Sep 17 00:00:00 2001
> -From: Joe MacDonald <joe_macdonald@mentor.com>
> -Date: Tue, 24 Feb 2015 15:56:06 -0500
> +From 2796129af52901dd68595e5e88a639308541def9 Mon Sep 17 00:00:00 2001
> +From: Fabio Berton <fabio.berton@ossystems.com.br>
> +Date: Thu, 3 Nov 2016 17:56:29 -0200
>  Subject: [PATCH] libpcap: pkgconfig support
> +Organization: O.S. Systems Software LTDA.
>  
>  Adding basic structure to support pkg-config.
>  
>  Upstream-Status: Inappropriate [embedded specific]
>  
>  Signed-off-by: Joe MacDonald <joe_macdonald@mentor.com>
> +Signed-off-by: Fabio Berton <fabio.berton@ossystems.com.br>
>  ---
>   Makefile.in   |  5 +++++
> - configure.in  |  1 +
> + configure.ac  |  1 +
>   libpcap.pc.in | 10 ++++++++++
>   3 files changed, 16 insertions(+)
>   create mode 100644 libpcap.pc.in
>  
>  diff --git a/Makefile.in b/Makefile.in
> -index 1c2d745..1f25faf 100644
> +index e71d973..d7004ed 100644
>  --- a/Makefile.in
>  +++ b/Makefile.in
> -@@ -60,6 +60,10 @@ V_RPATH_OPT = @V_RPATH_OPT@
> +@@ -61,6 +61,10 @@ V_RPATH_OPT = @V_RPATH_OPT@
>   DEPENDENCY_CFLAG = @DEPENDENCY_CFLAG@
>   PROG=libpcap
>   
> @@ -30,19 +32,19 @@ index 1c2d745..1f25faf 100644
>   # Standard CFLAGS
>   FULL_CFLAGS = $(CCOPT) $(INCLS) $(DEFS) $(CFLAGS)
>   
> -@@ -275,6 +279,7 @@ EXTRA_DIST = \
> +@@ -286,6 +290,7 @@ EXTRA_DIST = \
>   	lbl/os-solaris2.h \
>   	lbl/os-sunos4.h \
>   	lbl/os-ultrix4.h \
>  +	libpcap.pc \
> + 	missing/getopt.c \
> + 	missing/getopt.h \
>   	missing/snprintf.c \
> - 	mkdep \
> - 	msdos/bin2c.c \
> -diff --git a/configure.in b/configure.in
> -index 8f5c86b..fb51b35 100644
> ---- a/configure.in
> -+++ b/configure.in
> -@@ -1700,6 +1700,7 @@ esac
> +diff --git a/configure.ac b/configure.ac
> +index da2f940..4fc67bf 100644
> +--- a/configure.ac
> ++++ b/configure.ac
> +@@ -1805,6 +1805,7 @@ fi
>   AC_PROG_INSTALL
>   
>   AC_CONFIG_HEADER(config.h)
> @@ -67,5 +69,5 @@ index 0000000..4f78ad8
>  +Libs: -L${libdir} -lpcap
>  +Cflags: -I${includedir}
>  -- 
> -1.9.1
> +2.1.4
>  
> diff --git a/meta/recipes-connectivity/libpcap/libpcap_1.7.4.bb b/meta/recipes-connectivity/libpcap/libpcap_1.8.1.bb
> similarity index 67%
> rename from meta/recipes-connectivity/libpcap/libpcap_1.7.4.bb
> rename to meta/recipes-connectivity/libpcap/libpcap_1.8.1.bb
> index 8d12b25..9072fe0 100644
> --- a/meta/recipes-connectivity/libpcap/libpcap_1.7.4.bb
> +++ b/meta/recipes-connectivity/libpcap/libpcap_1.8.1.bb
> @@ -1,10 +1,11 @@
>  require libpcap.inc
>  
> -SRC_URI += "file://aclocal.patch \
> -            file://libpcap-pkgconfig-support.patch \
> -           "
> -SRC_URI[md5sum] = "b2e13142bbaba857ab1c6894aedaf547"
> -SRC_URI[sha256sum] = "7ad3112187e88328b85e46dce7a9b949632af18ee74d97ffc3f2b41fe7f448b0"
> +SRC_URI += " \
> +    file://libpcap-pkgconfig-support.patch \
> +"
> +
> +SRC_URI[md5sum] = "3d48f9cd171ff12b0efd9134b52f1447"
> +SRC_URI[sha256sum] = "673dbc69fdc3f5a86fb5759ab19899039a8e5e6c631749e48dcd9c6f0c83541e"
>  
>  #
>  # make install doesn't cover the shared lib
> @@ -13,7 +14,7 @@ SRC_URI[sha256sum] = "7ad3112187e88328b85e46dce7a9b949632af18ee74d97ffc3f2b41fe7
>  
>  do_configure_prepend () {
>      #remove hardcoded references to /usr/include
> -    sed 's|\([ "^'\''I]\+\)/usr/include/|\1${STAGING_INCDIR}/|g' -i ${S}/configure.in
> +    sed 's|\([ "^'\''I]\+\)/usr/include/|\1${STAGING_INCDIR}/|g' -i ${S}/configure.ac
>  }
>  
>  do_install_prepend () {
> -- 
> 2.1.4
> 
> -- 
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core

-- 
Martin 'JaMa' Jansa     jabber: Martin.Jansa@gmail.com

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 169 bytes --]

  reply	other threads:[~2016-11-16 19:41 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-11-08 11:52 [PATCH v2] libpcap: Update to version 1.8.1 Fabio Berton
2016-11-16 19:41 ` Martin Jansa [this message]
2016-11-16 19:47   ` Fabio Berton

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20161116194141.GC16451@jama \
    --to=martin.jansa@gmail.com \
    --cc=fabio.berton@ossystems.com.br \
    --cc=openembedded-core@lists.openembedded.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.