Mercurial > hg > octave-nkf > gnulib-hg
changeset 17285:76707f1cca79
net_if-tests: port to older Solaris
Problem reported by Tom G. Christensen in
<http://lists.gnu.org/archive/html/bug-gnulib/2013-01/msg00086.html>.
* modules/net_if-tests (NET_IF_LIB): New substitution.
(test_net_if_LDADD): New makefile macro, which uses NET_IF_LIB.
(HAVE_IF_NAMEINDEX): New C macro.
* tests/test-net_if.c: Bypass most of the test if !HAVE_IF_NAMEINDEX.
author | Paul Eggert <eggert@cs.ucla.edu> |
---|---|
date | Sat, 12 Jan 2013 21:48:49 -0800 |
parents | 4dd985ff8805 |
children | e8b5dfc96156 |
files | ChangeLog modules/net_if-tests tests/test-net_if.c |
diffstat | 3 files changed, 24 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,13 @@ 2013-01-12 Paul Eggert <eggert@cs.ucla.edu> + net_if-tests: port to older Solaris + Problem reported by Tom G. Christensen in + <http://lists.gnu.org/archive/html/bug-gnulib/2013-01/msg00086.html>. + * modules/net_if-tests (NET_IF_LIB): New substitution. + (test_net_if_LDADD): New makefile macro, which uses NET_IF_LIB. + (HAVE_IF_NAMEINDEX): New C macro. + * tests/test-net_if.c: Bypass most of the test if !HAVE_IF_NAMEINDEX. + system-quote-tests: port to older Solaris Problem reported by Tom G. Christensen in <http://lists.gnu.org/archive/html/bug-gnulib/2013-01/msg00086.html>.
--- a/modules/net_if-tests +++ b/modules/net_if-tests @@ -5,7 +5,17 @@ Depends-on: configure.ac: +NET_IF_LIB= +gl_saved_libs="$LIBS" +AC_SEARCH_LIBS([if_nameindex], [socket], + [AC_DEFINE([HAVE_IF_NAMEINDEX], [1], [Define if you have if_nameindex.]) + if test "$ac_cv_search_if_nameindex" != "none required"; then + NET_IF_LIB="$ac_cv_search_if_nameindex" + fi]) +LIBS="$gl_saved_libs" +AC_SUBST([NET_IF_LIB]) Makefile.am: TESTS += test-net_if check_PROGRAMS += test-net_if +test_net_if_LDADD = $(LDADD) @NET_IF_LIB@
--- a/tests/test-net_if.c +++ b/tests/test-net_if.c @@ -24,7 +24,7 @@ /* We do not yet have replacements for if_* functions on systems that lack a native <net/if.h>. */ -#if HAVE_NET_IF_H +#if HAVE_NET_IF_H && HAVE_IF_NAMEINDEX # include "signature.h" SIGNATURE_CHECK (if_freenameindex, void, (struct if_nameindex *)); SIGNATURE_CHECK (if_indextoname, char *, (unsigned int, char *)); @@ -38,7 +38,7 @@ int main (int argc, char *argv[]) { -#if HAVE_NET_IF_H +#if HAVE_NET_IF_H && HAVE_IF_NAMEINDEX struct if_nameindex *ifnp, *p; p = ifnp = if_nameindex (); @@ -89,5 +89,9 @@ if_freenameindex (ifnp); #endif /* HAVE_NET_IF_H */ +#if !HAVE_NET_IF_H || HAVE_IF_NAMEINDEX return !IF_NAMESIZE + ni.if_index + !!ni.if_name; +#else + return 0; +#endif }