mirror of
https://github.com/freebsd/freebsd-src
synced 2024-09-06 17:18:32 +00:00
83 lines
1.9 KiB
Plaintext
83 lines
1.9 KiB
Plaintext
dnl RCSid:
|
|
dnl $Id: aclocal.m4,v 1.6 2017/11/26 22:39:20 sjg Exp $
|
|
dnl
|
|
|
|
dnl
|
|
dnl AC_CHECK_HEADER_HAS(HEADER, PATTERN, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]))
|
|
|
|
AC_DEFUN(AC_CHECK_HEADER_HAS,
|
|
[dnl first check if header exists and if so, see if it contains PATTERN
|
|
ac_has_hdr=`echo "ac_cv_header_$1" | sed 'y%./+-%__p_%'`
|
|
ac_has_it=`echo "ac_cv_header_$1"_$2 | sed 'y%./+-%__p_%'`
|
|
if eval "test \"`echo x'$'$ac_has_hdr`\" = x"; then
|
|
AC_CHECK_HEADER($1)
|
|
fi
|
|
if eval "test \"`echo '$'$ac_has_hdr`\" = yes"; then
|
|
ac_x=HAVE_`echo "$1" | sed 'y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%'`
|
|
AC_DEFINE_UNQUOTED($ac_x)
|
|
AC_MSG_CHECKING([if $1 has $2])
|
|
AC_CACHE_VAL($ac_has_it,
|
|
[eval $ac_has_it=no
|
|
AC_EGREP_HEADER($2, $1, eval "$ac_has_it=yes")])
|
|
|
|
if eval "test \"`echo '$'$ac_has_it`\" = yes"; then
|
|
AC_MSG_RESULT(yes)
|
|
ac_x=HAVE_`echo "$1"_$2 | sed 'y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%'`
|
|
AC_DEFINE_UNQUOTED($ac_x)
|
|
ifelse([$3], , :, [$3])
|
|
else
|
|
AC_MSG_RESULT(no)
|
|
ifelse([$4], , , [$4
|
|
])dnl
|
|
fi
|
|
fi
|
|
])
|
|
|
|
dnl AC_EGREP(PATTERN, FILE, ACTION-IF-FOUND [,
|
|
dnl ACTION-IF-NOT-FOUND])
|
|
AC_DEFUN(AC_EGREP,
|
|
[
|
|
dnl Prevent m4 from eating character classes:
|
|
changequote(, )dnl
|
|
if egrep "$1" $2 >/dev/null 2>&1; then
|
|
changequote([, ])dnl
|
|
ifelse([$3], , :, [$3])
|
|
ifelse([$4], , , [else
|
|
$4
|
|
])dnl
|
|
fi
|
|
])
|
|
|
|
dnl
|
|
dnl Test for __attribute__
|
|
dnl
|
|
|
|
AC_DEFUN(AC_C___ATTRIBUTE__, [
|
|
AC_MSG_CHECKING(for __attribute__)
|
|
AC_CACHE_VAL(ac_cv___attribute__, [
|
|
AC_LINK_IFELSE([
|
|
#include <stdlib.h>
|
|
|
|
static void foo(void) __attribute__ ((noreturn));
|
|
|
|
static void
|
|
foo(void)
|
|
{
|
|
exit(1);
|
|
}
|
|
|
|
int
|
|
main(int argc, char **argv)
|
|
{
|
|
foo();
|
|
}
|
|
],
|
|
ac_cv___attribute__=yes,
|
|
ac_cv___attribute__=no)])
|
|
if test "$ac_cv___attribute__" = "yes"; then
|
|
AC_DEFINE(HAVE___ATTRIBUTE__, 1, [define if your compiler has __attribute__])
|
|
fi
|
|
AC_MSG_RESULT($ac_cv___attribute__)
|
|
])
|
|
|