No empty .Rs/.Re
[netbsd-mini2440.git] / gnu / dist / autoconf / tests / base.at
blob726dba9b05458cf37a9e02dc146abdc63daa6cbe
1 #                                                       -*- autoconf -*-
3 AT_BANNER([Autoconf base layer.])
6 ## ------------------------------- ##
7 ## AC_REQUIRE: topological sort..  ##
8 ## ------------------------------- ##
10 # Check that dependencies are always properly honored.
12 AT_SETUP([AC_REQUIRE: topological sort])
14 AT_DATA(configure.ac,
15 [[define([REQUIRE_AND_CHECK],
16 [AC_REQUIRE([$1])dnl
17 test -z "$m4_translit([$1], [A-Z], [a-z])" && AS_EXIT(1)])
19 AC_DEFUN([TEST1],
20 [REQUIRE_AND_CHECK([TEST2a])
21 REQUIRE_AND_CHECK([TEST2b])
22 test1=set])
24 AC_DEFUN([TEST2a],
25 [test2a=set])
27 AC_DEFUN([TEST2b],
28 [REQUIRE_AND_CHECK([TEST3])
29 test2b=set])
31 AC_DEFUN([TEST3],
32 [REQUIRE_AND_CHECK([TEST2a])
33 test3=set])
35 AC_PLAIN_SCRIPT()dnl
36 #! /bin/sh
38 TEST1
39 test -z "$test1" &&
40   AC_MSG_ERROR([\$test1 is empty])
41 AS_EXIT(0)
42 ]])
44 AT_CHECK_AUTOCONF
45 AT_CHECK_CONFIGURE
47 AT_CLEANUP
51 ## ----------------------------------------------- ##
52 ## AC_REQUIRE and AC_DEFUN_ONCE: Require, expand.  ##
53 ## ----------------------------------------------- ##
55 AT_SETUP([AC_REQUIRE & AC_DEFUN_ONCE: Require, expand])
57 AT_DATA([configure.ac],
58 [[AC_DEFUN([TEST],
59 [AC_REQUIRE([MULTI_TEST])
60 AC_REQUIRE([SINGLE_TEST])])
62 AC_DEFUN([MULTI_TEST],
63 [multi_test=".$multi_test"])
65 AC_DEFUN_ONCE([SINGLE_TEST],
66 [single_test=".$single_test"])
68 AC_PLAIN_SCRIPT()dnl
69 #! /bin/sh
71 TEST
72 TEST
73 MULTI_TEST
74 MULTI_TEST
75 SINGLE_TEST
76 SINGLE_TEST
78 case $multi_test:$single_test in
79   ...:. ) AS_EXIT(0);;
80   ...:* ) AC_MSG_ERROR([DEFUN_ONCE is broken]);;
81   *:.   ) AC_MSG_ERROR([DEFUN is broken (Wow, congrats!)]);;
82 esac
83 ]])
85 AT_CHECK_AUTOCONF([], 0, [],
86 [configure.ac:18: warning: SINGLE_TEST invoked multiple times
87 configure.ac:19: warning: SINGLE_TEST invoked multiple times
90 AT_CHECK_CONFIGURE
92 AT_CLEANUP
96 ## ----------------------------------------------- ##
97 ## AC_REQUIRE and AC_DEFUN_ONCE: Expand, require.  ##
98 ## ----------------------------------------------- ##
100 AT_SETUP([AC_REQUIRE & AC_DEFUN_ONCE: Expand, require])
102 AT_DATA([configure.ac],
103 [[AC_DEFUN([TEST],
104 [AC_REQUIRE([MULTI_TEST])
105 AC_REQUIRE([SINGLE_TEST])])
107 AC_DEFUN([MULTI_TEST],
108 [multi_test=".$multi_test"])
110 AC_DEFUN_ONCE([SINGLE_TEST],
111 [single_test=".$single_test"])
113 AC_PLAIN_SCRIPT()dnl
114 #! /bin/sh
116 MULTI_TEST
117 MULTI_TEST
118 SINGLE_TEST
119 SINGLE_TEST
120 TEST
121 TEST
123 case $multi_test:$single_test in
124   ..:. ) AS_EXIT(0);;
125   ..:* ) AC_MSG_ERROR([DEFUN_ONCE is broken]);;
126   *:.  ) AC_MSG_ERROR([DEFUN is broken (Wow, congrats!)]);;
127      * ) AC_MSG_ERROR([received `$multi_test:$single_test']);;
128 esac
131 AT_CHECK_AUTOCONF([], 0, [],
132 [configure.ac:17: warning: SINGLE_TEST invoked multiple times
134 AT_CHECK_CONFIGURE
136 AT_CLEANUP
140 ## ------------------------- ##
141 ## AC_REQUIRE & AC_PROVIDE.  ##
142 ## ------------------------- ##
144 AT_SETUP([AC_REQUIRE & AC_PROVIDE])
146 AT_DATA([configure.ac],
147 [[AC_DEFUN([TEST],
148 [AC_REQUIRE([INNER_TEST])])
150 AC_DEFUN([INNER_TEST],
151 [inner_test=".$inner_test"])
153 AC_PLAIN_SCRIPT()dnl
154 #! /bin/sh
156 AC_PROVIDE([INNER_TEST])
157 TEST
159 case $inner_test in
160   "" ) AS_EXIT(0);;
161   *  ) AC_MSG_ERROR([received `$inner_test']);;
162 esac
165 AT_CHECK_AUTOCONF
166 AT_CHECK_CONFIGURE
168 AT_CLEANUP
171 ## ---------------------- ##
172 ## AC_REQUIRE & AC_LANG.  ##
173 ## ---------------------- ##
175 AT_SETUP([AC_REQUIRE & AC_LANG])
177 AT_DATA([configure.ac],
178 [[AC_DEFUN([AC_F77_1],
179 [AC_LANG_PUSH([Fortran 77])
180 if test $ac_ext != f; then
181   AC_MSG_ERROR([F77_1: current shell language is $ac_ext, expected Fortran])
183 AC_LANG_POP
187 AC_DEFUN([AC_F77_2],
188 [AC_LANG_PUSH([Fortran 77])
189 AC_REQUIRE([AC_F77_1])
190 if test $ac_ext != f; then
191   AC_MSG_ERROR([F77_2: current shell language is $ac_ext, expected Fortran])
193 AC_LANG_POP
196 AC_INIT
197 AC_F77_2
198 AS_EXIT(0)
201 AT_CHECK_AUTOCONF
202 AT_CHECK_CONFIGURE
204 AT_CLEANUP
207 ## ---------------- ##
208 ## AC_CACHE_CHECK.  ##
209 ## ---------------- ##
211 # Make sure AC_CACHE_CHECK is silent with -q.
213 AT_SETUP([AC_CACHE_CHECK])
215 AT_DATA([configure.ac],
216 [[AC_INIT
217 AC_CACHE_CHECK([for nothing],
218                [ac_nothing],
219                [ac_nothing=found])
222 AT_CHECK_AUTOCONF
223 AT_CHECK_CONFIGURE([-q])
225 AT_CLEANUP
228 ## ---------- ##
229 ## AC_TRY_*.  ##
230 ## ---------- ##
232 AT_SETUP([AC_TRY_*])
234 AT_DATA([configure.ac],
235 [[AC_INIT
237 if AC_TRY_COMMAND([(echo "The Cat in the Hat";
238                     echo "The Hat in the Cat" >&2)
239                   | grep \^The\ Cat\ in\ the\ Hat\$ >/dev/null]); then
240   :
241 else
242   AC_MSG_ERROR([Didn't see the Cat in the Hat!])
245 if AC_TRY_COMMAND([(echo "The Cat in the Hat";
246                     echo "The Hat in the Cat" >&2)
247                   | grep \^The\ Hat\ in\ the\ Cat\$ >/dev/null]); then
248   AC_MSG_ERROR([Saw the Hat in the Cat!])
252 AT_CHECK_AUTOCONF
253 AT_CHECK_CONFIGURE([-q])
255 AT_CLEANUP