aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEtienne Champetier <champetier.etienne@gmail.com>2019-11-08 06:58:01 -0800
committerPetr Štetiar <ynezz@true.cz>2019-11-09 08:27:58 +0100
commitc1d19b37d5ccda858c24b5ab4f7ad9ba30552c5a (patch)
tree03ba4d4a8f0f2441266db4f9ae180f31b68210c9
parentdfd8c3bfdccfde7b84735aafd7b2c69cc4d9b087 (diff)
downloadupstream-c1d19b37d5ccda858c24b5ab4f7ad9ba30552c5a.tar.gz
upstream-c1d19b37d5ccda858c24b5ab4f7ad9ba30552c5a.tar.bz2
upstream-c1d19b37d5ccda858c24b5ab4f7ad9ba30552c5a.zip
build: cleanup possibly dangling Python 3 host symlink
When switching from master branch to 19.07 or older, we need to ensure that Python symlink in staging bin directory points to Python 2. We can't rely completly just on SetupHostCommand as its executed only in cases when the $(STAGING_DIR_HOST)/bin/python doesn't already exist, so we need to remove it before running SetupHostCommand. This is a cherry-pick of 3b68fb57c938af3948ae4c2da61501183fbef649 with python3 instead of python2 Signed-off-by: Petr Štetiar <ynezz@true.cz> Signed-off-by: Etienne Champetier <champetier.etienne@gmail.com> (cherry picked from commit 799de7c641ffa98323929a20a8d92c7cc4ebb251)
-rw-r--r--include/prereq-build.mk2
-rw-r--r--include/prereq.mk12
2 files changed, 14 insertions, 0 deletions
diff --git a/include/prereq-build.mk b/include/prereq-build.mk
index 209392b720..79d6ae1e6c 100644
--- a/include/prereq-build.mk
+++ b/include/prereq-build.mk
@@ -141,6 +141,8 @@ $(eval $(call SetupHostCommand,wget,Please install GNU 'wget', \
$(eval $(call SetupHostCommand,perl,Please install Perl 5.x, \
perl --version | grep "perl.*v5"))
+$(eval $(call CleanupPython3))
+
$(eval $(call SetupHostCommand,python,Please install Python 2.x, \
python2.7 -V 2>&1 | grep 'Python 2.7', \
python2 -V 2>&1 | grep 'Python 2', \
diff --git a/include/prereq.mk b/include/prereq.mk
index 0f0f253744..60f1e47c3d 100644
--- a/include/prereq.mk
+++ b/include/prereq.mk
@@ -66,6 +66,18 @@ define RequireHeader
$$(eval $$(call Require,$(1),$(2)))
endef
+define CleanupPython3
+ define Require/python3-cleanup
+ if [ -f "$(STAGING_DIR_HOST)/bin/python" ] && \
+ $(STAGING_DIR_HOST)/bin/python -V 2>&1 | \
+ grep -q 'Python 3'; then \
+ rm $(STAGING_DIR_HOST)/bin/python; \
+ fi
+ endef
+
+ $$(eval $$(call Require,python3-cleanup))
+endef
+
define QuoteHostCommand
'$(subst ','"'"',$(strip $(1)))'
endef