Fix GCC 4.9 plugin needed to handle lto object
This commit is contained in:
51
configure.in
51
configure.in
@@ -523,14 +523,16 @@ AC_RUN_IFELSE(
|
||||
# LTO Support test
|
||||
#
|
||||
if test "$enable_lto" != "no" ; then
|
||||
|
||||
OPT_LTO_AR=""
|
||||
OPT_LTO=""
|
||||
|
||||
OLD_CFLAGS="$CFLAGS"
|
||||
CFLAGS="$CFLAGS -flto"
|
||||
CFLAGS="$CFLAGS -flto -fuse-linker-plugin -ffat-lto-objects"
|
||||
|
||||
OLD_LDFLAGS="$LDFLAGS"
|
||||
LDFLAGS="$LDFLAGS -flto"
|
||||
LDFLAGS="$LDFLAGS -flto -fuse-linker-plugin -ffat-lto-objects"
|
||||
|
||||
AC_MSG_CHECKING([whether $CC supports -flto])
|
||||
AC_MSG_CHECKING([whether $CC supports -ffat-lto-objects])
|
||||
AC_RUN_IFELSE(
|
||||
[AC_LANG_SOURCE([
|
||||
int main(int argc, char **argv){
|
||||
@@ -539,16 +541,42 @@ if test "$enable_lto" != "no" ; then
|
||||
])],
|
||||
[
|
||||
AC_MSG_RESULT([yes])
|
||||
OPT_LTO_AR="-ffat-lto-objects"
|
||||
],
|
||||
[
|
||||
AC_MSG_RESULT([no])
|
||||
CFLAGS="$OLD_CFLAGS"
|
||||
LDFLAGS="$OLD_LDFLAGS"
|
||||
],
|
||||
[
|
||||
AC_MSG_RESULT([guessing no])
|
||||
]
|
||||
)
|
||||
CFLAGS="$OLD_CFLAGS"
|
||||
LDFLAGS="$OLD_LDFLAGS"
|
||||
|
||||
CFLAGS="$CFLAGS -flto -fuse-linker-plugin"
|
||||
LDFLAGS="$LDFLAGS -flto -fuse-linker-plugin"
|
||||
|
||||
AC_MSG_CHECKING([whether $CC supports -flto -fuse-linker-plugin])
|
||||
AC_RUN_IFELSE(
|
||||
[AC_LANG_SOURCE([
|
||||
int main(int argc, char **argv){
|
||||
return 0;
|
||||
}
|
||||
])],
|
||||
[
|
||||
AC_MSG_RESULT([yes])
|
||||
OPT_LTO_AR="-flto -fuse-linker-plugin $OPT_LTO_AR"
|
||||
OPT_LTO="-flto -fuse-linker-plugin"
|
||||
],
|
||||
[
|
||||
AC_MSG_RESULT([no])
|
||||
],
|
||||
[
|
||||
AC_MSG_RESULT([guessing no])
|
||||
]
|
||||
)
|
||||
CFLAGS="$OLD_CFLAGS"
|
||||
LDFLAGS="$OLD_LDFLAGS"
|
||||
fi
|
||||
|
||||
|
||||
@@ -1234,8 +1262,15 @@ else
|
||||
AC_MSG_RESULT([no])
|
||||
fi
|
||||
|
||||
AC_MSG_NOTICE([Configure finish, CPPFLAGS= $CPPFLAGS])
|
||||
AC_MSG_NOTICE([LDFLAGS=$LDFLAGS])
|
||||
CFLAGS="$OPT_LTO $CFLAGS"
|
||||
CFLAGS_AR="$OPT_LTO_AR $CFLAGS"
|
||||
AC_SUBST([CFLAGS_AR])
|
||||
|
||||
AC_MSG_NOTICE([Configure finish])
|
||||
AC_MSG_NOTICE([CPPFLAGS= $CPPFLAGS])
|
||||
AC_MSG_NOTICE([CFLAGS= $CFLAGS])
|
||||
AC_MSG_NOTICE([CFLAGS_AR= $CFLAGS_AR])
|
||||
AC_MSG_NOTICE([LDFLAGS= $LDFLAGS])
|
||||
#AC_MSG_NOTICE([PROD_WARN= $PROD_WARN])
|
||||
#AC_MSG_NOTICE([EXTRA_WARN= $EXTRA_WARN])
|
||||
AC_MSG_NOTICE([output name = $output_login, $output_char, $output_map])
|
||||
|
||||
Reference in New Issue
Block a user