chiark / gitweb /
25c0521d833b714769c2d16385ce26488cab5eb1
[adns.git] / aclocal.m4
1 # aclocal.m4 - package-specific macros for autoconf
2 #  
3 #  This file is part of adns, which is
4 #    Copyright (C) 1997-2000,2003,2006  Ian Jackson
5 #    Copyright (C) 1999-2000,2003,2006  Tony Finch
6 #    Copyright (C) 1991 Massachusetts Institute of Technology
7 #  (See the file INSTALL for full details.)
8 #
9 #  This program is free software; you can redistribute it and/or modify
10 #  it under the terms of the GNU General Public License as published by
11 #  the Free Software Foundation; either version 3, or (at your option)
12 #  any later version.
13 #  
14 #  This program is distributed in the hope that it will be useful,
15 #  but WITHOUT ANY WARRANTY; without even the implied warranty of
16 #  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
17 #  GNU General Public License for more details.
18 #  
19 #  You should have received a copy of the GNU General Public License
20 #  along with this program; if not, write to the Free Software Foundation.
21
22 dnl DPKG_CACHED_TRY_COMPILE(<description>,<cachevar>,<include>,<program>,<ifyes>,<ifno>)
23 define(DPKG_CACHED_TRY_COMPILE,[
24  AC_MSG_CHECKING($1)
25  AC_CACHE_VAL($2,[
26   AC_TRY_COMPILE([$3],[$4],[$2=yes],[$2=no])
27  ])
28  if test "x$$2" = xyes; then
29   true
30   $5
31  else
32   true
33   $6
34  fi
35 ])
36
37 define(ADNS_C_GCCATTRIB,[
38  DPKG_CACHED_TRY_COMPILE(__attribute__((,,)),adns_cv_c_attribute_supported,,
39   [extern int testfunction(int x) __attribute__((,,))],
40   AC_MSG_RESULT(yes)
41   AC_DEFINE(HAVE_GNUC25_ATTRIB)
42    DPKG_CACHED_TRY_COMPILE(__attribute__((noreturn)),adns_cv_c_attribute_noreturn,,
43     [extern int testfunction(int x) __attribute__((noreturn))],
44     AC_MSG_RESULT(yes)
45     AC_DEFINE(HAVE_GNUC25_NORETURN),
46     AC_MSG_RESULT(no))
47    DPKG_CACHED_TRY_COMPILE(__attribute__((const)),adns_cv_c_attribute_const,,
48     [extern int testfunction(int x) __attribute__((const))],
49     AC_MSG_RESULT(yes)
50     AC_DEFINE(HAVE_GNUC25_CONST),
51     AC_MSG_RESULT(no))
52    DPKG_CACHED_TRY_COMPILE(__attribute__((format...)),adns_cv_attribute_format,,
53     [extern int testfunction(char *y, ...) __attribute__((format(printf,1,2)))],
54     AC_MSG_RESULT(yes)
55     AC_DEFINE(HAVE_GNUC25_PRINTFFORMAT),
56     AC_MSG_RESULT(no)),
57   AC_MSG_RESULT(no))
58 ])
59
60 define(ADNS_C_GETFUNC,[
61  AC_CHECK_FUNC([$1],,[
62   AC_CHECK_LIB([$2],[$1],[$3],[
63     AC_MSG_ERROR([cannot find library function $1])
64   ])
65  ])
66 ])