Zazwyczaj używam makra m4, które sprawdza, czy dany kompilator akceptuje określoną CFLAG.
umieścić następujące do swojej aclocal.m4 (i zwykle zamiast używać M4/ax_check_cflags.m4):
# AX_CHECK_CFLAGS(ADDITIONAL-CFLAGS, ACTION-IF-FOUND, ACTION-IF-NOT-FOUND)
#
# checks whether the $(CC) compiler accepts the ADDITIONAL-CFLAGS
# if so, they are added to the CXXFLAGS
AC_DEFUN([AX_CHECK_CFLAGS],
[
AC_MSG_CHECKING([whether compiler accepts "$1"])
cat > conftest.c++ << EOF
int main(){
return 0;
}
EOF
if $CC $CPPFLAGS $CFLAGS -o conftest.o conftest.c++ [$1] > /dev/null 2>&1
then
AC_MSG_RESULT([yes])
CFLAGS="${CFLAGS} [$1]"
[$2]
else
AC_MSG_RESULT([no])
[$3]
fi
])dnl AX_CHECK_CFLAGS
i wywołać ją z configure.ac z czymś jak
AX_CHECK_CFLAGS([-std=c99 -pedantic])
flagi ty Szukamy "-std = c99 -pedantic", które musi znaleźć się w 'CFLAGS'; nie mam pojęcia, jak najlepiej to osiągnąć :( – Christoph
Dzięki. Zakładam, że mogę dodać je ręcznie, ale jeśli jest to możliwe, wolałbym, żeby Autoconf to zrobił. Nie wiem, czy to obsługuje. –