Below commits on binutils-2.34 stable branch are updated.
c4e78c0868a PR27755, powerpc-ld infinite loop
33973d228c9 gas, arm: PR26858 Fix availability of single precision vmul/vmla in arm mode
0c8652fe288 x86: Update GNU property tests
5c1bd3f52c6 x86: Properly merge -z ibt and -z shstk
93b9bf1651a PowerPC TPREL_HA/LO optimisation
58950a3bfd4 Date update
e3b314d3a61 aarch64: set sh_entsize of .plt to 0
26b6ab7a0e4 S/390: z13: Accept vector alignment hints
7324292cd94 gas: Fix checking for backwards .org with negative offset
463ec189fe9 Prevent a potential use-after-fee memory corruption bug in the linker (for PE format files).
ef2826c0fdb Fix the ARM assembler to generate a Realtime profile for armv8-r.
8524bb5bd28 Re: Fix tight loop on recursively-defined symbols
5768460022b Fix tight loop on recursively-defined symbols
a72427b1ae0 gas: PR 25863: Fix scalar vmul inside it block when assembling for MVE
9f57ab49b32 BFD: Exclude sections with no content from compress check.
aaf3f0599a2 Arm: Fix LSB of GOT for Thumb2 only PLT.
97f92b3e90a Arm: Fix thumb2 PLT branch offsets.
3053d7a163c include: Sync plugin-api.h with GCC
f7aec2b8e09 PR25745, powerpc64-ld overflows string buffer in --stats mode
1b2bf0f65c1 include: Sync plugin-api.h with GCC
5e8619b9597 include: Sync lto-symtab.h and plugin-api.h with GCC
23820109ced plugin: Don't invoke LTO-wrapper
64f5c0afcc4 plugin: Use LDPT_ADD_SYMBOLS_V2 to get symbol type
aaa1e160040 Silence warnings due to plugin API change
e7c0ee5110c Include: Sync lto-symtab.h and plugin-api.h with GCC
b6520be37fd Fix dwarf.c build with GCC 10
a560c29ca5a bfd: Change num_group to unsigned int
3ca4cd1ebde gas, arm: Fix bad backport
b3174859c4b gas, arm: PR25660L Fix vadd/vsub with lt and le condition codes for MVE
de9c1b7cfe6 powerpc64-ld infinite loop
0318fc4e18e Adjust PR25355 testcase
40bfb976274 Re: PR24511, nm should not mark symbols in .init_array as "t"
42b2380cdce Don't call lto-wrapper for ar and ranlib
acc4a8b8ac8 PR25585, PHDR segment not covered by LOAD segment
(From OE-Core rev: ad15d44b6c56ccbbe8e4c12717e7dfe3492a659a)
Signed-off-by: Sundeep KOKKONDA <sundeep.kokkonda@gmail.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
drop changes to changelog file in the patch so it can be backport.
(From OE-Core rev: c955d1fc332b8c0a931ffa4a068844981406ae8a)
Signed-off-by: Lee Chee Yang <chee.yang.lee@intel.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
fix CVE-2020-16592 & CVE-2020-16598
removed changes to Changelog in patch file
(From OE-Core rev: 02870c7fbaaa1c3869ecb439f5c58fcf40a533be)
Signed-off-by: Lee Chee Yang <chee.yang.lee@intel.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
powerpc 32bit Linux Kernel widely uses .stabs pseudo-op to
produce debugging information in stabs format. Faced an issue
that during Linux Kernel build with Yocto build system for 32bit
powerpc platform resulting vmlinux contains absolute path in
.stabstr section that cannot be remapped with -fdebug-prefix-map
option.
Yocto uses scripts/mkmakefile Linux Kernel build approach that
allows to store all generated files outside of kernel source
tree. With this approach each compilier invocation is performed
with an absolute path to a file that will be compiled and this
absolute path is recorded in init stab. There is no way to remap
this path.
Reuse remap_debug_filename api to make -fdebug-prefix-map flag
aplicable for init stab.
(From OE-Core rev: b90799fd0f38cd013bebadbe5b9c50b4f93e84af)
Signed-off-by: Denys Zagorui <dzagorui@cisco.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
gcc 10 introduced "-fno-common" as default. Therefore backport the
according binutils patch to fix this issue.
(From OE-Core rev: c41fe48f323a78fd0e205471362ecc6c66f87f45)
Signed-off-by: Richard Leitner <richard.leitner@skidata.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit fbeb572e1872cf64786d01d5c6408a6765f814ce)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
some architectures e.g. mips complain in linking apps which have shared
libs that are linking with libiberty.a fixes errors like below
libiberty/../../libiberty/hashtab.c:285:(.text+0xf8): relocation R_MIPS_26 against `htab_create_typed_alloc' cannot be used when making a shared object; recompile with -fPIC
(From OE-Core rev: 4e64f0bc62fd81f91d75a1f46230fff7c71650e2)
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Deleting sources is a rough way of dealing with disabling components,
using configure option is elegant way and we also keep the sources
unchanged, this should not cause any funcitonal changes otherwise
(From OE-Core rev: 1921711c9e7a915dbf04c3909bee39450c907845)
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The alternative ld.so patch is set up so the linker will search
the nativesdk sysroot before searching the host filesystem.
However the patch concatenates <sysroot>/etc and /etc/ld.so.conf
leading to a path that does not exist:
3061991 openat(AT_FDCWD, "/buildtools/sysroots/x86_64-pokysdk-linux/etc/etc/ld.so.conf",
O_RDONLY) = -1 ENOENT (No such file or directory)
In native-nspr, the build uses -lpthread, which triggers a search for librt, but because
of the above it drags in the system librt leading to errors as follows:
/buildtools/sysroots/x86_64-pokysdk-linux/usr/lib/gcc/x86_64-pokysdk-linux/
9.3.0/../../../../x86_64-pokysdk-linux/bin/ld: /lib64/librt.so.1:
undefined reference to `__clock_getcpuclockid@GLIBC_PRIVATE'
update concatenation to correctly construct the path to the nativesdk ld.so.conf
[YOCTO #13853]
(From OE-Core rev: d085da8300abb72e14957ecedf40189b25088d4b)
Signed-off-by: Jeremy Puhlman <jpuhlman@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Using gnu_hash style is unsupported on gold for now therefore disable
building gold on mips/glibc
Certain applications poke for presence of gold linker and silently use
it (webkit), therefore its best to disable building it
(From OE-Core rev: b1b98ed4fafa9d37f71cbfe18f7a00ce2643449e)
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
libtool patch will result in configure file regeneration, instead of
doing that at build time, do it in patch itself, this avoids running
autoconf before configure step.
Since binutils needs specific version of autoconf ( which is 2.69 )
this will break on systems using newer or older verisons of autoconf
in current state.
(From OE-Core rev: 525d703d6f846e9706481a816910aef2ee70fb54)
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Cc: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
bfd_stdint.h encodes the name of the compiler in the header
which is different between mutlilibs. Remvoe target prefix to
make the headers match.
(From OE-Core rev: 62cd67ac4ca39edac3c57f648669f1427b6fe7dd)
Signed-off-by: Jeremy A. Puhlman <jpuhlman@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This override was applying to binutils-native meaning it would behave differently
depending upon the host it was building on. This is not a good idea and we have
tests to detect it which failed:
oe-selftest -r sstatetests.SStateTests.test_sstate_32_64_same_hash
binutils-native already enables all targets so we can avoid issues by not setting this
option in the native case.
(From OE-Core rev: bbf9e8ae5e0ce2968e4fef071d3de3ddfdc7463c)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Details of changelog [1]
Removing bfd/ld patch to enable PE targets, instead use
specific emulations via --enable-targets for x86_64
Re-arrange/forward-port patches and upgrade libctf configure to libtool 2.4 patch
rpaths are no longer emitted into elfedit/readelf therefore no need of
chrpath anymore
Instead of pre-generating configure scripts and house them in libtool
patch, generate them during configure. This also ensures that we do not
patch configure directly but rather the sources which generate it
Package newly added libctf library
[1] https://lists.gnu.org/archive/html/info-gnu/2020-02/msg00000.html
(From OE-Core rev: 82f7d5cfc2ab02f39b69c0f8697d660936422d4a)
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Cc: Christopher Clark <christopher.clark6@baesystems.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
If an append adds a patch or file with SRC_URI += , the spaceless
append causes the file listings to concatinate and cause failures
in the nativesdk-binutils parse/build.
(From OE-Core rev: 227bacec59501b6ef0aca50c62ad1f4acd167b5d)
Signed-off-by: Jeremy Puhlman <jpuhlman@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
gold is not supporting risc-v yet and, this will cause subltle errors
during build e.g. autoconf not finding certain features like visibility
and it could take a while to unwind the problem. Its better to error out
early
Remove dwp and ld.gold for rv32 as well
(From OE-Core rev: 5ee10b10b3316a368cea73df470befd587ef1cd0)
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
In the SDK we need the plain symlinks and don't use alternative providers.
When these are missing the toolchain can work incorrectly so fix this.
(From OE-Core rev: 0c06cfaa016d06cc56d80dc1c244a938f3d38a3c)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
We need binutils to look at our ld.so.conf file within the SDK to ensure
we search the SDK's libdirs as well as those from the host system.
There add a patch which passes in the directory to the code using a define,
then add it to a section we relocate in a similar way to the way we relocate
the gcc internal paths. This ensures that ld works correctly in our buildtools
tarball.
Standard sysroot relocation doesn't work since we're not in a sysroot,
we want to use both the host system and SDK libs.
(From OE-Core rev: f6c1089642934ad93056ef19a0888965486ee030)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Drop CVE patches which are already available on binutils-2_33-branch
Forward port rest of the patches
(From OE-Core rev: 7bcfce05045fb7e10456aa1f5301e70c178f20d7)
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Backport upstream fix. No upstream release version of
binutils it yet, so backport the fix independently.
(From OE-Core rev: 3693a0a8b9461521b95613a76b7fd79c86a3bf8f)
Signed-off-by: Trevor Gamblin <trevor.gamblin@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Backport upstream fix. No upstream release version of
binutils it yet, so backport the fix independently.
(From OE-Core rev: a4ead72b958ded4941f96741029f4955930ba758)
Signed-off-by: Trevor Gamblin <trevor.gamblin@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
As there is now a new version of binutils,
upstream version check works again.
(From OE-Core rev: c63c7fb890ab356c747d6948ca9e13e0c3b83dfb)
Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
These recipes don't need to generate packages but did contain the packaging tasks which
would be triggered by a world build. They showed warnings or errors. Simplest fix
is to remove the unneeded tasks with the nopackages class.
Also don't attempt stash_locales task
(From OE-Core rev: a34420e1bdb9a695fe7abd3b26426d7ae6113349)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Create the do_check task in a new recipe 'binutils-cross-testsuite'.
This recipe is built within a target recipe (not -cross) to ensure
correct testing against target specific libraries/etc. The do_check task
is used to execute the binutils test suite for the cross target
binutils. By default this executes tests for binutils, gas and ld. This
can however be changed by setting CHECK_TARGETS to the desired test
suite target (e.g. 'gas').
The binutils test suites do not require any target execution, as such
the check task can be run without QEMU or a target device. However
since the binutils tests do rely on a C compiler there is dependence on
both gcc and libc in order to run the tests.
(From OE-Core rev: 1fb98bfdccb82474176fe8fca616aea84475942e)
Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The patch incorrectly removes 'mips_elf32_ntrad_le_vec' from the
'targ_selvecs' replacing it with duplicate entries for
'mips_elf32_ntrad_be_vec'. Correct this so that the default binutils can
still handle 'mips_elf32_ntrad_le_vec' binaries.
(From OE-Core rev: cdd499f23c129306da879b6f614ca1b720724300)
Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
assembler ends up crashing on target sometimes due to
segfaults in libbfd, therefore avoid using -O2 for now
(From OE-Core rev: a6f9327e79df1bfadb1f613eda799586e60009f2)
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
PV is 2.32.0 even though the actual release upstream is 2.32. To a human this
is insignificant, but to automated tooling it matters. Specifically,
cve-check-tool can't identify CVEs that are in 2.32.
Set CVE_VERSION for now, which should be removed when PV and the upstream
version match again.
(From OE-Core rev: 487c8356c22deb29867baf3da74f6d86502d5b3b)
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Changes
https://sourceware.org/ml/binutils/2019-02/msg00010.html
0007-Add-the-armv5e-architecture-to-binutils.patch is dropped since we
armv5 is not a used option anymore in OE armv5te is default, and gcc9
will drop it completely anyway
CVE patches were backports from master which is already past of 2.32
release
Other dropped patches were partial or full backports as well
(From OE-Core rev: b71294c4decf35d544a2c8adb4e67d141841fc68)
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* Append minor version to PV so recipe checker is happy
* Drop upstreamed patches
* Remove changelog from CVE patches, they dont apply and are in patch
log anyway
(From OE-Core rev: 550085bc092d773c8c481e238d0d3210466166dc)
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>