build: enable LTO and _FORTIFY_SOURCE with optimization

If building with optimization enabled, enable LTO.
This commit is contained in:
Lucas De Marchi 2015-01-25 23:28:46 -02:00
parent 88f6ffe449
commit 27bcc9111b

View File

@ -226,8 +226,18 @@ CC_CHECK_FLAGS_APPEND(with_cflags, [CFLAGS], [\
-fvisibility=hidden \
-ffunction-sections \
-fdata-sections])
AC_SUBST([OUR_CFLAGS], "$with_cflags $with_coverage_cflags")
AS_CASE([$CFLAGS], [*-O[[12345\ ]]*],
[CC_CHECK_FLAGS_APPEND([with_cflags], [CFLAGS], [\
-flto -ffat-lto-objects])],
[AC_MSG_RESULT([skipping -flto, optimization not enabled])])
AS_CASE([$CFLAGS], [*-O[[12345\ ]]*],
[CC_CHECK_FLAGS_APPEND([with_cppflags], [CPPFLAGS], [\
-Wp,-D_FORTIFY_SOURCE=2])],
[AC_MSG_RESULT([skipping -D_FORTIFY_SOURCE, optimization not enabled])])
AC_SUBST([OUR_CFLAGS], "$with_cflags $with_coverage_cflags")
CC_CHECK_FLAGS_APPEND([with_ldflags], [LDFLAGS], [ \
-Wl,--as-needed \