examples/Makefile.am, examples/Makefile.def, examples/adder/Makefile.am, examples/calculator/Makefile.am, examples/cmilner/Makefile.am, examples/fdd/Makefile.am, examples/internal/Makefile.am, examples/milner/Makefile.am, examples/money/Makefile.am, examples/queen/Makefile.am, examples/solitar/Makefile.am, m4/debug.m4, m4/gccwarns.m4, ChangeLog, INSTALL: New files. * config, makefile, src/makefile, doc/makefile, examples/adder/makefile, examples/calculator/makefile examples/cmilner/makefile, examples/fdd/makefile, examples/internal/makefile, examples/milner/makefile, examples/money/makefile, examples/queen/makefile, examples/solitare/makefile : Delete. * examples/adder/adder.cxx, examples/fdd/statespace.cxx, examples/internal/bddtest.cxx, examples/milner/milner.cxx, examples/money/money.cxx, examples/queen/queen.cxx, examples/solitare/solitare.cxx: Include iostream. * examples/calculator/parser.y: Rename as ... * examples/calculator/parser.yxx: ... this. Remove spurious comas in %token, %right, and %left arguments. * examples/calculator/parser.h: Rename as ... * examples/calculator/parser_.h: ... this, because the bison rule with output parser.h (not tokens.h) from parser.y. * examples/calculator/lexer.l: Rename as ... * examples/calculator/lexer.lxx: ... this. Include parser.h instead of tokens.h. * examples/calculator/slist.h (voidSList::voisSListElem, SList::ite): Fix friend usage. * src/kernel.h (DEFAULT_CLOCK): Default to 60 if not already defined. * README: Update build instruction, and file listing.
51 lines
1.7 KiB
Text
51 lines
1.7 KiB
Text
dnl Check if the compiler supports useful warning options. There's a few that
|
|
dnl we don't use, simply because they're too noisy:
|
|
dnl
|
|
dnl -ansi (prevents declaration of functions like strdup, and because
|
|
dnl it makes warning in system headers).
|
|
dnl -Wconversion (useful in older versions of gcc, but not in gcc 2.7.x)
|
|
dnl -Wtraditional (combines too many unrelated messages, only a few useful)
|
|
dnl -Wredundant-decls (system headers make this too noisy)
|
|
dnl -pedantic
|
|
dnl -Wunreachable-code (broken, see GCC PR/7827)
|
|
dnl -Wredundant-decls (too many warnings in GLIBC's header with old GCC)
|
|
dnl
|
|
dnl A few other options have been left out because they are annoying in C++.
|
|
|
|
AC_DEFUN([CF_GCC_WARNINGS],
|
|
[if test -n "$GCC"; then
|
|
AC_CACHE_CHECK([for $GCC warning options], ac_cv_prog_gxx_warn_flags,
|
|
[
|
|
cat > conftest.$ac_ext <<EOF
|
|
#line __oline__ "configure"
|
|
int main(int argc, char *argv[[]]) { return argv[[argc-1]] == 0; }
|
|
EOF
|
|
cf_save_CFLAGS="$CFLAGS"
|
|
ac_cv_prog_gcc_warn_flags="-W -Wall"
|
|
for cf_opt in \
|
|
Waggregate-return \
|
|
Wbad-function-cast \
|
|
Wcast-align \
|
|
Winline \
|
|
Wnested-externs \
|
|
Wpointer-arith \
|
|
Wwrite-strings \
|
|
Wmissing-declarations \
|
|
Wmissing-prototypes \
|
|
Wstrict-prototypes \
|
|
Wshadow \
|
|
Wcast-qual \
|
|
do
|
|
CFLAGS="$cf_save_CFLAGS $ac_cv_prog_gcc_warn_flags -$cf_opt"
|
|
if AC_TRY_EVAL(ac_compile); then
|
|
ac_cv_prog_gcc_warn_flags="$ac_cv_prog_gcc_warn_flags -$cf_opt"
|
|
test "$cf_opt" = Wcast-qual && ac_cv_prog_gcc_warn_flags="$ac_cv_prog_gcc_warn_flags -DXTSTRINGDEFINES"
|
|
fi
|
|
done
|
|
rm -f conftest*
|
|
dnl CFLAGS="$cf_save_CFLAGS"
|
|
])
|
|
fi
|
|
dnl AC_SUBST([WARNING_CFLAGS], ["${ac_cv_prog_gcc_warn_flags}"])
|
|
])
|
|
|