From: Andre Heider Date: Tue, 10 Aug 2021 10:22:17 +0000 (+0200) Subject: prereq-build: require python3-distutils X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=60af8d753343691c4a647bfc7c51ef6eb92df9f2;p=openwrt%2Fstaging%2Fblogic.git prereq-build: require python3-distutils Debian and Ubuntu ship a python3-minimal package which does not include the distutils module. This is not supported by upstream and can be considered a broken python distribution. In practice, many scripts depend on said module, and this is a reoccuring pain point for building various OpenWrt packages. Require and check for said module, enough time has been wasted on this. A list of just the most recent issues: https://github.com/openwrt/packages/pull/16304 https://github.com/openwrt/packages/pull/16027 https://github.com/openwrt/packages/pull/15443 https://github.com/openwrt/packages/pull/14394 https://github.com/openwrt/packages/pull/12909 https://github.com/openwrt/packages/issues/12443 https://github.com/openwrt/packages/pull/11035 https://github.com/openwrt/packages/issues/10993 Signed-off-by: Andre Heider --- diff --git a/include/prereq-build.mk b/include/prereq-build.mk index 8fbf6f22c4e5..922e7c544bbf 100644 --- a/include/prereq-build.mk +++ b/include/prereq-build.mk @@ -170,6 +170,10 @@ $(eval $(call SetupHostCommand,python3,Please install Python >= 3.6, \ python3.6 -V 2>&1 | grep 'Python 3', \ python3 -V 2>&1 | grep -E 'Python 3\.[6-9]\.?')) +$(eval $(call TestHostCommand,python3-distutils, \ + Please install the Python3 distutils module, \ + $(STAGING_DIR_HOST)/bin/python3 -c 'import distutils')) + $(eval $(call SetupHostCommand,git,Please install Git (git-core) >= 1.7.12.2, \ git --exec-path | xargs -I % -- grep -q -- --recursive %/git-submodule))