*: fix detection and usage of sys/cdefs.h
This header is non-standard (though present on many systems) and
there is no standard for what it should or should not define.
Remove it where it is not really needed. But add also a configure
check, so it can be used if available but otherwise fallback to
defining the needed macroes.
Signed-off-by: Timo Teräs <timo.teras@iki.fi>
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
diff --git a/configure.ac b/configure.ac
index 220124a..3dba3b3 100755
--- a/configure.ac
+++ b/configure.ac
@@ -442,7 +442,7 @@
dnl -------------------------
AC_CHECK_HEADERS([stropts.h sys/ksym.h sys/times.h sys/select.h \
sys/types.h linux/version.h netdb.h asm/types.h \
- sys/param.h limits.h signal.h \
+ sys/cdefs.h sys/param.h limits.h signal.h \
sys/socket.h netinet/in.h time.h sys/time.h])
dnl Utility macro to avoid retyping includes all the time
diff --git a/isisd/include-netbsd/iso.h b/isisd/include-netbsd/iso.h
index 1a80aec..42b9bc8 100644
--- a/isisd/include-netbsd/iso.h
+++ b/isisd/include-netbsd/iso.h
@@ -192,7 +192,7 @@
#else
/* user utilities definitions from the iso library */
-#ifdef SUNOS_5
+#ifndef HAVE_SYS_CDEFS_H
#define __P(x) x
#define __BEGIN_DECLS
#define __END_DECLS
diff --git a/lib/queue.h b/lib/queue.h
index 70cffab..48b363e 100644
--- a/lib/queue.h
+++ b/lib/queue.h
@@ -33,8 +33,6 @@
#ifndef _SYS_QUEUE_H_
#define _SYS_QUEUE_H_
-#include <sys/cdefs.h>
-
/*
* This file defines four types of data structures: singly-linked lists,
* singly-linked tail queues, lists and tail queues.