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