Commit Graph

65 Commits

Author SHA1 Message Date
Denys Dmytriyenko
eee8bb497f binutils: move packaging of gprofng static lib into common .inc
Commit f72fd51e0d (binutils: package static libs from gprofng) added
corresponding FILES:${PN}-staticdev entry to the main .bb recipe.
But binutils-cross-canadian fails with exactly the same QA issue,
hence move FILES:${PN}-staticdev to the common shared .inc file.

(From OE-Core rev: 75beddd33e132333c36ad067e2cf90edffeb5bf5)

Signed-off-by: Denys Dmytriyenko <denys@konsulko.com>
Signed-off-by: Denys Dmytriyenko <denis@denix.org>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-06-13 22:10:32 +01:00
Khem Raj
ce71bb3d08 binutils: Enable --enable-new-dtags
Use DT_RUNPATH over DT_RPATH. If DT_RUNPATH is present, LD_LIBRARY_PATH is searched before
DT_RUNPATH, Search order is DT_RPATH then LD_LIBRARY_PATH then
DT_RUNPATH, this order ensures that injecting
malicious shared objects is way harder with DT_RUNPATH.

This is now default on major linux distributions already

(From OE-Core rev: 66f8a745668a067d8d763fa2af3e65f26c9c1ebe)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-09 21:04:06 +00:00
Xiaotian Wu
2f26104ebc binutils: disable gold on loongarch64
(From OE-Core rev: ea2c3952e28b191459ff6020ba0c6104ab33ee1c)

Signed-off-by: Xiaotian Wu <wuxiaotian@loongson.cn>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-04 17:02:10 +00:00
Kai Kang
b46ab07288 binutils: another way to clear GPROFNG_ALTS for clang and musl
It disables gprofng for toolchain clang and libc musl, so GPROFNG_ALTS
should be cleared for them. But override 'toolchain-clang' is applied
before overrides 'TRANSLATED_TARGET_ARCH' such as x86-64, then
GPROFNG_ALTS is still set and not cleared.

Apply overrides 'toolchain-clang' and 'libc-musl' for GPROFNGS rather
than GPROFNG_ALTS to make it work as expected.

(From OE-Core rev: 30630b0e61835278a2e06262560de67c7a867ff6)

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-09-29 21:15:50 +01:00
Kai Kang
14eea4a995 binutils: handle symlink files for gprofng
It provides gprofng by binutils 2.39 for x86, x86_64 and aarch64
according to configure.ac:

https://sourceware.org/git/?p=binutils-gdb.git;a=blob;f=configure.ac;h=a5555a9c91b42214afc46a0ab8b629e4c6fedcc0;hb=HEAD#l401

Add them to USE_ALTERNATIVES_FOR the same as others to handle symlink
files via update-alternative mechanism. And it disables gprofng for
clang and musl in .bb file, so clear GPROFNG_ALTS for them too.

(From OE-Core rev: 35bec42c4023a00a0a3639935633051ce9c1c0ba)

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-09-22 21:39:21 +01:00
Richard Purdie
b0130fcf91 meta/meta-selftest/meta-skeleton: Update LICENSE variable to use SPDX license identifiers
An automated conversion using scripts/contrib/convert-spdx-licenses.py to
convert to use the standard SPDX license identifiers. Two recipes in meta-selftest
were not converted as they're that way specifically for testing. A change in
linux-firmware was also skipped and may need a more manual tweak.

(From OE-Core rev: ceda3238cdbf1beb216ae9ddb242470d5dfc25e0)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-02-20 16:45:25 +00:00
Chanho Park
cb8edc767e binutils: inherit pkgconfig to address libdebuginfod depdency
Since libdebuginfo was default distro feature[1], cross build of binutils
has been broken due to absence of pkg-config. To find the dependency
properly, we should inherit pkgconfig bbclass.

checking for aarch64-poky-linux-pkg-config... no
checking for pkg-config... no
checking whether to use debuginfod... yes
checking for libdebuginfod >= 0.179... no
configure: error: "--with-debuginfod was given, but libdebuginfod is missing or unusable."

[1]: https://lists.openembedded.org/g/openembedded-core/message/150666

(From OE-Core rev: 50154869b496cf63a4fae2c8278350fcf9a2591d)

Signed-off-by: Chanho Park <chanho61.park@samsung.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-09-11 22:39:20 +01:00
Richard Purdie
bb6ddc3691 Convert to new override syntax
This is the result of automated script conversion:

scripts/contrib/convert-overrides.py <oe-core directory>

converting the metadata to use ":" as the override character instead of "_".

(From OE-Core rev: 42344347be29f0997cc2f7636d9603b1fe1875ae)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-08-02 15:44:10 +01:00
Khem Raj
433d240084 binutils: Upgrade to 2.37 branch
This is next/latest release branch for binutils
Drop backports and CVE fixes which already are applied upstream

bfd_stdint.h has been removed in favor of using stdint.h

(From OE-Core rev: 08cd144fc4b5ac34ff99f71b1d825cbff96b642c)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-07-24 16:33:46 +01:00
Khem Raj
42eb97fb13 binutils: Package libdep linker plugins
this is new plugin added in binutils 2.36

(From OE-Core rev: dddd261bab4b371ae97bcf4b954359297d615f83)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-02-03 21:45:49 +00:00
Khem Raj
425d71856c binutils: Install PIC version of libiberty.a
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: 49eacd44ff65b524c02ab93401dc97745d28415f)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-04-26 14:00:51 +01:00
Khem Raj
8fad68fb3c binutils: Use configure options to disable gdb and dependencies
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>
2020-04-05 11:46:38 +01:00
Khem Raj
93b4aeecbb binutils: Do not build gold linker on mips/glibc
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>
2020-04-02 15:24:59 +01:00
Khem Raj
10be0e446c binutils: Pregenerate autoconf files
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>
2020-03-30 12:33:29 +01:00
Jeremy Puhlman
579e59a6b5 binutils: fix multilib header difference
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>
2020-02-29 13:04:48 +00:00
Richard Purdie
28333a851f binutils: Fix x86_64 override usage
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>
2020-02-22 23:57:27 +00:00
Khem Raj
fd0e3e1708 binutils: Upgrade to 2.34 release
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>
2020-02-22 23:57:27 +00:00
Khem Raj
e2fa65d1ac binutils: Bail out if gold is used on 32/64 bit RISC-V
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>
2020-02-14 13:07:23 +00:00
Achille Fouilleul
8b6109901a binutils: fix symlinks
For nativesdk, symlinks created by do_install contain ${SDKPATHNATIVE}.

This is a problem with SDKs that include nativesdk-binutils and nativesdk-gcc.
When extracting such an SDK dangling symlinks are created, because
relocate_sdk.py does not adjust symlinks. As a result gcc ends up calling the
host binutils.

Use the os.path.relpath function to obtain shorter relative paths, which do not
contain ${SDKPATHNATIVE}.

(From OE-Core rev: 3d6372aa2d9f752eac0e4943d1bde04f0f1924a0)

Signed-off-by: Achille Fouilleul <achille.fouilleul@gadz.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-10-09 19:04:02 +01:00
Richard Purdie
bcaa35fe54 binutils: Fix variable conflict
A recent binutils patch added the LDGOLD variable but its already used
for controlling EXTRA_OECONF options for gold. Separate the two variables
to different names to avoid build warnings and confusion.

(From OE-Core rev: 713c83fd00ab16250f05b0c3933f0c8178b8a33e)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-05 18:00:25 +01:00
Khem Raj
5c0f6391cf gdb: Seprate out gold and dwp into a variable
This is needed for riscv64 to build target binutils fixes alternatives
creation

(From OE-Core rev: 81a8e7addadcffc322735f3a30369d382334590b)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-04 11:03:55 +01:00
Samuli Piippo
2c8cc36f24 binutils: apply mingw fix only for binutils-cross-canadian
Whenever SDKMACHINE is set to mingw32, sdkmingw32 override is defined
everywhere. This meant that value of LDGOLD was different also for
binutils and binutils-cross depending whether SDKMACHINE was set or not.

(From OE-Core rev: 0398f84482dbe5ee99b20e2ca6b3e9984f7ccec5)

Signed-off-by: Samuli Piippo <samuli.piippo@qt.io>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-09-18 11:07:30 +01:00
Ross Burton
69d3d55ea7 binutils: disable gold on mingw
oe-core 759eed (binutils: Enable threading when gold is enabled and is not
default linker) causes linking in mingw SDKs to fail:

.../work/i686-nativesdk-mingw32-pokysdk-mingw32/binutils-cross-canadian-x86-64/2.28-r0
/recipe-sysroot-native/usr/bin/i686-pokysdk-mingw32/../../libexec/i686-pokysdk-mingw32/gcc/i686-pokysdk-mingw32/6.3.0/ld:
cannot find -lpthread

Work around this by disabling gold entirely in mingw SDKs.

(From OE-Core rev: b5a595a4be09756b88e91f3353e3b221b165ab44)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-21 22:39:17 +00:00
Khem Raj
56b2f19ca1 binutils: Enable threading when gold is enabled and is not default linker
Currently we enable threaded linking feature of gold linker only
when its used as default ld. There is no need to restrict it when
its not default linker either. As long as gold is enabled, which
is the case here, we should be able to do threaded linking.

(From OE-Core rev: 759eed2b02e0a7b5c8b19d4b087d9151c009eed4)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-17 16:53:05 +00:00
Joshua Lock
c4e2c59088 meta: remove True option to getVar calls
getVar() now defaults to expanding by default, thus remove the True
option from getVar() calls with a regex search and replace.

Search made with the following regex: getVar ?\(( ?[^,()]*), True\)

(From OE-Core rev: 7c552996597faaee2fbee185b250c0ee30ea3b5f)

Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-12-16 10:23:23 +00:00
Khem Raj
30ab044dac binutils: Bump to 2.27
(From OE-Core rev: 3f1eb2556026572dca9476c561d89b86723395c7)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-08-10 10:46:28 +01:00
Andre McCurdy
51059ee20d binutils: configure with --enable-deterministic-archives
Causes ar to use zero for timestamps and uids/gids by default when
creating static archives, which helps make builds deterministic.

  https://bugzilla.redhat.com/show_bug.cgi?id=1124342
  https://wiki.debian.org/ReproducibleBuilds/TimestampsInStaticLibraries

(From OE-Core rev: df0d525c02780b5a0bd7a177a249c55f41797476)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-06-23 14:26:15 +01:00
Khem Raj
04c6a4850a binutils: Fix useless rpaths QA warning
elfedit and readelf contains /usr/lib in elf header
this patch deletes them from binaries, ideally it
should be fixed in libtool and Makery of binutils

mips target binutils dont build gold so remove
them from ALTERNATIVES list

depend on own version of chrpath native, so builds on
build OS like Centos can work, the verison of chrpath
on centos is old enough to not support dealing with
multi-arch ELF files.

(From OE-Core rev: 9043202f4e705932a3847f2f7635fca06fe5a916)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-02-18 07:39:30 +00:00
Ross Burton
455ff32426 meta: more removals of redunant FILES_${PN}-dbg
In some recipes overly-split -dbg packages were merged into PN-dbg.  Unless
there's a very good reason, recipes should have a single -dev and -dbg package.

(From OE-Core rev: a3b000643898d7402b9e57c02e8d10e677cc9722)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-12-16 11:56:30 +00:00
Richard Purdie
e3704e8b99 binutils: Fix packaging now gold is always built
Resolves:

ERROR: QA Issue: binutils: Files/directories were installed but not shipped
  /usr/bin/dwp
  /usr/bin/ld.gold [installed-vs-shipped]

now gold is always built.

(From OE-Core rev: 6333186e9764b2c269a2b3869956860fa8fde2b1)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-08 23:11:37 +01:00
Richard Purdie
26648dcd1c binutils: Allow gold to build even when not the default
It can be useful to have gold available for testing even when its not the
default, therefore build gold by default in all configurations.

(From OE-Core rev: 67dc1df30ec9f38c41df0ad88978e8135e00dd18)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-08 10:53:21 +01:00
Max Eliaser
64df4e4aef Add texinfo.bbclass; recipes that use texinfo utils at build-time inherit it.
The class itself currently does nothing. The idea is to mark all recipes that
make use of the texinfo utilities. In the future, this class could be used to
suppress the generation/formatting of documentation for performance,
explicitly track dependencies on these utilities, and eliminate Yocto's
current dependency on the host system's texinfo utilities.

(From OE-Core rev: e6fb2f9afe2ba6b676c46d1eb297ca9cc532d405)

Signed-off-by: Max Eliaser <max.eliaser@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-05-02 20:46:59 +01:00
Otavio Salvador
4c14b09498 Globally replace 'base_contains' calls with 'bb.utils.contains'
The base_contains is kept as a compatibility method and we ought to
not use it in OE-Core so we can remove it from base metadata in
future.

(From OE-Core rev: d83b16dbf0862be387f84228710cb165c6d2b03b)

Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-04-25 17:19:19 +01:00
Khem Raj
a8daee2fe4 binutils: ld-is-gold should not affect native and crosssdk recipes
gold linker does not support all architectures, currently arm and x86
are best supported, therefore we can not enable this as a full distro
option where we need to support other architectures e.g. ppc, mips
currently, if we enable ld-is-gold distro feature conditionally then it
invalidates native and sdk version of native binutils because configure
option would change. With this patch we limit ld-is-gold feature to
imapact cross binutils and target binutils only. This means that we
can reuse the sdk and native versions across architectures.

(From OE-Core rev: 542609b968f0dc6f56cc9d6aabe4ff0144041261)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-18 08:38:52 +00:00
Khem Raj
1ddc105659 binutils: Package additional file when using ld-is-gold
Fixes QA warnings like

WARNING: QA Issue: binutils: Files/directories were installed but not
shipped
  /usr/bin/ld.bfd
  /usr/bin/dwp

(From OE-Core rev: 6503ad0484d5a9cc3f8338eb4f176d65c2f3c13a)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Acked-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-04 12:57:35 +00:00
Phil Blundell
7ef0f55a95 binutils: Also add autoconf-native to DEPENDS
Commit 616354f13732d13c17434d5b60b166f691c25761 is insufficient because
gnu-config-native's gnu-configize script uses perl modules from autoconf
and hence doesn't work unless autoconf-native is staged (which it may
not be if building from sstate).

Ideally g-c-n would itself declare a dependency on autoconf-native but this
is difficult to arrange without creating a dependency loop.  autoconf-native
already depends on gnu-config-native (because autoreconf invokes gnu-configize)
and has a build dependency on m4-native, which in turn build-depends on g-c-n
because it configizes itself by steam in do_configure and needs config.{guess,sub}
to be available.  Adding some sort of gnu-config-initial-native recipe would
fix the latter problem, but this would be ugly because it would need special-casing
in (at least) autotools.bbclass, and in any case this still wouldn't solve
the problem of autoconf itself depending on g-c-n.

So, the easiest solution to the problem at hand is to arrange for those
few recipes that depend on g-c-n but not autoconf-native to gain that
latter dependency as well.

(From OE-Core rev: 507199e57acfcc99639dc2c53abe194d77d60866)

Signed-off-by: Phil Blundell <pb@pbcl.net>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-10 15:16:51 +00:00
Paul Eggleton
35352b7d6e binutils: add/tweak SUMMARY
(From OE-Core rev: 82a58c3342133d342907b54dafb2f22518d00707)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-02 12:50:23 +00:00
Saul Wold
8760307297 binutils: Add embedspu to standard binutils package
This is only built for PPC, fixes the following QA Error

ERROR: QA Issue: binutils: Files/directories were installed but not shipped
  /usr/bin/embedspu

(From OE-Core rev: e77f419565bd54743bc773b17a17acdbf3773ec2)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-10 17:42:41 +00:00
Phil Blundell
520f95364a binutils: Add gnu-config-native to DEPENDS
do_configure() in binutils.inc includes an explicit call to
gnu-configize so we need to make sure that gnu-config-native is
present.  Previously this was being dragged in with the rest of the
autotools stuff, but commit 54a3e2ee37003fc56af0339f857b0b6442790c26
disabled that for binutils-cross on the grounds that "we don't
autoreconf" the toolchain components.  Fix this by adding
gnu-config-native itself explicitly to DEPENDS.

(From OE-Core rev: 616354f13732d13c17434d5b60b166f691c25761)

Signed-off-by: Phil Blundell <philb@gnu.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-11-12 16:00:30 +00:00
Saul Wold
b9a660f801 binutils: remove embedspu
This is only built for PPC and not needed, so remove it to fix the QA Issue

ERROR: QA Issue: binutils: Files/directories were installed but not shipped
  /usr/bin/embedspu

(From OE-Core rev: 98c2b40b64785db99b4f02765212ff40301d3034)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-11-08 17:25:37 +00:00
Peter Seebach
43cce83f93 binutils: Drop binutils-symlinks
The -symlinks package doesn't really add any value if we're
using update-alternatives. Drop it, leaving a spare RPROVIDES
in case anyone thought they needed it.

(From OE-Core rev: 24093e26f246f222c385dc37a2f8cf8b0f183175)

Signed-off-by: Peter Seebach <peter.seebach@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-11-08 17:25:33 +00:00
Peter Seebach
77ff02ffa8 binutils: Use alternatives for the binutils-symlinks package.
The ar and strings utilities are provided as alternatives, but
the rest of binutils is being done with binutils-symlinks. This
has the side effect that if you want "as", and you install
binutils-symlinks to get it, you don't get "ar" from it, because
it's not in the symlinks package.

Solution: Use the same mechanisms for everything, putting
everything in ALTERNATIVES, so installing binutils on a target
produces the expected behavior of having the various utilities in place.
(We do this only for class-target, though.)

Issues: The "embedspu" and "ld.gold" binaries may or may not exist,
but the determination of whether to list them as alternatives is
being made before the point at which we can easily check for them,
so that can produce warnings.

(From OE-Core rev: 1395aefcaeac94dd0e6ed3a718b7e58dd43b355e)

Signed-off-by: Peter Seebach <peter.seebach@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-11-08 17:25:33 +00:00
Saul Wold
39214157da binutils: the cat should always succeed when building config.cache
There is a race condition between when the CONFIG_SITE list is generated and
then used here via the cat to create the config.cache and in *all* configure
scripts when reading from CONFIG_SITE.

The race in this case is that the sstate setscene task runs on a package that
contains a site config file (ncurses in this case) and then bitbake decides
that it needs to rebuild and cleans out the site config file, so it existed
for siteinfo_get_files() to find in SITECONFIG_SYSROOTCACHE and then was removed
for the rebuild. When bintuils tried to run the do_configure() task which creates
the binutil's version of config.cache it reads from CONFIG_SITE which now contains
the non-existant site config file. (confused yet ;-)?

Currently the configure script does a test -r to ensure the file is readable
before using it, therefore having the cat succeed regardless of the file being
available is consistent behaviour.

(From OE-Core rev: ffd8f05e5548500199c9b04a174067811ad2c5e7)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-05-24 14:14:47 +01:00
Ross Burton
7ea8496ce0 meta: remove redundant _FOR_BUILD variables
(From OE-Core rev: acabd2158d9004dedfdfad8c170b77d32684f3fc)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-12 13:36:37 +00:00
Matthew McClintock
5112da2c69 binutils.inc: add vardep on multiarch DISTRO_FEATURE
binutils will build differently if this feature is enabled, so
make the do_configure step depend on it

(From OE-Core rev: 0788cf349fe37ef4a36c626dbc396c97d1ab14d7)

Signed-off-by: Matthew McClintock <msm@freescale.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-02 17:10:35 +01:00
Khem Raj
d32e948f03 binutils: Enable threaded linking with gold
This options will let gold spawn multiple
threads for linking and speeding up linking
on multicore build hosts.

(From OE-Core rev: 210957a58260ec50416649aba799d0e96aeeff24)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-07 23:30:07 +01:00
Martin Jansa
63acb556f6 binutils: package ld.gold symlink
* fixes:
  NOTE: package binutils-2.22-r11: task do_package: Started
  WARNING: QA Issue: binutils: Files/directories were installed but not shipped
    /usr/bin/ld.gold
  NOTE: package binutils-2.22-r11: task do_package: Succeeded

(From OE-Core rev: b01b958007b2c09e68a839415440972e08275702)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-18 14:57:27 +01:00
Khem Raj
50bc31150b binutils: Enable plugins by default
Plugins work well in 2.22+ so lets enable them
helps with lto

(From OE-Core rev: 81ecc9d468c36b36c4b2ccc4ab5f366611a8fa46)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-06-21 13:03:04 +01:00
Khem Raj
e146139b42 binutils: Add with-sysroot to target binutils
Also rearrange the recipes to have common bits
in inc files and not include the target bb file
everywhere. This lets us add specific options
to specific recipes particularly target recipe in
this case

(From OE-Core rev: f4ed063e32f064e996a4c29760fa4ac49f1ed73c)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-06-21 13:03:04 +01:00
Mark Hatle
76c08cc0d2 binutils: use new update-alternatives
(From OE-Core rev: f0ad3c8ce298ca492938e4ded2263c54213786f6)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-05-30 12:04:42 +01:00