From: Aki Tuomi Date: Fri, 24 Nov 2017 06:51:14 +0000 (+0200) Subject: configure: Detect --whole-archive in linker X-Git-Tag: 2.3.0.rc1~337 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=83b6900e51c8f08d6eadb4b2856c736cc1e142ff;p=thirdparty%2Fdovecot%2Fcore.git configure: Detect --whole-archive in linker --- diff --git a/configure.ac b/configure.ac index 99273fc6b1..a7b7b029c3 100644 --- a/configure.ac +++ b/configure.ac @@ -322,6 +322,7 @@ AC_CC_PIE AC_CC_F_STACK_PROTECTOR AC_CC_D_FORTIFY_SOURCE AC_LD_RELRO +AC_LD_WHOLE_ARCHIVE DOVECOT_CFLAGS diff --git a/m4/ld_whole_archive.m4 b/m4/ld_whole_archive.m4 new file mode 100644 index 0000000000..42a4206e9f --- /dev/null +++ b/m4/ld_whole_archive.m4 @@ -0,0 +1,19 @@ +AC_DEFUN([AC_LD_WHOLE_ARCHIVE], [ + LD_WHOLE_ARCHIVE= + LD_NO_WHOLE_ARCHIVE= + AC_MSG_CHECKING([for linker option to include whole archive]) + ld_help="`$CC -Wl,-help 2>&1`" + case "$ld_help" in + *"--whole-archive"*) + LD_WHOLE_ARCHIVE="--whole-archive" + LD_NO_WHOLE_ARCHIVE="--no-whole-archive" + ;; + esac + AS_IF([test "x$LD_WHOLE_ARCHIVE" != "x"], + [AC_MSG_RESULT([-Wl,$LD_WHOLE_ARCHIVE])], + [AC_MSG_RESULT([not supported])] + ) + AC_SUBST([LD_WHOLE_ARCHIVE]) + AC_SUBST([LD_NO_WHOLE_ARCHIVE]) + AM_CONDITIONAL([HAVE_WHOLE_ARCHIVE], [test "x$LD_WHOLE_ARCHIVE" != "x"]) +])