From aa9cfa20f98d270b4edab1b2d3ae78d624c83cbd Mon Sep 17 00:00:00 2001 From: serge-sans-paille Date: Sat, 10 Feb 2024 18:28:43 +0000 Subject: [PATCH] Bug 1872748 - Move linker checks from old-configure to configure r=glandium Differential Revision: https://phabricator.services.mozilla.com/D199224 --- build/moz.configure/flags.configure | 6 +++++ js/src/old-configure.in | 41 ----------------------------- old-configure.in | 41 ----------------------------- 3 files changed, 6 insertions(+), 82 deletions(-) diff --git a/build/moz.configure/flags.configure b/build/moz.configure/flags.configure index 327b87d99a3d..578b1e84eb46 100644 --- a/build/moz.configure/flags.configure +++ b/build/moz.configure/flags.configure @@ -163,6 +163,12 @@ def check_build_id_sha1(developer_options): check_and_add_linker_flag("-Wl,--build-id=uuid", when=check_build_id_uuid) check_and_add_linker_flag("-Wl,--build-id=sha1", when=check_build_id_sha1) +check_and_add_linker_flag("-Wl,-z,noexecstack", when=is_gnu_cc) +check_and_add_linker_flag("-Wl,-z,text", when=is_gnu_cc) +check_and_add_linker_flag("-Wl,-z,relro", when=is_gnu_cc) +check_and_add_linker_flag("-Wl,-z,now", when=is_gnu_cc) +check_and_add_linker_flag("-Wl,-z,nocopyreloc", when=is_gnu_cc) + @depends("--enable-address-sanitizer", is_gnu_cc) def check_Bsymbolic(enable_asan, is_gnu_cc): diff --git a/js/src/old-configure.in b/js/src/old-configure.in index 23b4677ff4e5..a09b490fbad5 100644 --- a/js/src/old-configure.in +++ b/js/src/old-configure.in @@ -201,47 +201,6 @@ if test "$GNU_CC"; then [ASFLAGS="$ASFLAGS -Wa,--noexecstack"], AC_MSG_RESULT([no])) CFLAGS=$_SAVE_CFLAGS - AC_MSG_CHECKING([for -z noexecstack option to ld]) - _SAVE_LDFLAGS=$LDFLAGS - LDFLAGS="$LDFLAGS -Wl,-z,noexecstack" - AC_TRY_LINK(,,AC_MSG_RESULT([yes]), - AC_MSG_RESULT([no]) - LDFLAGS=$_SAVE_LDFLAGS) - - AC_MSG_CHECKING([for -z text option to ld]) - _SAVE_LDFLAGS=$LDFLAGS - LDFLAGS="$LDFLAGS -Wl,-z,text" - AC_TRY_LINK(,,AC_MSG_RESULT([yes]), - AC_MSG_RESULT([no]) - LDFLAGS=$_SAVE_LDFLAGS) - - AC_MSG_CHECKING([for -z relro option to ld]) - _SAVE_LDFLAGS=$LDFLAGS - LDFLAGS="$LDFLAGS -Wl,-z,relro" - AC_TRY_LINK(,,AC_MSG_RESULT([yes]), - AC_MSG_RESULT([no]) - LDFLAGS=$_SAVE_LDFLAGS) - - AC_MSG_CHECKING([for -z now option to ld]) - _SAVE_LDFLAGS=$LDFLAGS - LDFLAGS="$LDFLAGS -Wl,-z,now" - AC_TRY_LINK(,,AC_MSG_RESULT([yes]), - AC_MSG_RESULT([no]) - LDFLAGS=$_SAVE_LDFLAGS) - - AC_MSG_CHECKING([for -z nocopyreloc option to ld]) - _SAVE_LDFLAGS=$LDFLAGS - LDFLAGS="$LDFLAGS -Wl,-z,nocopyreloc" - AC_TRY_LINK(,,AC_MSG_RESULT([yes]), - AC_MSG_RESULT([no]) - LDFLAGS=$_SAVE_LDFLAGS) - - AC_MSG_CHECKING([for -Bsymbolic-functions option to ld]) - _SAVE_LDFLAGS=$LDFLAGS - LDFLAGS="$LDFLAGS -Wl,-Bsymbolic-functions" - AC_TRY_LINK(,,AC_MSG_RESULT([yes]), - AC_MSG_RESULT([no]) - LDFLAGS=$_SAVE_LDFLAGS) _DEFINES_CFLAGS="-include $jsconfdefs -DMOZILLA_CLIENT" fi diff --git a/old-configure.in b/old-configure.in index 0f717d7f1465..b57348bcc3ea 100644 --- a/old-configure.in +++ b/old-configure.in @@ -200,47 +200,6 @@ if test "$GNU_CC"; then [ASFLAGS="$ASFLAGS -Wa,--noexecstack"], AC_MSG_RESULT([no])) CFLAGS=$_SAVE_CFLAGS - AC_MSG_CHECKING([for -z noexecstack option to ld]) - _SAVE_LDFLAGS=$LDFLAGS - LDFLAGS="$LDFLAGS -Wl,-z,noexecstack" - AC_TRY_LINK(,,AC_MSG_RESULT([yes]), - AC_MSG_RESULT([no]) - LDFLAGS=$_SAVE_LDFLAGS) - - AC_MSG_CHECKING([for -z text option to ld]) - _SAVE_LDFLAGS=$LDFLAGS - LDFLAGS="$LDFLAGS -Wl,-z,text" - AC_TRY_LINK(,,AC_MSG_RESULT([yes]), - AC_MSG_RESULT([no]) - LDFLAGS=$_SAVE_LDFLAGS) - - AC_MSG_CHECKING([for -z relro option to ld]) - _SAVE_LDFLAGS=$LDFLAGS - LDFLAGS="$LDFLAGS -Wl,-z,relro" - AC_TRY_LINK(,,AC_MSG_RESULT([yes]), - AC_MSG_RESULT([no]) - LDFLAGS=$_SAVE_LDFLAGS) - - AC_MSG_CHECKING([for -z now option to ld]) - _SAVE_LDFLAGS=$LDFLAGS - LDFLAGS="$LDFLAGS -Wl,-z,now" - AC_TRY_LINK(,,AC_MSG_RESULT([yes]), - AC_MSG_RESULT([no]) - LDFLAGS=$_SAVE_LDFLAGS) - - AC_MSG_CHECKING([for -z nocopyreloc option to ld]) - _SAVE_LDFLAGS=$LDFLAGS - LDFLAGS="$LDFLAGS -Wl,-z,nocopyreloc" - AC_TRY_LINK(,,AC_MSG_RESULT([yes]), - AC_MSG_RESULT([no]) - LDFLAGS=$_SAVE_LDFLAGS) - - AC_MSG_CHECKING([for -Bsymbolic-functions option to ld]) - _SAVE_LDFLAGS=$LDFLAGS - LDFLAGS="$LDFLAGS -Wl,-Bsymbolic-functions" - AC_TRY_LINK(,,AC_MSG_RESULT([yes]), - AC_MSG_RESULT([no]) - LDFLAGS=$_SAVE_LDFLAGS) AC_MSG_CHECKING([for --ignore-unresolved-symbol option to ld]) HAVE_LINKER_SUPPORT_IGNORE_UNRESOLVED=