summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorYann E. MORIN <yann.morin.1998@free.fr>2014-02-21 23:17:52 +0100
committerPeter Korsgaard <peter@korsgaard.com>2014-02-22 21:56:57 +0100
commit5f5e5f2919c631ead7aee4e3546e9680d3e63ace (patch)
tree25f0146a78b5e74d4b3827c7b95fd7d05b3434a6
parentf0862592b3caf5bc9cd347fd29634673cfbbabd7 (diff)
downloadbuildroot-5f5e5f2919c631ead7aee4e3546e9680d3e63ace.tar.gz
buildroot-5f5e5f2919c631ead7aee4e3546e9680d3e63ace.zip
Makefile: internally use absolute paths to BR2_EXTERNAL
Using a relative path for BR2_EXTERNAL, and using an external defconfig, such as in (from a Buildroot top-dir): make O=.. BR2_EXTERNAL=.. foo_defconfig is broken. It is unclear why the %_defconfig rule recurses in that case. This patch internaly makes BR2_EXTERNAL canonical (ie. makes it an absolute path), and checks the directory exists. [Peter: s/relatively/relative/ as suggested by Thomas] Reported-by: Jérémy Rosen <jeremy.rosen@openwide.fr> Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Peter Korsgaard <jacmet@uclibc.org> Cc: Romain Naour <romain.naour@openwide.fr> Cc: Arnout Vandecappelle <arnout@mind.be> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
-rw-r--r--Makefile5
1 files changed, 5 insertions, 0 deletions
diff --git a/Makefile b/Makefile
index 98d32c046c..502991f658 100644
--- a/Makefile
+++ b/Makefile
@@ -119,6 +119,11 @@ ifeq ($(BR2_EXTERNAL),)
override BR2_EXTERNAL = support/dummy-external
$(shell rm -f $(BR2_EXTERNAL_FILE))
else
+ _BR2_EXTERNAL = $(shell cd $(BR2_EXTERNAL) >/dev/null 2>&1 && pwd)
+ ifeq ($(_BR2_EXTERNAL),)
+ $(error BR2_EXTERNAL='$(BR2_EXTERNAL)' does not exist, relative to $(TOPDIR))
+ endif
+ override BR2_EXTERNAL := $(_BR2_EXTERNAL)
$(shell echo BR2_EXTERNAL ?= $(BR2_EXTERNAL) > $(BR2_EXTERNAL_FILE))
endif
OpenPOWER on IntegriCloud