chiark / gitweb /
MINOR=3
[adns] / aclocal.m4
CommitLineData
b6953d1b 1# aclocal.m4 - package-specific macros for autoconf
2#
39f45e7e 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.)
b6953d1b 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 2, 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# Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
22
23dnl DPKG_CACHED_TRY_COMPILE(<description>,<cachevar>,<include>,<program>,<ifyes>,<ifno>)
24define(DPKG_CACHED_TRY_COMPILE,[
25 AC_MSG_CHECKING($1)
26 AC_CACHE_VAL($2,[
27 AC_TRY_COMPILE([$3],[$4],[$2=yes],[$2=no])
28 ])
29 if test "x$$2" = xyes; then
30 true
31 $5
32 else
33 true
34 $6
35 fi
36])
37
38define(ADNS_C_GCCATTRIB,[
39 DPKG_CACHED_TRY_COMPILE(__attribute__((,,)),adns_cv_c_attribute_supported,,
40 [extern int testfunction(int x) __attribute__((,,))],
41 AC_MSG_RESULT(yes)
42 AC_DEFINE(HAVE_GNUC25_ATTRIB)
43 DPKG_CACHED_TRY_COMPILE(__attribute__((noreturn)),adns_cv_c_attribute_noreturn,,
44 [extern int testfunction(int x) __attribute__((noreturn))],
45 AC_MSG_RESULT(yes)
46 AC_DEFINE(HAVE_GNUC25_NORETURN),
47 AC_MSG_RESULT(no))
48 DPKG_CACHED_TRY_COMPILE(__attribute__((const)),adns_cv_c_attribute_const,,
49 [extern int testfunction(int x) __attribute__((const))],
50 AC_MSG_RESULT(yes)
51 AC_DEFINE(HAVE_GNUC25_CONST),
52 AC_MSG_RESULT(no))
53 DPKG_CACHED_TRY_COMPILE(__attribute__((format...)),adns_cv_attribute_format,,
54 [extern int testfunction(char *y, ...) __attribute__((format(printf,1,2)))],
55 AC_MSG_RESULT(yes)
56 AC_DEFINE(HAVE_GNUC25_PRINTFFORMAT),
57 AC_MSG_RESULT(no)),
58 AC_MSG_RESULT(no))
59])
b6b44132 60
61define(ADNS_C_GETFUNC,[
62 AC_CHECK_FUNC([$1],,[
63 AC_CHECK_LIB([$2],[$1],[$3],[
64 AC_MSG_ERROR([cannot find library function $1])
65 ])
66 ])
67])