mirror of
https://github.com/fwbuilder/fwbuilder
synced 2025-06-16 07:07:27 +02:00
292 lines
6.2 KiB
Plaintext
292 lines
6.2 KiB
Plaintext
dnl
|
|
dnl $Id: acsite.m4 808 2004-09-08 05:34:53Z vkurland $
|
|
dnl
|
|
|
|
|
|
dnl Test files
|
|
define( [AC_TEST_FILES],
|
|
[
|
|
ac_file_found=yes
|
|
for f in $1; do
|
|
if test ! -f $2/$f; then
|
|
ac_file_found=no
|
|
break;
|
|
fi
|
|
done
|
|
|
|
if test "$ac_file_found" = "yes" ; then
|
|
ifelse([$3], , :,[$3])
|
|
else
|
|
ifelse([$4], , :,[$4])
|
|
fi
|
|
])
|
|
|
|
|
|
|
|
dnl Search for headers, add path to CPPFLAGS if found
|
|
define( [AC_SEARCH_HEADERS],
|
|
[
|
|
AC_MSG_CHECKING("for $1")
|
|
ac_hdr_found=no
|
|
for p in $2; do
|
|
AC_TEST_FILES($1, $p,
|
|
[
|
|
ac_hdr_found=yes
|
|
break
|
|
]
|
|
)
|
|
done
|
|
if test "$ac_hdr_found" = "yes" ; then
|
|
CPPFLAGS="$CPPFLAGS -I$p"
|
|
AC_MSG_RESULT( [($p) yes] )
|
|
ifelse([$3], , :,[$3])
|
|
else
|
|
AC_MSG_RESULT("no")
|
|
ifelse([$4], , :,[$4])
|
|
fi
|
|
])
|
|
|
|
dnl checks for ucd-snmp or netsnmp library and sets
|
|
dnl vars LIBSNMP_LIBS and HAVE_LIBSNMP
|
|
dnl
|
|
dnl call like this:
|
|
dnl AC_CHECK_LIBSNMP ( snmp )
|
|
dnl AC_CHECK_LIBSNMP ( netsnmp )
|
|
dnl
|
|
define( [AC_CHECK_LIBSNMP],
|
|
[
|
|
ac_snmplib_name="$1"
|
|
|
|
ac_snmplib_name=`echo ${ac_snmplib_name} | tr -d " "`
|
|
|
|
AC_CHECK_LIB($ac_snmplib_name, init_snmp,
|
|
[
|
|
LIBSNMP_LIBS="-l$ac_snmplib_name"
|
|
HAVE_LIBSNMP="1"
|
|
AC_DEFINE(HAVE_LIBSNMP)
|
|
],[
|
|
|
|
if test "${ac_cv_lib_snmp_init_snmp+set}" = "set"; then
|
|
unset ac_cv_lib_snmp_init_snmp
|
|
fi
|
|
|
|
save_LIBS="$LIBS"
|
|
LIBS="$LIBS -lcrypto"
|
|
AC_CHECK_LIB($ac_snmplib_name, init_snmp,
|
|
[
|
|
LIBS="$save_LIBS"
|
|
LIBSNMP_LIBS="-lcrypto -l$ac_snmplib_name"
|
|
HAVE_LIBSNMP="1"
|
|
AC_DEFINE(HAVE_LIBSNMP)
|
|
],[
|
|
echo
|
|
|
|
dnl if test "${ac_cv_lib_snmp_init_snmp+set}" = "set"; then
|
|
dnl unset ac_cv_lib_snmp_init_snmp
|
|
dnl fi
|
|
dnl
|
|
dnl save_LIBS="$LIBS"
|
|
dnl LIBS="$LIBS -ldes"
|
|
dnl AC_CHECK_LIB($ac_snmplib_name, init_snmp,
|
|
dnl [
|
|
dnl LIBS="$save_LIBS"
|
|
dnl LIBSNMP_LIBS="-ldes -l$ac_snmplib_name"
|
|
dnl HAVE_LIBSNMP="1"
|
|
dnl AC_DEFINE(HAVE_LIBSNMP)
|
|
dnl ])
|
|
])
|
|
])
|
|
|
|
|
|
dnl if test "Z$HAVE_LIBSNMP" != "Z"; then
|
|
dnl AC_CHECK_LIB($ac_snmplib_name, snprint_objid, [
|
|
dnl AC_DEFINE(HAVE_SNPRINT_OBJID)
|
|
dnl ])
|
|
dnl fi
|
|
])
|
|
|
|
|
|
define( [AC_CHECK_GETHOSTBYNAME_R],
|
|
[
|
|
ac_define_this="$1"
|
|
if test -z "$ac_define_this"; then ac_define_this="__FWB_DUMMY__"; fi
|
|
|
|
AC_MSG_CHECKING(if gethostbyname_r takes 3 arguments)
|
|
AC_TRY_COMPILE([
|
|
#define $ac_define_this
|
|
#include <netdb.h>
|
|
],[
|
|
|
|
char *name;
|
|
struct hostent *he;
|
|
struct hostent_data data;
|
|
(void) gethostbyname_r(name, he, &data);
|
|
|
|
],
|
|
AC_MSG_RESULT(yes)
|
|
AC_DEFINE(HAVE_FUNC_GETHOSTBYNAME_R_3)
|
|
ac_cv_func_which_gethostname_r="3",
|
|
[
|
|
dnl ac_cv_func_which_gethostname_r=no
|
|
AC_MSG_RESULT(no)
|
|
AC_MSG_CHECKING(if gethostbyname_r takes 6 arguments)
|
|
AC_TRY_COMPILE([
|
|
#define $ac_define_this
|
|
#include <netdb.h>
|
|
],[
|
|
char *name;
|
|
struct hostent *he, *res;
|
|
char buffer[2048];
|
|
int buflen = 2048;
|
|
int h_errnop;
|
|
(void) gethostbyname_r(name, he, buffer, buflen, &res, &h_errnop)
|
|
],
|
|
AC_MSG_RESULT(yes)
|
|
AC_DEFINE(HAVE_FUNC_GETHOSTBYNAME_R_6)
|
|
ac_cv_func_which_gethostname_r="6",
|
|
[
|
|
dnl ac_cv_func_which_gethostname_r=no
|
|
AC_MSG_RESULT(no)
|
|
AC_MSG_CHECKING(if gethostbyname_r takes 5 arguments)
|
|
AC_TRY_COMPILE([
|
|
#define $ac_define_this
|
|
#include <netdb.h>
|
|
],[
|
|
char *name;
|
|
struct hostent *he;
|
|
char buffer[2048];
|
|
int buflen = 2048;
|
|
int h_errnop;
|
|
(void) gethostbyname_r(name, he, buffer, buflen, &h_errnop)
|
|
],
|
|
AC_MSG_RESULT(yes)
|
|
AC_DEFINE(HAVE_FUNC_GETHOSTBYNAME_R_5)
|
|
ac_cv_func_which_gethostname_r="5",
|
|
[
|
|
AC_MSG_RESULT(no)
|
|
ac_cv_func_which_gethostname_r=no])
|
|
])
|
|
] ,ac_cv_func_which_gethostname_r=no)
|
|
])
|
|
|
|
|
|
|
|
|
|
|
|
|
|
dnl check for number of arguments to gethostbyaddr_r. it might take
|
|
dnl 5, 7, or 8 arguments.
|
|
|
|
define( [AC_CHECK_GETHOSTBYADDR_R],
|
|
[
|
|
ac_define_this="$1"
|
|
if test -z "$ac_define_this"; then ac_define_this="__FWB_DUMMY__"; fi
|
|
|
|
|
|
AC_MSG_CHECKING(if gethostbyaddr_r takes 5 arguments)
|
|
AC_TRY_COMPILE([
|
|
#define $ac_define_this
|
|
#include <sys/types.h>
|
|
#include <netdb.h>
|
|
],[
|
|
char * address;
|
|
int length;
|
|
int type;
|
|
struct hostent h;
|
|
struct hostent_data hdata;
|
|
int rc;
|
|
rc = gethostbyaddr_r(address, length, type, &h, &hdata);
|
|
],[
|
|
AC_MSG_RESULT(yes)
|
|
AC_DEFINE(HAVE_GETHOSTBYADDR_R_5)
|
|
ac_cv_gethostbyaddr_args=5
|
|
],[
|
|
|
|
|
|
AC_MSG_RESULT(no)
|
|
AC_MSG_CHECKING(if gethostbyaddr_r takes 7 arguments)
|
|
AC_TRY_COMPILE([
|
|
#define $ac_define_this
|
|
#include <sys/types.h>
|
|
#include <netdb.h>
|
|
],[
|
|
char * address;
|
|
int length;
|
|
int type;
|
|
struct hostent h;
|
|
char buffer[8192];
|
|
int h_errnop;
|
|
struct hostent * hp;
|
|
|
|
hp = gethostbyaddr_r(address, length, type, &h,
|
|
buffer, 8192, &h_errnop);
|
|
],[
|
|
AC_MSG_RESULT(yes)
|
|
AC_DEFINE(HAVE_GETHOSTBYADDR_R_7)
|
|
ac_cv_gethostbyaddr_args=7
|
|
],[
|
|
|
|
|
|
AC_MSG_RESULT(no)
|
|
AC_MSG_CHECKING(if gethostbyaddr_r takes 8 arguments and first arg is (in_addr*))
|
|
AC_TRY_COMPILE([
|
|
#define $ac_define_this
|
|
#include <sys/types.h>
|
|
#include <netdb.h>
|
|
],[
|
|
struct in_addr *address;
|
|
int length;
|
|
int type;
|
|
struct hostent h;
|
|
char buffer[8192];
|
|
int h_errnop;
|
|
struct hostent * hp;
|
|
int rc;
|
|
|
|
rc = gethostbyaddr_r(address, length, type, &h,
|
|
buffer, 8192, &hp, &h_errnop);
|
|
],[
|
|
AC_MSG_RESULT(yes)
|
|
AC_DEFINE(HAVE_GETHOSTBYADDR_R_8)
|
|
AC_DEFINE(GETHOSTBYADDR_FIRST_ARG_VOIDPTR)
|
|
ac_cv_gethostbyaddr_first_arg="voidptr"
|
|
ac_cv_gethostbyaddr_args=8
|
|
],[
|
|
AC_MSG_RESULT(no)
|
|
|
|
AC_MSG_CHECKING(if gethostbyaddr_r takes 8 arguments and first arg is (char*))
|
|
AC_TRY_COMPILE([
|
|
#define $ac_define_this
|
|
#include <sys/types.h>
|
|
#include <netdb.h>
|
|
],[
|
|
char * address;
|
|
int length;
|
|
int type;
|
|
struct hostent h;
|
|
char buffer[8192];
|
|
int h_errnop;
|
|
struct hostent * hp;
|
|
int rc;
|
|
|
|
rc = gethostbyaddr_r(address, length, type, &h,
|
|
buffer, 8192, &hp, &h_errnop);
|
|
],[
|
|
AC_MSG_RESULT(yes)
|
|
AC_DEFINE(HAVE_GETHOSTBYADDR_R_8)
|
|
AC_DEFINE(GETHOSTBYADDR_FIRST_ARG_CHARPTR)
|
|
ac_cv_gethostbyaddr_first_arg="charptr"
|
|
ac_cv_gethostbyaddr_args=8
|
|
],[
|
|
AC_MSG_RESULT(no)
|
|
have_missing_r_funcs="$have_missing_r_funcs gethostbyaddr_r"
|
|
ac_cv_gethostbyaddr_args=no
|
|
])
|
|
])
|
|
])
|
|
])
|
|
])
|
|
])
|
|
|
|
|