Bladeren bron

package/binutils: install libsframe to staging

binutils 2.40 added libsframe:
https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=19e559f1c91bfaedbd2f91d85ee161f3f03fda3c

Quoting release notes:
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;a=blob_plain;f=binutils/NEWS;hb=refs/heads/binutils-2_40-branch
* readelf and objdump now have a newly added option --sframe which dumps
  the SFrame section.

Install libsframe to staging when available to avoid build errors, for
example with lightning:
libsframe.so.0, needed by output/per-package/lightning/host/arm-
  buildroot-linux-gnueabi/sysroot/usr/lib/libopcodes.so, not found

Fixes:
http://autobuild.buildroot.net/results/1d1/1d1480dc0c3fb0a88490e3fae85abb2aa76bdade/

Signed-off-by: Bernd Kuhls <bernd@kuhls.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Bernd Kuhls 2 jaren geleden
bovenliggende
commit
1b4d921e1d
2 gewijzigde bestanden met toevoegingen van 11 en 0 verwijderingen
  1. 4 0
      package/binutils/Config.in.host
  2. 7 0
      package/binutils/binutils.mk

+ 4 - 0
package/binutils/Config.in.host

@@ -5,6 +5,9 @@ config BR2_PACKAGE_HOST_BINUTILS_SUPPORTS_CFI
 	default y
 	depends on !BR2_microblaze
 
+config BR2_PACKAGE_BINUTILS_HAS_LIBSFRAME
+	bool
+
 choice
 	prompt "Binutils Version"
 	default BR2_BINUTILS_VERSION_2_39_X if !BR2_arc
@@ -20,6 +23,7 @@ config BR2_BINUTILS_VERSION_2_39_X
 
 config BR2_BINUTILS_VERSION_2_40_X
 	bool "binutils 2.40"
+	select BR2_PACKAGE_BINUTILS_HAS_LIBSFRAME
 
 config BR2_BINUTILS_VERSION_ARC
 	bool "binutils arc (2.34.50)"

+ 7 - 0
package/binutils/binutils.mk

@@ -105,12 +105,19 @@ endif
 # our TARGET_CONFIGURE_ARGS are taken into consideration for those
 BINUTILS_MAKE_ENV = $(TARGET_CONFIGURE_ARGS)
 
+ifeq ($(BR2_PACKAGE_BINUTILS_HAS_LIBSFRAME),y)
+define BINUTILS_INSTALL_STAGING_LIBSFRAME
+	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/libsframe DESTDIR=$(STAGING_DIR) install
+endef
+endif
+
 # We just want libbfd, libiberty and libopcodes,
 # not the full-blown binutils in staging
 define BINUTILS_INSTALL_STAGING_CMDS
 	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/bfd DESTDIR=$(STAGING_DIR) install
 	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/opcodes DESTDIR=$(STAGING_DIR) install
 	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/libiberty DESTDIR=$(STAGING_DIR) install
+	$(BINUTILS_INSTALL_STAGING_LIBSFRAME)
 endef
 
 # If we don't want full binutils on target