[Buildroot] [PATCH 1/1] package/pkg-generic: handle host-php as an extract dependency
Bernd Kuhls
bernd at kuhls.net
Fri Aug 4 06:23:07 UTC 2023
Fixes:
http://autobuild.buildroot.net/results/506/50658c50fde8145fac320e3b17004e98c78c6c4d/
Although composer has host-php as build dependency, in the case of
BR2_PER_PACKAGE_DIRECTORIES=y host-php was not built during extract stage
of the composer package.
Signed-off-by: Bernd Kuhls <bernd at kuhls.net>
---
package/composer/composer.mk | 2 +-
package/pkg-utils.mk | 2 ++
support/dependencies/check-host-php.mk | 4 ++++
support/dependencies/check-host-php.sh | 14 ++++++++++++++
4 files changed, 21 insertions(+), 1 deletion(-)
create mode 100644 support/dependencies/check-host-php.mk
create mode 100755 support/dependencies/check-host-php.sh
diff --git a/package/composer/composer.mk b/package/composer/composer.mk
index a24c020796..ad1785cba6 100644
--- a/package/composer/composer.mk
+++ b/package/composer/composer.mk
@@ -18,7 +18,7 @@ HOST_COMPOSER_DEPENDENCIES = host-php
define HOST_COMPOSER_EXTRACT_CMDS
cp $(HOST_COMPOSER_DL_DIR)/$(COMPOSER_SOURCE) $(@D)
- cd $(@D); $(HOST_DIR)/bin/php <<< '<?php \
+ cd $(@D); $(PHP) <<< '<?php \
$$p = new Phar("$(COMPOSER_SOURCE)"); \
$$p->extractTo(".", "LICENSE");'
endef
diff --git a/package/pkg-utils.mk b/package/pkg-utils.mk
index 530638566c..353190c334 100644
--- a/package/pkg-utils.mk
+++ b/package/pkg-utils.mk
@@ -55,6 +55,7 @@ INFLATE.bz2 = $(BZCAT)
INFLATE.gz = $(ZCAT)
INFLATE.lz = $(LZCAT)
INFLATE.lzma = $(XZCAT)
+INFLATE.phar = $(PHP)
INFLATE.tbz = $(BZCAT)
INFLATE.tbz2 = $(BZCAT)
INFLATE.tgz = $(ZCAT)
@@ -64,6 +65,7 @@ INFLATE.tar = cat
suitable-extractor = $(INFLATE$(suffix $(1)))
EXTRACTOR_PKG_DEPENDENCY.lzma = $(BR2_XZCAT_HOST_DEPENDENCY)
+EXTRACTOR_PKG_DEPENDENCY.phar = $(BR2_PHP_HOST_DEPENDENCY)
EXTRACTOR_PKG_DEPENDENCY.xz = $(BR2_XZCAT_HOST_DEPENDENCY)
EXTRACTOR_PKG_DEPENDENCY.lz = $(BR2_LZIP_HOST_DEPENDENCY)
diff --git a/support/dependencies/check-host-php.mk b/support/dependencies/check-host-php.mk
new file mode 100644
index 0000000000..eac98e73d9
--- /dev/null
+++ b/support/dependencies/check-host-php.mk
@@ -0,0 +1,4 @@
+ifeq (,$(call suitable-host-package,php,$(PHP)))
+BR2_PHP_HOST_DEPENDENCY = host-php
+PHP = $(HOST_DIR)/bin/php
+endif
diff --git a/support/dependencies/check-host-php.sh b/support/dependencies/check-host-php.sh
new file mode 100755
index 0000000000..d049a89455
--- /dev/null
+++ b/support/dependencies/check-host-php.sh
@@ -0,0 +1,14 @@
+#!/bin/sh
+
+candidate="$1"
+
+php=`which $candidate 2>/dev/null`
+if [ ! -x "$php" ]; then
+ php=`which php 2>/dev/null`
+ if [ ! -x "$php" ]; then
+ # echo nothing: no suitable php found
+ exit 1
+ fi
+fi
+
+echo $php
--
2.39.2
More information about the buildroot
mailing list