Klaus Heinrich Kiwi | 3e6e835 | 2020-04-14 16:06:01 -0300 | [diff] [blame] | 1 | ################################################################################ |
| 2 | # |
| 3 | # alternate-binutils |
| 4 | # |
| 5 | ################################################################################ |
| 6 | |
| 7 | # |
| 8 | # Based on buildroot/package/binutils/binutils.mk |
| 9 | # |
| 10 | |
| 11 | ALTERNATE_BINUTILS_VERSION = $(call qstrip,$(BR2_ALTERNATE_BINUTILS_VERSION)) |
| 12 | ALTERNATE_BINUTILS_SITE ?= $(BR2_GNU_MIRROR)/binutils |
| 13 | ALTERNATE_BINUTILS_SOURCE ?= binutils-$(ALTERNATE_BINUTILS_VERSION).tar.xz |
| 14 | |
| 15 | ALTERNATE_BINUTILS_DEPENDENCIES = $(TARGET_NLS_DEPENDENCIES) |
| 16 | ALTERNATE_BINUTILS_MAKE_OPTS = LIBS=$(TARGET_NLS_LIBS) |
| 17 | ALTERNATE_BINUTILS_EXTRA_CONFIG_OPTIONS = $(call qstrip,$(BR2_ALTERNATE_BINUTILS_EXTRA_CONFIG_OPTIONS)) |
| 18 | ALTERNATE_BINUTILS_CONF_ENV += MAKEINFO=true |
| 19 | ALTERNATE_BINUTILS_MAKE_OPTS += MAKEINFO=true |
| 20 | BINUTILS_INSTALL_OPTS += MAKEINFO=true install |
| 21 | |
| 22 | ifeq ($(BR2_PACKAGE_ZLIB),y) |
| 23 | ALTERNATE_BINUTILS_DEPENDENCIES += zlib |
| 24 | endif |
| 25 | |
| 26 | HOST_ALTERNATE_BINUTILS_CONF_OPTS = \ |
| 27 | --disable-multilib \ |
| 28 | --disable-werror \ |
| 29 | --prefix="$(HOST_DIR)/alternate-toolchain" \ |
| 30 | --target=$(GNU_TARGET_NAME) \ |
| 31 | --disable-shared \ |
| 32 | --enable-static \ |
| 33 | --with-sysroot=$(STAGING_DIR) \ |
| 34 | --enable-poison-system-directories \ |
| 35 | $(ALTERNATE_BINUTILS_EXTRA_CONFIG_OPTIONS) |
| 36 | |
| 37 | ALTERNATE_BINUTILS_MAKE_ENV = $(TARGET_CONFIGURE_ARGS) |
| 38 | |
| 39 | define ALTERNATE_BINUTILS_INSTALL_HOST_CMDS |
| 40 | $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/bfd DESTDIR="$(HOST_DIR)/alternate-toolchain" install |
| 41 | $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/opcodes DESTDIR="$(HOST_DIR)/alternate-toolchain" install |
| 42 | $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/libiberty DESTDIR="$(HOST_DIR)/alternate-toolchain" install |
| 43 | endef |
| 44 | |
| 45 | ALTERNATE_BINUTILS_TOOLS = ar as ld ld.bfd nm objcopy objdump ranlib readelf strip |
| 46 | define HOST_ALTERNATE_BINUTILS_FIXUP_HARDLINKS |
| 47 | $(foreach tool,$(ALTERNATE_BINUTILS_TOOLS),\ |
| 48 | rm -f $(HOST_DIR)/alternate-toolchain/$(GNU_TARGET_NAME)/bin/$(tool) && \ |
| 49 | cp -a $(HOST_DIR)/alternate-toolchain/bin/$(GNU_TARGET_NAME)-$(tool) \ |
| 50 | $(HOST_DIR)/alternate-toolchain/$(GNU_TARGET_NAME)/bin/$(tool) |
| 51 | ) |
| 52 | endef |
| 53 | HOST_ALTERNATE_BINUTILS_POST_INSTALL_HOOKS += HOST_ALTERNATE_BINUTILS_FIXUP_HARDLINKS |
| 54 | |
| 55 | $(eval $(host-autotools-package)) |
| 56 | |