Re: [ovs-dev] [PATCH] configure: Properly handle case where libunwind.h is not available.

2019-10-16 Thread Yi-Hung Wei
On Wed, Oct 16, 2019 at 6:50 PM Ben Pfaff  wrote:
>
> On Tue, Oct 15, 2019 at 04:49:33PM -0700, Yi-Hung Wei wrote:
> > On Tue, Oct 15, 2019 at 3:25 PM Ben Pfaff  wrote:
> > >
> > > On Tue, Oct 15, 2019 at 02:30:48PM -0700, Yi-Hung Wei wrote:
> > > > It is possible that user install libunwind but not libunwind-devel,
> > > > and it will run into a compilation error.  So check the existence
> > > > of the header file instead of the library.
> > > >
> > > > Fixes: e2ed6fbeb18c ("fatal-signal: Catch SIGSEGV and print backtrace.")
> > > > Signed-off-by: Yi-Hung Wei 
> > > > ---
> > > >  m4/openvswitch.m4 | 2 +-
> > > >  1 file changed, 1 insertion(+), 1 deletion(-)
> > > >
> > > > diff --git a/m4/openvswitch.m4 b/m4/openvswitch.m4
> > > > index 79e0be5a33dd..da7119951484 100644
> > > > --- a/m4/openvswitch.m4
> > > > +++ b/m4/openvswitch.m4
> > > > @@ -640,7 +640,7 @@ AC_DEFUN([OVS_CHECK_UNBOUND],
> > > >
> > > >  dnl Checks for libunwind.
> > > >  AC_DEFUN([OVS_CHECK_UNWIND],
> > > > -  [AC_CHECK_LIB(unwind, unw_backtrace, [HAVE_UNWIND=yes], 
> > > > [HAVE_UNWIND=no])
> > > > +  [AC_CHECK_HEADERS([libunwind.h], [HAVE_UNWIND=yes], [HAVE_UNWIND=no])
> > >
> > > It might be wise to check for both, e.g.:
> > >
> > > AC_CHECK_LIB([unwind], [unw_backtrace],
> > >   [AC_CHECK_HEADERS([libunwind.h], [HAVE_UNWIND=yes], [HAVE_UNWIND=no])],
> > >   [HAVE_UNWIND=no])
> > >
> >
> > Hi Ben,
> >
> > In most distros, libunwind-devel (or libunwind-dev) depends on
> > libunwind.  Is it necessary for us to check both?
>
> Not if everyone installs from a distro package.  If you install from a
> tarball, it's easy to provide configure options that make the header
> available but not the library, or vice versa.  It's better to catch that
> at configure time.

Thanks for explanation.   It's better to check both.  I will send out v2 soon.

Thanks,

-Yi-Hung
___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev


Re: [ovs-dev] [PATCH] configure: Properly handle case where libunwind.h is not available.

2019-10-16 Thread Ben Pfaff
On Tue, Oct 15, 2019 at 04:49:33PM -0700, Yi-Hung Wei wrote:
> On Tue, Oct 15, 2019 at 3:25 PM Ben Pfaff  wrote:
> >
> > On Tue, Oct 15, 2019 at 02:30:48PM -0700, Yi-Hung Wei wrote:
> > > It is possible that user install libunwind but not libunwind-devel,
> > > and it will run into a compilation error.  So check the existence
> > > of the header file instead of the library.
> > >
> > > Fixes: e2ed6fbeb18c ("fatal-signal: Catch SIGSEGV and print backtrace.")
> > > Signed-off-by: Yi-Hung Wei 
> > > ---
> > >  m4/openvswitch.m4 | 2 +-
> > >  1 file changed, 1 insertion(+), 1 deletion(-)
> > >
> > > diff --git a/m4/openvswitch.m4 b/m4/openvswitch.m4
> > > index 79e0be5a33dd..da7119951484 100644
> > > --- a/m4/openvswitch.m4
> > > +++ b/m4/openvswitch.m4
> > > @@ -640,7 +640,7 @@ AC_DEFUN([OVS_CHECK_UNBOUND],
> > >
> > >  dnl Checks for libunwind.
> > >  AC_DEFUN([OVS_CHECK_UNWIND],
> > > -  [AC_CHECK_LIB(unwind, unw_backtrace, [HAVE_UNWIND=yes], 
> > > [HAVE_UNWIND=no])
> > > +  [AC_CHECK_HEADERS([libunwind.h], [HAVE_UNWIND=yes], [HAVE_UNWIND=no])
> >
> > It might be wise to check for both, e.g.:
> >
> > AC_CHECK_LIB([unwind], [unw_backtrace],
> >   [AC_CHECK_HEADERS([libunwind.h], [HAVE_UNWIND=yes], [HAVE_UNWIND=no])],
> >   [HAVE_UNWIND=no])
> >
> 
> Hi Ben,
> 
> In most distros, libunwind-devel (or libunwind-dev) depends on
> libunwind.  Is it necessary for us to check both?

Not if everyone installs from a distro package.  If you install from a
tarball, it's easy to provide configure options that make the header
available but not the library, or vice versa.  It's better to catch that
at configure time.
___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev


Re: [ovs-dev] [PATCH] configure: Properly handle case where libunwind.h is not available.

2019-10-15 Thread Ben Pfaff
On Tue, Oct 15, 2019 at 02:30:48PM -0700, Yi-Hung Wei wrote:
> It is possible that user install libunwind but not libunwind-devel,
> and it will run into a compilation error.  So check the existence
> of the header file instead of the library.
> 
> Fixes: e2ed6fbeb18c ("fatal-signal: Catch SIGSEGV and print backtrace.")
> Signed-off-by: Yi-Hung Wei 
> ---
>  m4/openvswitch.m4 | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/m4/openvswitch.m4 b/m4/openvswitch.m4
> index 79e0be5a33dd..da7119951484 100644
> --- a/m4/openvswitch.m4
> +++ b/m4/openvswitch.m4
> @@ -640,7 +640,7 @@ AC_DEFUN([OVS_CHECK_UNBOUND],
>  
>  dnl Checks for libunwind.
>  AC_DEFUN([OVS_CHECK_UNWIND],
> -  [AC_CHECK_LIB(unwind, unw_backtrace, [HAVE_UNWIND=yes], [HAVE_UNWIND=no])
> +  [AC_CHECK_HEADERS([libunwind.h], [HAVE_UNWIND=yes], [HAVE_UNWIND=no])

It might be wise to check for both, e.g.:

AC_CHECK_LIB([unwind], [unw_backtrace],
  [AC_CHECK_HEADERS([libunwind.h], [HAVE_UNWIND=yes], [HAVE_UNWIND=no])],
  [HAVE_UNWIND=no])

___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev