diff mbox

[1/2] kismet: Remove libpcap compile tests to fix cross-compiling

Message ID 1418395681-40434-1-git-send-email-Vincent.Riera@imgtec.com
State Rejected
Headers show

Commit Message

Vicente Olivert Riera Dec. 12, 2014, 2:48 p.m. UTC
These compile tests are run on the host machine which may have or may
not have libpcap installed, so we are relying on the host machine to
determine if we have to stop the build process due to a missing pcap
library. Given that Kismet already depends on libpcap we can be sure
that library will be installed in our target. So, for these two reasons
we can remove these compile tests from the configure script.

Fixes:
  http://autobuild.buildroot.net/results/965/965a3e345dc0a432043b72581bff7d33561fbe0c/

Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
---
 ...pcap-compile-tests-to-fix-cross-compiling.patch |  104 ++++++++++++++++++++
 1 files changed, 104 insertions(+), 0 deletions(-)
 create mode 100644 package/kismet/0003-Remove-libpcap-compile-tests-to-fix-cross-compiling.patch

Comments

Yann E. MORIN Dec. 26, 2014, 4:24 p.m. UTC | #1
Vicente, All,

On 2014-12-12 14:48 +0000, Vicente Olivert Riera spake thusly:
> These compile tests are run on the host machine which may have or may
> not have libpcap installed, so we are relying on the host machine to
> determine if we have to stop the build process due to a missing pcap
> library. Given that Kismet already depends on libpcap we can be sure
> that library will be installed in our target. So, for these two reasons
> we can remove these compile tests from the configure script.
> 
> Fixes:
>   http://autobuild.buildroot.net/results/965/965a3e345dc0a432043b72581bff7d33561fbe0c/
> 
> Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
> ---
>  ...pcap-compile-tests-to-fix-cross-compiling.patch |  104 ++++++++++++++++++++
>  1 files changed, 104 insertions(+), 0 deletions(-)
>  create mode 100644 package/kismet/0003-Remove-libpcap-compile-tests-to-fix-cross-compiling.patch
> 
> diff --git a/package/kismet/0003-Remove-libpcap-compile-tests-to-fix-cross-compiling.patch b/package/kismet/0003-Remove-libpcap-compile-tests-to-fix-cross-compiling.patch
> new file mode 100644
> index 0000000..d41c64e
> --- /dev/null
> +++ b/package/kismet/0003-Remove-libpcap-compile-tests-to-fix-cross-compiling.patch
> @@ -0,0 +1,104 @@
> +Remove libpcap compile tests to fix cross-compiling
> +
> +These compile tests are run on the host machine which may have or may
> +not have libpcap installed, so we are relying on the host machine to
> +determine if we have to stop the build process due to a missing pcap
> +library. Given that Kismet already depends on libpcap we can be sure
> +that library will be installed in our target. So, for these two reasons
> +we can remove these compile tests from the configure script.
> +
> +Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
> +
> +diff -rup a/configure b/configure
> +--- a/configure	2014-12-11 16:35:36.979059147 +0000
> ++++ b/configure	2014-12-11 16:43:54.175647454 +0000

You are patching configure instead of configure.in.

However, I could not observe what you describe in the commit log. In my
case, the libpcap is really checked with the cross-compiler:

    configure:6258: checking for pcap_open_live in -lpcap
    configure:6283: /home/ymorin/dev/buildroot/O/host/usr/bin/arm-none-linux-gnueabi-gcc [...]
    configure:6283: $? = 0
    configure:6293: result: yes
    [...]
    configure:6378: checking for pcap_get_selectable_fd in -lpcap
    configure:6403: /home/ymorin/dev/buildroot/O/host/usr/bin/arm-none-linux-gnueabi-gcc [...]
    configure:6403: $? = 0
    configure:6413: result: yes
 
But that's maybe because I now autoreconf kismet, since my ncurses-related
patch already touches configure.in.

So I've marked this patch as "Rejected" in Patchwork, as it seems it is
no longer needed.

In case you still have issues with the pcap stuff, feel free to resubmit
the patch with extra information.

Thank you! :-)

Regards,
Yann E. MORIN.
diff mbox

Patch

diff --git a/package/kismet/0003-Remove-libpcap-compile-tests-to-fix-cross-compiling.patch b/package/kismet/0003-Remove-libpcap-compile-tests-to-fix-cross-compiling.patch
new file mode 100644
index 0000000..d41c64e
--- /dev/null
+++ b/package/kismet/0003-Remove-libpcap-compile-tests-to-fix-cross-compiling.patch
@@ -0,0 +1,104 @@ 
+Remove libpcap compile tests to fix cross-compiling
+
+These compile tests are run on the host machine which may have or may
+not have libpcap installed, so we are relying on the host machine to
+determine if we have to stop the build process due to a missing pcap
+library. Given that Kismet already depends on libpcap we can be sure
+that library will be installed in our target. So, for these two reasons
+we can remove these compile tests from the configure script.
+
+Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
+
+diff -rup a/configure b/configure
+--- a/configure	2014-12-11 16:35:36.979059147 +0000
++++ b/configure	2014-12-11 16:43:54.175647454 +0000
+@@ -6265,29 +6265,7 @@ if eval \${$as_ac_Lib+:} false; then :
+ else
+   ac_check_lib_save_LIBS=$LIBS
+ LIBS="-l${pcaplib}  $LIBS"
+-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+-/* end confdefs.h.  */
+-
+-/* Override any GCC internal prototype to avoid an error.
+-   Use char because int might match the return type of a GCC
+-   builtin and then its argument prototype would still apply.  */
+-#ifdef __cplusplus
+-extern "C"
+-#endif
+-char pcap_open_live ();
+-int
+-main ()
+-{
+-return pcap_open_live ();
+-  ;
+-  return 0;
+-}
+-_ACEOF
+-if ac_fn_c_try_link "$LINENO"; then :
+   eval "$as_ac_Lib=yes"
+-else
+-  eval "$as_ac_Lib=no"
+-fi
+ rm -f core conftest.err conftest.$ac_objext \
+     conftest$ac_exeext conftest.$ac_ext
+ LIBS=$ac_check_lib_save_LIBS
+@@ -6337,29 +6315,7 @@ if ${ac_cv_lib_pcap_pcap_setnonblock+:} 
+ else
+   ac_check_lib_save_LIBS=$LIBS
+ LIBS="-lpcap  $LIBS"
+-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+-/* end confdefs.h.  */
+-
+-/* Override any GCC internal prototype to avoid an error.
+-   Use char because int might match the return type of a GCC
+-   builtin and then its argument prototype would still apply.  */
+-#ifdef __cplusplus
+-extern "C"
+-#endif
+-char pcap_setnonblock ();
+-int
+-main ()
+-{
+-return pcap_setnonblock ();
+-  ;
+-  return 0;
+-}
+-_ACEOF
+-if ac_fn_c_try_link "$LINENO"; then :
+   ac_cv_lib_pcap_pcap_setnonblock=yes
+-else
+-  ac_cv_lib_pcap_pcap_setnonblock=no
+-fi
+ rm -f core conftest.err conftest.$ac_objext \
+     conftest$ac_exeext conftest.$ac_ext
+ LIBS=$ac_check_lib_save_LIBS
+@@ -6385,29 +6341,7 @@ if eval \${$as_ac_Lib+:} false; then :
+ else
+   ac_check_lib_save_LIBS=$LIBS
+ LIBS="-l${pcaplib}  $LIBS"
+-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+-/* end confdefs.h.  */
+-
+-/* Override any GCC internal prototype to avoid an error.
+-   Use char because int might match the return type of a GCC
+-   builtin and then its argument prototype would still apply.  */
+-#ifdef __cplusplus
+-extern "C"
+-#endif
+-char pcap_get_selectable_fd ();
+-int
+-main ()
+-{
+-return pcap_get_selectable_fd ();
+-  ;
+-  return 0;
+-}
+-_ACEOF
+-if ac_fn_c_try_link "$LINENO"; then :
+   eval "$as_ac_Lib=yes"
+-else
+-  eval "$as_ac_Lib=no"
+-fi
+ rm -f core conftest.err conftest.$ac_objext \
+     conftest$ac_exeext conftest.$ac_ext
+ LIBS=$ac_check_lib_save_LIBS