summaryrefslogtreecommitdiff
path: root/poky/meta/recipes-devtools/gcc
diff options
context:
space:
mode:
Diffstat (limited to 'poky/meta/recipes-devtools/gcc')
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-11.2.inc (renamed from poky/meta/recipes-devtools/gcc/gcc-11.1.inc)15
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-common.inc4
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-configure-common.inc24
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-cross-canadian.inc16
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-cross-canadian_11.2.bb (renamed from poky/meta/recipes-devtools/gcc/gcc-cross-canadian_11.1.bb)0
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-cross.inc10
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-cross_11.2.bb (renamed from poky/meta/recipes-devtools/gcc/gcc-cross_11.1.bb)0
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-crosssdk_11.2.bb (renamed from poky/meta/recipes-devtools/gcc/gcc-crosssdk_11.1.bb)0
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-multilib-config.inc34
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-runtime.inc128
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-runtime_11.2.bb (renamed from poky/meta/recipes-devtools/gcc/gcc-runtime_11.1.bb)0
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-sanitizers.inc58
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-sanitizers_11.2.bb (renamed from poky/meta/recipes-devtools/gcc/gcc-sanitizers_11.1.bb)4
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-source_11.2.bb (renamed from poky/meta/recipes-devtools/gcc/gcc-source_11.1.bb)0
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-target.inc58
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0001-libstdc-Fix-installation-of-python-hooks-PR-99453.patch57
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0038-arc-Update-64bit-move-split-patterns.patch290
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0039-arc-Fix-u-maddhisi-patterns.patch127
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0040-arc-Update-doloop_end-patterns.patch105
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0041-apply-debug-prefix-maps-before-checksumming-DIEs.patch95
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc_11.2.bb (renamed from poky/meta/recipes-devtools/gcc/gcc_11.1.bb)10
-rw-r--r--poky/meta/recipes-devtools/gcc/libgcc-common.inc12
-rw-r--r--poky/meta/recipes-devtools/gcc/libgcc-initial.inc6
-rw-r--r--poky/meta/recipes-devtools/gcc/libgcc-initial_11.2.bb (renamed from poky/meta/recipes-devtools/gcc/libgcc-initial_11.1.bb)2
-rw-r--r--poky/meta/recipes-devtools/gcc/libgcc.inc12
-rw-r--r--poky/meta/recipes-devtools/gcc/libgcc_11.2.bb (renamed from poky/meta/recipes-devtools/gcc/libgcc_11.1.bb)2
-rw-r--r--poky/meta/recipes-devtools/gcc/libgfortran.inc14
-rw-r--r--poky/meta/recipes-devtools/gcc/libgfortran_11.2.bb (renamed from poky/meta/recipes-devtools/gcc/libgfortran_11.1.bb)0
28 files changed, 304 insertions, 779 deletions
diff --git a/poky/meta/recipes-devtools/gcc/gcc-11.1.inc b/poky/meta/recipes-devtools/gcc/gcc-11.2.inc
index c21242af5..9fd30f52a 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-11.1.inc
+++ b/poky/meta/recipes-devtools/gcc/gcc-11.2.inc
@@ -2,11 +2,11 @@ require gcc-common.inc
# Third digit in PV should be incremented after a minor release
-PV = "11.1.0"
+PV = "11.2.0"
# BINV should be incremented to a revision after a minor gcc release
-BINV = "11.1.1"
+BINV = "11.2.0"
FILESEXTRAPATHS =. "${FILE_DIRNAME}/gcc:${FILE_DIRNAME}/gcc/backport:"
@@ -27,7 +27,6 @@ LIC_FILES_CHKSUM = "\
#BASEURI ?= "https://github.com/gcc-mirror/gcc/archive/${RELEASE}.zip;downloadfilename=gcc-${PV}-${RELEASE}.zip"
BASEURI ?= "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.xz \
- http://downloads.yoctoproject.org/mirror/sources/gcc-11.1.0-9ee61d2b51df012c659359873637cc2162ecccf3.patch;apply=yes;name=backports \
"
SRC_URI = "\
${BASEURI} \
@@ -68,13 +67,9 @@ SRC_URI = "\
file://0035-gentypes-genmodes-Do-not-use-__LINE__-for-maintainin.patch \
file://0036-mingw32-Enable-operation_not_supported.patch \
file://0037-libatomic-Do-not-enforce-march-on-aarch64.patch \
- file://0001-libstdc-Fix-installation-of-python-hooks-PR-99453.patch \
- file://0038-arc-Update-64bit-move-split-patterns.patch \
- file://0039-arc-Fix-u-maddhisi-patterns.patch \
- file://0040-arc-Update-doloop_end-patterns.patch \
+ file://0041-apply-debug-prefix-maps-before-checksumming-DIEs.patch \
"
-SRC_URI[sha256sum] = "4c4a6fb8a8396059241c2e674b85b351c26a5d678274007f076957afa1cc9ddf"
-SRC_URI[backports.sha256sum] = "69274bebd6c069a13443d4af61070e854740a639ec4d66eedf3e80070363587b"
+SRC_URI[sha256sum] = "d08edc536b54c372a1010ff6619dd274c0f1603aa49212ba20f7aa2cda36fa8b"
S = "${TMPDIR}/work-shared/gcc-${PV}-${PR}/gcc-${PV}"
@@ -87,7 +82,7 @@ FORTRAN = ""
JAVA = ""
SSP ?= "--disable-libssp"
-SSP_mingw32 = "--enable-libssp"
+SSP:mingw32 = "--enable-libssp"
EXTRA_OECONF_BASE = "\
${SSP} \
diff --git a/poky/meta/recipes-devtools/gcc/gcc-common.inc b/poky/meta/recipes-devtools/gcc/gcc-common.inc
index 629fa26df..74190644e 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-common.inc
+++ b/poky/meta/recipes-devtools/gcc/gcc-common.inc
@@ -12,7 +12,7 @@ inherit autotools gettext texinfo
BPN = "gcc"
COMPILERDEP = "virtual/${MLPREFIX}${TARGET_PREFIX}gcc:do_gcc_stash_builddir"
-COMPILERDEP_class-nativesdk = "virtual/${TARGET_PREFIX}gcc-crosssdk:do_gcc_stash_builddir"
+COMPILERDEP:class-nativesdk = "virtual/${TARGET_PREFIX}gcc-crosssdk:do_gcc_stash_builddir"
python extract_stashed_builddir () {
src = d.expand("${COMPONENTS_DIR}/${BUILD_ARCH}/gcc-stashed-builddir-${TARGET_SYS}")
@@ -83,7 +83,7 @@ def get_tune_parameters(tune, d):
get_tune_parameters[vardepsexclude] = "AVAILTUNES TUNE_CCARGS OVERRIDES TUNE_FEATURES BASE_LIB BASELIB TUNE_ARCH ABIEXTENSION TARGET_FPU TUNE_PKGARCH PACKAGE_EXTRA_ARCHS"
-DEBIANNAME_${MLPREFIX}libgcc = "libgcc1"
+DEBIANNAME:${MLPREFIX}libgcc = "libgcc1"
MIRRORS =+ "\
${GNU_MIRROR}/gcc ftp://gcc.gnu.org/pub/gcc/releases/ \n \
diff --git a/poky/meta/recipes-devtools/gcc/gcc-configure-common.inc b/poky/meta/recipes-devtools/gcc/gcc-configure-common.inc
index dc7f458b2..e4cdb73f0 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-configure-common.inc
+++ b/poky/meta/recipes-devtools/gcc/gcc-configure-common.inc
@@ -45,27 +45,27 @@ EXTRA_OECONF = "\
# glibc version is a minimum controlling whether features are enabled.
# Doesn't need to track glibc exactly
-EXTRA_OECONF_append_libc-glibc = " --with-glibc-version=2.28 "
+EXTRA_OECONF:append:libc-glibc = " --with-glibc-version=2.28 "
# Set this here since GCC configure won't auto-detect and enable
# initfini-arry when cross compiling.
-EXTRA_OECONF_append = " --enable-initfini-array"
+EXTRA_OECONF:append = " --enable-initfini-array"
export gcc_cv_collect2_libs = 'none required'
# We need to set gcc_cv_collect2_libs else there is cross-compilation badness
# in the config.log files (which might not get generated until do_compile
# hence being missed by the insane do_configure check).
-EXTRA_OECONF_append_linux = " --enable-__cxa_atexit"
+EXTRA_OECONF:append:linux = " --enable-__cxa_atexit"
-EXTRA_OECONF_append_mips64 = " --with-abi=64 --with-arch-64=mips64 --with-tune-64=mips64"
-EXTRA_OECONF_append_mips64el = " --with-abi=64 --with-arch-64=mips64 --with-tune-64=mips64"
-EXTRA_OECONF_append_mips64n32 = " --with-abi=64 --with-arch-64=mips64 --with-tune-64=mips64"
-EXTRA_OECONF_append_mips64eln32 = " --with-abi=64 --with-arch-64=mips64 --with-tune-64=mips64"
-EXTRA_OECONF_append_mipsisa32r6el = " --with-abi=32 --with-arch=mips32r6"
-EXTRA_OECONF_append_mipsisa32r6 = " --with-abi=32 --with-arch=mips32r6"
-EXTRA_OECONF_append_mipsisa64r6el = " --with-abi=64 --with-arch-64=mips64r6"
-EXTRA_OECONF_append_mipsisa64r6 = " --with-abi=64 --with-arch-64=mips64r6"
+EXTRA_OECONF:append:mips64 = " --with-abi=64 --with-arch-64=mips64 --with-tune-64=mips64"
+EXTRA_OECONF:append:mips64el = " --with-abi=64 --with-arch-64=mips64 --with-tune-64=mips64"
+EXTRA_OECONF:append:mips64n32 = " --with-abi=64 --with-arch-64=mips64 --with-tune-64=mips64"
+EXTRA_OECONF:append:mips64eln32 = " --with-abi=64 --with-arch-64=mips64 --with-tune-64=mips64"
+EXTRA_OECONF:append:mipsisa32r6el = " --with-abi=32 --with-arch=mips32r6"
+EXTRA_OECONF:append:mipsisa32r6 = " --with-abi=32 --with-arch=mips32r6"
+EXTRA_OECONF:append:mipsisa64r6el = " --with-abi=64 --with-arch-64=mips64r6"
+EXTRA_OECONF:append:mipsisa64r6 = " --with-abi=64 --with-arch-64=mips64r6"
EXTRA_OECONF_GCC_FLOAT ??= ""
CPPFLAGS = ""
@@ -74,7 +74,7 @@ SYSTEMHEADERS = "${target_includedir}"
SYSTEMLIBS = "${target_base_libdir}/"
SYSTEMLIBS1 = "${target_libdir}/"
-do_configure_prepend () {
+do_configure:prepend () {
# teach gcc to find correct target includedir when checking libc ssp support
mkdir -p ${B}/gcc
echo "NATIVE_SYSTEM_HEADER_DIR = ${SYSTEMHEADERS}" > ${B}/gcc/t-oe
diff --git a/poky/meta/recipes-devtools/gcc/gcc-cross-canadian.inc b/poky/meta/recipes-devtools/gcc/gcc-cross-canadian.inc
index 1872faee1..495dd9070 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-cross-canadian.inc
+++ b/poky/meta/recipes-devtools/gcc/gcc-cross-canadian.inc
@@ -65,7 +65,7 @@ do_compile () {
PACKAGES = "${PN}-dbg ${PN} ${PN}-doc"
-FILES_${PN} = "\
+FILES:${PN} = "\
${exec_prefix}/bin/* \
${libexecdir}/gcc/${TARGET_SYS}/${BINV}/* \
${gcclibdir}/${TARGET_SYS}/${BINV}/*.o \
@@ -81,9 +81,9 @@ FILES_${PN} = "\
${prefix}/${TARGET_SYS}/lib/* \
${prefix}/${TARGET_SYS}${target_includedir}/* \
"
-INSANE_SKIP_${PN} += "dev-so"
+INSANE_SKIP:${PN} += "dev-so"
-FILES_${PN}-doc = "\
+FILES:${PN}-doc = "\
${infodir} \
${mandir} \
${gcclibdir}/${TARGET_SYS}/${BINV}/include/README \
@@ -173,16 +173,16 @@ do_install () {
ELFUTILS = "nativesdk-elfutils"
DEPENDS += "nativesdk-gmp nativesdk-mpfr nativesdk-libmpc ${ELFUTILS} nativesdk-zlib"
-RDEPENDS_${PN} += "nativesdk-mpfr nativesdk-libmpc ${ELFUTILS}"
+RDEPENDS:${PN} += "nativesdk-mpfr nativesdk-libmpc ${ELFUTILS}"
SYSTEMHEADERS = "${target_includedir}/"
SYSTEMLIBS = "${target_base_libdir}/"
SYSTEMLIBS1 = "${target_libdir}/"
EXTRA_OECONF += "--enable-poison-system-directories"
-EXTRA_OECONF_remove_elf = "--with-sysroot=/not/exist"
-EXTRA_OECONF_remove_eabi = "--with-sysroot=/not/exist"
-EXTRA_OECONF_append_elf = " --without-headers --with-newlib"
-EXTRA_OECONF_append_eabi = " --without-headers --with-newlib"
+EXTRA_OECONF:remove:elf = "--with-sysroot=/not/exist"
+EXTRA_OECONF:remove:eabi = "--with-sysroot=/not/exist"
+EXTRA_OECONF:append:elf = " --without-headers --with-newlib"
+EXTRA_OECONF:append:eabi = " --without-headers --with-newlib"
# gcc 4.7 needs -isystem
export ARCH_FLAGS_FOR_TARGET = "--sysroot=${STAGING_DIR_TARGET} -isystem=${target_includedir}"
diff --git a/poky/meta/recipes-devtools/gcc/gcc-cross-canadian_11.1.bb b/poky/meta/recipes-devtools/gcc/gcc-cross-canadian_11.2.bb
index bf53c5cd7..bf53c5cd7 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-cross-canadian_11.1.bb
+++ b/poky/meta/recipes-devtools/gcc/gcc-cross-canadian_11.2.bb
diff --git a/poky/meta/recipes-devtools/gcc/gcc-cross.inc b/poky/meta/recipes-devtools/gcc/gcc-cross.inc
index dca4036ab..3ffa1f0c4 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-cross.inc
+++ b/poky/meta/recipes-devtools/gcc/gcc-cross.inc
@@ -22,7 +22,7 @@ require gcc-configure-common.inc
LINKER_HASH_STYLE ?= "sysv"
EXTRA_OECONF += "--enable-poison-system-directories=error"
-EXTRA_OECONF_append_sh4 = " \
+EXTRA_OECONF:append:sh4 = " \
--with-multilib-list= \
--enable-incomplete-targets \
"
@@ -31,9 +31,9 @@ EXTRA_OECONF += "\
--with-system-zlib \
"
-EXTRA_OECONF_append_libc-baremetal = " --without-headers"
-EXTRA_OECONF_remove_libc-baremetal = "--enable-threads=posix"
-EXTRA_OECONF_remove_libc-newlib = "--enable-threads=posix"
+EXTRA_OECONF:append:libc-baremetal = " --without-headers"
+EXTRA_OECONF:remove:libc-baremetal = "--enable-threads=posix"
+EXTRA_OECONF:remove:libc-newlib = "--enable-threads=posix"
EXTRA_OECONF_PATHS = "\
--with-gxx-include-dir=/not/exist${target_includedir}/c++/${BINV} \
@@ -44,7 +44,7 @@ EXTRA_OECONF_PATHS = "\
ARCH_FLAGS_FOR_TARGET += "-isystem${STAGING_DIR_TARGET}${target_includedir}"
-do_configure_prepend () {
+do_configure:prepend () {
install -d ${RECIPE_SYSROOT}${target_includedir}
touch ${RECIPE_SYSROOT}${target_includedir}/limits.h
}
diff --git a/poky/meta/recipes-devtools/gcc/gcc-cross_11.1.bb b/poky/meta/recipes-devtools/gcc/gcc-cross_11.2.bb
index b43cca0c5..b43cca0c5 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-cross_11.1.bb
+++ b/poky/meta/recipes-devtools/gcc/gcc-cross_11.2.bb
diff --git a/poky/meta/recipes-devtools/gcc/gcc-crosssdk_11.1.bb b/poky/meta/recipes-devtools/gcc/gcc-crosssdk_11.2.bb
index 40a6c4fef..40a6c4fef 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-crosssdk_11.1.bb
+++ b/poky/meta/recipes-devtools/gcc/gcc-crosssdk_11.2.bb
diff --git a/poky/meta/recipes-devtools/gcc/gcc-multilib-config.inc b/poky/meta/recipes-devtools/gcc/gcc-multilib-config.inc
index 31b8619be..26bfed950 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-multilib-config.inc
+++ b/poky/meta/recipes-devtools/gcc/gcc-multilib-config.inc
@@ -31,7 +31,9 @@ python gcc_multilib_setup() {
'%s/*/linux64.h' % src_conf_dir,
'%s/aarch64/t-aarch64' % src_conf_dir,
'%s/aarch64/aarch64.h' % src_conf_dir,
+ '%s/aarch64/aarch64-linux.h' % src_conf_dir,
'%s/aarch64/aarch64-cores.def' % src_conf_dir,
+ '%s/arm/linux-eabi.h' % src_conf_dir,
'%s/*/linux.h' % src_conf_dir,
'%s/linux.h' % src_conf_dir)
@@ -102,6 +104,8 @@ python gcc_multilib_setup() {
r'\1' + wrap_libdir(libdir64) + r'\3'),
(r'^(#define\s*GLIBC_DYNAMIC_LINKER64\s*\"\S+\"\s*)(\S+)(\s*\"\S+\"\s*)(\S+)(\s*\".*\")$',
r'\1' + wrap_libdir(libdir64) + r'\3' + wrap_libdir(libdir64) + r'\5'),
+ (r'^(#define\s*GLIBC_DYNAMIC_LINKER\b\s*)(\S+)(\s*\".*\")$',
+ r'\1' + wrap_libdir(libdir32) + r'\3'),
(r'^(#define\s*GLIBC_DYNAMIC_LINKERX32\s*)(\S+)(\s*\".*\")$',
r'\1' + wrap_libdir(libdirx32) + r'\3'),
(r'^(#define\s*GLIBC_DYNAMIC_LINKERN32\s*)(\S+)(\s*\".*\")$',
@@ -112,8 +116,18 @@ python gcc_multilib_setup() {
r'\1' + wrap_libdir(libdir64) + r'\3'),
(r'^(#define\s*UCLIBC_DYNAMIC_LINKERN32\s*)(\S+)(\s*\".*\")$',
r'\1' + wrap_libdir(libdirn32) + r'\3'),
+ (r'^(#define\s*UCLIBC_DYNAMIC_LINKERX32\s*)(\S+)(\s*\".*\")$',
+ r'\1' + wrap_libdir(libdirx32) + r'\3'),
(r'^(#define\s*UCLIBC_DYNAMIC_LINKER\b\s*)(\S+)(\s*\".*\")$',
r'\1' + wrap_libdir(libdir32) + r'\3'),
+ (r'^(#define\s*MUSL_DYNAMIC_LINKER32\s*)(\S+)(\s*\".*\")$',
+ r'\1' + wrap_libdir(libdir32) + r'\3'),
+ (r'^(#define\s*MUSL_DYNAMIC_LINKER64\s*)(\S+)(\s*\".*\")$',
+ r'\1' + wrap_libdir(libdir64) + r'\3'),
+ (r'^(#define\s*MUSL_DYNAMIC_LINKERX32\s*)(\S+)(\s*\".*\")$',
+ r'\1' + wrap_libdir(libdirx32) + r'\3'),
+ (r'^(#define\s*MUSL_DYNAMIC_LINKER\b\s*)(\S+)(\s*\".*\")$',
+ r'\1' + wrap_libdir(libdir32) + r'\3'),
]
for (i, line) in enumerate(filelines):
@@ -138,15 +152,15 @@ python gcc_multilib_setup() {
}
gcc_header_config_files = {
- 'x86_64' : ['gcc/config/i386/linux64.h'],
- 'i586' : ['gcc/config/i386/linux64.h'],
- 'i686' : ['gcc/config/i386/linux64.h'],
- 'mips' : ['gcc/config/mips/linux.h', 'gcc/config/mips/linux64.h'],
- 'mips64' : ['gcc/config/mips/linux.h', 'gcc/config/mips/linux64.h'],
- 'powerpc' : ['gcc/config/rs6000/linux64.h'],
- 'powerpc64' : ['gcc/config/rs6000/linux64.h'],
- 'aarch64' : ['gcc/config/aarch64/aarch64.h'],
- 'arm' : ['gcc/config/aarch64/aarch64.h'],
+ 'x86_64' : ['gcc/config/linux.h', 'gcc/config/i386/linux.h', 'gcc/config/i386/linux64.h'],
+ 'i586' : ['gcc/config/linux.h', 'gcc/config/i386/linux.h', 'gcc/config/i386/linux64.h'],
+ 'i686' : ['gcc/config/linux.h', 'gcc/config/i386/linux64.h'],
+ 'mips' : ['gcc/config/linux.h', 'gcc/config/mips/linux.h', 'gcc/config/mips/linux64.h'],
+ 'mips64' : ['gcc/config/linux.h', 'gcc/config/mips/linux.h', 'gcc/config/mips/linux64.h'],
+ 'powerpc' : ['gcc/config/linux.h', 'gcc/config/rs6000/linux64.h'],
+ 'powerpc64' : ['gcc/config/linux.h', 'gcc/config/rs6000/linux64.h'],
+ 'aarch64' : ['gcc/config/linux.h', 'gcc/config/aarch64/aarch64-linux.h', 'gcc/config/arm/linux-eabi.h'],
+ 'arm' : ['gcc/config/linux.h', 'gcc/config/aarch64/aarch64-linux.h', 'gcc/config/arm/linux-eabi.h'],
}
libdir32 = 'SYSTEMLIBS_DIR'
@@ -170,7 +184,7 @@ python gcc_multilib_setup() {
header_config_files = gcc_header_config_files[target_arch]
ml_list = ['DEFAULTTUNE_MULTILIB_ORIGINAL' if mlprefix else 'DEFAULTTUNE']
- mltunes = [('DEFAULTTUNE_virtclass-multilib-%s' % ml) for ml in multilibs]
+ mltunes = [('DEFAULTTUNE:virtclass-multilib-%s' % ml) for ml in multilibs]
if mlprefix:
mlindex = 0
for ml in multilibs:
diff --git a/poky/meta/recipes-devtools/gcc/gcc-runtime.inc b/poky/meta/recipes-devtools/gcc/gcc-runtime.inc
index 59d9a2468..4839a6687 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-runtime.inc
+++ b/poky/meta/recipes-devtools/gcc/gcc-runtime.inc
@@ -6,7 +6,7 @@ SUMMARY = "Runtime libraries from GCC"
# All gcc-runtime packages are now covered by the runtime exception.
LICENSE = "GPL-3.0-with-GCC-exception"
-CXXFLAGS_remove = "-fvisibility-inlines-hidden"
+CXXFLAGS:remove = "-fvisibility-inlines-hidden"
EXTRA_OECONF_PATHS = "\
--with-gxx-include-dir=${includedir}/c++/${BINV} \
@@ -14,37 +14,37 @@ EXTRA_OECONF_PATHS = "\
--with-build-sysroot=${STAGING_DIR_TARGET} \
"
-EXTRA_OECONF_append_linuxstdbase = " --enable-clocale=gnu"
-EXTRA_OECONF_append = " --cache-file=${B}/config.cache"
-EXTRA_OECONF_append_libc-newlib = " --with-newlib"
+EXTRA_OECONF:append:linuxstdbase = " --enable-clocale=gnu"
+EXTRA_OECONF:append = " --cache-file=${B}/config.cache"
+EXTRA_OECONF:append:libc-newlib = " --with-newlib"
# Disable ifuncs for libatomic on arm conflicts -march/-mcpu
-EXTRA_OECONF_append_arm = " libat_cv_have_ifunc=no "
-EXTRA_OECONF_append_armeb = " libat_cv_have_ifunc=no "
+EXTRA_OECONF:append:arm = " libat_cv_have_ifunc=no "
+EXTRA_OECONF:append:armeb = " libat_cv_have_ifunc=no "
-DISABLE_STATIC_class-nativesdk ?= ""
+DISABLE_STATIC:class-nativesdk ?= ""
# Newlib does not support symbol versioning on libsdtcc++
-SYMVERS_CONF_libc-newlib = ""
+SYMVERS_CONF:libc-newlib = ""
# Building with thumb enabled on armv6t fails
-ARM_INSTRUCTION_SET_armv6 = "arm"
+ARM_INSTRUCTION_SET:armv6 = "arm"
RUNTIMELIBITM = "libitm"
-RUNTIMELIBITM_arc = ""
-RUNTIMELIBITM_mipsarch = ""
-RUNTIMELIBITM_nios2 = ""
-RUNTIMELIBITM_microblaze = ""
-RUNTIMELIBITM_riscv32 = ""
-RUNTIMELIBITM_riscv64 = ""
+RUNTIMELIBITM:arc = ""
+RUNTIMELIBITM:mipsarch = ""
+RUNTIMELIBITM:nios2 = ""
+RUNTIMELIBITM:microblaze = ""
+RUNTIMELIBITM:riscv32 = ""
+RUNTIMELIBITM:riscv64 = ""
RUNTIMELIBSSP ?= ""
-RUNTIMELIBSSP_mingw32 ?= "libssp"
+RUNTIMELIBSSP:mingw32 ?= "libssp"
RUNTIMETARGET = "${RUNTIMELIBSSP} libstdc++-v3 libgomp libatomic ${RUNTIMELIBITM} \
${@bb.utils.contains_any('FORTRAN', [',fortran',',f77'], 'libquadmath', '', d)} \
"
# Only build libstdc++ for newlib
-RUNTIMETARGET_libc-newlib = "libstdc++-v3"
+RUNTIMETARGET:libc-newlib = "libstdc++-v3"
# libiberty
# libgfortran needs separate recipe due to libquadmath dependency
@@ -52,7 +52,7 @@ RUNTIMETARGET_libc-newlib = "libstdc++-v3"
# Relative path to be repaced into debug info
REL_S = "/usr/src/debug/${PN}/${EXTENDPE}${PV}-${PR}"
-DEBUG_PREFIX_MAP_class-target = " \
+DEBUG_PREFIX_MAP:class-target = " \
-fdebug-prefix-map=${WORKDIR}/recipe-sysroot= \
-fdebug-prefix-map=${WORKDIR}/recipe-sysroot-native= \
-fdebug-prefix-map=${S}=${REL_S} \
@@ -109,7 +109,7 @@ do_install () {
fi
}
-do_install_append_class-target () {
+do_install:append:class-target () {
if [ "${TARGET_OS}" = "linux-gnuspe" ]; then
ln -s ${TARGET_SYS} ${D}${includedir}/c++/${BINV}/${TARGET_ARCH}${TARGET_VENDOR}-linux
fi
@@ -186,67 +186,67 @@ PACKAGES = "\
libitm-staticdev \
"
# The base package doesn't exist, so we clear the recommends.
-RRECOMMENDS_${PN}-dbg = ""
+RRECOMMENDS:${PN}-dbg = ""
# include python debugging scripts
-FILES_${PN}-dbg += "\
+FILES:${PN}-dbg += "\
${libdir}/libstdc++.*-gdb.py \
${datadir}/gcc-${BINV}/python/libstdcxx \
"
-FILES_libg2c = "${target_libdir}/libg2c.so.*"
-SUMMARY_libg2c = "Companion runtime library for g77"
-FILES_libg2c-dev = "\
+FILES:libg2c = "${target_libdir}/libg2c.so.*"
+SUMMARY:libg2c = "Companion runtime library for g77"
+FILES:libg2c-dev = "\
${libdir}/libg2c.so \
${libdir}/libg2c.a \
${libdir}/libfrtbegin.a \
"
-SUMMARY_libg2c-dev = "Companion runtime library for g77 - development files"
+SUMMARY:libg2c-dev = "Companion runtime library for g77 - development files"
-FILES_libstdc++ = "${libdir}/libstdc++.so.*"
-SUMMARY_libstdc++ = "GNU standard C++ library"
-FILES_libstdc++-dev = "\
+FILES:libstdc++ = "${libdir}/libstdc++.so.*"
+SUMMARY:libstdc++ = "GNU standard C++ library"
+FILES:libstdc++-dev = "\
${includedir}/c++/ \
${libdir}/libstdc++.so \
${libdir}/libstdc++*.la \
${libdir}/libsupc++.la \
"
-SUMMARY_libstdc++-dev = "GNU standard C++ library - development files"
-FILES_libstdc++-staticdev = "\
+SUMMARY:libstdc++-dev = "GNU standard C++ library - development files"
+FILES:libstdc++-staticdev = "\
${libdir}/libstdc++*.a \
${libdir}/libsupc++.a \
"
-SUMMARY_libstdc++-staticdev = "GNU standard C++ library - static development files"
+SUMMARY:libstdc++-staticdev = "GNU standard C++ library - static development files"
-FILES_libstdc++-precompile-dev = "${includedir}/c++/${TARGET_SYS}/bits/*.gch"
-SUMMARY_libstdc++-precompile-dev = "GNU standard C++ library - precompiled header files"
+FILES:libstdc++-precompile-dev = "${includedir}/c++/${TARGET_SYS}/bits/*.gch"
+SUMMARY:libstdc++-precompile-dev = "GNU standard C++ library - precompiled header files"
-FILES_libssp = "${libdir}/libssp.so.*"
-SUMMARY_libssp = "GNU stack smashing protection library"
-FILES_libssp-dev = "\
+FILES:libssp = "${libdir}/libssp.so.*"
+SUMMARY:libssp = "GNU stack smashing protection library"
+FILES:libssp-dev = "\
${libdir}/libssp*.so \
${libdir}/libssp*_nonshared.a \
${libdir}/libssp*.la \
${libdir}/${TARGET_SYS}/${BINV}/include/ssp \
"
-SUMMARY_libssp-dev = "GNU stack smashing protection library - development files"
-FILES_libssp-staticdev = "${libdir}/libssp*.a"
-SUMMARY_libssp-staticdev = "GNU stack smashing protection library - static development files"
+SUMMARY:libssp-dev = "GNU stack smashing protection library - development files"
+FILES:libssp-staticdev = "${libdir}/libssp*.a"
+SUMMARY:libssp-staticdev = "GNU stack smashing protection library - static development files"
-FILES_libquadmath = "${libdir}/libquadmath*.so.*"
-SUMMARY_libquadmath = "GNU quad-precision math library"
-FILES_libquadmath-dev = "\
+FILES:libquadmath = "${libdir}/libquadmath*.so.*"
+SUMMARY:libquadmath = "GNU quad-precision math library"
+FILES:libquadmath-dev = "\
${libdir}/${TARGET_SYS}/${BINV}/include/quadmath* \
${libdir}/libquadmath*.so \
${libdir}/libquadmath.la \
"
-SUMMARY_libquadmath-dev = "GNU quad-precision math library - development files"
-FILES_libquadmath-staticdev = "${libdir}/libquadmath.a"
-SUMMARY_libquadmath-staticdev = "GNU quad-precision math library - static development files"
+SUMMARY:libquadmath-dev = "GNU quad-precision math library - development files"
+FILES:libquadmath-staticdev = "${libdir}/libquadmath.a"
+SUMMARY:libquadmath-staticdev = "GNU quad-precision math library - static development files"
-FILES_libgomp = "${libdir}/libgomp*${SOLIBS}"
-SUMMARY_libgomp = "GNU OpenMP parallel programming library"
-FILES_libgomp-dev = "\
+FILES:libgomp = "${libdir}/libgomp*${SOLIBS}"
+SUMMARY:libgomp = "GNU OpenMP parallel programming library"
+FILES:libgomp-dev = "\
${libdir}/libgomp*${SOLIBSDEV} \
${libdir}/libgomp*.la \
${libdir}/libgomp.spec \
@@ -254,34 +254,34 @@ FILES_libgomp-dev = "\
${libdir}/${TARGET_SYS}/${BINV}/include/omp.h \
${libdir}/${TARGET_SYS}/${BINV}/include/openacc.h \
"
-SUMMARY_libgomp-dev = "GNU OpenMP parallel programming library - development files"
-FILES_libgomp-staticdev = "${libdir}/libgomp*.a"
-SUMMARY_libgomp-staticdev = "GNU OpenMP parallel programming library - static development files"
+SUMMARY:libgomp-dev = "GNU OpenMP parallel programming library - development files"
+FILES:libgomp-staticdev = "${libdir}/libgomp*.a"
+SUMMARY:libgomp-staticdev = "GNU OpenMP parallel programming library - static development files"
-FILES_libatomic = "${libdir}/libatomic.so.*"
-SUMMARY_libatomic = "GNU C++11 atomics support library"
-FILES_libatomic-dev = "\
+FILES:libatomic = "${libdir}/libatomic.so.*"
+SUMMARY:libatomic = "GNU C++11 atomics support library"
+FILES:libatomic-dev = "\
${libdir}/libatomic.so \
${libdir}/libatomic.la \
"
-SUMMARY_libatomic-dev = "GNU C++11 atomics support library - development files"
-FILES_libatomic-staticdev = "${libdir}/libatomic.a"
-SUMMARY_libatomic-staticdev = "GNU C++11 atomics support library - static development files"
+SUMMARY:libatomic-dev = "GNU C++11 atomics support library - development files"
+FILES:libatomic-staticdev = "${libdir}/libatomic.a"
+SUMMARY:libatomic-staticdev = "GNU C++11 atomics support library - static development files"
-FILES_libitm = "${libdir}/libitm.so.*"
-SUMMARY_libitm = "GNU transactional memory support library"
-FILES_libitm-dev = "\
+FILES:libitm = "${libdir}/libitm.so.*"
+SUMMARY:libitm = "GNU transactional memory support library"
+FILES:libitm-dev = "\
${libdir}/libitm.so \
${libdir}/libitm.la \
${libdir}/libitm.spec \
"
-SUMMARY_libitm-dev = "GNU transactional memory support library - development files"
-FILES_libitm-staticdev = "${libdir}/libitm.a"
-SUMMARY_libitm-staticdev = "GNU transactional memory support library - static development files"
+SUMMARY:libitm-dev = "GNU transactional memory support library - development files"
+FILES:libitm-staticdev = "${libdir}/libitm.a"
+SUMMARY:libitm-staticdev = "GNU transactional memory support library - static development files"
require gcc-testsuite.inc
-EXTRA_OEMAKE_prepend_task-check = "${PARALLEL_MAKE} "
+EXTRA_OEMAKE:prepend:task-check = "${PARALLEL_MAKE} "
MAKE_CHECK_TARGETS ??= "check-gcc ${@" ".join("check-target-" + i for i in d.getVar("RUNTIMETARGET").split())}"
# prettyprinters and xmethods require gdb tooling
diff --git a/poky/meta/recipes-devtools/gcc/gcc-runtime_11.1.bb b/poky/meta/recipes-devtools/gcc/gcc-runtime_11.2.bb
index dd430b57e..dd430b57e 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-runtime_11.1.bb
+++ b/poky/meta/recipes-devtools/gcc/gcc-runtime_11.2.bb
diff --git a/poky/meta/recipes-devtools/gcc/gcc-sanitizers.inc b/poky/meta/recipes-devtools/gcc/gcc-sanitizers.inc
index 59e91daae..9881afa83 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-sanitizers.inc
+++ b/poky/meta/recipes-devtools/gcc/gcc-sanitizers.inc
@@ -47,11 +47,11 @@ do_install () {
}
INHIBIT_DEFAULT_DEPS = "1"
-ALLOW_EMPTY_${PN} = "1"
+ALLOW_EMPTY:${PN} = "1"
DEPENDS = "virtual/crypt gcc-runtime virtual/${TARGET_PREFIX}gcc"
# used to fix ../../../../../../../../../work-shared/gcc-8.3.0-r0/gcc-8.3.0/libsanitizer/libbacktrace/../../libbacktrace/elf.c:772:21: error: 'st.st_mode' may be used uninitialized in this function [-Werror=maybe-uninitialized]
-DEBUG_OPTIMIZATION_append = " -Wno-error"
+DEBUG_OPTIMIZATION:append = " -Wno-error"
BBCLASSEXTEND = "nativesdk"
@@ -60,19 +60,19 @@ PACKAGES += "libasan libubsan liblsan libtsan"
PACKAGES += "libasan-dev libubsan-dev liblsan-dev libtsan-dev"
PACKAGES += "libasan-staticdev libubsan-staticdev liblsan-staticdev libtsan-staticdev"
-RDEPENDS_libasan += "libstdc++"
-RDEPENDS_libubsan += "libstdc++"
-RDEPENDS_liblsan += "libstdc++"
-RDEPENDS_libtsan += "libstdc++"
-RDEPENDS_libasan-dev += "${PN}"
-RDEPENDS_libubsan-dev += "${PN}"
-RDEPENDS_liblsan-dev += "${PN}"
-RDEPENDS_libtsan-dev += "${PN}"
-RRECOMMENDS_${PN} += "libasan libubsan"
-RRECOMMENDS_${PN}_append_x86 = " liblsan"
-RRECOMMENDS_${PN}_append_x86-64 = " liblsan libtsan"
-RRECOMMENDS_${PN}_append_powerpc64 = " liblsan libtsan"
-RRECOMMENDS_${PN}_append_aarch64 = " liblsan libtsan"
+RDEPENDS:libasan += "libstdc++"
+RDEPENDS:libubsan += "libstdc++"
+RDEPENDS:liblsan += "libstdc++"
+RDEPENDS:libtsan += "libstdc++"
+RDEPENDS:libasan-dev += "${PN}"
+RDEPENDS:libubsan-dev += "${PN}"
+RDEPENDS:liblsan-dev += "${PN}"
+RDEPENDS:libtsan-dev += "${PN}"
+RRECOMMENDS:${PN} += "libasan libubsan"
+RRECOMMENDS:${PN}:append:x86 = " liblsan"
+RRECOMMENDS:${PN}:append:x86-64 = " liblsan libtsan"
+RRECOMMENDS:${PN}:append:powerpc64 = " liblsan libtsan"
+RRECOMMENDS:${PN}:append:aarch64 = " liblsan libtsan"
do_package_write_ipk[depends] += "virtual/${MLPREFIX}${TARGET_PREFIX}compilerlibs:do_packagedata"
do_package_write_deb[depends] += "virtual/${MLPREFIX}${TARGET_PREFIX}compilerlibs:do_packagedata"
@@ -81,40 +81,40 @@ do_package_write_rpm[depends] += "virtual/${MLPREFIX}${TARGET_PREFIX}compilerlib
# Only x86, powerpc, sparc, s390, arm, and aarch64 are supported
COMPATIBLE_HOST = '(x86_64|i.86|powerpc|sparc|s390|arm|aarch64).*-linux'
# musl is currently broken entirely
-COMPATIBLE_HOST_libc-musl = 'null'
+COMPATIBLE_HOST:libc-musl = 'null'
-FILES_libasan += "${libdir}/libasan.so.* ${libdir}/libhwasan.so.*"
-FILES_libasan-dev += "\
+FILES:libasan += "${libdir}/libasan.so.* ${libdir}/libhwasan.so.*"
+FILES:libasan-dev += "\
${libdir}/libasan_preinit.o \
${libdir}/libasan.so \
${libdir}/libhwasan.so \
${libdir}/libasan.la \
"
-FILES_libasan-staticdev += "${libdir}/libasan.a \
+FILES:libasan-staticdev += "${libdir}/libasan.a \
${libdir}/libhwasan.a \
"
-FILES_libubsan += "${libdir}/libubsan.so.*"
-FILES_libubsan-dev += "\
+FILES:libubsan += "${libdir}/libubsan.so.*"
+FILES:libubsan-dev += "\
${libdir}/libubsan.so \
${libdir}/libubsan.la \
"
-FILES_libubsan-staticdev += "${libdir}/libubsan.a"
+FILES:libubsan-staticdev += "${libdir}/libubsan.a"
-FILES_liblsan += "${libdir}/liblsan.so.*"
-FILES_liblsan-dev += "\
+FILES:liblsan += "${libdir}/liblsan.so.*"
+FILES:liblsan-dev += "\
${libdir}/liblsan.so \
${libdir}/liblsan.la \
${libdir}/liblsan_preinit.o \
"
-FILES_liblsan-staticdev += "${libdir}/liblsan.a"
+FILES:liblsan-staticdev += "${libdir}/liblsan.a"
-FILES_libtsan += "${libdir}/libtsan.so.*"
-FILES_libtsan-dev += "\
+FILES:libtsan += "${libdir}/libtsan.so.*"
+FILES:libtsan-dev += "\
${libdir}/libtsan.so \
${libdir}/libtsan.la \
${libdir}/libtsan_*.o \
"
-FILES_libtsan-staticdev += "${libdir}/libtsan.a"
+FILES:libtsan-staticdev += "${libdir}/libtsan.a"
-FILES_${PN} = "${libdir}/*.spec ${libdir}/${TARGET_SYS}/${BINV}/include/sanitizer/*.h"
+FILES:${PN} = "${libdir}/*.spec ${libdir}/${TARGET_SYS}/${BINV}/include/sanitizer/*.h"
diff --git a/poky/meta/recipes-devtools/gcc/gcc-sanitizers_11.1.bb b/poky/meta/recipes-devtools/gcc/gcc-sanitizers_11.2.bb
index f3c705811..8bda2ccad 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-sanitizers_11.1.bb
+++ b/poky/meta/recipes-devtools/gcc/gcc-sanitizers_11.2.bb
@@ -3,5 +3,5 @@ require gcc-sanitizers.inc
# Building with thumb enabled on armv4t armv5t fails with
# sanitizer_linux.s:5749: Error: lo register required -- `ldr ip,[sp],#8'
-ARM_INSTRUCTION_SET_armv4 = "arm"
-ARM_INSTRUCTION_SET_armv5 = "arm"
+ARM_INSTRUCTION_SET:armv4 = "arm"
+ARM_INSTRUCTION_SET:armv5 = "arm"
diff --git a/poky/meta/recipes-devtools/gcc/gcc-source_11.1.bb b/poky/meta/recipes-devtools/gcc/gcc-source_11.2.bb
index b890fa33e..b890fa33e 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-source_11.1.bb
+++ b/poky/meta/recipes-devtools/gcc/gcc-source_11.2.bb
diff --git a/poky/meta/recipes-devtools/gcc/gcc-target.inc b/poky/meta/recipes-devtools/gcc/gcc-target.inc
index 0ee3e83d4..bf55e692e 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-target.inc
+++ b/poky/meta/recipes-devtools/gcc/gcc-target.inc
@@ -5,7 +5,7 @@ EXTRA_OECONF_PATHS = "\
--with-build-sysroot=${STAGING_DIR_TARGET} \
"
-EXTRA_OECONF_append_linuxstdbase = " --enable-clocale=gnu"
+EXTRA_OECONF:append:linuxstdbase = " --enable-clocale=gnu"
# Configure gcc running on the target to default to an architecture which will
# be compatible with that of gcc-runtime (which is cross compiled to be target
@@ -15,11 +15,11 @@ EXTRA_OECONF_append_linuxstdbase = " --enable-clocale=gnu"
ARMFPARCHEXT ?= ""
-EXTRA_OECONF_append_armv6_class-target = " --with-arch=armv6${ARMFPARCHEXT}"
-EXTRA_OECONF_append_armv7a_class-target = " --with-arch=armv7-a${ARMFPARCHEXT}"
-EXTRA_OECONF_append_armv7ve_class-target = " --with-arch=armv7ve${ARMFPARCHEXT}"
-EXTRA_OECONF_append_arc_class-target = " --with-cpu=${TUNE_PKGARCH}"
-EXTRA_OECONF_append_x86-64_class-target = " --with-arch=native"
+EXTRA_OECONF:append:armv6:class-target = " --with-arch=armv6${ARMFPARCHEXT}"
+EXTRA_OECONF:append:armv7a:class-target = " --with-arch=armv7-a${ARMFPARCHEXT}"
+EXTRA_OECONF:append:armv7ve:class-target = " --with-arch=armv7ve${ARMFPARCHEXT}"
+EXTRA_OECONF:append:arc:class-target = " --with-cpu=${TUNE_PKGARCH}"
+EXTRA_OECONF:append:x86-64:class-target = " --with-arch=native"
# libcc1 requres gcc_cv_objdump when cross build, but gcc_cv_objdump is
# set in subdir gcc, so subdir libcc1 can't use it, export it here to
@@ -40,7 +40,7 @@ PACKAGES = "\
${PN}-dbg \
"
-FILES_${PN} = "\
+FILES:${PN} = "\
${bindir}/${TARGET_PREFIX}gcc* \
${bindir}/${TARGET_PREFIX}lto* \
${libexecdir}/gcc/${TARGET_SYS}/${BINV}/collect2* \
@@ -56,85 +56,85 @@ FILES_${PN} = "\
${gcclibdir}/${TARGET_SYS}/${BINV}/include-fixed \
${libdir}/bfd-plugins/*.so \
"
-INSANE_SKIP_${PN} += "dev-so"
-RRECOMMENDS_${PN} += "\
+INSANE_SKIP:${PN} += "dev-so"
+RRECOMMENDS:${PN} += "\
libssp \
libssp-dev \
"
-RDEPENDS_${PN} += "cpp"
+RDEPENDS:${PN} += "cpp"
-FILES_${PN}-dev = "\
+FILES:${PN}-dev = "\
${gcclibdir}/${TARGET_SYS}/${BINV}/lib*${SOLIBSDEV} \
${libexecdir}/gcc/${TARGET_SYS}/${BINV}/lib*${SOLIBSDEV} \
${gcclibdir}/${TARGET_SYS}/${BINV}/plugin/include/ \
${libexecdir}/gcc/${TARGET_SYS}/${BINV}/plugin/gengtype \
${gcclibdir}/${TARGET_SYS}/${BINV}/plugin/gtype.state \
"
-FILES_${PN}-symlinks = "\
+FILES:${PN}-symlinks = "\
${bindir}/cc \
${bindir}/gcc \
${bindir}/gccbug \
"
-FILES_${PN}-plugins = "\
+FILES:${PN}-plugins = "\
${gcclibdir}/${TARGET_SYS}/${BINV}/plugin \
"
-ALLOW_EMPTY_${PN}-plugins = "1"
+ALLOW_EMPTY:${PN}-plugins = "1"
-FILES_g77 = "\
+FILES:g77 = "\
${bindir}/${TARGET_PREFIX}g77 \
${libexecdir}/gcc/${TARGET_SYS}/${BINV}/f771 \
"
-FILES_g77-symlinks = "\
+FILES:g77-symlinks = "\
${bindir}/g77 \
${bindir}/f77 \
"
-RRECOMMENDS_g77 = "\
+RRECOMMENDS:g77 = "\
libg2c \
libg2c-dev \
"
-FILES_gfortran = "\
+FILES:gfortran = "\
${bindir}/${TARGET_PREFIX}gfortran \
${libexecdir}/gcc/${TARGET_SYS}/${BINV}/f951 \
"
-RRECOMMENDS_gfortran = "\
+RRECOMMENDS:gfortran = "\
libquadmath \
libquadmath-dev \
"
-FILES_gfortran-symlinks = "\
+FILES:gfortran-symlinks = "\
${bindir}/gfortran \
${bindir}/f95"
-FILES_cpp = "\
+FILES:cpp = "\
${bindir}/${TARGET_PREFIX}cpp* \
${base_libdir}/cpp \
${libexecdir}/gcc/${TARGET_SYS}/${BINV}/cc1"
-FILES_cpp-symlinks = "${bindir}/cpp"
+FILES:cpp-symlinks = "${bindir}/cpp"
-FILES_gcov = "${bindir}/${TARGET_PREFIX}gcov* \
+FILES:gcov = "${bindir}/${TARGET_PREFIX}gcov* \
${bindir}/${TARGET_PREFIX}gcov-tool* \
"
-FILES_gcov-symlinks = "${bindir}/gcov \
+FILES:gcov-symlinks = "${bindir}/gcov \
${bindir}/gcov-tool \
"
-FILES_g++ = "\
+FILES:g++ = "\
${bindir}/${TARGET_PREFIX}g++* \
${libexecdir}/gcc/${TARGET_SYS}/${BINV}/cc1plus \
"
-FILES_g++-symlinks = "\
+FILES:g++-symlinks = "\
${bindir}/c++ \
${bindir}/g++ \
"
-RRECOMMENDS_g++ = "\
+RRECOMMENDS:g++ = "\
libstdc++ \
libstdc++-dev \
libatomic \
libatomic-dev \
"
-FILES_${PN}-doc = "\
+FILES:${PN}-doc = "\
${infodir} \
${mandir} \
${gcclibdir}/${TARGET_SYS}/${BINV}/include/README \
@@ -221,7 +221,7 @@ do_install () {
chown -R root:root ${D}
}
-do_install_append () {
+do_install:append () {
#
# Thefixinc.sh script, run on the gcc's compile phase, looks into sysroot header
# files and places the modified files into
diff --git a/poky/meta/recipes-devtools/gcc/gcc/0001-libstdc-Fix-installation-of-python-hooks-PR-99453.patch b/poky/meta/recipes-devtools/gcc/gcc/0001-libstdc-Fix-installation-of-python-hooks-PR-99453.patch
deleted file mode 100644
index d82f533cb..000000000
--- a/poky/meta/recipes-devtools/gcc/gcc/0001-libstdc-Fix-installation-of-python-hooks-PR-99453.patch
+++ /dev/null
@@ -1,57 +0,0 @@
-Upstream-Status: Backport
-Signed-off-by: Ross Burton <ross.burton@arm.com>
-
-From ad4c21f0f59b52357019148ec94d767aa2acd8f2 Mon Sep 17 00:00:00 2001
-From: Jonathan Wakely <jwakely@redhat.com>
-Date: Tue, 1 Jun 2021 11:00:16 +0100
-Subject: [PATCH] libstdc++: Fix installation of python hooks [PR 99453]
-
-When no shared library is installed, the new code to determine the name
-of the -gdb.py file yields an empty string. Use the name of the static
-library in that case.
-
-libstdc++-v3/ChangeLog:
-
- PR libstdc++/99453
- * python/Makefile.am: Use archive name for printer hook if no
- dynamic library name is available.
- * python/Makefile.in: Regenerate.
-
-(cherry picked from commit 9f7bc160b4a0f27dce248d1226e3ae7104b0e67b)
----
- libstdc++-v3/python/Makefile.am | 4 ++++
- libstdc++-v3/python/Makefile.in | 4 ++++
- 2 files changed, 8 insertions(+)
-
-diff --git a/libstdc++-v3/python/Makefile.am b/libstdc++-v3/python/Makefile.am
-index 0c2b207b86e..8efefa5725c 100644
---- a/libstdc++-v3/python/Makefile.am
-+++ b/libstdc++-v3/python/Makefile.am
-@@ -48,5 +48,9 @@ install-data-local: gdb.py
- ## the correct name.
- @libname=`sed -ne "/^library_names=/{s/.*='//;s/'$$//;s/ .*//;p;}" \
- $(DESTDIR)$(toolexeclibdir)/libstdc++.la`; \
-+ if [ -z "$$libname" ]; then \
-+ libname=`sed -ne "/^old_library=/{s/.*='//;s/'$$//;s/ .*//;p;}" \
-+ $(DESTDIR)$(toolexeclibdir)/libstdc++.la`; \
-+ fi; \
- echo " $(INSTALL_DATA) gdb.py $(DESTDIR)$(toolexeclibdir)/$$libname-gdb.py"; \
- $(INSTALL_DATA) gdb.py $(DESTDIR)$(toolexeclibdir)/$$libname-gdb.py
-diff --git a/libstdc++-v3/python/Makefile.in b/libstdc++-v3/python/Makefile.in
-index 2efe0b96a19..9904a9197de 100644
---- a/libstdc++-v3/python/Makefile.in
-+++ b/libstdc++-v3/python/Makefile.in
-@@ -609,6 +609,10 @@ install-data-local: gdb.py
- @$(mkdir_p) $(DESTDIR)$(toolexeclibdir)
- @libname=`sed -ne "/^library_names=/{s/.*='//;s/'$$//;s/ .*//;p;}" \
- $(DESTDIR)$(toolexeclibdir)/libstdc++.la`; \
-+ if [ -z "$$libname" ]; then \
-+ libname=`sed -ne "/^old_library=/{s/.*='//;s/'$$//;s/ .*//;p;}" \
-+ $(DESTDIR)$(toolexeclibdir)/libstdc++.la`; \
-+ fi; \
- echo " $(INSTALL_DATA) gdb.py $(DESTDIR)$(toolexeclibdir)/$$libname-gdb.py"; \
- $(INSTALL_DATA) gdb.py $(DESTDIR)$(toolexeclibdir)/$$libname-gdb.py
-
---
-2.25.1
-
diff --git a/poky/meta/recipes-devtools/gcc/gcc/0038-arc-Update-64bit-move-split-patterns.patch b/poky/meta/recipes-devtools/gcc/gcc/0038-arc-Update-64bit-move-split-patterns.patch
deleted file mode 100644
index 37fe95d71..000000000
--- a/poky/meta/recipes-devtools/gcc/gcc/0038-arc-Update-64bit-move-split-patterns.patch
+++ /dev/null
@@ -1,290 +0,0 @@
-From 0061fabeb9393c362601486105202cfe837a5a68 Mon Sep 17 00:00:00 2001
-From: Claudiu Zissulescu <claziss@synopsys.com>
-Date: Wed, 9 Jun 2021 12:12:57 +0300
-Subject: [PATCH] arc: Update 64bit move split patterns.
-
-ARCv2HS can use a limited number of instructions to implement 64bit
-moves. The VADD2 is used as a 64bit move, the LDD/STD are 64 bit loads
-and stores. All those instructions are not baseline, hence we need to
-provide alternatives when they are not available or cannot be generate
-due to instruction restriction.
-
-This patch is cleaning up those move patterns, and updates splits
-instruction lengths.
-
-This is a backport from mainline gcc.
-
-gcc/
-2021-06-09 Claudiu Zissulescu <claziss@synopsys.com>
-
- * config/arc/arc-protos.h (arc_split_move_p): New prototype.
- * config/arc/arc.c (arc_split_move_p): New function.
- (arc_split_move): Clean up.
- * config/arc/arc.md (movdi_insn): Clean up, use arc_split_move_p.
- (movdf_insn): Likewise.
- * config/arc/simdext.md (mov<VWH>_insn): Likewise.
-
-Upstream-Status: Backport [https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=0061fabeb9393c362601486105202cfe837a5a68]
-
-Signed-off-by: Claudiu Zissulescu <claziss@synopsys.com>
-(cherry picked from commit c0ba7a8af5366c37241f20e8be41e362f7260389)
-Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
----
- gcc/config/arc/arc-protos.h | 1 +
- gcc/config/arc/arc.c | 44 ++++++++++++----------
- gcc/config/arc/arc.md | 91 +++++++++------------------------------------
- gcc/config/arc/simdext.md | 38 ++++---------------
- 4 files changed, 52 insertions(+), 122 deletions(-)
-
-diff --git a/gcc/config/arc/arc-protos.h b/gcc/config/arc/arc-protos.h
-index 1f56a0d82e4..62d7e45d29d 100644
---- a/gcc/config/arc/arc-protos.h
-+++ b/gcc/config/arc/arc-protos.h
-@@ -50,6 +50,7 @@ extern void arc_split_ior (rtx *);
- extern bool arc_check_mov_const (HOST_WIDE_INT );
- extern bool arc_split_mov_const (rtx *);
- extern bool arc_can_use_return_insn (void);
-+extern bool arc_split_move_p (rtx *);
- #endif /* RTX_CODE */
-
- extern bool arc_ccfsm_branch_deleted_p (void);
-diff --git a/gcc/config/arc/arc.c b/gcc/config/arc/arc.c
-index 3201c3fefd7..db541bc11f5 100644
---- a/gcc/config/arc/arc.c
-+++ b/gcc/config/arc/arc.c
-@@ -10129,6 +10129,31 @@ arc_process_double_reg_moves (rtx *operands)
- return true;
- }
-
-+
-+/* Check if we need to split a 64bit move. We do not need to split it if we can
-+ use vadd2 or ldd/std instructions. */
-+
-+bool
-+arc_split_move_p (rtx *operands)
-+{
-+ machine_mode mode = GET_MODE (operands[0]);
-+
-+ if (TARGET_LL64
-+ && ((memory_operand (operands[0], mode)
-+ && (even_register_operand (operands[1], mode)
-+ || satisfies_constraint_Cm3 (operands[1])))
-+ || (memory_operand (operands[1], mode)
-+ && even_register_operand (operands[0], mode))))
-+ return false;
-+
-+ if (TARGET_PLUS_QMACW
-+ && even_register_operand (operands[0], mode)
-+ && even_register_operand (operands[1], mode))
-+ return false;
-+
-+ return true;
-+}
-+
- /* operands 0..1 are the operands of a 64 bit move instruction.
- split it into two moves with operands 2/3 and 4/5. */
-
-@@ -10146,25 +10171,6 @@ arc_split_move (rtx *operands)
- return;
- }
-
-- if (TARGET_LL64
-- && ((memory_operand (operands[0], mode)
-- && (even_register_operand (operands[1], mode)
-- || satisfies_constraint_Cm3 (operands[1])))
-- || (memory_operand (operands[1], mode)
-- && even_register_operand (operands[0], mode))))
-- {
-- emit_move_insn (operands[0], operands[1]);
-- return;
-- }
--
-- if (TARGET_PLUS_QMACW
-- && even_register_operand (operands[0], mode)
-- && even_register_operand (operands[1], mode))
-- {
-- emit_move_insn (operands[0], operands[1]);
-- return;
-- }
--
- if (TARGET_PLUS_QMACW
- && GET_CODE (operands[1]) == CONST_VECTOR)
- {
-diff --git a/gcc/config/arc/arc.md b/gcc/config/arc/arc.md
-index 7a52551eef5..91a838a38e4 100644
---- a/gcc/config/arc/arc.md
-+++ b/gcc/config/arc/arc.md
-@@ -1329,47 +1329,20 @@ core_3, archs4x, archs4xd, archs4xd_slow"
- "register_operand (operands[0], DImode)
- || register_operand (operands[1], DImode)
- || (satisfies_constraint_Cm3 (operands[1])
-- && memory_operand (operands[0], DImode))"
-- "*
--{
-- switch (which_alternative)
-- {
-- default:
-- return \"#\";
--
-- case 0:
-- if (TARGET_PLUS_QMACW
-- && even_register_operand (operands[0], DImode)
-- && even_register_operand (operands[1], DImode))
-- return \"vadd2%?\\t%0,%1,0\";
-- return \"#\";
--
-- case 2:
-- if (TARGET_LL64
-- && memory_operand (operands[1], DImode)
-- && even_register_operand (operands[0], DImode))
-- return \"ldd%U1%V1 %0,%1%&\";
-- return \"#\";
--
-- case 3:
-- if (TARGET_LL64
-- && memory_operand (operands[0], DImode)
-- && (even_register_operand (operands[1], DImode)
-- || satisfies_constraint_Cm3 (operands[1])))
-- return \"std%U0%V0 %1,%0\";
-- return \"#\";
-- }
--}"
-- "&& reload_completed"
-+ && memory_operand (operands[0], DImode))"
-+ "@
-+ vadd2\\t%0,%1,0
-+ #
-+ ldd%U1%V1\\t%0,%1
-+ std%U0%V0\\t%1,%0"
-+ "&& reload_completed && arc_split_move_p (operands)"
- [(const_int 0)]
- {
- arc_split_move (operands);
- DONE;
- }
- [(set_attr "type" "move,move,load,store")
-- ;; ??? The ld/st values could be 4 if it's [reg,bignum].
-- (set_attr "length" "8,16,*,*")])
--
-+ (set_attr "length" "8,16,16,16")])
-
- ;; Floating point move insns.
-
-@@ -1408,50 +1381,22 @@ core_3, archs4x, archs4xd, archs4xd_slow"
- (define_insn_and_split "*movdf_insn"
- [(set (match_operand:DF 0 "move_dest_operand" "=D,r,r,r,r,m")
- (match_operand:DF 1 "move_double_src_operand" "r,D,r,E,m,r"))]
-- "register_operand (operands[0], DFmode)
-- || register_operand (operands[1], DFmode)"
-- "*
--{
-- switch (which_alternative)
-- {
-- default:
-- return \"#\";
--
-- case 2:
-- if (TARGET_PLUS_QMACW
-- && even_register_operand (operands[0], DFmode)
-- && even_register_operand (operands[1], DFmode))
-- return \"vadd2%?\\t%0,%1,0\";
-- return \"#\";
--
-- case 4:
-- if (TARGET_LL64
-- && ((even_register_operand (operands[0], DFmode)
-- && memory_operand (operands[1], DFmode))
-- || (memory_operand (operands[0], DFmode)
-- && even_register_operand (operands[1], DFmode))))
-- return \"ldd%U1%V1 %0,%1%&\";
-- return \"#\";
--
-- case 5:
-- if (TARGET_LL64
-- && ((even_register_operand (operands[0], DFmode)
-- && memory_operand (operands[1], DFmode))
-- || (memory_operand (operands[0], DFmode)
-- && even_register_operand (operands[1], DFmode))))
-- return \"std%U0%V0 %1,%0\";
-- return \"#\";
-- }
--}"
-- "reload_completed"
-+ "(register_operand (operands[0], DFmode)
-+ || register_operand (operands[1], DFmode))"
-+ "@
-+ #
-+ #
-+ vadd2\\t%0,%1,0
-+ #
-+ ldd%U1%V1\\t%0,%1
-+ std%U0%V0\\t%1,%0"
-+ "&& reload_completed && arc_split_move_p (operands)"
- [(const_int 0)]
- {
- arc_split_move (operands);
- DONE;
- }
- [(set_attr "type" "move,move,move,move,load,store")
-- (set_attr "predicable" "no,no,no,yes,no,no")
-- ;; ??? The ld/st values could be 16 if it's [reg,bignum].
- (set_attr "length" "4,16,8,16,16,16")])
-
- (define_insn_and_split "*movdf_insn_nolrsr"
-diff --git a/gcc/config/arc/simdext.md b/gcc/config/arc/simdext.md
-index f0900757452..36f41a5c3d0 100644
---- a/gcc/config/arc/simdext.md
-+++ b/gcc/config/arc/simdext.md
-@@ -1402,41 +1402,19 @@
- (match_operand:VWH 1 "general_operand" "i,r,m,r"))]
- "(register_operand (operands[0], <MODE>mode)
- || register_operand (operands[1], <MODE>mode))"
-- "*
--{
-- switch (which_alternative)
-- {
-- default:
-- return \"#\";
--
-- case 1:
-- if (TARGET_PLUS_QMACW
-- && even_register_operand (operands[0], <MODE>mode)
-- && even_register_operand (operands[1], <MODE>mode))
-- return \"vadd2%?\\t%0,%1,0\";
-- return \"#\";
--
-- case 2:
-- if (TARGET_LL64)
-- return \"ldd%U1%V1 %0,%1\";
-- return \"#\";
--
-- case 3:
-- if (TARGET_LL64)
-- return \"std%U0%V0 %1,%0\";
-- return \"#\";
-- }
--}"
-- "reload_completed"
-+ "@
-+ #
-+ vadd2\\t%0,%1,0
-+ ldd%U1%V1\\t%0,%1
-+ std%U0%V0\\t%1,%0"
-+ "&& reload_completed && arc_split_move_p (operands)"
- [(const_int 0)]
- {
- arc_split_move (operands);
- DONE;
- }
-- [(set_attr "type" "move,multi,load,store")
-- (set_attr "predicable" "no,no,no,no")
-- (set_attr "iscompact" "false,false,false,false")
-- ])
-+ [(set_attr "type" "move,move,load,store")
-+ (set_attr "length" "16,8,16,16")])
-
- (define_expand "movmisalign<mode>"
- [(set (match_operand:VWH 0 "general_operand" "")
---
-2.16.2
-
diff --git a/poky/meta/recipes-devtools/gcc/gcc/0039-arc-Fix-u-maddhisi-patterns.patch b/poky/meta/recipes-devtools/gcc/gcc/0039-arc-Fix-u-maddhisi-patterns.patch
deleted file mode 100644
index 9c5a2b8b3..000000000
--- a/poky/meta/recipes-devtools/gcc/gcc/0039-arc-Fix-u-maddhisi-patterns.patch
+++ /dev/null
@@ -1,127 +0,0 @@
-From 4186b7e93be73f8d68dc0fcc00a4cc8cc83e99a8 Mon Sep 17 00:00:00 2001
-From: Claudiu Zissulescu <claziss@synopsys.com>
-Date: Wed, 9 Jun 2021 12:12:57 +0300
-Subject: [PATCH] arc: Fix (u)maddhisi patterns
-
-Rework the (u)maddhisi4 patterns and use VMAC2H(U) instruction instead
-of the 64bit MAC(U) instruction.
-This fixes the next execute.exp failures:
- arith-rand-ll.c -O2 execution test
- arith-rand-ll.c -O3 execution test
- pr78726.c -O2 execution test
- pr78726.c -O3 execution test
-
-gcc/
-2021-06-09 Claudiu Zissulescu <claziss@synopsys.com>
-
- * config/arc/arc.md (maddhisi4): Use VMAC2H instruction.
- (machi): New pattern.
- (umaddhisi4): Use VMAC2HU instruction.
- (umachi): New pattern.
-
-Upstream-Status: Backport [https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=4186b7e93be73f8d68dc0fcc00a4cc8cc83e99a8]
-
-Signed-off-by: Claudiu Zissulescu <claziss@synopsys.com>
-(cherry picked from commit dd4778a59b4693777c732075021375e19eee6a76)
-Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
----
- gcc/config/arc/arc.md | 66 ++++++++++++++++++++++++++++++++-------------------
- 1 file changed, 41 insertions(+), 25 deletions(-)
-
-diff --git a/gcc/config/arc/arc.md b/gcc/config/arc/arc.md
-index 91a838a38e4..2a7e087ff72 100644
---- a/gcc/config/arc/arc.md
-+++ b/gcc/config/arc/arc.md
-@@ -6053,48 +6053,64 @@ core_3, archs4x, archs4xd, archs4xd_slow"
-
- ;; MAC and DMPY instructions
-
--; Use MAC instruction to emulate 16bit mac.
-+; Use VMAC2H(U) instruction to emulate scalar 16bit mac.
- (define_expand "maddhisi4"
- [(match_operand:SI 0 "register_operand" "")
- (match_operand:HI 1 "register_operand" "")
- (match_operand:HI 2 "extend_operand" "")
- (match_operand:SI 3 "register_operand" "")]
-- "TARGET_PLUS_DMPY"
-+ "TARGET_PLUS_MACD"
- "{
-- rtx acc_reg = gen_rtx_REG (DImode, ACC_REG_FIRST);
-- rtx tmp1 = gen_reg_rtx (SImode);
-- rtx tmp2 = gen_reg_rtx (SImode);
-- rtx accl = gen_lowpart (SImode, acc_reg);
--
-- emit_move_insn (accl, operands[3]);
-- emit_insn (gen_rtx_SET (tmp1, gen_rtx_SIGN_EXTEND (SImode, operands[1])));
-- emit_insn (gen_rtx_SET (tmp2, gen_rtx_SIGN_EXTEND (SImode, operands[2])));
-- emit_insn (gen_mac (tmp1, tmp2));
-- emit_move_insn (operands[0], accl);
-+ rtx acc_reg = gen_rtx_REG (SImode, ACC_REG_FIRST);
-+
-+ emit_move_insn (acc_reg, operands[3]);
-+ emit_insn (gen_machi (operands[1], operands[2]));
-+ emit_move_insn (operands[0], acc_reg);
- DONE;
- }")
-
--; The same for the unsigned variant, but using MACU instruction.
-+(define_insn "machi"
-+ [(set (reg:SI ARCV2_ACC)
-+ (plus:SI
-+ (mult:SI (sign_extend:SI (match_operand:HI 0 "register_operand" "%r"))
-+ (sign_extend:SI (match_operand:HI 1 "register_operand" "r")))
-+ (reg:SI ARCV2_ACC)))]
-+ "TARGET_PLUS_MACD"
-+ "vmac2h\\t0,%0,%1"
-+ [(set_attr "length" "4")
-+ (set_attr "type" "multi")
-+ (set_attr "predicable" "no")
-+ (set_attr "cond" "nocond")])
-+
-+; The same for the unsigned variant, but using VMAC2HU instruction.
- (define_expand "umaddhisi4"
- [(match_operand:SI 0 "register_operand" "")
- (match_operand:HI 1 "register_operand" "")
-- (match_operand:HI 2 "extend_operand" "")
-+ (match_operand:HI 2 "register_operand" "")
- (match_operand:SI 3 "register_operand" "")]
-- "TARGET_PLUS_DMPY"
-+ "TARGET_PLUS_MACD"
- "{
-- rtx acc_reg = gen_rtx_REG (DImode, ACC_REG_FIRST);
-- rtx tmp1 = gen_reg_rtx (SImode);
-- rtx tmp2 = gen_reg_rtx (SImode);
-- rtx accl = gen_lowpart (SImode, acc_reg);
--
-- emit_move_insn (accl, operands[3]);
-- emit_insn (gen_rtx_SET (tmp1, gen_rtx_ZERO_EXTEND (SImode, operands[1])));
-- emit_insn (gen_rtx_SET (tmp2, gen_rtx_ZERO_EXTEND (SImode, operands[2])));
-- emit_insn (gen_macu (tmp1, tmp2));
-- emit_move_insn (operands[0], accl);
-+ rtx acc_reg = gen_rtx_REG (SImode, ACC_REG_FIRST);
-+
-+ emit_move_insn (acc_reg, operands[3]);
-+ emit_insn (gen_umachi (operands[1], operands[2]));
-+ emit_move_insn (operands[0], acc_reg);
- DONE;
- }")
-
-+(define_insn "umachi"
-+ [(set (reg:SI ARCV2_ACC)
-+ (plus:SI
-+ (mult:SI (zero_extend:SI (match_operand:HI 0 "register_operand" "%r"))
-+ (zero_extend:SI (match_operand:HI 1 "register_operand" "r")))
-+ (reg:SI ARCV2_ACC)))]
-+ "TARGET_PLUS_MACD"
-+ "vmac2hu\\t0,%0,%1"
-+ [(set_attr "length" "4")
-+ (set_attr "type" "multi")
-+ (set_attr "predicable" "no")
-+ (set_attr "cond" "nocond")])
-+
- (define_expand "maddsidi4"
- [(match_operand:DI 0 "register_operand" "")
- (match_operand:SI 1 "register_operand" "")
---
-2.16.2
-
diff --git a/poky/meta/recipes-devtools/gcc/gcc/0040-arc-Update-doloop_end-patterns.patch b/poky/meta/recipes-devtools/gcc/gcc/0040-arc-Update-doloop_end-patterns.patch
deleted file mode 100644
index 5f0bf8df8..000000000
--- a/poky/meta/recipes-devtools/gcc/gcc/0040-arc-Update-doloop_end-patterns.patch
+++ /dev/null
@@ -1,105 +0,0 @@
-From 5a9b6a004f89fdd95b0470e1324dc4dee8c41d24 Mon Sep 17 00:00:00 2001
-From: Claudiu Zissulescu <claziss@synopsys.com>
-Date: Wed, 9 Jun 2021 12:12:57 +0300
-Subject: [PATCH] arc: Update doloop_end patterns
-
-ARC processor can use LP instruction to implement zero overlay loops.
-The current inplementation doesn't handle the unlikely situation when
-the loop iterator is located in memory. Refurbish the loop_end insn
-pattern into a define_insn_and_split pattern.
-
-gcc/
-2021-07-09 Claudiu Zissulescu <claziss@synopsys.com>
-
- * config/arc/arc.md (loop_end): Change it to
- define_insn_and_split.
-
-Upstream-Status: Backport [https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=5a9b6a004f89fdd95b0470e1324dc4dee8c41d24]
-
-Signed-off-by: Claudiu Zissulescu <claziss@synopsys.com>
-(cherry picked from commit 174e75a210753b68de0f2c398a13ace0f512e35b)
-Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
----
- gcc/config/arc/arc.md | 46 ++++++++++++++++++++--------------------------
- 1 file changed, 20 insertions(+), 26 deletions(-)
-
-diff --git a/gcc/config/arc/arc.md b/gcc/config/arc/arc.md
-index 2a7e087ff72..d704044c13f 100644
---- a/gcc/config/arc/arc.md
-+++ b/gcc/config/arc/arc.md
-@@ -4986,7 +4986,7 @@ core_3, archs4x, archs4xd, archs4xd_slow"
- (define_expand "doloop_end"
- [(parallel [(set (pc)
- (if_then_else
-- (ne (match_operand 0 "" "")
-+ (ne (match_operand 0 "nonimmediate_operand")
- (const_int 1))
- (label_ref (match_operand 1 "" ""))
- (pc)))
-@@ -5012,44 +5012,38 @@ core_3, archs4x, archs4xd, archs4xd_slow"
-
- ;; if by any chance the lp_count is not used, then use an 'r'
- ;; register, instead of going to memory.
--(define_insn "loop_end"
-- [(set (pc)
-- (if_then_else (ne (match_operand:SI 2 "nonimmediate_operand" "0,m")
-- (const_int 1))
-- (label_ref (match_operand 1 "" ""))
-- (pc)))
-- (set (match_operand:SI 0 "nonimmediate_operand" "=r,m")
-- (plus (match_dup 2) (const_int -1)))
-- (unspec [(const_int 0)] UNSPEC_ARC_LP)
-- (clobber (match_scratch:SI 3 "=X,&r"))]
-- ""
-- "; ZOL_END, begins @%l1"
-- [(set_attr "length" "0")
-- (set_attr "predicable" "no")
-- (set_attr "type" "loop_end")])
--
- ;; split pattern for the very slim chance when the loop register is
- ;; memory.
--(define_split
-+(define_insn_and_split "loop_end"
- [(set (pc)
-- (if_then_else (ne (match_operand:SI 0 "memory_operand")
-+ (if_then_else (ne (match_operand:SI 0 "nonimmediate_operand" "+r,!m")
- (const_int 1))
-- (label_ref (match_operand 1 ""))
-+ (label_ref (match_operand 1 "" ""))
- (pc)))
- (set (match_dup 0) (plus (match_dup 0) (const_int -1)))
- (unspec [(const_int 0)] UNSPEC_ARC_LP)
-- (clobber (match_scratch:SI 2))]
-- "memory_operand (operands[0], SImode)"
-+ (clobber (match_scratch:SI 2 "=X,&r"))]
-+ ""
-+ "@
-+ ; ZOL_END, begins @%l1
-+ #"
-+ "reload_completed && memory_operand (operands[0], Pmode)"
- [(set (match_dup 2) (match_dup 0))
-- (set (match_dup 2) (plus:SI (match_dup 2) (const_int -1)))
-+ (parallel
-+ [(set (reg:CC_ZN CC_REG)
-+ (compare:CC_ZN (plus:SI (match_dup 2) (const_int -1))
-+ (const_int 0)))
-+ (set (match_dup 2) (plus:SI (match_dup 2) (const_int -1)))])
- (set (match_dup 0) (match_dup 2))
-- (set (reg:CC CC_REG) (compare:CC (match_dup 2) (const_int 0)))
- (set (pc)
-- (if_then_else (ne (reg:CC CC_REG)
-+ (if_then_else (ne (reg:CC_ZN CC_REG)
- (const_int 0))
- (label_ref (match_dup 1))
- (pc)))]
-- "")
-+ ""
-+ [(set_attr "length" "0,24")
-+ (set_attr "predicable" "no")
-+ (set_attr "type" "loop_end")])
-
- (define_insn "loop_fail"
- [(set (reg:SI LP_COUNT)
---
-2.16.2
-
diff --git a/poky/meta/recipes-devtools/gcc/gcc/0041-apply-debug-prefix-maps-before-checksumming-DIEs.patch b/poky/meta/recipes-devtools/gcc/gcc/0041-apply-debug-prefix-maps-before-checksumming-DIEs.patch
new file mode 100644
index 000000000..c8dcd74b9
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc/0041-apply-debug-prefix-maps-before-checksumming-DIEs.patch
@@ -0,0 +1,95 @@
+From 7cc2df084b7977653a9b59cbc34a9ad500ae619c Mon Sep 17 00:00:00 2001
+From: Richard Biener <rguenther@suse.de>
+Date: Tue, 20 Jul 2021 11:00:33 +0200
+Subject: [PATCH] debug/101473 - apply debug prefix maps before checksumming DIEs
+
+The following makes sure to apply the debug prefix maps to filenames
+before checksumming DIEs to create the global symbol for the CU DIE
+used by LTO to link the late debug to the early debug. This avoids
+binary differences (in said symbol) when compiling with toolchains
+installed under a different path and that compensated with appropriate
+-fdebug-prefix-map options.
+
+The easiest and most scalable way is to record both the unmapped
+and the remapped filename in the dwarf_file_data so the remapping
+process takes place at a single point and only once (otherwise it
+creates GC garbage at each point doing that).
+
+2021-07-20 Richard Biener <rguenther@suse.de>
+
+ PR debug/101473
+ * dwarf2out.h (dwarf_file_data): Add key member.
+ * dwarf2out.c (dwarf_file_hasher::equal): Compare key.
+ (dwarf_file_hasher::hash): Hash key.
+ (lookup_filename): Remap the filename and store it in the
+ filename member of dwarf_file_data when creating a new
+ dwarf_file_data.
+ (file_name_acquire): Do not remap the filename again.
+ (maybe_emit_file): Likewise.
+
+[YOCTO #14481]
+
+Upstream-Status: Backport [https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=7cc2df084b7977653a9b59cbc34a9ad500ae619c]
+
+The upstream patch was modified to compensate for the definition of
+"struct dwarf_file_data" being in dwarf2out.c rather than dwarf2out.h in
+this version of gcc.
+
+Signed-off-by: Tony Battersby <tonyb@cybernetics.com>
+---
+diff -urpN a/gcc/dwarf2out.c b/gcc/dwarf2out.c
+--- a/gcc/dwarf2out.c 2021-04-27 06:00:13.000000000 -0400
++++ b/gcc/dwarf2out.c 2021-07-23 16:40:06.141886167 -0400
+@@ -1283,6 +1283,7 @@ dwarf2out_switch_text_section (void)
+
+ /* Data about a single source file. */
+ struct GTY((for_user)) dwarf_file_data {
++ const char * key;
+ const char * filename;
+ int emitted_number;
+ };
+@@ -12334,7 +12335,7 @@ file_name_acquire (dwarf_file_data **slo
+
+ fi = fnad->files + fnad->used_files++;
+
+- f = remap_debug_filename (d->filename);
++ f = d->filename;
+
+ /* Skip all leading "./". */
+ while (f[0] == '.' && IS_DIR_SEPARATOR (f[1]))
+@@ -27231,13 +27232,13 @@ dwarf2out_ignore_block (const_tree block
+ bool
+ dwarf_file_hasher::equal (dwarf_file_data *p1, const char *p2)
+ {
+- return filename_cmp (p1->filename, p2) == 0;
++ return filename_cmp (p1->key, p2) == 0;
+ }
+
+ hashval_t
+ dwarf_file_hasher::hash (dwarf_file_data *p)
+ {
+- return htab_hash_string (p->filename);
++ return htab_hash_string (p->key);
+ }
+
+ /* Lookup FILE_NAME (in the list of filenames that we know about here in
+@@ -27267,7 +27268,8 @@ lookup_filename (const char *file_name)
+ return *slot;
+
+ created = ggc_alloc<dwarf_file_data> ();
+- created->filename = file_name;
++ created->key = file_name;
++ created->filename = remap_debug_filename (file_name);
+ created->emitted_number = 0;
+ *slot = created;
+ return created;
+@@ -27293,8 +27295,7 @@ maybe_emit_file (struct dwarf_file_data
+ if (output_asm_line_debug_info ())
+ {
+ fprintf (asm_out_file, "\t.file %u ", fd->emitted_number);
+- output_quoted_string (asm_out_file,
+- remap_debug_filename (fd->filename));
++ output_quoted_string (asm_out_file, fd->filename);
+ fputc ('\n', asm_out_file);
+ }
+ }
diff --git a/poky/meta/recipes-devtools/gcc/gcc_11.1.bb b/poky/meta/recipes-devtools/gcc/gcc_11.2.bb
index 7d9359058..255fe552b 100644
--- a/poky/meta/recipes-devtools/gcc/gcc_11.1.bb
+++ b/poky/meta/recipes-devtools/gcc/gcc_11.2.bb
@@ -4,11 +4,11 @@ require gcc-target.inc
# Building with thumb enabled on armv4t armv5t fails with
# | gcc-4.8.1-r0/gcc-4.8.1/gcc/cp/decl.c:7438:(.text.unlikely+0x2fa): relocation truncated to fit: R_ARM_THM_CALL against symbol `fancy_abort(char const*, int, char const*)' defined in .glue_7 section in linker stubs
# | gcc-4.8.1-r0/gcc-4.8.1/gcc/cp/decl.c:7442:(.text.unlikely+0x318): additional relocation overflows omitted from the output
-ARM_INSTRUCTION_SET_armv4 = "arm"
-ARM_INSTRUCTION_SET_armv5 = "arm"
+ARM_INSTRUCTION_SET:armv4 = "arm"
+ARM_INSTRUCTION_SET:armv5 = "arm"
-ARMFPARCHEXT_armv6 = "${@'+fp' if d.getVar('TARGET_FPU') == 'hard' else ''}"
-ARMFPARCHEXT_armv7a = "${@'+fp' if d.getVar('TARGET_FPU') == 'hard' else ''}"
-ARMFPARCHEXT_armv7ve = "${@'+fp' if d.getVar('TARGET_FPU') == 'hard' else ''}"
+ARMFPARCHEXT:armv6 = "${@'+fp' if d.getVar('TARGET_FPU') == 'hard' else ''}"
+ARMFPARCHEXT:armv7a = "${@'+fp' if d.getVar('TARGET_FPU') == 'hard' else ''}"
+ARMFPARCHEXT:armv7ve = "${@'+fp' if d.getVar('TARGET_FPU') == 'hard' else ''}"
BBCLASSEXTEND = "nativesdk"
diff --git a/poky/meta/recipes-devtools/gcc/libgcc-common.inc b/poky/meta/recipes-devtools/gcc/libgcc-common.inc
index d959566c3..d48dc8b82 100644
--- a/poky/meta/recipes-devtools/gcc/libgcc-common.inc
+++ b/poky/meta/recipes-devtools/gcc/libgcc-common.inc
@@ -44,16 +44,16 @@ do_install () {
rm -rf ${D}${libdir}/${TARGET_SYS}/${BINV}/include
}
-do_install_append_libc-baremetal () {
+do_install:append:libc-baremetal () {
rmdir ${D}${base_libdir}
}
-do_install_append_libc-newlib () {
+do_install:append:libc-newlib () {
rmdir ${D}${base_libdir}
}
# No rpm package is actually created but -dev depends on it, avoid dnf error
-RDEPENDS_${PN}-dev_libc-baremetal = ""
-RDEPENDS_${PN}-dev_libc-newlib = ""
+RDEPENDS:${PN}-dev:libc-baremetal = ""
+RDEPENDS:${PN}-dev:libc-newlib = ""
BBCLASSEXTEND = "nativesdk"
@@ -98,9 +98,9 @@ fakeroot python do_multilib_install() {
for ml in multilibs.split():
- tune = d.getVar('DEFAULTTUNE_virtclass-multilib-' + ml)
+ tune = d.getVar('DEFAULTTUNE:virtclass-multilib-' + ml)
if not tune:
- bb.warn('DEFAULTTUNE_virtclass-multilib-%s is not defined. Skipping...' % ml)
+ bb.warn('DEFAULTTUNE:virtclass-multilib-%s is not defined. Skipping...' % ml)
continue
tune_parameters = get_tune_parameters(tune, d)
diff --git a/poky/meta/recipes-devtools/gcc/libgcc-initial.inc b/poky/meta/recipes-devtools/gcc/libgcc-initial.inc
index 06bf224f7..8251e3c28 100644
--- a/poky/meta/recipes-devtools/gcc/libgcc-initial.inc
+++ b/poky/meta/recipes-devtools/gcc/libgcc-initial.inc
@@ -42,17 +42,17 @@ inherit nopackages
# We really only want this built by things that need it, not any recrdeptask
deltask do_build
-do_configure_prepend () {
+do_configure:prepend () {
install -d ${STAGING_INCDIR}
touch ${STAGING_INCDIR}/limits.h
sed -i -e 's#INHIBIT_LIBC_CFLAGS =.*#INHIBIT_LIBC_CFLAGS = -Dinhibit_libc#' ${B}/gcc/libgcc.mvars
sed -i -e 's#inhibit_libc = false#inhibit_libc = true#' ${B}/gcc/Makefile
}
-do_configure_append () {
+do_configure:append () {
sed -i -e 's#thread_header = .*#thread_header = gthr-single.h#' ${B}/${BPN}/Makefile
}
-do_install_append () {
+do_install:append () {
ln -s libgcc.a ${D}${libdir}/${TARGET_SYS}/${BINV}/libgcc_eh.a
}
diff --git a/poky/meta/recipes-devtools/gcc/libgcc-initial_11.1.bb b/poky/meta/recipes-devtools/gcc/libgcc-initial_11.2.bb
index 0c698c26e..a259082b4 100644
--- a/poky/meta/recipes-devtools/gcc/libgcc-initial_11.1.bb
+++ b/poky/meta/recipes-devtools/gcc/libgcc-initial_11.2.bb
@@ -2,4 +2,4 @@ require recipes-devtools/gcc/gcc-${PV}.inc
require libgcc-initial.inc
# Building with thumb enabled on armv6t fails
-ARM_INSTRUCTION_SET_armv6 = "arm"
+ARM_INSTRUCTION_SET:armv6 = "arm"
diff --git a/poky/meta/recipes-devtools/gcc/libgcc.inc b/poky/meta/recipes-devtools/gcc/libgcc.inc
index 6d48ec980..84a2d930d 100644
--- a/poky/meta/recipes-devtools/gcc/libgcc.inc
+++ b/poky/meta/recipes-devtools/gcc/libgcc.inc
@@ -2,7 +2,7 @@ require libgcc-common.inc
DEPENDS = "virtual/${TARGET_PREFIX}gcc virtual/${TARGET_PREFIX}g++ virtual/${MLPREFIX}libc"
-do_install_append_class-target () {
+do_install:append:class-target () {
if [ "${TCLIBC}" != "glibc" ]; then
case "${TARGET_OS}" in
"linux-musl" | "linux-*spe") extra_target_os="linux";;
@@ -32,12 +32,12 @@ PACKAGES = "\
# All libgcc source is marked with the exception.
#
-LICENSE_${PN} = "GPL-3.0-with-GCC-exception"
-LICENSE_${PN}-dev = "GPL-3.0-with-GCC-exception"
-LICENSE_${PN}-dbg = "GPL-3.0-with-GCC-exception"
+LICENSE:${PN} = "GPL-3.0-with-GCC-exception"
+LICENSE:${PN}-dev = "GPL-3.0-with-GCC-exception"
+LICENSE:${PN}-dbg = "GPL-3.0-with-GCC-exception"
-FILES_${PN}-dev = "\
+FILES:${PN}-dev = "\
${base_libdir}/libgcc*.so \
${@oe.utils.conditional('BASETARGET_SYS', '${TARGET_SYS}', '', '${libdir}/${BASETARGET_SYS}', d)} \
${libdir}/${TARGET_SYS}/${BINV}* \
@@ -49,5 +49,5 @@ do_package_write_ipk[depends] += "virtual/${MLPREFIX}libc:do_packagedata"
do_package_write_deb[depends] += "virtual/${MLPREFIX}libc:do_packagedata"
do_package_write_rpm[depends] += "virtual/${MLPREFIX}libc:do_packagedata"
-INSANE_SKIP_${PN}-dev = "staticdev"
+INSANE_SKIP:${PN}-dev = "staticdev"
diff --git a/poky/meta/recipes-devtools/gcc/libgcc_11.1.bb b/poky/meta/recipes-devtools/gcc/libgcc_11.2.bb
index ea210a113..f88963b0a 100644
--- a/poky/meta/recipes-devtools/gcc/libgcc_11.1.bb
+++ b/poky/meta/recipes-devtools/gcc/libgcc_11.2.bb
@@ -2,4 +2,4 @@ require recipes-devtools/gcc/gcc-${PV}.inc
require libgcc.inc
# Building with thumb enabled on armv6t fails
-ARM_INSTRUCTION_SET_armv6 = "arm"
+ARM_INSTRUCTION_SET:armv6 = "arm"
diff --git a/poky/meta/recipes-devtools/gcc/libgfortran.inc b/poky/meta/recipes-devtools/gcc/libgfortran.inc
index 7543585e6..344ec5e21 100644
--- a/poky/meta/recipes-devtools/gcc/libgfortran.inc
+++ b/poky/meta/recipes-devtools/gcc/libgfortran.inc
@@ -54,12 +54,12 @@ PACKAGES = "\
libgfortran-staticdev \
"
-LICENSE_${PN} = "GPL-3.0-with-GCC-exception"
-LICENSE_${PN}-dev = "GPL-3.0-with-GCC-exception"
-LICENSE_${PN}-dbg = "GPL-3.0-with-GCC-exception"
+LICENSE:${PN} = "GPL-3.0-with-GCC-exception"
+LICENSE:${PN}-dev = "GPL-3.0-with-GCC-exception"
+LICENSE:${PN}-dbg = "GPL-3.0-with-GCC-exception"
-FILES_${PN} = "${libdir}/libgfortran.so.*"
-FILES_${PN}-dev = "\
+FILES:${PN} = "${libdir}/libgfortran.so.*"
+FILES:${PN}-dev = "\
${libdir}/libgfortran*.so \
${libdir}/libgfortran.spec \
${libdir}/libgfortran.la \
@@ -68,9 +68,9 @@ FILES_${PN}-dev = "\
${libdir}/gcc/${TARGET_SYS}/${BINV}/finclude/ \
${libdir}/gcc/${TARGET_SYS}/${BINV}/include/ \
"
-FILES_${PN}-staticdev = "${libdir}/libgfortran.a"
+FILES:${PN}-staticdev = "${libdir}/libgfortran.a"
-INSANE_SKIP_${MLPREFIX}libgfortran-dev = "staticdev"
+INSANE_SKIP:${MLPREFIX}libgfortran-dev = "staticdev"
do_package_write_ipk[depends] += "virtual/${MLPREFIX}libc:do_packagedata"
do_package_write_deb[depends] += "virtual/${MLPREFIX}libc:do_packagedata"
diff --git a/poky/meta/recipes-devtools/gcc/libgfortran_11.1.bb b/poky/meta/recipes-devtools/gcc/libgfortran_11.2.bb
index 71dd8b4bd..71dd8b4bd 100644
--- a/poky/meta/recipes-devtools/gcc/libgfortran_11.1.bb
+++ b/poky/meta/recipes-devtools/gcc/libgfortran_11.2.bb