elf2flt: convert to the package infrastructure

[Peter: Correct legacy position]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
This commit is contained in:
Thomas Petazzoni 2013-06-30 21:28:57 +02:00 committed by Peter Korsgaard
parent 3c3211ccde
commit e21db00026
25 changed files with 38 additions and 51 deletions

View File

@ -68,6 +68,14 @@ config BR2_PACKAGE_DOSFSTOOLS_MKDOSFS
help
mkdosfs was renamed upstream to mkfs.fat for consistency.
config BR2_ELF2FLT
bool "the elf2flt option has been renamed"
select BR2_LEGACY
help
The BR2_ELF2FLT option has been renamed to
BR2_PACKAGE_HOST_ELF2FLT due to the conversion of elf2flt to
the package infrastructure.
###############################################################################
comment "Legacy options removed in 2013.05"

View File

@ -1,4 +1,4 @@
config BR2_ELF2FLT
config BR2_PACKAGE_HOST_ELF2FLT
bool "Enable elf2flt support?"
depends on BR2_arm || BR2_sh || BR2_sparc
help

View File

@ -0,0 +1,28 @@
#############################################################
#
# elf2flt
#
#############################################################
ELF2FLT_SOURCE =
HOST_ELF2FLT_SOURCE =
ELF2FLT_VERSION = cvs
ELF2FLT_LICENSE = GPLv2+
ELF2FLT_LICENSE_FILES = LICENSE.TXT
HOST_ELF2FLT_DEPENDENCIES = host-binutils host-zlib
# It is not exactly a host variant, but more a cross variant, which is
# why we pass a special --target option.
HOST_ELF2FLT_CONF_OPT = \
--with-bfd-include-dir=$(HOST_BINUTILS_DIR)/bfd/ \
--with-binutils-include-dir=$(HOST_BINUTILS_DIR)/include/ \
--with-libbfd=$(HOST_BINUTILS_DIR)/bfd/libbfd.a \
--with-libiberty=$(HOST_BINUTILS_DIR)/libiberty/libiberty.a \
--target=$(GNU_TARGET_NAME)
define HOST_ELF2FLT_EXTRACT_CMDS
cp -r package/elf2flt/src/* $(@D)
endef
$(eval $(host-autotools-package))

View File

@ -1,46 +0,0 @@
################################################################################
#
# elf2flt
#
################################################################################
# we keep a local checkout of uClinux CVS
ELF2FLT_SOURCE:=$(ELF2FLT_DIR)/elf2flt
ELF2FLT_DIR:=$(TOOLCHAIN_DIR)/elf2flt
ELF2FLT_BINARY:=elf2flt
$(ELF2FLT_DIR)/.unpacked:
cp -r toolchain/elf2flt/elf2flt "$(TOOLCHAIN_DIR)/elf2flt"
touch $@
$(ELF2FLT_DIR)/.patched: $(ELF2FLT_DIR)/.unpacked
$(call CONFIG_UPDATE,$(@D))
touch $@
$(ELF2FLT_DIR)/.configured: $(ELF2FLT_DIR)/.patched
(cd $(ELF2FLT_DIR); rm -rf config.cache; \
LDFLAGS="$(HOST_LDFLAGS) -lz" \
$(ELF2FLT_DIR)/configure $(QUIET) \
--with-bfd-include-dir=$(HOST_BINUTILS_DIR)/bfd/ \
--with-binutils-include-dir=$(HOST_BINUTILS_DIR)/include/ \
--target=$(GNU_TARGET_NAME) \
--with-libbfd=$(HOST_BINUTILS_DIR)/bfd/libbfd.a \
--with-libiberty=$(HOST_BINUTILS_DIR)/libiberty/libiberty.a \
--prefix=$(HOST_DIR)/usr)
touch $@
$(ELF2FLT_DIR)/$(ELF2FLT_BINARY): $(ELF2FLT_DIR)/.configured
$(MAKE) -C $(ELF2FLT_DIR) all
$(MAKE) -C $(ELF2FLT_DIR) install
elf2flt: uclibc_target uclibc-configured binutils gcc host-zlib $(ELF2FLT_DIR)/$(ELF2FLT_BINARY)
elf2flt-clean:
rm -rf $(ELF2FLT_SOURCE)
elf2flt-dirclean:
rm -rf $(ELF2FLT_SOURCE)
ifeq ($(BR2_ELF2FLT),y)
TARGETS+=elf2flt
endif

View File

@ -1,6 +1,5 @@
# Include files required for the internal toolchain backend
include toolchain/elf2flt/elf2flt.mk
include toolchain/gcc/gcc-uclibc-4.x.mk
include toolchain/kernel-headers/kernel-headers.mk
include toolchain/uClibc/uclibc.mk

View File

@ -98,7 +98,7 @@ config BR2_PTHREAD_DEBUG
help
Build the thread library with debugging enabled.
source "toolchain/elf2flt/Config.in"
source "package/elf2flt/Config.in.host"
config BR2_VFP_FLOAT
bool "Use ARM Vector Floating Point unit"

View File

@ -2,7 +2,6 @@
# Explicit ordering:
include toolchain/helpers.mk
include toolchain/elf2flt/elf2flt.mk
include toolchain/gcc/gcc-uclibc-4.x.mk
include toolchain/toolchain-crosstool-ng/crosstool-ng.mk
include toolchain/uClibc/uclibc.mk

View File

@ -1,7 +1,6 @@
# Required includes for the external toolchain backend
include toolchain/helpers.mk
include toolchain/elf2flt/elf2flt.mk
include toolchain/gcc/gcc-uclibc-4.x.mk
include toolchain/kernel-headers/kernel-headers.mk
include toolchain/toolchain-external/ext-tool.mk