From 5ea0945201d1fe30d0aba2b050afa15c59f5e74c Mon Sep 17 00:00:00 2001 From: blacksirius Date: Fri, 1 Jun 2012 10:09:16 +0000 Subject: feature merge bs-coreoptimize->trunk: LTO support git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@16196 54d463be-8e91-2dee-dedb-b68131a5f0ec --- configure.in | 57 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 57 insertions(+) (limited to 'configure.in') diff --git a/configure.in b/configure.in index 815da2009..bee9b7030 100644 --- a/configure.in +++ b/configure.in @@ -165,6 +165,29 @@ AC_ARG_ENABLE( ) +# +# LTO +# +AC_ARG_ENABLE( + [lto], + AC_HELP_STRING( + [--enable-lto], + [ + Enables or Disables Linktime Code Optimization (LTO is enabled by default) + ] + ), + [ + enable_lto="$enableval" + case $enableval in + "no");; + "yes");; + *) AC_MSG_ERROR([[invalid argument --enable-lto=$disableval... stopping]]);; + esac + ], + [enable_lto="yes"] +) + + # # Optionally specify the path to mysql_config # @@ -327,6 +350,40 @@ AC_COMPILE_IFELSE( ) +# +# LTO Support test +# +if test "$enable_lto" != "no" ; then + + OLD_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS -flto" + + OLD_LDFLAGS="$LDFLAGS" + LDFLAGS="$LDFLAGS -flto" + + AC_MSG_CHECKING([whether $CC supports -flto]) + AC_RUN_IFELSE( + [ + int main(int argc, char **argv){ + return 0; + } + ], + [ + AC_MSG_RESULT([yes]) + ], + [ + AC_MSG_RESULT([no]) + CFLAGS="$OLD_CFLAGS" + LDFLAGS="$OLD_LDFLAGS" + ], + [ + AC_MSG_RESULT([guessing no]) + ] + ) +fi + + + AC_MSG_CHECKING([whether $CC supports -Wno-pointer-sign]) OLD_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS -Wno-pointer-sign" -- cgit v1.2.3-60-g2f50