From 9dea6fb2a581959eba820fafa42fda96879d083c Mon Sep 17 00:00:00 2001 From: Abdoulaye Walsimou Gaye Date: Sat, 6 Aug 2011 23:52:15 +0200 Subject: Toolchain: uClibc: Build the toolchain in 3 stages as for eglibc Signed-off-by: Abdoulaye Walsimou Gaye --- mk/toolchain.mk | 21 +++++++++++---------- mk/uclibc.mk | 49 +++++++++++++++++++++++++++++++------------------ 2 files changed, 42 insertions(+), 28 deletions(-) diff --git a/mk/toolchain.mk b/mk/toolchain.mk index b48266d..57168a8 100644 --- a/mk/toolchain.mk +++ b/mk/toolchain.mk @@ -88,20 +88,21 @@ EMBTK_CMAKE_INSTALL := $(if $(CONFIG_EMBTK_HOST_HAVE_CMAKE),cmake_install,) ifeq ($(CONFIG_EMBTK_CLIB_EGLIBC),y) #EGLIBC include $(EMBTK_ROOT)/mk/eglibc.mk -TOOLCHAINBUILD := mkinitialpath ccache_install \ - $(AUTOTOOLS_INSTALL) $(EMBTK_CMAKE_INSTALL) \ - kernel-headers_install\ - gmphost_install mpfrhost_install mpchost_install \ - binutils_install gcc1_install eglibc-headers_install \ +TOOLCHAINBUILD := mkinitialpath ccache_install \ + $(AUTOTOOLS_INSTALL) $(EMBTK_CMAKE_INSTALL) \ + kernel-headers_install \ + gmphost_install mpfrhost_install mpchost_install \ + binutils_install gcc1_install eglibc-headers_install \ gcc2_install eglibc_install gcc3_install else #uClibc include $(EMBTK_ROOT)/mk/uclibc.mk -TOOLCHAINBUILD := mkinitialpath ccache_install \ - $(AUTOTOOLS_INSTALL) $(EMBTK_CMAKE_INSTALL) \ - kernel-headers_install \ - gmphost_install mpfrhost_install mpchost_install \ - binutils_install gcc1_install uclibc_install gcc3_install +TOOLCHAINBUILD := mkinitialpath ccache_install \ + $(AUTOTOOLS_INSTALL) $(EMBTK_CMAKE_INSTALL) \ + kernel-headers_install \ + gmphost_install mpfrhost_install mpchost_install \ + binutils_install gcc1_install uclibc_headers_install \ + gcc2_install uclibc_install gcc3_install endif #targets diff --git a/mk/uclibc.mk b/mk/uclibc.mk index 3874605..e13f1b0 100755 --- a/mk/uclibc.mk +++ b/mk/uclibc.mk @@ -39,26 +39,39 @@ EMBTK_UCLIBC_CFLAGS += $(EMBTK_TARGET_ABI) $(EMBTK_TARGET_FLOAT_CFLAGS) EMBTK_UCLIBC_CFLAGS += $(EMBTK_TARGET_MARCH) -pipe uclibc_install: $(UCLIBC_BUILD_DIR)/.installed +uclibc_headers_install: $(UCLIBC_BUILD_DIR)/.headers_installed -$(UCLIBC_BUILD_DIR)/.installed: uclibc_download \ +$(UCLIBC_BUILD_DIR)/.installed: + $(call embtk_generic_msg,"Build and install uClibc-$(UCLIBC_VERSION) ...") + $(Q)$(MAKE) -C $(UCLIBC_BUILD_DIR) PREFIX=$(SYSROOT)/ \ + CROSS_COMPILER_PREFIX="$(TOOLS)/bin/$(STRICT_GNU_TARGET)-" \ + SHARED_LIB_LOADER_PREFIX="/$(LIBDIR)/" \ + MULTILIB_DIR="/$(LIBDIR)/" \ + RUNTIME_PREFIX="/" DEVEL_PREFIX="/usr/" \ + KERNEL_HEADERS="$(SYSROOT)/usr/include/" \ + UCLIBC_EXTRA_CFLAGS="$(EMBTK_UCLIBC_CFLAGS)" install + +$(UCLIBC_BUILD_DIR)/.headers_installed: uclibc_download \ $(UCLIBC_BUILD_DIR)/.decompressed $(UCLIBC_BUILD_DIR)/.configured - $(call embtk_generic_msg,"Building and installing \ - uClibc-$(UCLIBC_VERSION) ...") - $(MAKE) -C $(UCLIBC_BUILD_DIR) oldconfig - $(MAKE) -C $(UCLIBC_BUILD_DIR) PREFIX=$(SYSROOT)/ \ - CROSS_COMPILER_PREFIX="$(TOOLS)/bin/$(STRICT_GNU_TARGET)-" \ - SHARED_LIB_LOADER_PREFIX="/$(LIBDIR)/" \ - MULTILIB_DIR="/$(LIBDIR)/" \ - RUNTIME_PREFIX="/" DEVEL_PREFIX="/usr/" \ - KERNEL_HEADERS="$(SYSROOT)/usr/include/" \ - UCLIBC_EXTRA_CFLAGS="$(EMBTK_UCLIBC_CFLAGS)" install_headers - $(MAKE) -C $(UCLIBC_BUILD_DIR) PREFIX=$(SYSROOT)/ \ - CROSS_COMPILER_PREFIX="$(TOOLS)/bin/$(STRICT_GNU_TARGET)-" \ - SHARED_LIB_LOADER_PREFIX="/$(LIBDIR)/" \ - MULTILIB_DIR="/$(LIBDIR)/" \ - RUNTIME_PREFIX="/" DEVEL_PREFIX="/usr/" \ - KERNEL_HEADERS="$(SYSROOT)/usr/include/" \ - UCLIBC_EXTRA_CFLAGS="$(EMBTK_UCLIBC_CFLAGS)" install + $(call embtk_generic_msg,"Install uClibc-$(UCLIBC_VERSION) headers ...") + $(Q)$(MAKE) -C $(UCLIBC_BUILD_DIR) oldconfig + $(Q)$(MAKE) -C $(UCLIBC_BUILD_DIR) PREFIX=$(SYSROOT)/ \ + CROSS_COMPILER_PREFIX="$(TOOLS)/bin/$(STRICT_GNU_TARGET)-" \ + SHARED_LIB_LOADER_PREFIX="/$(LIBDIR)/" \ + MULTILIB_DIR="/$(LIBDIR)/" \ + RUNTIME_PREFIX="/" DEVEL_PREFIX="/usr/" \ + KERNEL_HEADERS="$(SYSROOT)/usr/include/" \ + UCLIBC_EXTRA_CFLAGS="$(EMBTK_UCLIBC_CFLAGS)" install_headers + $(Q)$(MAKE) -C $(UCLIBC_BUILD_DIR) PREFIX=$(SYSROOT)/ \ + CROSS_COMPILER_PREFIX="$(TOOLS)/bin/$(STRICT_GNU_TARGET)-" \ + SHARED_LIB_LOADER_PREFIX="/$(LIBDIR)/" \ + MULTILIB_DIR="/$(LIBDIR)/" \ + RUNTIME_PREFIX="/" DEVEL_PREFIX="/usr/" \ + KERNEL_HEADERS="$(SYSROOT)/usr/include/" \ + UCLIBC_EXTRA_CFLAGS="$(EMBTK_UCLIBC_CFLAGS)" install_startfiles + $(Q)$(TOOLS)/bin/$(STRICT_GNU_TARGET)-gcc -nostdlib -nostartfiles \ + -shared -x c /dev/null -o $(SYSROOT)/usr/$(LIBDIR)/libc.so + $(Q)touch $@ uclibc_download: $(call embtk_generic_msg,"downloading uClibc-$(UCLIBC_VERSION) \ -- cgit v1.2.3