pkgsrc-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[pkgsrc/trunk]: pkgsrc/lang/php81 lang/php81: add PHP 8.1.0 release



details:   https://anonhg.NetBSD.org/pkgsrc/rev/24772105f3c7
branches:  trunk
changeset: 770185:24772105f3c7
user:      taca <taca%pkgsrc.org@localhost>
date:      Sat Nov 27 07:24:43 2021 +0000

description:
lang/php81: add PHP 8.1.0 release

PHP is a widely-used open source general-purpose scripting language
that is especially suited for web development and can be embedded
into HTML.  It is modular, and object-oriented.  Much of its syntax
is borrowed from C, Java and Perl with a couple of unique PHP-specific
features thrown in.  The language is designed to allow web developers
to write dynamically generated pages quickly.

PHP 8.1 comes with numerous improvements and new features such as

* Enumerations
* Readonly properties
* Fibers
* Pure Intersection Types
* never return type
* First-class Callable Syntax
* "final" modifier for class constants
* New fsync and fdatasync functions
* New array_is_list function
* Explicit Octal numeral notation
* And much much more...

diffstat:

 lang/php81/DESCR                                    |   20 +
 lang/php81/MESSAGE                                  |   11 +
 lang/php81/Makefile                                 |   77 ++++
 lang/php81/Makefile.common                          |   29 +
 lang/php81/Makefile.php                             |   57 +++
 lang/php81/PLIST                                    |  310 ++++++++++++++++++++
 lang/php81/buildlink3.mk                            |   17 +
 lang/php81/distinfo                                 |   18 +
 lang/php81/options.mk                               |   74 ++++
 lang/php81/patches/patch-build_libtool.m4           |   75 ++++
 lang/php81/patches/patch-configure                  |   60 +++
 lang/php81/patches/patch-disable-filter-url         |   30 +
 lang/php81/patches/patch-ext_enchant_enchant.c      |   15 +
 lang/php81/patches/patch-ext_phar_Makefile.frag     |   15 +
 lang/php81/patches/patch-ext_tidy_config.m4         |   15 +
 lang/php81/patches/patch-ext_xsl_php__xsl.h         |   15 +
 lang/php81/patches/patch-php.ini-development        |   34 ++
 lang/php81/patches/patch-php.ini-production         |   34 ++
 lang/php81/patches/patch-sapi_cgi_Makefile.frag     |   18 +
 lang/php81/patches/patch-sapi_cli_Makefile.frag     |   19 +
 lang/php81/patches/patch-sapi_fpm_fpm_events_port.c |   33 ++
 lang/php81/patches/patch-sapi_fpm_php-fpm.conf.in   |   15 +
 22 files changed, 991 insertions(+), 0 deletions(-)

diffs (truncated from 1079 to 300 lines):

diff -r 3f62af0df7fa -r 24772105f3c7 lang/php81/DESCR
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/lang/php81/DESCR  Sat Nov 27 07:24:43 2021 +0000
@@ -0,0 +1,20 @@
+PHP is a widely-used open source general-purpose scripting language
+that is especially suited for web development and can be embedded
+into HTML.  It is modular, and object-oriented.  Much of its syntax
+is borrowed from C, Java and Perl with a couple of unique PHP-specific
+features thrown in.  The language is designed to allow web developers
+to write dynamically generated pages quickly.
+
+PHP 8.1 comes with numerous improvements and new features such as
+
+* Enumerations
+* Readonly properties
+* Fibers
+* Pure Intersection Types
+* never return type
+* First-class Callable Syntax
+* "final" modifier for class constants
+* New fsync and fdatasync functions
+* New array_is_list function
+* Explicit Octal numeral notation
+* And much much more...
diff -r 3f62af0df7fa -r 24772105f3c7 lang/php81/MESSAGE
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/lang/php81/MESSAGE        Sat Nov 27 07:24:43 2021 +0000
@@ -0,0 +1,11 @@
+===========================================================================
+$NetBSD: MESSAGE,v 1.1 2021/11/27 07:24:43 taca Exp $
+
+To process PHP scripts, you will need a PHP-enabled HTTP server.  You may
+either configure the HTTP server to use the PHP CGI binary located in
+
+        ${CGIDIR}/php
+
+or you may install a PHP module for your HTTP server, e.g. www/ap-php.
+
+===========================================================================
diff -r 3f62af0df7fa -r 24772105f3c7 lang/php81/Makefile
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/lang/php81/Makefile       Sat Nov 27 07:24:43 2021 +0000
@@ -0,0 +1,77 @@
+# $NetBSD: Makefile,v 1.1 2021/11/27 07:24:43 taca Exp $
+
+#
+# We can't omit PKGNAME here to handle PKG_OPTIONS.
+#
+PKGNAME=               php-${PHP_VERSION:S/RC/rc/}
+
+COMMENT=               PHP Hypertext Preprocessor version 8.1
+LICENSE=               php
+
+TEST_TARGET=           test
+
+USE_TOOLS+=            gmake lex
+LIBTOOL_OVERRIDE=      # empty
+PHP_CHECK_INSTALLED=   No
+
+PHP_VERSIONS_ACCEPTED=         81
+
+.include "Makefile.php"
+
+CGIDIR=                        ${PREFIX}/libexec/cgi-bin
+EGDIR=                 ${PREFIX}/share/examples/php
+MESSAGE_SUBST+=                CGIDIR=${CGIDIR}
+
+CONFIGURE_ENV+=                lt_cv_path_SED=${SED:Q}
+MAKE_ENV+=             INSTALL_ROOT=${DESTDIR}
+
+CONF_FILES=            ${EGDIR}/php.ini-production ${PKG_SYSCONFDIR}/php.ini
+PLIST_SUBST+=          PHPEXTDIR="${PHP_EXTENSION_DIR}"
+
+# taken from devel/pkgconf/Makefile
+PKGCONFIG_PATHS=       ${PREFIX}/lib/pkgconfig
+PKGCONFIG_PATHS+=      ${PREFIX}/share/pkgconfig
+PKGCONFIG_PATHS+=      /usr/lib/pkgconfig
+
+# At this point, PREFIX is not set yet.
+.if ${LOCALBASE} != ${X11BASE}
+PKGCONFIG_PATHS+=      ${X11BASE}/lib/pkgconfig
+.endif
+
+PHP_PKGCONFIG_PATH=    ${PKGCONFIG_PATHS:ts:}
+
+REPLACE_PHP=           ext/phar/phar/phar.php run-tests.php
+
+SUBST_CLASSES+=                path
+SUBST_MESSAGE.path=    Fixing common paths.
+SUBST_STAGE.path=      pre-configure
+SUBST_FILES.path=      configure
+SUBST_FILES.path+=     php.ini-development php.ini-production
+SUBST_FILES.path+=     sapi/cgi/Makefile.frag
+SUBST_VARS.path=       CGIDIR
+SUBST_VARS.path+=      PREFIX
+SUBST_VARS.path+=      TOOLS_PATH.pkg-config PHP_PKGCONFIG_PATH
+
+INSTALLATION_DIRS+=    ${CGIDIR} ${PHP_EXTENSION_DIR} ${EGDIR} share/php
+
+# Make sure modules can link correctly
+.if ${OPSYS} == "Darwin"
+INSTALL_UNSTRIPPED=    yes
+.endif
+
+# Darwin < 9 (Mac OS X < 10.5 "Leopard") doesn't have gethostuuid(2)
+# and lacks the zone memory allocator
+.if !empty(MACHINE_PLATFORM:MDarwin-[0-8].*-*)
+CFLAGS+=       -DSQLITE_ENABLE_LOCKING_STYLE=0 -DSQLITE_WITHOUT_ZONEMALLOC
+.endif
+
+post-install:
+       ${INSTALL_PROGRAM} ${WRKSRC}/sapi/cli/php ${DESTDIR}${PREFIX}/bin/php
+       ${INSTALL_DATA} ${WRKSRC}/sapi/cli/php.1 \
+               ${DESTDIR}${PREFIX}/${PKGMANDIR}/man1/php.1
+       ${INSTALL_PROGRAM} ${WRKSRC}/sapi/cgi/php-cgi ${DESTDIR}${CGIDIR}/php
+       cd ${WRKSRC}; ${INSTALL_DATA} php.ini-development php.ini-production \
+               ${DESTDIR}${EGDIR}
+
+.include "../../lang/php/replace.mk"
+.include "../../mk/bsd.pkg.mk"
diff -r 3f62af0df7fa -r 24772105f3c7 lang/php81/Makefile.common
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/lang/php81/Makefile.common        Sat Nov 27 07:24:43 2021 +0000
@@ -0,0 +1,29 @@
+# $NetBSD: Makefile.common,v 1.1 2021/11/27 07:24:43 taca Exp $
+# used by lang/php81/Makefile.php
+# used by lang/php/ext.mk
+# used by meta-pkgs/php81-extensions/Makefile
+
+PHP_VERSION_REQD=      81
+
+.include "../../lang/php/common.mk"
+
+CATEGORIES+=           www
+MAINTAINER?=           pkgsrc-users%NetBSD.org@localhost
+
+USE_TOOLS+=            pkg-config
+
+.if ${OPSYS} == "NetBSD"
+CONFIGURE_ARGS+=       ax_cv_have_func_attribute_ifunc=no
+.endif
+
+.include "../../mk/compiler.mk"
+.if !empty(PKGSRC_COMPILER:Mclang)
+# configure test gets confused by wrappers dropping -R /usr/lib
+CONFIGURE_ARGS+=       php_cv_cc_dashr=no
+.endif
+
+# not every extension actually depend on PCRE, and those which do
+# don't use internal pcre structures, so default to build-time
+# dependency only
+BUILDLINK_DEPMETHOD.pcre2?=    build
+.include "../../devel/pcre2/buildlink3.mk"
diff -r 3f62af0df7fa -r 24772105f3c7 lang/php81/Makefile.php
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/lang/php81/Makefile.php   Sat Nov 27 07:24:43 2021 +0000
@@ -0,0 +1,57 @@
+# $NetBSD: Makefile.php,v 1.1 2021/11/27 07:24:43 taca Exp $
+# used by lang/php81/Makefile
+# used by www/ap-php/Makefile
+# used by www/php-fpm/Makefile
+
+# segfaults when buidling with many compilers
+# https://bugs.php.net/bug.php?id=74527
+# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86236
+.if ${MACHINE_ARCH} == "i386"
+CONFIGURE_ARGS+=       --disable-gcc-global-regs
+.endif
+
+# the binary actually needs full dep on PCRE
+BUILDLINK_DEPMETHOD.pcre2=     full
+
+USE_LIBTOOL=           YES
+USE_LANGUAGES=         c c++
+GNU_CONFIGURE=         YES
+BUILD_DEFS+=           VARBASE
+PLIST_VARS+=           dtrace
+
+.include "../../lang/php81/Makefile.common"
+
+DISTINFO_FILE= ${.CURDIR}/../../lang/php81/distinfo
+PATCHDIR=      ${.CURDIR}/../../lang/php81/patches
+
+CONFIGURE_ARGS+=       --with-config-file-path=${PKG_SYSCONFDIR}
+CONFIGURE_ARGS+=       --with-config-file-scan-dir=${PKG_SYSCONFDIR}/php.d
+CONFIGURE_ARGS+=       --sysconfdir=${PKG_SYSCONFDIR}
+CONFIGURE_ARGS+=       --localstatedir=${VARBASE}
+
+CONFIGURE_ARGS+=       --without-mysqli
+CONFIGURE_ARGS+=       --without-iconv
+CONFIGURE_ARGS+=       --without-pear
+CONFIGURE_ARGS+=       --without-sqlite3
+CONFIGURE_ARGS+=       --with-external-pcre
+
+CONFIGURE_ARGS+=       --disable-intl
+CONFIGURE_ARGS+=       --disable-posix
+CONFIGURE_ARGS+=       --disable-opcache
+CONFIGURE_ARGS+=       --disable-pdo
+
+CONFIGURE_ARGS+=       --enable-cgi
+CONFIGURE_ARGS+=       --enable-mysqlnd
+CONFIGURE_ARGS+=       --enable-xml
+#CONFIGURE_ARGS+=      --with-libxml-dir=${PREFIX}
+
+CONFIGURE_ENV+=                EXTENSION_DIR="${PREFIX}/${PHP_EXTENSION_DIR}"
+
+.include "../../textproc/libxml2/buildlink3.mk"
+
+#CONFIGURE_ARGS+=      --with-pcre-regex=${BUILDLINK_PREFIX.pcre2}
+
+.include "options.mk"
+
+DL_AUTO_VARS=          yes
+.include "../../mk/dlopen.buildlink3.mk"
diff -r 3f62af0df7fa -r 24772105f3c7 lang/php81/PLIST
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/lang/php81/PLIST  Sat Nov 27 07:24:43 2021 +0000
@@ -0,0 +1,310 @@
+@comment $NetBSD: PLIST,v 1.1 2021/11/27 07:24:43 taca Exp $
+bin/phar
+bin/phar.phar
+bin/php
+bin/php-config
+bin/phpdbg
+bin/phpize
+include/php/TSRM/TSRM.h
+include/php/TSRM/tsrm_win32.h
+include/php/Zend/Optimizer/zend_call_graph.h
+include/php/Zend/Optimizer/zend_cfg.h
+include/php/Zend/Optimizer/zend_dfg.h
+include/php/Zend/Optimizer/zend_dump.h
+include/php/Zend/Optimizer/zend_func_info.h
+include/php/Zend/Optimizer/zend_inference.h
+include/php/Zend/Optimizer/zend_optimizer.h
+include/php/Zend/Optimizer/zend_ssa.h
+include/php/Zend/zend.h
+include/php/Zend/zend_API.h
+include/php/Zend/zend_alloc.h
+include/php/Zend/zend_alloc_sizes.h
+include/php/Zend/zend_arena.h
+include/php/Zend/zend_ast.h
+include/php/Zend/zend_attributes.h
+include/php/Zend/zend_attributes_arginfo.h
+include/php/Zend/zend_bitset.h
+include/php/Zend/zend_build.h
+include/php/Zend/zend_builtin_functions.h
+include/php/Zend/zend_builtin_functions_arginfo.h
+include/php/Zend/zend_closures.h
+include/php/Zend/zend_closures_arginfo.h
+include/php/Zend/zend_compile.h
+include/php/Zend/zend_config.h
+include/php/Zend/zend_config.w32.h
+include/php/Zend/zend_constants.h
+include/php/Zend/zend_cpuinfo.h
+include/php/Zend/zend_dtrace.h
+${PLIST.dtrace}include/php/Zend/zend_dtrace_gen.h
+include/php/Zend/zend_enum.h
+include/php/Zend/zend_enum_arginfo.h
+include/php/Zend/zend_errors.h
+include/php/Zend/zend_exceptions.h
+include/php/Zend/zend_exceptions_arginfo.h
+include/php/Zend/zend_execute.h
+include/php/Zend/zend_extensions.h
+include/php/Zend/zend_fibers.h
+include/php/Zend/zend_fibers_arginfo.h
+include/php/Zend/zend_float.h
+include/php/Zend/zend_gc.h
+include/php/Zend/zend_gdb.h
+include/php/Zend/zend_generators.h
+include/php/Zend/zend_generators_arginfo.h
+include/php/Zend/zend_globals.h
+include/php/Zend/zend_globals_macros.h
+include/php/Zend/zend_hash.h
+include/php/Zend/zend_highlight.h
+include/php/Zend/zend_inheritance.h
+include/php/Zend/zend_ini.h
+include/php/Zend/zend_ini_parser.h
+include/php/Zend/zend_ini_scanner.h
+include/php/Zend/zend_ini_scanner_defs.h
+include/php/Zend/zend_interfaces.h
+include/php/Zend/zend_interfaces_arginfo.h
+include/php/Zend/zend_istdiostream.h
+include/php/Zend/zend_iterators.h
+include/php/Zend/zend_language_parser.h
+include/php/Zend/zend_language_scanner.h
+include/php/Zend/zend_language_scanner_defs.h
+include/php/Zend/zend_list.h
+include/php/Zend/zend_llist.h
+include/php/Zend/zend_long.h
+include/php/Zend/zend_map_ptr.h
+include/php/Zend/zend_modules.h
+include/php/Zend/zend_multibyte.h
+include/php/Zend/zend_multiply.h
+include/php/Zend/zend_object_handlers.h
+include/php/Zend/zend_objects.h
+include/php/Zend/zend_objects_API.h
+include/php/Zend/zend_observer.h
+include/php/Zend/zend_operators.h
+include/php/Zend/zend_portability.h
+include/php/Zend/zend_ptr_stack.h



Home | Main Index | Thread Index | Old Index