如何使用特定于GCC的automake启用标志

时间:2012-12-18 21:37:54

标签: gcc automake

我是automake的新手,但是通过文档找到了我的方式并且按照我的喜好构建了所有内容。但是,我目前已打开CFLAGS =“ - Wall -Werror”。虽然这对gcc很有用,但我假设有人要使用非gcc编译器构建我的代码。检测GCC是否正在使用以及仅为GCC设置这些标志的正确方法是什么?

修改

解决方案如下所示:

  1. 下载http://www.gnu.org/software/autoconf-archive/ax_check_compile_flag.html并将宏放在项目的./m4/目录中。
  2. 将以下行添加到configure.ac:

    AX_CHECK_COMPILE_FLAG([-Wall], [CFLAGS="$CFLAGS -Wall"], [], [])
    AX_CHECK_COMPILE_FLAG([-Werror], [CFLAGS="$CFLAGS -Werror"], [], [])
    
  3. 修改2

    这个宏也可能比-Wall更有用,因为它对多个编译器也是如此:http://www.gnu.org/software/autoconf-archive/ax_cflags_warn_all.html

1 个答案:

答案 0 :(得分:3)

您可以使用Autoconf宏检查是否支持每个标志,例如AX_CHECK_COMPILE_FLAG