Provided global functions for transfer initialization, channel advancing and channel...
[AROS.git] / config / features.in
blob96808dfa23459afddfb764258bca94813e3d6429
1 dnl Copyright © 1997-2018, The AROS Development Team. All rights reserved.
2 dnl $Id$
3 dnl
4 dnl Desc: Autoconf source for target compiler feature detection
5 dnl Lang: english 
7 # Note: After file changes, generate features anew and commit _both_ files.
8 -------------------------
10 AC_INIT(../mmakefile)
11 AC_PREREQ(2.61)
12 AC_CONFIG_AUX_DIR(../scripts/autoconf)
14 AROS_BUILDDIR=`${PWDCMD-pwd}`
15 AROS_BUILDDIR_UNIX=${PWD}
17 srcpwd=`cd ${srcdir} ; ${PWDCMD-pwd}`
18 SRCDIR=${srcpwd}
20 NOLINKFLAGS="-nostdlib -nostartfiles"
21  LDFLAGS=$NOLINKFLAGS
22 # The first step is to find the binaries.
23 AC_PROG_CC
25 AC_MSG_CHECKING([target config location])
26 AC_ARG_WITH(config-dir,AC_HELP_STRING([--with-config-dir=VERSION],[Location of generated target config files]),targetcfg_dir="$withval",targetcfg_dir="")
27 if test "$targetcfg_dir" = ""; then
28     AC_MSG_ERROR([missing config directory!])
29 else
30     aros_targetcfg_dir="$targetcfg_dir"
32 AC_MSG_RESULT($aros_targetcfg_dir)
34 #-----------------------------------------------------------------------------
36 # Check if the target compiler supports some features:
37 #  -fexceptions
38 #  -fpermissive
39 #  -ffast-math
40 #  -fno-builtin-floor
41 #  -flto
42 #  -fwhole-program
43 #  -floop-block
44 #  -floop-interchange
45 #  -floop-strip-mine
46 #  -fpeel-loops
47 #  -fstrict-aliasing
48 #  -finline-small-functions
49 #  -fipa-cp
50 #  -funroll-loops
51 #  -fomit-frame-pointer
52 #  -fprofile-arcs
53 #  -ftest-coverage
55 AC_MSG_CHECKING([whether ${CC} accepts -fexceptions])
56 CFLAGS=-fexceptions
57 AC_TRY_COMPILE(,, aros_exceptions="yes", aros_exceptions="no")
58 AC_MSG_RESULT($aros_exceptions)
59 if test "x-$aros_exceptions" = "x-yes" ; then
60     aros_cflags_exceptions=-fexceptions
61     aros_cflags_noexceptions=-fno-exceptions
64 AC_MSG_CHECKING([whether ${CC} accepts -fpermissive])
65 CFLAGS=-fpermissive
66 AC_TRY_COMPILE(,, aros_permissive="yes", aros_permissive="no")
67 AC_MSG_RESULT($aros_permissive)
68 if test "x-$aros_permissive" = "x-yes" ; then
69     aros_cflags_permissive=-fpermissive
72 AC_MSG_CHECKING([whether ${CC} accepts -ffast-math])
73 CFLAGS=-ffast-math
74 AC_TRY_COMPILE(,, aros_fast_math="yes", aros_fast_math="no")
75 AC_MSG_RESULT($aros_fast_math)
76 if test "x-$aros_fast_math" = "x-yes" ; then
77     aros_cflags_fast_math=-ffast-math
80 AC_MSG_CHECKING([whether ${CC} accepts -fno-builtin-floor])
81 CFLAGS=-fno-builtin-floor
82 AC_TRY_COMPILE(,, aros_no_builtin_floor="yes", aros_no_builtin_floor="no")
83 AC_MSG_RESULT($aros_no_builtin_floor)
84 if test "x-$aros_no_builtin_floor" = "x-yes" ; then
85     aros_cflags_no_builtin_floor=-fno-builtin-floor
88 AC_MSG_CHECKING([whether ${CC} accepts -flto])
89 CFLAGS=-flto
90 AC_TRY_COMPILE(,, aros_lto="yes", aros_lto="no")
91 AC_MSG_RESULT($aros_lto)
92 if test "x-$aros_lto" = "x-yes" ; then
93     aros_cflags_lto=-flto
94     aros_cflags_nolto=-fno-lto
95     
96     AC_MSG_CHECKING([whether ${CC} accepts -fwhole-program])
97     CFLAGS=-fwhole-program
98     AC_TRY_COMPILE(,, aros_whole_program="yes", aros_whole_program="no")
99     AC_MSG_RESULT($aros_whole_program)
100     if test "x-$aros_whole_program" = "x-yes" ; then
101         aros_cflags_whole_program=-fwhole-program
102     fi
103     
104     AC_MSG_CHECKING([whether ${CC} accepts -floop-block])
105     CFLAGS=-floop-block
106     AC_TRY_COMPILE(,, aros_loop_block="yes", aros_loop_block="no")
107     AC_MSG_RESULT($aros_loop_block)
108     if test "x-$aros_loop_block" = "x-yes" ; then
109         aros_cflags_loop_block=-floop-block
110     fi
111     
112     AC_MSG_CHECKING([whether ${CC} accepts -floop-interchange])
113     CFLAGS=-floop-interchange
114     AC_TRY_COMPILE(,, aros_loop_interchange="yes", aros_loop_interchange="no")
115     AC_MSG_RESULT($aros_loop_interchange)
116     if test "x-$aros_loop_interchange" = "x-yes" ; then
117         aros_cflags_loop_interchange=-floop-interchange
118     fi
119     
120     AC_MSG_CHECKING([whether ${CC} accepts -floop-strip-mine])
121     CFLAGS=-floop-strip-mine
122     AC_TRY_COMPILE(,, aros_loop_strip_mine="yes", aros_loop_strip_mine="no")
123     AC_MSG_RESULT($aros_loop_strip_mine)
124     if test "x-$aros_loop_strip_mine" = "x-yes" ; then
125         aros_cflags_loop_strip_mine=-floop-strip-mine
126     fi
129 AC_MSG_CHECKING([whether ${CC} accepts -fpeel-loops])
130 CFLAGS=-fpeel-loops
131 AC_TRY_COMPILE(,, aros_peel_loops="yes", aros_peel_loops="no")
132 AC_MSG_RESULT($aros_peel_loops)
133 if test "x-$aros_peel_loops" = "x-yes" ; then
134     aros_cflags_peel_loops=-fpeel-loops
137 AC_MSG_CHECKING([whether ${CC} accepts -funroll-loops])
138 CFLAGS=-funroll-loops
139 AC_TRY_COMPILE(,, aros_unroll_loops="yes", aros_unroll_loops="no")
140 AC_MSG_RESULT($aros_unroll_loops)
141 if test "x-$aros_unroll_loops" = "x-yes" ; then
142     aros_cflags_unroll_loops=-funroll-loops
145 AC_MSG_CHECKING([whether ${CC} accepts -fstrict-aliasing])
146 CFLAGS=-fstrict-aliasing
147 AC_TRY_COMPILE(,, aros_strict_aliasing="yes", aros_strict_aliasing="no")
148 AC_MSG_RESULT($aros_strict_aliasing)
149 if test "x-$aros_strict_aliasing" = "x-yes" ; then
150     aros_cflags_strictaliasing=-fstrict-aliasing
151     aros_cflags_nostrictaliasing=-fno-strict-aliasing
154 AC_MSG_CHECKING([whether ${CC} accepts -finline-small-functions])
155 CFLAGS=-finline-small-functions
156 AC_TRY_COMPILE(,, aros_inline_small_functions="yes", aros_inline_small_functions="no")
157 AC_MSG_RESULT($aros_inline_small_functions)
158 if test "x-$aros_inline_small_functions" = "x-yes" ; then
159     aros_cflags_inlinesmallfunctions=-finline-small-functions
160     aros_cflags_noinlinesmallfunctions=-fno-inline-small-functions
163 AC_MSG_CHECKING([whether ${CC} accepts -fipa-cp])
164 CFLAGS=-fipa-cp
165 AC_TRY_COMPILE(,, aros_ipa_cp="yes", aros_ipa_cp="no")
166 AC_MSG_RESULT($aros_ipa_cp)
167 if test "x-$aros_ipa_cp" = "x-yes" ; then
168     aros_cflags_ipacp=-fipa-cp
169     aros_cflags_noipacp=-fno-ipa-cp
172 AC_MSG_CHECKING([whether ${CC} accepts -fomit-frame-pointer])
173 CFLAGS=-fomit-frame-pointer
174 AC_TRY_COMPILE(,, aros_omit_frame_pointer="yes", aros_omit_frame_pointer="no")
175 AC_MSG_RESULT($aros_omit_frame_pointer)
176 if test "x-$aros_omit_frame_pointer" = "x-yes" ; then
177     aros_cflags_omitfp=-fomit-frame-pointer
178     aros_cflags_noomitfp=-fno-omit-frame-pointer
181 AC_MSG_CHECKING([whether ${CC} accepts -fprofile-arcs])
182 CFLAGS=-fprofile-arcs
183 AC_TRY_COMPILE(,, aros_profile_arcs="yes", aros_profile_arcs="no")
184 AC_MSG_RESULT($aros_profile_arcs)
185 if test "x-$aros_profile_arcs" = "x-yes" ; then
186     aros_cflags_profilearcs=-fprofile-arcs
187     aros_cflags_noprofilearcs=-fno-profile-arcs
190 AC_MSG_CHECKING([whether ${CC} accepts -ftest-coverage])
191 CFLAGS=-ftest-coverage
192 AC_TRY_COMPILE(,, aros_test_coverage="yes", aros_test_coverage="no")
193 AC_MSG_RESULT($aros_test_coverage)
194 if test "x-$aros_test_coverage" = "x-yes" ; then
195     aros_cflags_testcoverage=-ftest-coverage
196     aros_cflags_notestcoverage=-fno-test-coverage
202 AC_MSG_CHECKING([whether ${CC} accepts -iquote])
203 CFLAGS="-iquote."
204 AC_TRY_COMPILE(,, has_iquote="yes", has_iquote="no")
205 AC_MSG_RESULT($has_iquote)
206 if test "x-$has_iquote" = "x-yes" ; then
207     aros_cflags_iquote=-iquote
208     aros_cflags_iquote_end=
209 else
210     aros_cflags_iquote=-I
211     aros_cflags_iquote_end=-I-
214 #-----------------------------------------------------------------------------
216 # Check if the target compiler supports some options:
217 #  -mno-red-zone
219 AC_MSG_CHECKING([whether ${CC} accepts -mno-red-zone])
220 CFLAGS=-mno-red-zone
221 AC_TRY_COMPILE(,, aros_no_red_zone="yes", aros_no_red_zone="no")
222 AC_MSG_RESULT($aros_no_red_zone)
223 if test "x-$aros_no_red_zone" = "x-yes" ; then
224     aros_cflags_no_red_zone=-mno-red-zone
227 #-----------------------------------------------------------------------------
229 # Check if the target compiler supports some options used for de-linting:
230 #  -Werror
231 #  -Wall
232 #  -Wrestrict
233 #  -Wunused-command-line-argument
234 #  -Wunknown-warning-option
235 #  -Wunused-but-set-variable
236 #  -Wstrict-aliasing
237 #  -Warray-bounds
238 #  -Wenum-compare
239 #  -Wstrict-prototypes
240 #  -Wstrict-overflow
241 #  -Wformat-security
242 #  -Wmisleading-indentation
243 #  -Wnonnull-compare
244 #  -Wunused
245 #  -Wunused-label
246 #  -Wunused-value
247 #  -Wunused-variable
248 #  -Wunused-function
249 #  -Wunused-parameter
250 #  -Wuninitialized
251 #  -Wmaybe-uninitialized
252 #  -Wimplicit-function-declaration
253 #  -Wformat
254 #  -Wparentheses
255 #  -Wchar-subscripts
256 #  -Wendif-labels
257 #  -Wformat-contains-nul
258 #  -Wimplicit-int
259 #  -Waggressive-loop-optimizations
260 #  -Wcpp
261 #  -Wswitch
262 #  -Wdiscarded-qualifiers
263 #  -Wsequence-point
264 #  -Wunknown-pragmas
265 #  -Wdiscarded-array-qualifiers
266 #  -Wint-conversion
267 #  -Wint-to-pointer-cast
268 #  -Wpointer-to-int-cast
269 #  -Wunused-const-variable
270 #  -Wwrite-strings 
271 #  -Wcomment
272 #  -Wincompatible-pointer-types
273 #  -Wbool-compare
274 #  -Wlogical-not-parentheses
275 #  -Wpointer-sign
276 #  -Wshift-overflow
277 #  -Wframe-address
278 #  -Wdeprecated-declarations
279 #  -Wsign-compare
280 #  -Wattributes
281 #  -Woverflow
282 #  -Wunused-local-typedefs
283 #  -Wmissing-braces
284 #  -Wconversion-null
285 #  -Wnarrowing
286 #  -Wvolatile-register-var
287 #  -Wsizeof-pointer-memaccess
288 #  -Wreturn-type
289 #  -Wformat-zero-length
290 #  -Wlto-type-mismatch
291 #  -Wtautological-compare
292 #  -Wempty-body
293 #  -Wformat-overflow
294 #  -Wstringop-overflow
295 #  -Wformat-truncation
296 #  -Wstringop-truncation
297 #  -Wshift-negative-value
298 #  -Wmissing-field-initializers
299 #  -Wimplicit-fallthrough
300 #  -Wmissing-prototypes
301 #  -Wclass-memaccess
302 #  -Wint-in-bool-context
304 AC_MSG_CHECKING([whether ${CC} accepts -Werror])
305 CFLAGS=-Werror
306 AC_TRY_COMPILE(,, aros_error="yes", aros_error="no")
307 AC_MSG_RESULT($aros_error)
308 if test "x-$aros_error" = "x-yes" ; then
309     aros_warnflags_error=-Werror
310     aros_nowarnflags_error=-Wno-error
313 AC_MSG_CHECKING([whether ${CC} accepts -Wall])
314 CFLAGS=-Wall
315 AC_TRY_COMPILE(,, aros_all="yes", aros_all="no")
316 AC_MSG_RESULT($aros_all)
317 if test "x-$aros_all" = "x-yes" ; then
318     aros_warnflags_all=-Wall
321 AC_MSG_CHECKING([whether ${CC} accepts -Wrestrict])
322 CFLAGS=-Wrestrict
323 AC_TRY_COMPILE(,, aros_restrict="yes", aros_restrict="no")
324 AC_MSG_RESULT($aros_restrict)
325 if test "x-$aros_restrict" = "x-yes" ; then
326     aros_warnflags_restrict=-Wrestrict
327     aros_nowarnflags_restrict=-Wno-restrict
330 AC_MSG_CHECKING([whether ${CC} accepts -Wunused-command-line-argument])
331 CFLAGS=-Wunused-command-line-argument
332 AC_TRY_COMPILE(,, aros_unused_command_line_argument="yes", aros_unused_command_line_argument="no")
333 AC_MSG_RESULT($aros_unused_command_line_argument)
334 if test "x-$aros_unused_command_line_argument" = "x-yes" ; then
335     aros_warnflags_unused_command_line_argument=-Wunused-command-line-argument
336     aros_nowarnflags_unused_command_line_argument=-Wno-unused-command-line-argument
339 AC_MSG_CHECKING([whether ${CC} accepts -Wunknown-warning-option])
340 CFLAGS=-Wunknown-warning-option
341 AC_TRY_COMPILE(,, aros_unknown_warning_option="yes", aros_unknown_warning_option="no")
342 AC_MSG_RESULT($aros_unknown_warning_option)
343 if test "x-$aros_unknown_warning_option" = "x-yes" ; then
344     aros_warnflags_unknown_warning_option=-Wunknown-warning-option
345     aros_nowarnflags_unknown_warning_option=-Wno-unknown-warning-option
348 AC_MSG_CHECKING([whether ${CC} accepts -Wunused-but-set-variable])
349 CFLAGS=-Wunused-but-set-variable
350 AC_TRY_COMPILE(,, aros_unused_but_set_variable="yes", aros_unused_but_set_variable="no")
351 AC_MSG_RESULT($aros_unused_but_set_variable)
352 if test "x-$aros_unused_but_set_variable" = "x-yes" ; then
353     aros_warnflags_unused_but_set_variable=-Wunused-but-set-variable
354     aros_nowarnflags_unused_but_set_variable=-Wno-unused-but-set-variable
357 AC_MSG_CHECKING([whether ${CC} accepts -Wstrict-aliasing])
358 CFLAGS=-Wstrict-aliasing
359 AC_TRY_COMPILE(,, aros_strict_aliasing="yes", aros_strict_aliasing="no")
360 AC_MSG_RESULT($aros_strict_aliasing)
361 if test "x-$aros_strict_aliasing" = "x-yes" ; then
362     aros_warnflags_strict_aliasing=-Wstrict-aliasing
363     aros_nowarnflags_strict_aliasing=-Wno-strict-aliasing
366 AC_MSG_CHECKING([whether ${CC} accepts -Warray-bounds])
367 CFLAGS=-Warray-bounds
368 AC_TRY_COMPILE(,, aros_array_bounds="yes", aros_array_bounds="no")
369 AC_MSG_RESULT($aros_array_bounds)
370 if test "x-$aros_array_bounds" = "x-yes" ; then
371     aros_warnflags_array_bounds=-Warray-bounds
372     aros_nowarnflags_array_bounds=-Wno-array-bounds
375 AC_MSG_CHECKING([whether ${CC} accepts -Wenum-compare])
376 CFLAGS=-Wenum-compare
377 AC_TRY_COMPILE(,, aros_enum_compare="yes", aros_enum_compare="no")
378 AC_MSG_RESULT($aros_enum_compare)
379 if test "x-$aros_enum_compare" = "x-yes" ; then
380     aros_warnflags_enum_compare=-Wenum-compare
381     aros_nowarnflags_enum_compare=-Wno-enum-compare
384 AC_MSG_CHECKING([whether ${CC} accepts -Wstrict-prototypes])
385 CFLAGS=-Wstrict-prototypes
386 AC_TRY_COMPILE(,, aros_strict_prototypes="yes", aros_strict_prototypes="no")
387 AC_MSG_RESULT($aros_strict_prototypes)
388 if test "x-$aros_strict_prototypes" = "x-yes" ; then
389     aros_warnflags_strict_prototypes=-Wstrict-prototypes
390     aros_nowarnflags_strict_prototypes=-Wno-strict-prototypes
393 AC_MSG_CHECKING([whether ${CC} accepts -Wstrict-overflow])
394 CFLAGS=-Wstrict-overflow
395 AC_TRY_COMPILE(,, aros_strict_overflow="yes", aros_strict_overflow="no")
396 AC_MSG_RESULT($aros_strict_overflow)
397 if test "x-$aros_strict_overflow" = "x-yes" ; then
398     aros_warnflags_strict_overflow=-Wstrict-overflow
399     aros_nowarnflags_strict_overflow=-Wno-strict-overflow
402 AC_MSG_CHECKING([whether ${CC} accepts -Wformat-security])
403 CFLAGS=-Wformat-security
404 AC_TRY_COMPILE(,, aros_format_security="yes", aros_format_security="no")
405 AC_MSG_RESULT($aros_format_security)
406 if test "x-$aros_format_security" = "x-yes" ; then
407     aros_warnflags_format_security=-Wformat-security
408     aros_nowarnflags_format_security=-Wno-format-security
411 AC_MSG_CHECKING([whether ${CC} accepts -Wmisleading-indentation])
412 CFLAGS=-Wmisleading-indentation
413 AC_TRY_COMPILE(,, aros_misleading_indentation="yes", aros_misleading_indentation="no")
414 AC_MSG_RESULT($aros_misleading_indentation)
415 if test "x-$aros_misleading_indentation" = "x-yes" ; then
416     aros_warnflags_misleading_indentation=-Wmisleading-indentation
417     aros_nowarnflags_misleading_indentation=-Wno-misleading-indentation
420 AC_MSG_CHECKING([whether ${CC} accepts -Wnonnull-compare])
421 CFLAGS=-Wnonnull-compare
422 AC_TRY_COMPILE(,, aros_nonnull_compare="yes", aros_nonnull_compare="no")
423 AC_MSG_RESULT($aros_nonnull_compare)
424 if test "x-$aros_nonnull_compare" = "x-yes" ; then
425     aros_warnflags_nonnull_compare=-Wnonnull-compare
426     aros_nowarnflags_nonnull_compare=-Wno-nonnull-compare
429 AC_MSG_CHECKING([whether ${CC} accepts -Wunused])
430 CFLAGS=-Wunused
431 AC_TRY_COMPILE(,, aros_unused="yes", aros_unused="no")
432 AC_MSG_RESULT($aros_unused)
433 if test "x-$aros_unused" = "x-yes" ; then
434     aros_warnflags_unused=-Wunused
435     aros_nowarnflags_unused=-Wno-unused
438 AC_MSG_CHECKING([whether ${CC} accepts -Wunused-label])
439 CFLAGS=-Wunused-label
440 AC_TRY_COMPILE(,, aros_unused_label="yes", aros_unused_label="no")
441 AC_MSG_RESULT($aros_unused_label)
442 if test "x-$aros_unused_label" = "x-yes" ; then
443     aros_warnflags_unused_label=-Wunused-label
444     aros_nowarnflags_unused_label=-Wno-unused-label
447 AC_MSG_CHECKING([whether ${CC} accepts -Wunused-value])
448 CFLAGS=-Wunused-value
449 AC_TRY_COMPILE(,, aros_unused_value="yes", aros_unused_value="no")
450 AC_MSG_RESULT($aros_unused_value)
451 if test "x-$aros_unused_value" = "x-yes" ; then
452     aros_warnflags_unused_value=-Wunused-value
453     aros_nowarnflags_unused_value=-Wno-unused-value
456 AC_MSG_CHECKING([whether ${CC} accepts -Wunused-variable])
457 CFLAGS=-Wunused-variable
458 AC_TRY_COMPILE(,, aros_unused_variable="yes", aros_unused_variable="no")
459 AC_MSG_RESULT($aros_unused_variable)
460 if test "x-$aros_unused_variable" = "x-yes" ; then
461     aros_warnflags_unused_variable=-Wunused-variable
462     aros_nowarnflags_unused_variable=-Wno-unused-variable
465 AC_MSG_CHECKING([whether ${CC} accepts -Wunused-function])
466 CFLAGS=-Wunused-function
467 AC_TRY_COMPILE(,, aros_unused_function="yes", aros_unused_function="no")
468 AC_MSG_RESULT($aros_unused_function)
469 if test "x-$aros_unused_function" = "x-yes" ; then
470     aros_warnflags_unused_function=-Wunused-function
471     aros_nowarnflags_unused_function=-Wno-unused-function
474 AC_MSG_CHECKING([whether ${CC} accepts -Wunused-parameter])
475 CFLAGS=-Wunused-parameter
476 AC_TRY_COMPILE(,, aros_unused_parameter="yes", aros_unused_parameter="no")
477 AC_MSG_RESULT($aros_unused_parameter)
478 if test "x-$aros_unused_parameter" = "x-yes" ; then
479     aros_warnflags_unused_parameter=-Wunused-parameter
480     aros_nowarnflags_unused_parameter=-Wno-unused-parameter
483 AC_MSG_CHECKING([whether ${CC} accepts -Wuninitialized])
484 CFLAGS=-Wuninitialized
485 AC_TRY_COMPILE(,, aros_uninitialized="yes", aros_uninitialized="no")
486 AC_MSG_RESULT($aros_uninitialized)
487 if test "x-$aros_uninitialized" = "x-yes" ; then
488     aros_warnflags_uninitialized=-Wuninitialized
489     aros_nowarnflags_uninitialized=-Wno-uninitialized
492 AC_MSG_CHECKING([whether ${CC} accepts -Wmaybe-uninitialized])
493 CFLAGS=-Wmaybe-uninitialized
494 AC_TRY_COMPILE(,, aros_maybe_uninitialized="yes", aros_maybe_uninitialized="no")
495 AC_MSG_RESULT($aros_maybe_uninitialized)
496 if test "x-$aros_maybe_uninitialized" = "x-yes" ; then
497     aros_warnflags_maybe_uninitialized=-Wmaybe-uninitialized
498     aros_nowarnflags_maybe_uninitialized=-Wno-maybe-uninitialized
499 else
500     aros_warnflags_maybe_uninitialized=$aros_warnflags_uninitialized
501     aros_nowarnflags_maybe_uninitialized=$aros_nowarnflags_uninitialized
504 AC_MSG_CHECKING([whether ${CC} accepts -Wimplicit-function-declaration])
505 CFLAGS=-Wimplicit-function-declaration
506 AC_TRY_COMPILE(,, aros_implicit_function_declaration="yes", aros_implicit_function_declaration="no")
507 AC_MSG_RESULT($aros_implicit_function_declaration)
508 if test "x-$aros_implicit_function_declaration" = "x-yes" ; then
509     aros_warnflags_implicit_function_declaration=-Wimplicit-function-declaration
510     aros_nowarnflags_implicit_function_declaration=-Wno-implicit-function-declaration
513 AC_MSG_CHECKING([whether ${CC} accepts -Wformat])
514 CFLAGS=-Wformat
515 AC_TRY_COMPILE(,, aros_format="yes", aros_format="no")
516 AC_MSG_RESULT($aros_format)
517 if test "x-$aros_format" = "x-yes" ; then
518     aros_warnflags_format=-Wformat
519     aros_nowarnflags_format=-Wno-format
522 AC_MSG_CHECKING([whether ${CC} accepts -Wparentheses])
523 CFLAGS=-Wparentheses
524 AC_TRY_COMPILE(,, aros_parentheses="yes", aros_parentheses="no")
525 AC_MSG_RESULT($aros_parentheses)
526 if test "x-$aros_parentheses" = "x-yes" ; then
527     aros_warnflags_parentheses=-Wparentheses
528     aros_nowarnflags_parentheses=-Wno-parentheses
531 AC_MSG_CHECKING([whether ${CC} accepts -Wchar-subscripts])
532 CFLAGS=-Wchar-subscripts
533 AC_TRY_COMPILE(,, aros_char_subscripts="yes", aros_char_subscripts="no")
534 AC_MSG_RESULT($aros_char_subscripts)
535 if test "x-$aros_char_subscripts" = "x-yes" ; then
536     aros_warnflags_char_subscripts=-Wchar-subscripts
537     aros_nowarnflags_char_subscripts=-Wno-char-subscripts
540 AC_MSG_CHECKING([whether ${CC} accepts -Wendif-labels])
541 CFLAGS=-Wendif-labels
542 AC_TRY_COMPILE(,, aros_endif_labels="yes", aros_endif_labels="no")
543 AC_MSG_RESULT($aros_endif_labels)
544 if test "x-$aros_endif_labels" = "x-yes" ; then
545     aros_warnflags_endif_labels=-Wendif-labels
546     aros_nowarnflags_endif_labels=-Wno-endif-labels
549 AC_MSG_CHECKING([whether ${CC} accepts -Wformat-contains-nul])
550 CFLAGS=-Wformat-contains-nul
551 AC_TRY_COMPILE(,, aros_format_contains_nul="yes", aros_format_contains_nul="no")
552 AC_MSG_RESULT($aros_format_contains_nul)
553 if test "x-$aros_format_contains_nul" = "x-yes" ; then
554     aros_warnflags_format_contains_nul=-Wformat-contains-nul
555     aros_nowarnflags_format_contains_nul=-Wno-format-contains-nul
558 AC_MSG_CHECKING([whether ${CC} accepts -Wimplicit-int])
559 CFLAGS=-Wimplicit-int
560 AC_TRY_COMPILE(,, aros_implicit_int="yes", aros_implicit_int="no")
561 AC_MSG_RESULT($aros_implicit_int)
562 if test "x-$aros_implicit_int" = "x-yes" ; then
563     aros_warnflags_implicit_int=-Wimplicit-int
564     aros_nowarnflags_implicit_int=-Wno-implicit-int
567 AC_MSG_CHECKING([whether ${CC} accepts -Waggressive-loop-optimizations])
568 CFLAGS=-Waggressive-loop-optimizations
569 AC_TRY_COMPILE(,, aros_aggressive_loop_optimizations="yes", aros_aggressive_loop_optimizations="no")
570 AC_MSG_RESULT($aros_aggressive_loop_optimizations)
571 if test "x-$aros_aggressive_loop_optimizations" = "x-yes" ; then
572     aros_warnflags_aggressive_loop_optimizations=-Waggressive-loop-optimizations
573     aros_nowarnflags_aggressive_loop_optimizations=-Wno-aggressive-loop-optimizations
576 AC_MSG_CHECKING([whether ${CC} accepts -Wcpp])
577 CFLAGS=-Wcpp
578 AC_TRY_COMPILE(,, aros_cpp="yes", aros_cpp="no")
579 AC_MSG_RESULT($aros_cpp)
580 if test "x-$aros_cpp" = "x-yes" ; then
581     aros_warnflags_cpp=-Wcpp
582     aros_nowarnflags_cpp=-Wno-cpp
585 AC_MSG_CHECKING([whether ${CC} accepts -Wswitch])
586 CFLAGS=-Wswitch
587 AC_TRY_COMPILE(,, aros_switch="yes", aros_switch="no")
588 AC_MSG_RESULT($aros_switch)
589 if test "x-$aros_switch" = "x-yes" ; then
590     aros_warnflags_switch=-Wswitch
591     aros_nowarnflags_switch=-Wno-switch
594 AC_MSG_CHECKING([whether ${CC} accepts -Wdiscarded-qualifiers])
595 CFLAGS=-Wdiscarded-qualifiers
596 AC_TRY_COMPILE(,, aros_discarded_qualifiers="yes", aros_discarded_qualifiers="no")
597 AC_MSG_RESULT($aros_discarded_qualifiers)
598 if test "x-$aros_discarded_qualifiers" = "x-yes" ; then
599     aros_warnflags_discarded_qualifiers=-Wdiscarded-qualifiers
600     aros_nowarnflags_discarded_qualifiers=-Wno-discarded-qualifiers
603 AC_MSG_CHECKING([whether ${CC} accepts -Wsequence-point])
604 CFLAGS=-Wsequence-point
605 AC_TRY_COMPILE(,, aros_sequence_point="yes", aros_sequence_point="no")
606 AC_MSG_RESULT($aros_sequence_point)
607 if test "x-$aros_sequence_point" = "x-yes" ; then
608     aros_warnflags_sequence_point=-Wsequence-point
609     aros_nowarnflags_sequence_point=-Wno-sequence-point
612 AC_MSG_CHECKING([whether ${CC} accepts -Wunknown-pragmas])
613 CFLAGS=-Wunknown-pragmas
614 AC_TRY_COMPILE(,, aros_unknown_pragmas="yes", aros_unknown_pragmas="no")
615 AC_MSG_RESULT($aros_unknown_pragmas)
616 if test "x-$aros_unknown_pragmas" = "x-yes" ; then
617     aros_warnflags_unknown_pragmas=-Wunknown-pragmas
618     aros_nowarnflags_unknown_pragmas=-Wno-unknown-pragmas
621 AC_MSG_CHECKING([whether ${CC} accepts -Wdiscarded-array-qualifiers])
622 CFLAGS=-Wdiscarded-array-qualifiers
623 AC_TRY_COMPILE(,, aros_discarded_array_qualifiers="yes", aros_discarded_array_qualifiers="no")
624 AC_MSG_RESULT($aros_discarded_array_qualifiers)
625 if test "x-$aros_discarded_array_qualifiers" = "x-yes" ; then
626     aros_warnflags_discarded_array_qualifiers=-Wdiscarded-array-qualifiers
627     aros_nowarnflags_discarded_array_qualifiers=-Wno-discarded-array-qualifiers
630 AC_MSG_CHECKING([whether ${CC} accepts -Wint-conversion])
631 CFLAGS=-Wint-conversion
632 AC_TRY_COMPILE(,, aros_int_conversion="yes", aros_int_conversion="no")
633 AC_MSG_RESULT($aros_int_conversion)
634 if test "x-$aros_int_conversion" = "x-yes" ; then
635     aros_warnflags_int_conversion=-Wint-conversion
636     aros_nowarnflags_int_conversion=-Wno-int-conversion
639 AC_MSG_CHECKING([whether ${CC} accepts -Wint-to-pointer-cast])
640 CFLAGS=-Wint-to-pointer-cast
641 AC_TRY_COMPILE(,, aros_int_to_pointer_cast="yes", aros_int_to_pointer_cast="no")
642 AC_MSG_RESULT($aros_int_to_pointer_cast)
643 if test "x-$aros_int_to_pointer_cast" = "x-yes" ; then
644     aros_warnflags_int_to_pointer_cast=-Wint-to-pointer-cast
645     aros_nowarnflags_int_to_pointer_cast=-Wno-int-to-pointer-cast
648 AC_MSG_CHECKING([whether ${CC} accepts -Wpointer-to-int-cast])
649 CFLAGS=-Wpointer-to-int-cast
650 AC_TRY_COMPILE(,, aros_pointer_to_int_cast="yes", aros_pointer_to_int_cast="no")
651 AC_MSG_RESULT($aros_pointer_to_int_cast)
652 if test "x-$aros_pointer_to_int_cast" = "x-yes" ; then
653     aros_warnflags_pointer_to_int_cast=-Wpointer-to-int-cast
654     aros_nowarnflags_pointer_to_int_cast=-Wno-pointer-to-int-cast
657 AC_MSG_CHECKING([whether ${CC} accepts -Wunused-const-variable])
658 CFLAGS=-Wunused-const-variable
659 AC_TRY_COMPILE(,, aros_unused_const_variable="yes", aros_unused_const_variable="no")
660 AC_MSG_RESULT($aros_unused_const_variable)
661 if test "x-$aros_unused_const_variable" = "x-yes" ; then
662     aros_warnflags_unused_const_variable=-Wunused-const-variable
663     aros_nowarnflags_unused_const_variable=-Wno-unused-const-variable
666 AC_MSG_CHECKING([whether ${CC} accepts -Wwrite-strings])
667 CFLAGS=-Wwrite-strings
668 AC_TRY_COMPILE(,, aros_write_strings="yes", aros_write_strings="no")
669 AC_MSG_RESULT($aros_write_strings)
670 if test "x-$aros_write_strings" = "x-yes" ; then
671     aros_warnflags_write_strings=-Wwrite-strings
672     aros_nowarnflags_write_strings=-Wno-write-strings
675 AC_MSG_CHECKING([whether ${CC} accepts -Wcomment])
676 CFLAGS=-Wcomment
677 AC_TRY_COMPILE(,, aros_comment="yes", aros_comment="no")
678 AC_MSG_RESULT($aros_comment)
679 if test "x-$aros_comment" = "x-yes" ; then
680     aros_warnflags_comment=-Wcomment
681     aros_nowarnflags_comment=-Wno-comment
684 AC_MSG_CHECKING([whether ${CC} accepts -Wincompatible-pointer-types])
685 CFLAGS=-Wincompatible-pointer-types
686 AC_TRY_COMPILE(,, aros_incompatible_pointer_types="yes", aros_incompatible_pointer_types="no")
687 AC_MSG_RESULT($aros_incompatible_pointer_types)
688 if test "x-$aros_incompatible_pointer_types" = "x-yes" ; then
689     aros_warnflags_incompatible_pointer_types=-Wincompatible-pointer-types
690     aros_nowarnflags_incompatible_pointer_types=-Wno-incompatible-pointer-types
693 AC_MSG_CHECKING([whether ${CC} accepts -Wbool-compare])
694 CFLAGS=-Wbool-compare
695 AC_TRY_COMPILE(,, aros_bool_compare="yes", aros_bool_compare="no")
696 AC_MSG_RESULT($aros_bool_compare)
697 if test "x-$aros_bool_compare" = "x-yes" ; then
698     aros_warnflags_bool_compare=-Wbool-compare
699     aros_nowarnflags_bool_compare=-Wno-bool-compare
702 AC_MSG_CHECKING([whether ${CC} accepts -Wlogical-not-parentheses])
703 CFLAGS=-Wlogical-not-parentheses
704 AC_TRY_COMPILE(,, aros_logical_not_parentheses="yes", aros_logical_not_parentheses="no")
705 AC_MSG_RESULT($aros_logical_not_parentheses)
706 if test "x-$aros_logical_not_parentheses" = "x-yes" ; then
707     aros_warnflags_logical_not_parentheses=-Wlogical-not-parentheses
708     aros_nowarnflags_logical_not_parentheses=-Wno-logical-not-parentheses
711 AC_MSG_CHECKING([whether ${CC} accepts -Wpointer-sign])
712 CFLAGS=-Wpointer-sign
713 AC_TRY_COMPILE(,, aros_pointer_sign="yes", aros_pointer_sign="no")
714 AC_MSG_RESULT($aros_pointer_sign)
715 if test "x-$aros_pointer_sign" = "x-yes" ; then
716     aros_warnflags_pointer_sign=-Wpointer-sign
717     aros_nowarnflags_pointer_sign=-Wno-pointer-sign
720 AC_MSG_CHECKING([whether ${CC} accepts -Wshift-overflow])
721 CFLAGS=-Wshift-overflow
722 AC_TRY_COMPILE(,, aros_shift_overflow="yes", aros_shift_overflow="no")
723 AC_MSG_RESULT($aros_shift_overflow)
724 if test "x-$aros_shift_overflow" = "x-yes" ; then
725     aros_warnflags_shift_overflow=-Wshift-overflow
726     aros_nowarnflags_shift_overflow=-Wno-shift-overflow
729 AC_MSG_CHECKING([whether ${CC} accepts -Wframe-address])
730 CFLAGS=-Wframe-address
731 AC_TRY_COMPILE(,, aros_frame_address="yes", aros_frame_address="no")
732 AC_MSG_RESULT($aros_frame_address)
733 if test "x-$aros_frame_address" = "x-yes" ; then
734     aros_warnflags_frame_address=-Wframe-address
735     aros_nowarnflags_frame_address=-Wno-frame-address
738 AC_MSG_CHECKING([whether ${CC} accepts -Wdeprecated-declarations])
739 CFLAGS=-Wdeprecated-declarations
740 AC_TRY_COMPILE(,, aros_deprecated_declarations="yes", aros_deprecated_declarations="no")
741 AC_MSG_RESULT($aros_deprecated_declarations)
742 if test "x-$aros_deprecated_declarations" = "x-yes" ; then
743     aros_warnflags_deprecated_declarations=-Wdeprecated-declarations
744     aros_nowarnflags_deprecated_declarations=-Wno-deprecated-declarations
747 AC_MSG_CHECKING([whether ${CC} accepts -Wsign-compare])
748 CFLAGS=-Wsign-compare
749 AC_TRY_COMPILE(,, aros_sign_compare="yes", aros_sign_compare="no")
750 AC_MSG_RESULT($aros_sign_compare)
751 if test "x-$aros_sign_compare" = "x-yes" ; then
752     aros_warnflags_sign_compare=-Wsign-compare
753     aros_nowarnflags_sign_compare=-Wno-sign-compare
756 AC_MSG_CHECKING([whether ${CC} accepts -Wattributes])
757 CFLAGS=-Wattributes
758 AC_TRY_COMPILE(,, aros_attributes="yes", aros_attributes="no")
759 AC_MSG_RESULT($aros_attributes)
760 if test "x-$aros_attributes" = "x-yes" ; then
761     aros_warnflags_attributes=-Wattributes
762     aros_nowarnflags_attributes=-Wno-attributes
765 AC_MSG_CHECKING([whether ${CC} accepts -Woverflow])
766 CFLAGS=-Woverflow
767 AC_TRY_COMPILE(,, aros_overflow="yes", aros_overflow="no")
768 AC_MSG_RESULT($aros_overflow)
769 if test "x-$aros_overflow" = "x-yes" ; then
770     aros_warnflags_overflow=-Woverflow
771     aros_nowarnflags_overflow=-Wno-overflow
774 AC_MSG_CHECKING([whether ${CC} accepts -Wunused-local-typedefs])
775 CFLAGS=-Wunused-local-typedefs
776 AC_TRY_COMPILE(,, aros_unused_local_typedefs="yes", aros_unused_local_typedefs="no")
777 AC_MSG_RESULT($aros_unused_local_typedefs)
778 if test "x-$aros_unused_local_typedefs" = "x-yes" ; then
779     aros_warnflags_unused_local_typedefs=-Wunused-local-typedefs
780     aros_nowarnflags_unused_local_typedefs=-Wno-unused-local-typedefs
783 AC_MSG_CHECKING([whether ${CC} accepts -Wmissing-braces])
784 CFLAGS=-Wmissing-braces
785 AC_TRY_COMPILE(,, aros_missing_braces="yes", aros_missing_braces="no")
786 AC_MSG_RESULT($aros_missing_braces)
787 if test "x-$aros_missing_braces" = "x-yes" ; then
788     aros_warnflags_missing_braces=-Wmissing-braces
789     aros_nowarnflags_missing_braces=-Wno-missing-braces
792 AC_MSG_CHECKING([whether ${CC} accepts -Wconversion-null])
793 CFLAGS=-Wconversion-null
794 AC_TRY_COMPILE(,, aros_conversion_null="yes", aros_conversion_null="no")
795 AC_MSG_RESULT($aros_conversion_null)
796 if test "x-$aros_conversion_null" = "x-yes" ; then
797     aros_warnflags_conversion_null=-Wconversion-null
798     aros_nowarnflags_conversion_null=-Wno-conversion-null
801 AC_MSG_CHECKING([whether ${CC} accepts -Wnarrowing])
802 CFLAGS=-Wnarrowing
803 AC_TRY_COMPILE(,, aros_narrowing="yes", aros_narrowing="no")
804 AC_MSG_RESULT($aros_narrowing)
805 if test "x-$aros_narrowing" = "x-yes" ; then
806     aros_warnflags_narrowing=-Wnarrowing
807     aros_nowarnflags_narrowing=-Wno-narrowing
810 AC_MSG_CHECKING([whether ${CC} accepts -Wvolatile-register-var])
811 CFLAGS=-Wvolatile-register-var
812 AC_TRY_COMPILE(,, aros_volatile_register_var="yes", aros_volatile_register_var="no")
813 AC_MSG_RESULT($aros_volatile_register_var)
814 if test "x-$aros_volatile_register_var" = "x-yes" ; then
815     aros_warnflags_volatile_register_var=-Wvolatile-register-var
816     aros_nowarnflags_volatile_register_var=-Wno-volatile-register-var
819 AC_MSG_CHECKING([whether ${CC} accepts -Wsizeof-pointer-memaccess])
820 CFLAGS=-Wsizeof-pointer-memaccess
821 AC_TRY_COMPILE(,, aros_sizeof_pointer_memaccess="yes", aros_sizeof_pointer_memaccess="no")
822 AC_MSG_RESULT($aros_sizeof_pointer_memaccess)
823 if test "x-$aros_sizeof_pointer_memaccess" = "x-yes" ; then
824     aros_warnflags_sizeof_pointer_memaccess=-Wsizeof-pointer-memaccess
825     aros_nowarnflags_sizeof_pointer_memaccess=-Wno-sizeof-pointer-memaccess
828 AC_MSG_CHECKING([whether ${CC} accepts -Wreturn-type])
829 CFLAGS=-Wreturn-type
830 AC_TRY_COMPILE(,, aros_return_type="yes", aros_return_type="no")
831 AC_MSG_RESULT($aros_return_type)
832 if test "x-$aros_return_type" = "x-yes" ; then
833     aros_warnflags_return_type=-Wreturn-type
834     aros_nowarnflags_return_type=-Wno-return-type
837 AC_MSG_CHECKING([whether ${CC} accepts -Wformat-zero-length])
838 CFLAGS=-Wformat-zero-length
839 AC_TRY_COMPILE(,, aros_format_zero_length="yes", aros_format_zero_length="no")
840 AC_MSG_RESULT($aros_format_zero_length)
841 if test "x-$aros_format_zero_length" = "x-yes" ; then
842     aros_warnflags_format_zero_length=-Wformat-zero-length
843     aros_nowarnflags_format_zero_length=-Wno-format-zero-length
846 AC_MSG_CHECKING([whether ${CC} accepts -Wlto-type-mismatch])
847 CFLAGS=-Wlto-type-mismatch
848 AC_TRY_COMPILE(,, aros_lto_type_mismatch="yes", aros_lto_type_mismatch="no")
849 AC_MSG_RESULT($aros_lto_type_mismatch)
850 if test "x-$aros_lto_type_mismatch" = "x-yes" ; then
851     aros_warnflags_lto_type_mismatch=-Wlto-type-mismatch
852     aros_nowarnflags_lto_type_mismatch=-Wno-lto-type-mismatch
855 AC_MSG_CHECKING([whether ${CC} accepts -Wtautological-compare])
856 CFLAGS=-Wtautological-compare
857 AC_TRY_COMPILE(,, aros_tautological_compare="yes", aros_tautological_compare="no")
858 AC_MSG_RESULT($aros_tautological_compare)
859 if test "x-$aros_tautological_compare" = "x-yes" ; then
860     aros_warnflags_tautological_compare=-Wtautological-compare
861     aros_nowarnflags_tautological_compare=-Wno-tautological-compare
864 AC_MSG_CHECKING([whether ${CC} accepts -Wempty-body])
865 CFLAGS=-Wempty-body
866 AC_TRY_COMPILE(,, aros_empty_body="yes", aros_empty_body="no")
867 AC_MSG_RESULT($aros_empty_body)
868 if test "x-$aros_empty_body" = "x-yes" ; then
869     aros_warnflags_empty_body=-Wempty-body
870     aros_nowarnflags_empty_body=-Wno-empty-body
873 AC_MSG_CHECKING([whether ${CC} accepts -Wformat-overflow])
874 CFLAGS=-Wformat-overflow
875 AC_TRY_COMPILE(,, aros_format_overflow="yes", aros_format_overflow="no")
876 AC_MSG_RESULT($aros_format_overflow)
877 if test "x-$aros_format_overflow" = "x-yes" ; then
878     aros_warnflags_format_overflow=-Wformat-overflow
879     aros_nowarnflags_format_overflow=-Wno-format-overflow
882 AC_MSG_CHECKING([whether ${CC} accepts -Wstringop-overflow])
883 CFLAGS=-Wstringop-overflow
884 AC_TRY_COMPILE(,, aros_stringop_overflow="yes", aros_stringop_overflow="no")
885 AC_MSG_RESULT($aros_stringop_overflow)
886 if test "x-$aros_stringop_overflow" = "x-yes" ; then
887     aros_warnflags_stringop_overflow=-Wstringop-overflow
888     aros_nowarnflags_stringop_overflow=-Wno-stringop-overflow
891 AC_MSG_CHECKING([whether ${CC} accepts -Wformat-truncation])
892 CFLAGS=-Wformat-truncation
893 AC_TRY_COMPILE(,, aros_format_truncation="yes", aros_format_truncation="no")
894 AC_MSG_RESULT($aros_format_truncation)
895 if test "x-$aros_format_truncation" = "x-yes" ; then
896     aros_warnflags_format_truncation=-Wformat-truncation
897     aros_nowarnflags_format_truncation=-Wno-format-truncation
900 AC_MSG_CHECKING([whether ${CC} accepts -Wstringop-truncation])
901 CFLAGS=-Wstringop-truncation
902 AC_TRY_COMPILE(,, aros_stringop_truncation="yes", aros_stringop_truncation="no")
903 AC_MSG_RESULT($aros_stringop_truncation)
904 if test "x-$aros_stringop_truncation" = "x-yes" ; then
905     aros_warnflags_stringop_truncation=-Wstringop-truncation
906     aros_nowarnflags_stringop_truncation=-Wno-stringop-truncation
909 AC_MSG_CHECKING([whether ${CC} accepts -Wshift-negative-value])
910 CFLAGS=-Wshift-negative-value
911 AC_TRY_COMPILE(,, aros_shift_negative_value="yes", aros_shift_negative_value="no")
912 AC_MSG_RESULT($aros_shift_negative_value)
913 if test "x-$aros_shift_negative_value" = "x-yes" ; then
914     aros_warnflags_shift_negative_value=-Wshift-negative-value
915     aros_nowarnflags_shift_negative_value=-Wno-shift-negative-value
918 AC_MSG_CHECKING([whether ${CC} accepts -Wmissing-field-initializers])
919 CFLAGS=-Wmissing-field-initializers
920 AC_TRY_COMPILE(,, aros_missing_field_initializers="yes", aros_missing_field_initializers="no")
921 AC_MSG_RESULT($aros_missing_field_initializers)
922 if test "x-$aros_missing_field_initializers" = "x-yes" ; then
923     aros_warnflags_missing_field_initializers=-Wmissing-field-initializers
924     aros_nowarnflags_missing_field_initializers=-Wno-missing-field-initializers
927 AC_MSG_CHECKING([whether ${CC} accepts -Wimplicit-fallthrough])
928 CFLAGS=-Wimplicit-fallthrough
929 AC_TRY_COMPILE(,, aros_implicit_fallthrough="yes", aros_implicit_fallthrough="no")
930 AC_MSG_RESULT($aros_implicit_fallthrough)
931 if test "x-$aros_implicit_fallthrough" = "x-yes" ; then
932     aros_warnflags_implicit_fallthrough=-Wimplicit-fallthrough
933     aros_nowarnflags_implicit_fallthrough=-Wno-implicit-fallthrough
936 AC_MSG_CHECKING([whether ${CC} accepts -Wmissing-prototypes])
937 CFLAGS=-Wmissing-prototypes
938 AC_TRY_COMPILE(,, aros_missing_prototypes="yes", aros_missing_prototypes="no")
939 AC_MSG_RESULT($aros_missing_prototypes)
940 if test "x-$aros_missing_prototypes" = "x-yes" ; then
941     aros_warnflags_missing_prototypes=-Wmissing-prototypes
942     aros_nowarnflags_missing_prototypes=-Wno-missing-prototypes
945 AC_MSG_CHECKING([whether ${CC} accepts -Wclass-memaccess])
946 CFLAGS=-Wclass-memaccess
947 AC_TRY_COMPILE(,, aros_class_memaccess="yes", aros_class_memaccess="no")
948 AC_MSG_RESULT($aros_class_memaccess)
949 if test "x-$aros_class_memaccess" = "x-yes" ; then
950     aros_warnflags_class_memaccess=-Wclass-memaccess
951     aros_nowarnflags_class_memaccess=-Wno-class-memaccess
954 AC_MSG_CHECKING([whether ${CC} accepts -Wint-in-bool-context])
955 CFLAGS=-Wint-in-bool-context
956 AC_TRY_COMPILE(,, aros_int_in_bool_context="yes", aros_int_in_bool_context="no")
957 AC_MSG_RESULT($aros_int_in_bool_context)
958 if test "x-$aros_int_in_bool_context" = "x-yes" ; then
959     aros_warnflags_int_in_bool_context=-Wint-in-bool-context
960     aros_nowarnflags_int_in_bool_context=-Wno-int-in-bool-context
964 # export the feature flags...
966 AC_SUBST(aros_cflags_exceptions)
967 AC_SUBST(aros_cflags_permissive)
968 AC_SUBST(aros_cflags_fast_math)
969 AC_SUBST(aros_cflags_no_builtin_floor)
970 AC_SUBST(aros_cflags_lto)
971 AC_SUBST(aros_cflags_nolto)
972 AC_SUBST(aros_cflags_whole_program)
973 AC_SUBST(aros_cflags_loop_block)
974 AC_SUBST(aros_cflags_loop_interchange)
975 AC_SUBST(aros_cflags_loop_strip_mine)
976 AC_SUBST(aros_cflags_peel_loops)
977 AC_SUBST(aros_cflags_unroll_loops)
979 AC_SUBST(aros_cflags_strictaliasing)
980 AC_SUBST(aros_cflags_nostrictaliasing)
982 AC_SUBST(aros_cflags_inlinesmallfunctions)
983 AC_SUBST(aros_cflags_noinlinesmallfunctions)
985 AC_SUBST(aros_cflags_ipacp)
986 AC_SUBST(aros_cflags_noipacp)
988 AC_SUBST(aros_cflags_omitfp)
989 AC_SUBST(aros_cflags_noomitfp)
991 AC_SUBST(aros_cflags_profilearcs)
992 AC_SUBST(aros_cflags_noprofilearcs)
994 AC_SUBST(aros_cflags_testcoverage)
995 AC_SUBST(aros_cflags_notestcoverage)
996     
997 AC_SUBST(aros_cflags_iquote)
998 AC_SUBST(aros_cflags_iquote_end)
1001 # export the feature options...
1003 AC_SUBST(aros_cflags_no_red_zone)
1006 # ...and warning flags...
1008 AC_SUBST(aros_warnflags_error)
1009 AC_SUBST(aros_nowarnflags_error)
1010 AC_SUBST(aros_warnflags_all)
1011 AC_SUBST(aros_warnflags_restrict)
1012 AC_SUBST(aros_nowarnflags_restrict)
1013 AC_SUBST(aros_warnflags_unused_command_line_argument)
1014 AC_SUBST(aros_nowarnflags_unused_command_line_argument)
1015 AC_SUBST(aros_warnflags_unknown_warning_option)
1016 AC_SUBST(aros_nowarnflags_unknown_warning_option)
1017 AC_SUBST(aros_warnflags_unused_but_set_variable)
1018 AC_SUBST(aros_nowarnflags_unused_but_set_variable)
1019 AC_SUBST(aros_warnflags_strict_aliasing)
1020 AC_SUBST(aros_nowarnflags_strict_aliasing)
1021 AC_SUBST(aros_warnflags_array_bounds)
1022 AC_SUBST(aros_nowarnflags_array_bounds)
1023 AC_SUBST(aros_warnflags_enum_compare)
1024 AC_SUBST(aros_nowarnflags_enum_compare)
1025 AC_SUBST(aros_warnflags_strict_prototypes)
1026 AC_SUBST(aros_nowarnflags_strict_prototypes)
1027 AC_SUBST(aros_warnflags_strict_overflow)
1028 AC_SUBST(aros_nowarnflags_strict_overflow)
1029 AC_SUBST(aros_warnflags_format_security)
1030 AC_SUBST(aros_nowarnflags_format_security)
1031 AC_SUBST(aros_warnflags_misleading_indentation)
1032 AC_SUBST(aros_nowarnflags_misleading_indentation)
1033 AC_SUBST(aros_warnflags_nonnull_compare)
1034 AC_SUBST(aros_nowarnflags_nonnull_compare)
1035 AC_SUBST(aros_warnflags_unused)
1036 AC_SUBST(aros_nowarnflags_unused)
1037 AC_SUBST(aros_warnflags_unused_label)
1038 AC_SUBST(aros_nowarnflags_unused_label)
1039 AC_SUBST(aros_warnflags_unused_value)
1040 AC_SUBST(aros_nowarnflags_unused_value)
1041 AC_SUBST(aros_warnflags_unused_variable)
1042 AC_SUBST(aros_nowarnflags_unused_variable)
1043 AC_SUBST(aros_warnflags_unused_function)
1044 AC_SUBST(aros_nowarnflags_unused_function)
1045 AC_SUBST(aros_warnflags_unused_parameter)
1046 AC_SUBST(aros_nowarnflags_unused_parameter)
1047 AC_SUBST(aros_warnflags_uninitialized)
1048 AC_SUBST(aros_nowarnflags_uninitialized)
1049 AC_SUBST(aros_warnflags_maybe_uninitialized)
1050 AC_SUBST(aros_nowarnflags_maybe_uninitialized)
1051 AC_SUBST(aros_warnflags_implicit_function_declaration)
1052 AC_SUBST(aros_nowarnflags_implicit_function_declaration)
1053 AC_SUBST(aros_warnflags_format)
1054 AC_SUBST(aros_nowarnflags_format)
1055 AC_SUBST(aros_warnflags_parentheses)
1056 AC_SUBST(aros_nowarnflags_parentheses)
1057 AC_SUBST(aros_warnflags_char_subscripts)
1058 AC_SUBST(aros_nowarnflags_char_subscripts)
1059 AC_SUBST(aros_warnflags_endif_labels)
1060 AC_SUBST(aros_nowarnflags_endif_labels)
1061 AC_SUBST(aros_warnflags_format_contains_nul)
1062 AC_SUBST(aros_nowarnflags_format_contains_nul)
1063 AC_SUBST(aros_warnflags_implicit_int)
1064 AC_SUBST(aros_nowarnflags_implicit_int)
1065 AC_SUBST(aros_warnflags_aggressive_loop_optimizations)
1066 AC_SUBST(aros_nowarnflags_aggressive_loop_optimizations)
1067 AC_SUBST(aros_warnflags_cpp)
1068 AC_SUBST(aros_nowarnflags_cpp)
1069 AC_SUBST(aros_warnflags_switch)
1070 AC_SUBST(aros_nowarnflags_switch)
1071 AC_SUBST(aros_warnflags_discarded_qualifiers)
1072 AC_SUBST(aros_nowarnflags_discarded_qualifiers)
1073 AC_SUBST(aros_warnflags_sequence_point)
1074 AC_SUBST(aros_nowarnflags_sequence_point)
1075 AC_SUBST(aros_warnflags_unknown_pragmas)
1076 AC_SUBST(aros_nowarnflags_unknown_pragmas)
1077 AC_SUBST(aros_warnflags_discarded_array_qualifiers)
1078 AC_SUBST(aros_nowarnflags_discarded_array_qualifiers)
1079 AC_SUBST(aros_warnflags_int_conversion)
1080 AC_SUBST(aros_nowarnflags_int_conversion)
1081 AC_SUBST(aros_warnflags_int_to_pointer_cast)
1082 AC_SUBST(aros_nowarnflags_int_to_pointer_cast)
1083 AC_SUBST(aros_warnflags_pointer_to_int_cast)
1084 AC_SUBST(aros_nowarnflags_pointer_to_int_cast)
1085 AC_SUBST(aros_warnflags_unused_const_variable)
1086 AC_SUBST(aros_nowarnflags_unused_const_variable)
1087 AC_SUBST(aros_warnflags_write_strings)
1088 AC_SUBST(aros_nowarnflags_write_strings)
1089 AC_SUBST(aros_warnflags_comment)
1090 AC_SUBST(aros_nowarnflags_comment)
1091 AC_SUBST(aros_warnflags_incompatible_pointer_types)
1092 AC_SUBST(aros_nowarnflags_incompatible_pointer_types)
1093 AC_SUBST(aros_warnflags_bool_compare)
1094 AC_SUBST(aros_nowarnflags_bool_compare)
1095 AC_SUBST(aros_warnflags_logical_not_parentheses)
1096 AC_SUBST(aros_nowarnflags_logical_not_parentheses)
1097 AC_SUBST(aros_warnflags_pointer_sign)
1098 AC_SUBST(aros_nowarnflags_pointer_sign)
1099 AC_SUBST(aros_warnflags_shift_overflow)
1100 AC_SUBST(aros_nowarnflags_shift_overflow)
1101 AC_SUBST(aros_warnflags_frame_address)
1102 AC_SUBST(aros_nowarnflags_frame_address)
1103 AC_SUBST(aros_warnflags_deprecated_declarations)
1104 AC_SUBST(aros_nowarnflags_deprecated_declarations)
1105 AC_SUBST(aros_warnflags_sign_compare)
1106 AC_SUBST(aros_nowarnflags_sign_compare)
1107 AC_SUBST(aros_warnflags_attributes)
1108 AC_SUBST(aros_nowarnflags_attributes)
1109 AC_SUBST(aros_warnflags_overflow)
1110 AC_SUBST(aros_nowarnflags_overflow)
1111 AC_SUBST(aros_warnflags_unused_local_typedefs)
1112 AC_SUBST(aros_nowarnflags_unused_local_typedefs)
1113 AC_SUBST(aros_warnflags_missing_braces)
1114 AC_SUBST(aros_nowarnflags_missing_braces)
1115 AC_SUBST(aros_warnflags_conversion_null)
1116 AC_SUBST(aros_nowarnflags_conversion_null)
1117 AC_SUBST(aros_warnflags_narrowing)
1118 AC_SUBST(aros_nowarnflags_narrowing)
1119 AC_SUBST(aros_warnflags_volatile_register_var)
1120 AC_SUBST(aros_nowarnflags_volatile_register_var)
1121 AC_SUBST(aros_warnflags_sizeof_pointer_memaccess)
1122 AC_SUBST(aros_nowarnflags_sizeof_pointer_memaccess)
1123 AC_SUBST(aros_warnflags_return_type)
1124 AC_SUBST(aros_nowarnflags_return_type)
1125 AC_SUBST(aros_warnflags_format_zero_length)
1126 AC_SUBST(aros_nowarnflags_format_zero_length)
1127 AC_SUBST(aros_warnflags_lto_type_mismatch)
1128 AC_SUBST(aros_nowarnflags_lto_type_mismatch)
1129 AC_SUBST(aros_warnflags_tautological_compare)
1130 AC_SUBST(aros_nowarnflags_tautological_compare)
1131 AC_SUBST(aros_warnflags_empty_body)
1132 AC_SUBST(aros_nowarnflags_empty_body)
1133 AC_SUBST(aros_warnflags_format_overflow)
1134 AC_SUBST(aros_nowarnflags_format_overflow)
1135 AC_SUBST(aros_warnflags_stringop_overflow)
1136 AC_SUBST(aros_nowarnflags_stringop_overflow)
1137 AC_SUBST(aros_warnflags_format_truncation)
1138 AC_SUBST(aros_nowarnflags_format_truncation)
1139 AC_SUBST(aros_warnflags_stringop_truncation)
1140 AC_SUBST(aros_nowarnflags_stringop_truncation)
1141 AC_SUBST(aros_warnflags_shift_negative_value)
1142 AC_SUBST(aros_nowarnflags_shift_negative_value)
1143 AC_SUBST(aros_warnflags_missing_field_initializers)
1144 AC_SUBST(aros_nowarnflags_missing_field_initializers)
1145 AC_SUBST(aros_warnflags_implicit_fallthrough)
1146 AC_SUBST(aros_nowarnflags_implicit_fallthrough)
1147 AC_SUBST(aros_warnflags_missing_prototypes)
1148 AC_SUBST(aros_nowarnflags_missing_prototypes)
1149 AC_SUBST(aros_warnflags_class_memaccess)
1150 AC_SUBST(aros_nowarnflags_class_memaccess)
1151 AC_SUBST(aros_warnflags_int_in_bool_context)
1152 AC_SUBST(aros_nowarnflags_int_in_bool_context)
1154 AC_CONFIG_FILES(
1155     ${aros_targetcfg_dir}/compiler.cfg:compiler.cfg.in
1158 AC_OUTPUT