On Fri, Jun 03, 2022 at 05:12:08PM +0200, Andreas Helmcke wrote: > PHP5 is gone with commit f356f581e17a9474bdc01dbe3907f96558101609 "php5: > remove old package" > > Let's try now with PHP8 instead and a minimal feature set due to limited > test options. The remaining features can be extended on demand. > > Co-authored-by: Juergen Borleis <[email protected]> > Signed-off-by: Juergen Borleis <[email protected]> > Signed-off-by: Andreas Helmcke <[email protected]> > --- > v2 changes: > - format: correct use of tabs for indention > > rules/php8.in | 75 +++++++++++++++++++++++++++++ > rules/php8.make | 122 ++++++++++++++++++++++++++++++++++++++++++++++++ > 2 files changed, 197 insertions(+) > create mode 100644 rules/php8.in > create mode 100644 rules/php8.make > > diff --git a/rules/php8.in b/rules/php8.in > new file mode 100644 > index 000000000..2ed2ea7fd > --- /dev/null > +++ b/rules/php8.in > @@ -0,0 +1,75 @@ > +## SECTION=scripting_languages > +# php6 configuration > + > +menuconfig PHP8 > + tristate > + prompt "php8 " > + select GLIBC_M > + help > + PHP, which stands for "PHP: Hypertext Preprocessor" is a widely-used > + general-purpose scripting language that is especially suited for web > + development and can be embedded into HTML. > + > +if PHP8 > + > +config PHP8_INI > + bool > + prompt "install /etc/php8/php.ini" > + default y > + help > + Installs (if present) the > + "./projectroot/etc/php8/php.ini" file from your > + workspace, otherwise a generic one from the ptxdist > + directory. > + > +# > ---------------------------------------------------------------------------- > +# SAPI Modules (add more on demand) > +# > ---------------------------------------------------------------------------- > + > +choice > + prompt "SAPI Module" > + default PHP8_SAPI_NONE > + help > + Select one of the SAP (Server Application Programming) Interfaces to > + be supported at run-time. It is possible to select no SAP interface > + here, then your PHP supports a command line interface (CLI) only. > + > +config PHP8_SAPI_CGI > + bool > + prompt "cgi" > + help > + Build standard CGI version of PHP. > + > +config PHP8_SAPI_NONE > + bool > + prompt "none" > + select PHP8_SAPI_CLI > + help > + This forces a command line interface variant only. > + > +endchoice > + > +config PHP8_SESSION > + bool > + prompt "session support" > + default y > + help > + A session is a way to store information to be used across multiple > + pages. The information is stored locally only. > + > +config PHP8_FILTER > + bool > + prompt "filter support" > + default y > + help > + This extension filters data by either validating or sanitizing it. > + This is especially useful when the data source contains unknown (or > foreign) data, like user supplied input. > + For example, this data may come from an HTML form. > + > +config PHP8_SAPI_CLI > + bool > + prompt "cli" > + help > + Build command line interface (CLI) version of PHP > + > +endif > diff --git a/rules/php8.make b/rules/php8.make > new file mode 100644 > index 000000000..839d5ffdd > --- /dev/null > +++ b/rules/php8.make > @@ -0,0 +1,122 @@ > +# -*-makefile-*- > +# > +# Copyright (C) 2006-2008 by Robert Schwebel > +# 2009, 2012 by Marc Kleine-Budde <[email protected]> > +# 2015 by Bruno Thomsen <[email protected]> > +# 2021 by Juergen Borleis <[email protected]> > +# > +# For further information about the PTXdist project and license conditions > +# see the README file. > +# > + > +# > +# We provide this package > +# > +PACKAGES-$(PTXCONF_PHP8) += php8 > + > +# > +# Paths and names > +# > +PHP8_VERSION := 8.1.6 > +PHP8_MD5 := 943eae7f07c2056ce87478e7d6c0cbbb > +PHP8 := php-$(PHP8_VERSION) > +PHP8_SUFFIX := tar.xz > +PHP8_SOURCE := $(SRCDIR)/$(PHP8).$(PHP8_SUFFIX) > +PHP8_DIR := $(BUILDDIR)/$(PHP8) > +PHP8_LICENSE := PHP-3.01 > +PHP8_LICENSE_FILES := file://LICENSE;md5=99532e0f6620bc9bca34f12fadaee33c > + > +# > +# Note: older releases are moved to the 'museum', but the 'de.php.net' > +# response with a HTML file instead of the archive. So, try the 'museum' > +# URL first > +# > +PHP8_URL := \ > + http://museum.php.net/php8/$(PHP8).$(PHP8_SUFFIX) \ > + http://de.php.net/distributions/$(PHP8).$(PHP8_SUFFIX) > + > +# > ---------------------------------------------------------------------------- > +# Prepare > +# > ---------------------------------------------------------------------------- > + > +PHP8_CONF_ENV := \ > + $(CROSS_ENV) \ > + ac_cv_prog_cc_cross=yes \ > + ac_cv_c_bigendian_php=$(call ptx/yesno, PTXCONF_ENDIAN_BIG) > + > +# > +# autoconf > +# > +PHP8_AUTOCONF := \ > + $(CROSS_AUTOCONF_USR) \ > + --with-config-file-path=/etc/php8 \ > + --without-iconv \ > + --disable-phpdbg \ > + --with-libdir=/usr/$(CROSS_LIB_DIR) \ > + --disable-opcache \ > + --disable-zend-signals > + > +# > ---------------------------------------------------------------------------- > +# Network options > +# > ---------------------------------------------------------------------------- > + > +ifndef PTXCONF_GLOBAL_IPV6 > +PHP8_AUTOCONF += --disable-ipv6 > +endif > + > +# > ---------------------------------------------------------------------------- > +# One of the "Server Application Programming Interfaces" > +# > ---------------------------------------------------------------------------- > + > +ifndef PTXCONF_PHP8_SAPI_CGI > +PHP8_AUTOCONF += \ > + --disable-cgi > +endif > + > +# > ---------------------------------------------------------------------------- > +# Generic configurations > +# > ---------------------------------------------------------------------------- > + > +ifndef PTXCONF_PHP8_SAPI_CLI > +PHP8_AUTOCONF += --disable-cli > +endif > + > +# > ---------------------------------------------------------------------------- > +# Extensions > +# > ---------------------------------------------------------------------------- > + > +# Please extend on demand... > +PHP8_AUTOCONF += --disable-all \ > + --$(call ptx/endis, PTXCONF_PHP8_SESSION)-session \ > + --$(call ptx/endis, PTXCONF_PHP8_FILTER)-filter > + > +# > ---------------------------------------------------------------------------- > +# Target-Install > +# > ---------------------------------------------------------------------------- > + > +$(STATEDIR)/php8.targetinstall: > + @$(call targetinfo) > + > + @$(call install_init, php8) > + @$(call install_fixup, php8,PRIORITY,optional) > + @$(call install_fixup, php8,SECTION,base) > + @$(call install_fixup, php8,AUTHOR,"Robert Schwebel > <[email protected]>") > + @$(call install_fixup, php8,DESCRIPTION,missing) > + > +ifdef PTXCONF_PHP8_SAPI_CLI > + @$(call install_copy, php8, 0, 0, 0755, -, /usr/bin/php) > +endif > + > +ifdef PTXCONF_PHP8_SAPI_CGI > + @$(call install_copy, php8, 0, 0, 0755, -, /usr/bin/php-cgi) > +endif > + > +ifdef PTXCONF_PHP8_INI > + @$(call install_alternative, php8, 0, 0, 0644, /etc/php8/php.ini)
php8 does not install this, so you need to add on to ptxdist in projectroot/. Michael > +endif > + > + @$(call install_finish, php8) > + > + @$(call touch) > + > +# vim: syntax=make > -- > 2.34.1 > > > -- Pengutronix e.K. | | Steuerwalder Str. 21 | http://www.pengutronix.de/ | 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
