diff options
| -rw-r--r-- | meta/conf/distro/include/security_flags.inc | 4 | ||||
| -rw-r--r-- | meta/recipes-devtools/gcc/gcc-configure-common.inc | 3 |
2 files changed, 6 insertions, 1 deletions
diff --git a/meta/conf/distro/include/security_flags.inc b/meta/conf/distro/include/security_flags.inc index 38164d08b8..f2eb224a77 100644 --- a/meta/conf/distro/include/security_flags.inc +++ b/meta/conf/distro/include/security_flags.inc | |||
| @@ -5,6 +5,8 @@ | |||
| 5 | # From a Yocto Project perspective, this file is included and tested | 5 | # From a Yocto Project perspective, this file is included and tested |
| 6 | # in the DISTRO="poky-lsb" configuration. | 6 | # in the DISTRO="poky-lsb" configuration. |
| 7 | 7 | ||
| 8 | GCCPIE ?= "--enable-default-pie" | ||
| 9 | |||
| 8 | # _FORTIFY_SOURCE requires -O1 or higher, so disable in debug builds as they use | 10 | # _FORTIFY_SOURCE requires -O1 or higher, so disable in debug builds as they use |
| 9 | # -O0 which then results in a compiler warning. | 11 | # -O0 which then results in a compiler warning. |
| 10 | lcl_maybe_fortify = "${@base_conditional('DEBUG_BUILD','1','','-D_FORTIFY_SOURCE=2',d)}" | 12 | lcl_maybe_fortify = "${@base_conditional('DEBUG_BUILD','1','','-D_FORTIFY_SOURCE=2',d)}" |
| @@ -12,7 +14,7 @@ lcl_maybe_fortify = "${@base_conditional('DEBUG_BUILD','1','','-D_FORTIFY_SOURCE | |||
| 12 | # Error on use of format strings that represent possible security problems | 14 | # Error on use of format strings that represent possible security problems |
| 13 | SECURITY_STRINGFORMAT ?= "-Wformat -Wformat-security -Werror=format-security" | 15 | SECURITY_STRINGFORMAT ?= "-Wformat -Wformat-security -Werror=format-security" |
| 14 | 16 | ||
| 15 | SECURITY_CFLAGS ?= "-fstack-protector-strong -pie -fpie ${lcl_maybe_fortify} ${SECURITY_STRINGFORMAT}" | 17 | SECURITY_CFLAGS ?= "-fstack-protector-strong ${lcl_maybe_fortify} ${SECURITY_STRINGFORMAT}" |
| 16 | SECURITY_NO_PIE_CFLAGS ?= "-fstack-protector-strong ${lcl_maybe_fortify} ${SECURITY_STRINGFORMAT}" | 18 | SECURITY_NO_PIE_CFLAGS ?= "-fstack-protector-strong ${lcl_maybe_fortify} ${SECURITY_STRINGFORMAT}" |
| 17 | 19 | ||
| 18 | SECURITY_LDFLAGS ?= "-fstack-protector-strong -Wl,-z,relro,-z,now" | 20 | SECURITY_LDFLAGS ?= "-fstack-protector-strong -Wl,-z,relro,-z,now" |
diff --git a/meta/recipes-devtools/gcc/gcc-configure-common.inc b/meta/recipes-devtools/gcc/gcc-configure-common.inc index 63fa1d9686..e2ce234aa1 100644 --- a/meta/recipes-devtools/gcc/gcc-configure-common.inc +++ b/meta/recipes-devtools/gcc/gcc-configure-common.inc | |||
| @@ -22,6 +22,8 @@ EXTRA_OECONF_INITIAL ?= "" | |||
| 22 | GCCMULTILIB ?= "--disable-multilib" | 22 | GCCMULTILIB ?= "--disable-multilib" |
| 23 | GCCTHREADS ?= "posix" | 23 | GCCTHREADS ?= "posix" |
| 24 | 24 | ||
| 25 | GCCPIE ??= "" | ||
| 26 | |||
| 25 | EXTRA_OECONF = "\ | 27 | EXTRA_OECONF = "\ |
| 26 | ${@['--enable-clocale=generic', ''][d.getVar('USE_NLS') != 'no']} \ | 28 | ${@['--enable-clocale=generic', ''][d.getVar('USE_NLS') != 'no']} \ |
| 27 | --with-gnu-ld \ | 29 | --with-gnu-ld \ |
| @@ -29,6 +31,7 @@ EXTRA_OECONF = "\ | |||
| 29 | --enable-languages=${LANGUAGES} \ | 31 | --enable-languages=${LANGUAGES} \ |
| 30 | --enable-threads=${GCCTHREADS} \ | 32 | --enable-threads=${GCCTHREADS} \ |
| 31 | ${GCCMULTILIB} \ | 33 | ${GCCMULTILIB} \ |
| 34 | ${GCCPIE} \ | ||
| 32 | --enable-c99 \ | 35 | --enable-c99 \ |
| 33 | --enable-long-long \ | 36 | --enable-long-long \ |
| 34 | --enable-symvers=gnu \ | 37 | --enable-symvers=gnu \ |
