summaryrefslogtreecommitdiffstats
path: root/package
diff options
context:
space:
mode:
Diffstat (limited to 'package')
-rw-r--r--package/glibc/glibc.mk3
-rw-r--r--package/linux-headers/linux-headers.mk3
-rw-r--r--package/pkg-autotools.mk3
-rw-r--r--package/pkg-cmake.mk2
-rw-r--r--package/pkg-generic.mk14
-rw-r--r--package/pkg-python.mk2
-rw-r--r--package/uclibc/uclibc.mk3
7 files changed, 25 insertions, 5 deletions
diff --git a/package/glibc/glibc.mk b/package/glibc/glibc.mk
index 89eaaf6de5..f50b4591bc 100644
--- a/package/glibc/glibc.mk
+++ b/package/glibc/glibc.mk
@@ -31,6 +31,9 @@ endif
GLIBC_LICENSE = GPLv2+ (programs), LGPLv2.1+, BSD-3c, MIT (library)
GLIBC_LICENSE_FILES = $(addprefix $(GLIBC_SRC_SUBDIR)/,COPYING COPYING.LIB LICENSES)
+# glibc is part of the toolchain so disable the toolchain dependency
+GLIBC_ADD_TOOLCHAIN_DEPENDENCY = NO
+
# Before (e)glibc is configured, we must have the first stage
# cross-compiler and the kernel headers
GLIBC_DEPENDENCIES = host-gcc-initial linux-headers host-gawk
diff --git a/package/linux-headers/linux-headers.mk b/package/linux-headers/linux-headers.mk
index 30d3076592..6dac9e36f1 100644
--- a/package/linux-headers/linux-headers.mk
+++ b/package/linux-headers/linux-headers.mk
@@ -17,6 +17,9 @@ LINUX_HEADERS_SOURCE = linux-$(LINUX_HEADERS_VERSION).tar.xz
LINUX_HEADERS_INSTALL_STAGING = YES
+# linux-headers is part of the toolchain so disable the toolchain dependency
+LINUX_HEADERS_ADD_TOOLCHAIN_DEPENDENCY = NO
+
define LINUX_HEADERS_INSTALL_STAGING_CMDS
(cd $(@D); \
$(TARGET_MAKE_ENV) $(MAKE) \
diff --git a/package/pkg-autotools.mk b/package/pkg-autotools.mk
index 5f6c31d151..32ceef2086 100644
--- a/package/pkg-autotools.mk
+++ b/package/pkg-autotools.mk
@@ -210,7 +210,8 @@ endef
# This must be repeated from inner-generic-package, otherwise we get an empty
# _DEPENDENCIES if _AUTORECONF is YES. Also filter the result of _AUTORECONF
# away from the non-host rule
-$(2)_DEPENDENCIES ?= $(filter-out host-automake host-autoconf host-libtool $(1),\
+$(2)_DEPENDENCIES ?= $(filter-out host-automake host-autoconf host-libtool \
+ host-toolchain $(1),\
$(patsubst host-host-%,host-%,$(addprefix host-,$($(3)_DEPENDENCIES))))
diff --git a/package/pkg-cmake.mk b/package/pkg-cmake.mk
index dbe0d97c9a..f7e454bddd 100644
--- a/package/pkg-cmake.mk
+++ b/package/pkg-cmake.mk
@@ -89,7 +89,7 @@ endif
# This must be repeated from inner-generic-package, otherwise we only get
# host-cmake in _DEPENDENCIES because of the following line
-$(2)_DEPENDENCIES ?= $(filter-out $(1),$(patsubst host-host-%,host-%,$(addprefix host-,$($(3)_DEPENDENCIES))))
+$(2)_DEPENDENCIES ?= $(filter-out host-toolchain $(1),$(patsubst host-host-%,host-%,$(addprefix host-,$($(3)_DEPENDENCIES))))
$(2)_DEPENDENCIES += host-cmake
diff --git a/package/pkg-generic.mk b/package/pkg-generic.mk
index e5b04ff643..b135b140ea 100644
--- a/package/pkg-generic.mk
+++ b/package/pkg-generic.mk
@@ -351,8 +351,18 @@ endif
$(2)_REDISTRIBUTE ?= YES
-
-$(2)_DEPENDENCIES ?= $(filter-out $(1),$(patsubst host-host-%,host-%,$(addprefix host-,$($(3)_DEPENDENCIES))))
+# When a target package is a toolchain dependency set this variable to
+# 'NO' so the 'toolchain' dependency is not added to prevent a circular
+# dependency
+$(2)_ADD_TOOLCHAIN_DEPENDENCY ?= YES
+
+$(2)_DEPENDENCIES ?= $(filter-out host-toolchain $(1),\
+ $(patsubst host-host-%,host-%,$(addprefix host-,$($(3)_DEPENDENCIES))))
+ifeq ($(4),target)
+ifeq ($$($(2)_ADD_TOOLCHAIN_DEPENDENCY),YES)
+$(2)_DEPENDENCIES += toolchain
+endif
+endif
$(2)_INSTALL_STAGING ?= NO
$(2)_INSTALL_IMAGES ?= NO
diff --git a/package/pkg-python.mk b/package/pkg-python.mk
index 9b3c97af35..f33980aaed 100644
--- a/package/pkg-python.mk
+++ b/package/pkg-python.mk
@@ -142,7 +142,7 @@ endif
# be derived automatically from the dependencies of the corresponding
# target package. For example, target packages need
# host-python-distutilscross, but not host packages.
-$(2)_DEPENDENCIES ?= $(filter-out host-python host-python-setuptools host-python-distutilscross $(1),$(patsubst host-host-%,host-%,$(addprefix host-,$($(3)_DEPENDENCIES))))
+$(2)_DEPENDENCIES ?= $(filter-out host-python host-python-setuptools host-python-distutilscross host-toolchain $(1),$(patsubst host-host-%,host-%,$(addprefix host-,$($(3)_DEPENDENCIES))))
# Target packages need both the python interpreter on the target (for
# runtime) and the python interpreter on the host (for
diff --git a/package/uclibc/uclibc.mk b/package/uclibc/uclibc.mk
index 7df9721c35..ea1c6946a1 100644
--- a/package/uclibc/uclibc.mk
+++ b/package/uclibc/uclibc.mk
@@ -22,6 +22,9 @@ endif
UCLIBC_INSTALL_STAGING = YES
+# uclibc is part of the toolchain so disable the toolchain dependency
+UCLIBC_ADD_TOOLCHAIN_DEPENDENCY = NO
+
# Before uClibc is configured, we must have the first stage
# cross-compiler and the kernel headers
UCLIBC_DEPENDENCIES = host-gcc-initial linux-headers
OpenPOWER on IntegriCloud