summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Olbrich <m.olbrich@pengutronix.de>2015-11-16 19:10:12 +0100
committerMichael Olbrich <m.olbrich@pengutronix.de>2016-05-16 12:37:18 +0200
commitbbee926e7354e31cb88bcb88d6ebe2733128a7f2 (patch)
treeb918521dc46455078d233dc0842a0f25557ba0c7
parent4631764f7306a450b75711a7b5df0495cd722025 (diff)
downloadOSELAS.Toolchain-bbee926e7354e31cb88bcb88d6ebe2733128a7f2.tar.gz
OSELAS.Toolchain-bbee926e7354e31cb88bcb88d6ebe2733128a7f2.tar.xz
uclibc: cleanup rules
Don't reuse the uclibc source tree in uclibc-headers. It breaks 'ptxdist -j'. Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
-rw-r--r--rules/uclibc-headers.make47
-rw-r--r--rules/uclibc.in1
-rw-r--r--rules/uclibc.make42
3 files changed, 42 insertions, 48 deletions
diff --git a/rules/uclibc-headers.make b/rules/uclibc-headers.make
index 25f019b..06d7a85 100644
--- a/rules/uclibc-headers.make
+++ b/rules/uclibc-headers.make
@@ -13,34 +13,27 @@
#
PACKAGES-$(PTXCONF_UCLIBC_HEADERS) += uclibc-headers
+#
+# Paths and names
+#
+UCLIBC_HEADERS_VERSION := $(call remove_quotes,$(PTXCONF_UCLIBC_VERSION))
+UCLIBC_HEADERS_MD5 := $(call remove_quotes,$(PTXCONF_UCLIBC_MD5))
+UCLIBC_HEADERS := uClibc-$(UCLIBC_HEADERS_VERSION)
+UCLIBC_HEADERS_SUFFIX := tar.bz2
+UCLIBC_HEADERS_SOURCE := $(SRCDIR)/$(UCLIBC_HEADERS).$(UCLIBC_HEADERS_SUFFIX)
+UCLIBC_HEADERS_DIR := $(BUILDDIR)/uClibc-headers-$(UCLIBC_HEADERS_VERSION)
+UCLIBC_HEADERS_URL = $(UCLIBC_URL)
+UCLIBC_HEADERS_CONFIG = $(UCLIBC_CONFIG)
+
# ----------------------------------------------------------------------------
# Prepare
# ----------------------------------------------------------------------------
-$(UCLIBC_CONFIG):
- @echo
- @echo "**************************************************************************"
- @echo "**** Please generate a uclibc config with 'ptxdist menuconfig uclibc' ****"
- @echo "**************************************************************************"
- @echo
- @echo
- @exit 1
+UCLIBC_HEADERS_ENV = $(UCLIBC_ENV)
-$(STATEDIR)/uclibc-headers.prepare: $(STATEDIR)/uclibc.extract $(UCLIBC_CONFIG)
+$(STATEDIR)/uclibc-headers.prepare: $(UCLIBC_HEADERS_CONFIG)
@$(call targetinfo)
-
- @if [ -f $(UCLIBC_CONFIG) ]; then \
- echo "Using uclibc config file: $(UCLIBC_CONFIG)"; \
- install -m 644 $(UCLIBC_CONFIG) $(UCLIBC_DIR)/.config; \
- else \
- echo "ERROR: No such uclibc config: $(UCLIBC_CONFIG)"; \
- exit 1; \
- fi
-
- cd $(UCLIBC_DIR) && yes "" | \
- $(UCLIBC_PATH) $(UCLIBC_ENV) $(MAKE) \
- $(UCLIBC_MAKE_OPT) oldconfig
-
+ @$(call world/kconfig, UCLIBC_HEADERS, oldconfig)
@$(call touch)
# ----------------------------------------------------------------------------
@@ -55,12 +48,8 @@ $(STATEDIR)/uclibc-headers.compile:
# Install
# ----------------------------------------------------------------------------
-$(STATEDIR)/uclibc-headers.install:
- @$(call targetinfo)
- cd $(UCLIBC_DIR) && \
- $(UCLIBC_PATH) $(UCLIBC_ENV) \
- $(MAKE) $(UCLIBC_MAKE_OPT) \
- install_headers
- @$(call touch)
+UCLIBC_HEADERS_INSTALL_OPT = \
+ $(UCLIBC_MAKE_OPT) \
+ install_headers
# vim: syntax=make
diff --git a/rules/uclibc.in b/rules/uclibc.in
index 43813e8..eb41ec3 100644
--- a/rules/uclibc.in
+++ b/rules/uclibc.in
@@ -5,6 +5,7 @@ menuconfig UCLIBC
select TOOLCHAIN_ENABLE_SYSROOT
select TOOLCHAIN_DISABLE_MULTILIB
+ select UCLIBC_HEADERS
select CROSS_GCC_FIRST
select CROSS_GCC_ENABLE_CXA_ATEXIT
select CROSS_GCC_DISABLE_SJLJ_EXCEPTIONS
diff --git a/rules/uclibc.make b/rules/uclibc.make
index 2a03bfe..8ce6fb3 100644
--- a/rules/uclibc.make
+++ b/rules/uclibc.make
@@ -20,7 +20,9 @@ UCLIBC_VERSION := $(call remove_quotes,$(PTXCONF_UCLIBC_VERSION))
UCLIBC_MD5 := $(call remove_quotes,$(PTXCONF_UCLIBC_MD5))
UCLIBC := uClibc-$(UCLIBC_VERSION)
UCLIBC_SUFFIX := tar.bz2
-UCLIBC_URL := http://www.uclibc.org/downloads/$(UCLIBC).$(UCLIBC_SUFFIX)
+UCLIBC_URL := \
+ http://www.uclibc.org/downloads/$(UCLIBC).$(UCLIBC_SUFFIX) \
+ http://www.uclibc.org/downloads/snapshots/$(UCLIBC).$(UCLIBC_SUFFIX)
UCLIBC_SOURCE := $(SRCDIR)/$(UCLIBC).$(UCLIBC_SUFFIX)
UCLIBC_DIR := $(BUILDDIR)/$(UCLIBC)
UCLIBC_CONFIG := $(call remove_quotes, $(PTXDIST_PLATFORMCONFIGDIR)/config/$(PTXCONF_UCLIBC_CONFIG))
@@ -29,8 +31,24 @@ UCLIBC_CONFIG := $(call remove_quotes, $(PTXDIST_PLATFORMCONFIGDIR)/config/$(PTX
# Prepare
# ----------------------------------------------------------------------------
-UCLIBC_PATH := PATH=$(CROSS_PATH)
-UCLIBC_ENV := KCONFIG_NOTIMESTAMP=1 $(HOST_ENV_CC)
+UCLIBC_ENV := \
+ $(HOST_ENV_CC) \
+ KCONFIG_NOTIMESTAMP=1 \
+ $(if $(filter 0,$(PTXDIST_VERBOSE)),V=)
+
+$(UCLIBC_CONFIG):
+ @echo
+ @echo "**************************************************************************"
+ @echo "**** Please generate a uclibc config with 'ptxdist menuconfig uclibc' ****"
+ @echo "**************************************************************************"
+ @echo
+ @echo
+ @exit 1
+
+$(STATEDIR)/uclibc.prepare: $(UCLIBC_CONFIG)
+ @$(call targetinfo)
+ @$(call world/kconfig, UCLIBC, oldconfig)
+ @$(call touch)
UCLIBC_MAKE_OPT := \
CROSS=$(COMPILER_PREFIX) \
@@ -43,28 +61,14 @@ UCLIBC_MAKE_OPT := \
UCLIBC_INSTALL_OPT := \
$(UCLIBC_MAKE_OPT) \
- DEVEL_PREFIX=/usr/ \
- PREFIX=$(SYSROOT) \
install
-$(STATEDIR)/uclibc.prepare: $(STATEDIR)/uclibc-headers.install
-
# ----------------------------------------------------------------------------
# oldconfig / menuconfig
# ----------------------------------------------------------------------------
uclibc_oldconfig uclibc_menuconfig: $(STATEDIR)/uclibc.extract
- @if test -e $(UCLIBC_CONFIG); then \
- cp $(UCLIBC_CONFIG) $(UCLIBC_DIR)/.config; \
- fi
-
- @cd $(UCLIBC_DIR) && \
- $(UCLIBC_PATH) $(UCLIBC_ENV) $(MAKE) $(UCLIBC_MAKEVARS) $(subst uclibc_,,$@)
-
- @if cmp -s $(UCLIBC_DIR)/.config $(UCLIBC_CONFIG); then \
- echo "uclibc configuration unchanged"; \
- else \
- cp $(UCLIBC_DIR)/.config $(UCLIBC_CONFIG); \
- fi
+ @$(call world/kconfig, UCLIBC, $(subst uclibc_,,$@))
+ @$(call finish)
# vim: syntax=make