diff options
author | Maria Matejka <mq@ucw.cz> | 2019-02-27 14:40:05 +0100 |
---|---|---|
committer | Maria Matejka <mq@ucw.cz> | 2019-02-27 14:40:05 +0100 |
commit | a68442e0563f5b756f9a7323cea44a25ce048738 (patch) | |
tree | ff6d96f142e5f3b351fc39fb01128107b4190756 | |
parent | f249d0b84c840242a084966999a1d228c603b431 (diff) |
Fixed link time optimizer check for FreeBSD
-rw-r--r-- | aclocal.m4 | 24 | ||||
-rw-r--r-- | configure.ac | 14 |
2 files changed, 32 insertions, 6 deletions
@@ -131,6 +131,30 @@ AC_DEFUN([BIRD_CHECK_ANDROID_LOG], ) ]) +AC_DEFUN([BIRD_CHECK_LTO], +[ + bird_tmp_cflags="$CFLAGS" + bird_tmp_ldflags="$CFLAGS" + CFLAGS="-flto" + LDFLAGS="-flto" + + AC_CACHE_CHECK( + [whether link time optimizer is available], + [bird_cv_c_lto], + [ + AC_LINK_IFELSE( + [AC_LANG_PROGRAM()], + [bird_cv_c_lto=yes], + [bird_cv_c_lto=no] + ) + ] + ) + + CFLAGS="$bird_tmp_cflags" + LDFLAGS="$bird_tmp_ldflags" +]) + + AC_DEFUN([BIRD_CHECK_GCC_OPTION], [ bird_tmp_cflags="$CFLAGS" diff --git a/configure.ac b/configure.ac index 7013a34e..58fdc7fe 100644 --- a/configure.ac +++ b/configure.ac @@ -137,22 +137,24 @@ if test "$bird_cflags_default" = yes ; then BIRD_CHECK_GCC_OPTION([bird_cv_c_option_wno_missing_init], [-Wno-missing-field-initializers], [-Wall -Wextra]) BIRD_CHECK_GCC_OPTION([bird_cv_c_option_fno_strict_aliasing], [-fno-strict-aliasing]) BIRD_CHECK_GCC_OPTION([bird_cv_c_option_fno_strict_overflow], [-fno-strict-overflow]) - if test "$enable_debug" = no; then - BIRD_CHECK_GCC_OPTION([bird_cv_c_option_flto], [-flto]) - fi CFLAGS="$CFLAGS -Wall -Wextra -Wstrict-prototypes -Wno-parentheses" BIRD_ADD_GCC_OPTION([bird_cv_c_option_wno_pointer_sign], [-Wno-pointer-sign]) BIRD_ADD_GCC_OPTION([bird_cv_c_option_wno_missing_init], [-Wno-missing-field-initializers]) BIRD_ADD_GCC_OPTION([bird_cv_c_option_fno_strict_aliasing], [-fno-strict-aliasing]) BIRD_ADD_GCC_OPTION([bird_cv_c_option_fno_strict_overflow], [-fno-strict-overflow]) - if test "$enable_debug" = no; then - BIRD_ADD_GCC_OPTION([bird_cv_c_option_flto], [-flto]) - fi fi AC_MSG_CHECKING([CFLAGS]) AC_MSG_RESULT([$CFLAGS]) +if test "$enable_debug" = no; then + BIRD_CHECK_LTO +fi + +if test "$bird_cv_c_lto" = yes; then + CFLAGS="$CFLAGS -flto" + LDFLAGS="$LDFLAGS -flto" +fi AC_PROG_CPP AC_PROG_INSTALL |