From: Juergen Borleis <jbe@pengutronix.de>
To: ptxdist@pengutronix.de
Subject: [ptxdist] [PATCH 2/5] php: reanimate PHP as PHP8
Date: Thu, 12 Aug 2021 12:40:12 +0200 [thread overview]
Message-ID: <20210812104015.19563-2-jbe@pengutronix.de> (raw)
In-Reply-To: <20210812104015.19563-1-jbe@pengutronix.de>
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.
Signed-off-by: Juergen Borleis <jbe@pengutronix.de>
---
projectroot/etc/{php5 => php8}/php.ini | 0
rules/php8.in | 72 +++++++++++++++
rules/php8.make | 123 +++++++++++++++++++++++++
3 files changed, 195 insertions(+)
rename projectroot/etc/{php5 => php8}/php.ini (100%)
create mode 100644 rules/php8.in
create mode 100644 rules/php8.make
diff --git a/projectroot/etc/php5/php.ini b/projectroot/etc/php8/php.ini
similarity index 100%
rename from projectroot/etc/php5/php.ini
rename to projectroot/etc/php8/php.ini
diff --git a/rules/php8.in b/rules/php8.in
new file mode 100644
index 0000000..a3b498e
--- /dev/null
+++ b/rules/php8.in
@@ -0,0 +1,72 @@
+## 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_SAPI_CLI
+ bool
+ prompt "cli"
+ help
+ Build command line interface (CLI) version of PHP
+
+config PHP8_DEUBG
+ bool
+ prompt "Build debug variant"
+ help
+ Enable this entry to build a debug variant (no optimization)
+
+endif
diff --git a/rules/php8.make b/rules/php8.make
new file mode 100644
index 0000000..2f0e254
--- /dev/null
+++ b/rules/php8.make
@@ -0,0 +1,123 @@
+# -*-makefile-*-
+#
+# Copyright (C) 2006-2008 by Robert Schwebel
+# 2009, 2012 by Marc Kleine-Budde <mkl@pengutronix.de>
+# 2015 by Bruno Thomsen <bth@kamstrup.com>
+# 2021 by Juergen Borleis <jbe@pengutronix.de>
+#
+# 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.0.9
+PHP8_MD5 := 68a8cae879bb66425f6cfb11d94ceb02
+PHP8 := php-$(PHP8_VERSION)
+PHP8_SUFFIX := tar.xz
+PHP8_SOURCE := $(SRCDIR)/$(PHP8).$(PHP8_SUFFIX)
+PHP8_DIR := $(BUILDDIR)/$(PHP8)
+
+#
+# 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
+
+ifdef PTXCONF_PHP8_DEUBG
+PHP8_AUTOCONF += --enable-debug
+endif
+
+# ----------------------------------------------------------------------------
+# Extensions
+# ----------------------------------------------------------------------------
+
+# Please extend on demand...
+PHP8_AUTOCONF += --disable-all \
+ --$(call ptx/endis, PTXCONF_PHP8_SESSION)-session
+
+# ----------------------------------------------------------------------------
+# 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 <r.schwebel@pengutronix.de>")
+ @$(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)
+endif
+
+ @$(call install_finish, php8)
+
+ @$(call touch)
+
+# vim: syntax=make
--
2.20.1
_______________________________________________
ptxdist mailing list
ptxdist@pengutronix.de
To unsubscribe, send a mail with subject "unsubscribe" to ptxdist-request@pengutronix.de
next prev parent reply other threads:[~2021-08-12 10:40 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-08-12 10:40 [ptxdist] [PATCH 1/5] apache2: remove initV artefact Juergen Borleis
2021-08-12 10:40 ` Juergen Borleis [this message]
2021-08-12 11:15 ` [ptxdist] [PATCH 2/5] php: reanimate PHP as PHP8 Gieseler, Christian
2021-08-12 12:41 ` Juergen Borleis
2021-09-03 14:11 ` Michael Olbrich
2021-09-03 14:13 ` Michael Olbrich
2021-08-12 10:40 ` [ptxdist] [PATCH 3/5] lighttpd: reenable PHP support via "fast cgi" Juergen Borleis
2021-08-12 10:40 ` [ptxdist] [PATCH 4/5] openvpn: still allow initV support Juergen Borleis
2021-09-03 14:16 ` Michael Olbrich
2021-08-12 10:40 ` [ptxdist] [PATCH 5/5] openvpn: version bump 2.4.6 -> 2.5.3 Juergen Borleis
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20210812104015.19563-2-jbe@pengutronix.de \
--to=jbe@pengutronix.de \
--cc=ptxdist@pengutronix.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox