diff options
-rw-r--r-- | configure.ac | 23 | ||||
-rw-r--r-- | m4/compiler_options.m4 | 27 |
2 files changed, 29 insertions, 21 deletions
diff --git a/configure.ac b/configure.ac index 0ec4229f8..a1c553cfe 100644 --- a/configure.ac +++ b/configure.ac @@ -1010,27 +1010,8 @@ if test "${enable_more_logging}" = "yes"; then AC_DEFINE(NM_MORE_LOGGING, [1], [Define if more debug logging is enabled]) fi -AC_ARG_ENABLE(lto, AS_HELP_STRING([--enable-lto], [Enable Link Time Optimization for smaller size (default: no)])) -if (test "${enable_lto}" = "yes"); then - CFLAGS="-flto $CFLAGS" -else - enable_lto='no' -fi - -AC_ARG_ENABLE(ld-gc, AS_HELP_STRING([--enable-ld-gc], [Enable garbage collection of unused symbols on linking (default: auto)])) -if (test "${enable_ld_gc}" != "no"); then - CC_CHECK_FLAG_APPEND([ld_gc_flags], [CFLAGS], [-fdata-sections -ffunction-sections -Wl,--gc-sections]) - if (test -n "${ld_gc_flags}"); then - enable_ld_gc="yes" - CFLAGS="$CFLAGS $ld_gc_flags" - else - if (test "${enable_ld_gc}" = "yes"); then - AC_MSG_ERROR([Unused symbol eviction requested but not supported.]) - else - enable_ld_gc="no" - fi - fi -fi +NM_LTO +NM_LD_GC AC_ARG_ENABLE(address-sanitizer, AS_HELP_STRING([--enable-address-sanitizer], [Compile with address sanitizer (default: no)])) diff --git a/m4/compiler_options.m4 b/m4/compiler_options.m4 index c998711d7..fa35b9168 100644 --- a/m4/compiler_options.m4 +++ b/m4/compiler_options.m4 @@ -124,3 +124,30 @@ else AC_MSG_RESULT(no) fi ]) + +AC_DEFUN([NM_LTO], +[AC_ARG_ENABLE(lto, AS_HELP_STRING([--enable-lto], [Enable Link Time Optimization for smaller size (default: no)])) +if (test "${enable_lto}" = "yes"); then + CFLAGS="-flto $CFLAGS" +else + enable_lto='no' +fi +]) + +AC_DEFUN([NM_LD_GC], +[AC_ARG_ENABLE(ld-gc, AS_HELP_STRING([--enable-ld-gc], [Enable garbage collection of unused symbols on linking (default: auto)])) +if (test "${enable_ld_gc}" != "no"); then + CC_CHECK_FLAG_APPEND([ld_gc_flags], [CFLAGS], [-fdata-sections -ffunction-sections -Wl,--gc-sections]) + if (test -n "${ld_gc_flags}"); then + enable_ld_gc="yes" + CFLAGS="$CFLAGS $ld_gc_flags" + else + if (test "${enable_ld_gc}" = "yes"); then + AC_MSG_ERROR([Unused symbol eviction requested but not supported.]) + else + enable_ld_gc="no" + fi + fi +fi +]) + |