diff options
author | Erik de Castro Lopo <erikd@mega-nerd.com> | 2013-03-05 21:53:18 +1100 |
---|---|---|
committer | Erik de Castro Lopo <erikd@mega-nerd.com> | 2013-03-06 07:39:24 +1100 |
commit | 05609d5b4b02e87c17c01a0ebb9fc2e05b799d90 (patch) | |
tree | e932b29586bf90f3a2c940ac0bae25b84d6f3be7 /m4 | |
parent | 9d057c7179b1a4acb26ea28972038cfcf0be17fe (diff) | |
download | flac-05609d5b4b02e87c17c01a0ebb9fc2e05b799d90.tar.gz |
configure.ac : Add hardening compile options.
Extra compile options are detected at configure time with new
XIPH_ADD_*FLAGS m4 macros.
Options enabled include -Wextra, -D_FORTIFY_SOURCE=2 and stack
protection.
Diffstat (limited to 'm4')
-rw-r--r-- | m4/add_cflags.m4 | 18 | ||||
-rw-r--r-- | m4/add_cxxflags.m4 | 19 |
2 files changed, 37 insertions, 0 deletions
diff --git a/m4/add_cflags.m4 b/m4/add_cflags.m4 new file mode 100644 index 00000000..08f4a409 --- /dev/null +++ b/m4/add_cflags.m4 @@ -0,0 +1,18 @@ +dnl @synopsis XIPH_ADD_CFLAGS +dnl +dnl Add the given option to CFLAGS, if it doesn't break the compiler + +AC_DEFUN([XIPH_ADD_CFLAGS], +[AC_MSG_CHECKING([if $CC accepts $1]) + ac_add_cflags__old_cflags="$CFLAGS" + CFLAGS="$1" + AC_TRY_LINK([ + #include <stdio.h> + ], + [puts("Hello, World!"); return 0;], + AC_MSG_RESULT([yes]) + CFLAGS="$ac_add_cflags__old_cflags $1", + AC_MSG_RESULT([no]) + CFLAGS="$ac_add_cflags__old_cflags" + ) +])# XIPH_ADD_CFLAGS diff --git a/m4/add_cxxflags.m4 b/m4/add_cxxflags.m4 new file mode 100644 index 00000000..8197dc2d --- /dev/null +++ b/m4/add_cxxflags.m4 @@ -0,0 +1,19 @@ +dnl @synopsis XIPH_ADD_CXXFLAGS +dnl +dnl Add the given option to CXXFLAGS, if it doesn't break the compiler + +AC_DEFUN([XIPH_ADD_CXXFLAGS], +[AC_MSG_CHECKING([if $CXX accepts $1]) + AC_LANG_ASSERT([C++]) + ac_add_cxxflags__old_cxxflags="$CXXFLAGS" + CXXFLAGS="$1" + AC_TRY_LINK([ + #include <cstdio> + ], + [puts("Hello, World!"); return 0;], + AC_MSG_RESULT([yes]) + CXXFLAGS="$ac_add_cxxflags__old_cxxflags $1", + AC_MSG_RESULT([no]) + CXXFLAGS="$ac_add_cxxflags__old_cxxflags" + ) +])# XIPH_ADD_CXXFLAGS |