From fc6512f3d4172ffe0780c1cc0707a60978728560 Mon Sep 17 00:00:00 2001 From: Abdoulaye Walsimou Gaye Date: Tue, 12 May 2009 18:36:18 +0200 Subject: Toolchain: Adds binutils build Signed-off-by: Abdoulaye Walsimou Gaye --- Makefile | 2 +- kconfig/binutils.kconfig | 47 +++++++++++++++++++++++++++++++++++++++++++++ mk/binutils.mk | 50 ++++++++++++++++++++++++++++++++++++++++++++++++ mk/toolchain.mk | 3 +++ 4 files changed, 101 insertions(+), 1 deletion(-) create mode 100644 mk/binutils.mk diff --git a/Makefile b/Makefile index 48dbc32..40f9706 100644 --- a/Makefile +++ b/Makefile @@ -59,7 +59,7 @@ endif ifeq ($(CONFIG_EMBTK_DOTCONFIG),) EMBTK_BUILD := xconfig else -EMBTK_BUILD := startbuild +EMBTK_BUILD := endif All: $(EMBTK_BUILD) diff --git a/kconfig/binutils.kconfig b/kconfig/binutils.kconfig index e69de29..7bf8776 100644 --- a/kconfig/binutils.kconfig +++ b/kconfig/binutils.kconfig @@ -0,0 +1,47 @@ +######################################################################################### +# GAYE Abdoulaye Walsimou, +# Copyright(C) 2009 GAYE Abdoulaye Walsimou. All rights reserved. +# +# This program is free software; you can distribute it and/or modify it +# under the terms of the GNU General Public License +# (Version 2 or later) published by the Free Software Foundation. +# +# This program is distributed in the hope it will be useful, but WITHOUT +# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or +# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +# for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston MA 02111-1307, USA. +######################################################################################### +# +# \file binutils.kconfig +# \brief binutils.kconfig of Embtoolkit +# \author GAYE Abdoulaye Walsimou, +# \date May 2009 +######################################################################################### + +choice + prompt "Version of binutils you wish" + default EMBTK_BINUTILS_VERSION_2_19_1 + help + Here you can choose which version on binutils your toochain + will use. + config EMBTK_BINUTILS_VERSION_2_19_1 + bool "binutils-2.19.1" + config EMBTK_BINUTILS_VERSION_2_19 + bool "binutils-2.19" + config EMBTK_BINUTILS_VERSION_2_18 + bool "binutils-2.18" + config EMBTK_BINUTILS_VERSION_2_17 + bool "binutils-2.17" +endchoice + +config EMBTK_BINUTILS_VERSION_STRING + string + default "2.19.1" if EMBTK_BINUTILS_VERSION_2_19_1 + default "2.19" if EMBTK_BINUTILS_VERSION_2_19 + default "2.18" if EMBTK_BINUTILS_VERSION_2_18 + default "2.17" if EMBTK_BINUTILS_VERSION_2_17 + diff --git a/mk/binutils.mk b/mk/binutils.mk new file mode 100644 index 0000000..ef1f0e2 --- /dev/null +++ b/mk/binutils.mk @@ -0,0 +1,50 @@ +######################################################################################### +# GAYE Abdoulaye Walsimou, +# Copyright(C) 2009 GAYE Abdoulaye Walsimou. All rights reserved. +# +# This program is free software; you can distribute it and/or modify it +# under the terms of the GNU General Public License +# (Version 2 or later) published by the Free Software Foundation. +# +# This program is distributed in the hope it will be useful, but WITHOUT +# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or +# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +# for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston MA 02111-1307, USA. +######################################################################################### +# +# \file binutils.mk +# \brief binutils.mk of Embtoolkit +# \author GAYE Abdoulaye Walsimou, +# \date May 2009 +######################################################################################### + +BINUTILS_VERSION := $(subst ",,$(strip $(CONFIG_EMBTK_BINUTILS_VERSION_STRING))) +BINUTILS_SITE := http://ftp.gnu.org/gnu/binutils +BINUTILS_PACKAGE := binutils-$(BINUTILS_VERSION).tar.bz2 +BINUTILS_BUILD_DIR := $(TOOLS_BUILD)/binutils + +binutils_install: $(BINUTILS_BUILD_DIR)/.built + +$(BINUTILS_BUILD_DIR)/.built: download_binutils $(BINUTILS_BUILD_DIR)/.decompressed \ + $(BINUTILS_BUILD_DIR)/.configured + @cd $(BINUTILS_BUILD_DIR); make; make install + @touch $@ + +download_binutils: + @test -e $(DOWNLOAD_DIR)/$(BINUTILS_PACKAGE) || \ + wget -O $(DOWNLOAD_DIR)/$(BINUTILS_PACKAGE) $(BINUTILS_SITE)/$(BINUTILS_PACKAGE) + +$(BINUTILS_BUILD_DIR)/.decompressed: + @tar -C $(TOOLS_BUILD) -xjf $(DOWNLOAD_DIR)/$(BINUTILS_PACKAGE) + @mkdir -p $(BINUTILS_BUILD_DIR) + @touch $@ + +$(BINUTILS_BUILD_DIR)/.configured: + @cd $(BINUTILS_BUILD_DIR); $(TOOLS_BUILD)/binutils-$(BINUTILS_VERSION)/configure \ + --prefix=$(TOOLS) --with-sysroot=$(SYSROOT) --disable-werror --disable-nls \ + --with-gmp=$(GMP_HOST_DIR) --with-mpfr=$(MPFR_HOST_DIR) --target=$(GNU_TARGET) + @touch $@ diff --git a/mk/toolchain.mk b/mk/toolchain.mk index 7d8537e..234c276 100644 --- a/mk/toolchain.mk +++ b/mk/toolchain.mk @@ -28,6 +28,9 @@ include $(EMBTK_ROOT)/mk/gmphost.mk #MPFR include $(EMBTK_ROOT)/mk/mpfrhost.mk +#binutils +include $(EMBTK_ROOT)/mk/binutils.mk + #GCC include $(EMBTK_ROOT)/mk/gcc.mk -- cgit v1.2.3