lang/php73: add version 7.3.0 package

Add PHP 7.3.0 as php73.

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.

This package provides PHP version 7.3.x.

PHP 7.3.0 comes with numerous improvements and new features such as

* Flexible Heredoc and Nowdoc Syntax
* PCRE2 Migration
* Multiple MBString Improvements
* LDAP Controls Support
* Improved FPM Logging
* Windows File Deletion Improvements
* Several Deprecations

For source downloads of PHP 7.3.0 please visit our downloads page Windows
binaries can be found on the PHP for Windows site.  The list of changes is
recorded in the ChangeLog.
This commit is contained in:
taca 2018-12-15 17:12:44 +00:00
parent ac4ae78b41
commit 5b8b26317e
23 changed files with 962 additions and 0 deletions

22
lang/php73/DESCR Normal file
View file

@ -0,0 +1,22 @@
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.
This package provides PHP version 7.3.x.
PHP 7.3.0 comes with numerous improvements and new features such as
* Flexible Heredoc and Nowdoc Syntax
* PCRE2 Migration
* Multiple MBString Improvements
* LDAP Controls Support
* Improved FPM Logging
* Windows File Deletion Improvements
* Several Deprecations
For source downloads of PHP 7.3.0 please visit our downloads page Windows
binaries can be found on the PHP for Windows site. The list of changes is
recorded in the ChangeLog.

11
lang/php73/MESSAGE Normal file
View file

@ -0,0 +1,11 @@
===========================================================================
$NetBSD: MESSAGE,v 1.1 2018/12/15 17:12:44 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.
===========================================================================

63
lang/php73/Makefile Normal file
View file

@ -0,0 +1,63 @@
# $NetBSD: Makefile,v 1.1 2018/12/15 17:12:44 taca Exp $
#
# We can't omit PKGNAME here to handle PKG_OPTIONS.
#
PKGNAME= php-${PHP_VERSION:S/RC/rc/}
HOMEPAGE= http://www.php.net/
COMMENT= PHP Hypertext Preprocessor version 7.3
LICENSE= php
TEST_TARGET= test
USE_TOOLS+= gmake lex pkg-config
LIBTOOL_OVERRIDE= # empty
PHP_CHECK_INSTALLED= No
PHP_VERSIONS_ACCEPTED= 73
.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}"
SUBST_CLASSES+= path
SUBST_MESSAGE.path= Fixing common paths.
SUBST_STAGE.path= pre-configure
SUBST_FILES.path= ext/phar/phar/phar.php
SUBST_FILES.path+= php.ini-development php.ini-production run-tests.php
SUBST_FILES.path+= sapi/cgi/Makefile.frag
SUBST_SED.path= -e 's,@CGIDIR@,${CGIDIR},g'
SUBST_SED.path+= -e 's,@PREFIX@,${PREFIX},g'
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}
${INSTALL_DATA} ${WRKSRC}/php.gif ${DESTDIR}${PREFIX}/share/php
.include "../../mk/bsd.pkg.mk"

View file

@ -0,0 +1,27 @@
# $NetBSD: Makefile.common,v 1.1 2018/12/15 17:12:44 taca Exp $
# used by lang/php73/Makefile.php
# used by lang/php/ext.mk
# used by meta-pkgs/php73-extensions/Makefile
PHP_VERSION_REQD= 73
.include "../../lang/php/common.mk"
CATEGORIES+= www
MAINTAINER?= pkgsrc-users@NetBSD.org
# needed due to (broken?) configure checks in php-xmlrpc and php5-dom
CONFIGURE_ENV+= PHP_LIBXML_SHARED="1"
.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
CONFIGURE_ARGS+= --with-pcre-regex=${BUILDLINK_PREFIX.pcre2}
.include "../../devel/pcre2/buildlink3.mk"

114
lang/php73/Makefile.php Normal file
View file

@ -0,0 +1,114 @@
# $NetBSD: Makefile.php,v 1.1 2018/12/15 17:12:44 taca Exp $
# used by lang/php73/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
.include "../../lang/php73/Makefile.common"
DISTINFO_FILE= ${.CURDIR}/../../lang/php73/distinfo
PATCHDIR= ${.CURDIR}/../../lang/php73/patches
USE_LIBTOOL= YES
USE_LANGUAGES= c c++
GNU_CONFIGURE= YES
BUILD_DEFS+= VARBASE
PLIST_VARS+= dtrace
CONFIGURE_ENV+= EXTENSION_DIR="${PREFIX}/${PHP_EXTENSION_DIR}"
.include "../../mk/bsd.prefs.mk"
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+= --without-intl
CONFIGURE_ARGS+= --disable-posix
CONFIGURE_ARGS+= --disable-opcache
CONFIGURE_ARGS+= --disable-pdo
CONFIGURE_ARGS+= --disable-json
CONFIGURE_ARGS+= --enable-cgi
CONFIGURE_ARGS+= --enable-mysqlnd
CONFIGURE_ARGS+= --enable-xml
CONFIGURE_ARGS+= --with-libxml-dir=${PREFIX}
.include "../../textproc/libxml2/buildlink3.mk"
CONFIGURE_ARGS+= --with-pcre-regex=${BUILDLINK_PREFIX.pcre2}
PKG_OPTIONS_VAR= PKG_OPTIONS.${PHP_PKG_PREFIX}
PKG_SUPPORTED_OPTIONS+= inet6 ssl maintainer-zts readline argon2
PKG_SUPPORTED_OPTIONS+= disable-filter-url
PKG_SUGGESTED_OPTIONS+= inet6 ssl readline
.if ${OPSYS} == "SunOS" || ${OPSYS} == "Darwin" || ${OPSYS} == "FreeBSD"
PKG_SUPPORTED_OPTIONS+= dtrace
.endif
.include "../../mk/bsd.options.mk"
.if !empty(PKG_OPTIONS:Minet6)
CONFIGURE_ARGS+= --enable-ipv6
.else
CONFIGURE_ARGS+= --disable-ipv6
.endif
.if !empty(PKG_OPTIONS:Mssl)
. include "../../security/openssl/buildlink3.mk"
. if ${OPSYS} == "SunOS"
CONFIGURE_ARGS+= --with-openssl=yes
LIBS.SunOS+= -lcrypto
. else
CONFIGURE_ARGS+= --with-openssl=${BUILDLINK_PREFIX.openssl}
. endif
.else
CONFIGURE_ARGS+= --without-openssl
.endif
.if !empty(PKG_OPTIONS:Mmaintainer-zts)
CONFIGURE_ARGS+= --enable-maintainer-zts
.endif
.if !empty(PKG_OPTIONS:Mreadline)
USE_GNU_READLINE= yes
.include "../../devel/readline/buildlink3.mk"
CONFIGURE_ARGS+= --with-readline=${BUILDLINK_PREFIX.readline}
.else
CONFIGURE_ARGS+= --without-readline
.endif
.if !empty(PKG_OPTIONS:Mdtrace)
PLIST.dtrace= yes
CONFIGURE_ARGS+= --enable-dtrace
# See https://bugs.php.net/bug.php?id=61268
INSTALL_MAKE_FLAGS+= -r
.endif
.if !empty(PKG_OPTIONS:Margon2)
CONFIGURE_ARGS+= --with-password-argon2=${BUILDLINK_PREFIX.argon2}
.include "../../security/argon2/buildlink3.mk"
.endif
.if !empty(PKG_OPTIONS:Mdisable-filter-url)
CFLAGS+= -DDISABLE_FILTER_URL
.endif
DL_AUTO_VARS= yes
.include "../../mk/dlopen.buildlink3.mk"

286
lang/php73/PLIST Normal file
View file

@ -0,0 +1,286 @@
@comment $NetBSD: PLIST,v 1.1 2018/12/15 17:12:44 taca Exp $
bin/phar
bin/phar.phar
bin/php
bin/php-config
bin/phpdbg
bin/phpize
include/php/TSRM/TSRM.h
include/php/TSRM/readdir.h
include/php/TSRM/tsrm_config.h
include/php/TSRM/tsrm_config.w32.h
include/php/TSRM/tsrm_config_common.h
include/php/TSRM/tsrm_strtok_r.h
include/php/TSRM/tsrm_win32.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_bitset.h
include/php/Zend/zend_build.h
include/php/Zend/zend_builtin_functions.h
include/php/Zend/zend_closures.h
include/php/Zend/zend_compile.h
include/php/Zend/zend_config.h
include/php/Zend/zend_config.nw.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_errors.h
include/php/Zend/zend_exceptions.h
include/php/Zend/zend_execute.h
include/php/Zend/zend_extensions.h
include/php/Zend/zend_float.h
include/php/Zend/zend_gc.h
include/php/Zend/zend_generators.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_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_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_operators.h
include/php/Zend/zend_portability.h
include/php/Zend/zend_ptr_stack.h
include/php/Zend/zend_range_check.h
include/php/Zend/zend_signal.h
include/php/Zend/zend_smart_str.h
include/php/Zend/zend_smart_str_public.h
include/php/Zend/zend_smart_string.h
include/php/Zend/zend_smart_string_public.h
include/php/Zend/zend_sort.h
include/php/Zend/zend_stack.h
include/php/Zend/zend_stream.h
include/php/Zend/zend_string.h
include/php/Zend/zend_strtod.h
include/php/Zend/zend_strtod_int.h
include/php/Zend/zend_ts_hash.h
include/php/Zend/zend_type_info.h
include/php/Zend/zend_types.h
include/php/Zend/zend_variables.h
include/php/Zend/zend_virtual_cwd.h
include/php/Zend/zend_vm.h
include/php/Zend/zend_vm_def.h
include/php/Zend/zend_vm_execute.h
include/php/Zend/zend_vm_handlers.h
include/php/Zend/zend_vm_opcodes.h
include/php/Zend/zend_vm_trace_handlers.h
include/php/Zend/zend_vm_trace_map.h
include/php/ext/date/lib/timelib.h
include/php/ext/date/lib/timelib_config.h
include/php/ext/date/php_date.h
include/php/ext/dom/xml_common.h
include/php/ext/filter/php_filter.h
include/php/ext/hash/php_hash.h
include/php/ext/hash/php_hash_adler32.h
include/php/ext/hash/php_hash_crc32.h
include/php/ext/hash/php_hash_fnv.h
include/php/ext/hash/php_hash_gost.h
include/php/ext/hash/php_hash_haval.h
include/php/ext/hash/php_hash_joaat.h
include/php/ext/hash/php_hash_md.h
include/php/ext/hash/php_hash_ripemd.h
include/php/ext/hash/php_hash_sha.h
include/php/ext/hash/php_hash_sha3.h
include/php/ext/hash/php_hash_snefru.h
include/php/ext/hash/php_hash_tiger.h
include/php/ext/hash/php_hash_whirlpool.h
include/php/ext/libxml/php_libxml.h
include/php/ext/mysqlnd/config-win.h
include/php/ext/mysqlnd/mysql_float_to_double.h
include/php/ext/mysqlnd/mysqlnd.h
include/php/ext/mysqlnd/mysqlnd_alloc.h
include/php/ext/mysqlnd/mysqlnd_auth.h
include/php/ext/mysqlnd/mysqlnd_block_alloc.h
include/php/ext/mysqlnd/mysqlnd_charset.h
include/php/ext/mysqlnd/mysqlnd_commands.h
include/php/ext/mysqlnd/mysqlnd_connection.h
include/php/ext/mysqlnd/mysqlnd_debug.h
include/php/ext/mysqlnd/mysqlnd_enum_n_def.h
include/php/ext/mysqlnd/mysqlnd_ext_plugin.h
include/php/ext/mysqlnd/mysqlnd_libmysql_compat.h
include/php/ext/mysqlnd/mysqlnd_plugin.h
include/php/ext/mysqlnd/mysqlnd_portability.h
include/php/ext/mysqlnd/mysqlnd_priv.h
include/php/ext/mysqlnd/mysqlnd_protocol_frame_codec.h
include/php/ext/mysqlnd/mysqlnd_ps.h
include/php/ext/mysqlnd/mysqlnd_read_buffer.h
include/php/ext/mysqlnd/mysqlnd_result.h
include/php/ext/mysqlnd/mysqlnd_result_meta.h
include/php/ext/mysqlnd/mysqlnd_reverse_api.h
include/php/ext/mysqlnd/mysqlnd_statistics.h
include/php/ext/mysqlnd/mysqlnd_structs.h
include/php/ext/mysqlnd/mysqlnd_vio.h
include/php/ext/mysqlnd/mysqlnd_wireprotocol.h
include/php/ext/mysqlnd/php_mysqlnd.h
include/php/ext/pcre/php_pcre.h
include/php/ext/phar/php_phar.h
include/php/ext/session/mod_files.h
include/php/ext/session/mod_user.h
include/php/ext/session/php_session.h
include/php/ext/simplexml/php_simplexml.h
include/php/ext/simplexml/php_simplexml_exports.h
include/php/ext/spl/php_spl.h
include/php/ext/spl/spl_array.h
include/php/ext/spl/spl_directory.h
include/php/ext/spl/spl_dllist.h
include/php/ext/spl/spl_engine.h
include/php/ext/spl/spl_exceptions.h
include/php/ext/spl/spl_fixedarray.h
include/php/ext/spl/spl_functions.h
include/php/ext/spl/spl_heap.h
include/php/ext/spl/spl_iterators.h
include/php/ext/spl/spl_observer.h
include/php/ext/standard/base64.h
include/php/ext/standard/basic_functions.h
include/php/ext/standard/crc32.h
include/php/ext/standard/credits.h
include/php/ext/standard/credits_ext.h
include/php/ext/standard/credits_sapi.h
include/php/ext/standard/crypt_blowfish.h
include/php/ext/standard/crypt_freesec.h
include/php/ext/standard/css.h
include/php/ext/standard/cyr_convert.h
include/php/ext/standard/datetime.h
include/php/ext/standard/dl.h
include/php/ext/standard/exec.h
include/php/ext/standard/file.h
include/php/ext/standard/flock_compat.h
include/php/ext/standard/fsock.h
include/php/ext/standard/head.h
include/php/ext/standard/hrtime.h
include/php/ext/standard/html.h
include/php/ext/standard/html_tables.h
include/php/ext/standard/info.h
include/php/ext/standard/md5.h
include/php/ext/standard/microtime.h
include/php/ext/standard/pack.h
include/php/ext/standard/pageinfo.h
include/php/ext/standard/php_array.h
include/php/ext/standard/php_assert.h
include/php/ext/standard/php_browscap.h
include/php/ext/standard/php_crypt.h
include/php/ext/standard/php_crypt_r.h
include/php/ext/standard/php_dir.h
include/php/ext/standard/php_dns.h
include/php/ext/standard/php_ext_syslog.h
include/php/ext/standard/php_filestat.h
include/php/ext/standard/php_fopen_wrappers.h
include/php/ext/standard/php_ftok.h
include/php/ext/standard/php_http.h
include/php/ext/standard/php_image.h
include/php/ext/standard/php_incomplete_class.h
include/php/ext/standard/php_iptc.h
include/php/ext/standard/php_lcg.h
include/php/ext/standard/php_link.h
include/php/ext/standard/php_mail.h
include/php/ext/standard/php_math.h
include/php/ext/standard/php_metaphone.h
include/php/ext/standard/php_mt_rand.h
include/php/ext/standard/php_net.h
include/php/ext/standard/php_password.h
include/php/ext/standard/php_rand.h
include/php/ext/standard/php_random.h
include/php/ext/standard/php_smart_string.h
include/php/ext/standard/php_smart_string_public.h
include/php/ext/standard/php_standard.h
include/php/ext/standard/php_string.h
include/php/ext/standard/php_type.h
include/php/ext/standard/php_uuencode.h
include/php/ext/standard/php_var.h
include/php/ext/standard/php_versioning.h
include/php/ext/standard/proc_open.h
include/php/ext/standard/quot_print.h
include/php/ext/standard/scanf.h
include/php/ext/standard/sha1.h
include/php/ext/standard/streamsfuncs.h
include/php/ext/standard/uniqid.h
include/php/ext/standard/url.h
include/php/ext/standard/url_scanner_ex.h
include/php/ext/standard/winver.h
include/php/ext/xml/expat_compat.h
include/php/ext/xml/php_xml.h
include/php/main/SAPI.h
include/php/main/build-defs.h
include/php/main/fastcgi.h
include/php/main/fopen_wrappers.h
include/php/main/http_status_codes.h
include/php/main/php.h
include/php/main/php_compat.h
include/php/main/php_config.h
include/php/main/php_content_types.h
include/php/main/php_getopt.h
include/php/main/php_globals.h
include/php/main/php_ini.h
include/php/main/php_main.h
include/php/main/php_memory_streams.h
include/php/main/php_network.h
include/php/main/php_open_temporary_file.h
include/php/main/php_output.h
include/php/main/php_reentrancy.h
include/php/main/php_scandir.h
include/php/main/php_stdint.h
include/php/main/php_streams.h
include/php/main/php_syslog.h
include/php/main/php_ticks.h
include/php/main/php_variables.h
include/php/main/php_version.h
include/php/main/rfc1867.h
include/php/main/snprintf.h
include/php/main/spprintf.h
include/php/main/streams/php_stream_context.h
include/php/main/streams/php_stream_filter_api.h
include/php/main/streams/php_stream_glob_wrapper.h
include/php/main/streams/php_stream_mmap.h
include/php/main/streams/php_stream_plain_wrapper.h
include/php/main/streams/php_stream_transport.h
include/php/main/streams/php_stream_userspace.h
include/php/main/streams/php_streams_int.h
include/php/sapi/cli/cli.h
lib/php/build/Makefile.global
lib/php/build/acinclude.m4
lib/php/build/ax_check_compile_flag.m4
lib/php/build/ax_gcc_func_attribute.m4
lib/php/build/config.guess
lib/php/build/config.sub
lib/php/build/libtool.m4
lib/php/build/ltmain.sh
lib/php/build/mkdep.awk
lib/php/build/phpize.m4
lib/php/build/run-tests.php
lib/php/build/scan_makefile_in.awk
lib/php/build/shtool
libexec/cgi-bin/php
man/man1/phar.1
man/man1/phar.phar.1
man/man1/php-cgi.1
man/man1/php-config.1
man/man1/php.1
man/man1/phpdbg.1
man/man1/phpize.1
share/examples/php/php.ini-development
share/examples/php/php.ini-production
share/php/php.gif
@pkgdir ${PHPEXTDIR}

15
lang/php73/buildlink3.mk Normal file
View file

@ -0,0 +1,15 @@
# $NetBSD: buildlink3.mk,v 1.1 2018/12/15 17:12:44 taca Exp $
BUILDLINK_TREE+= php
.if !defined(PHP_BUILDLINK3_MK)
PHP_BUILDLINK3_MK:=
BUILDLINK_API_DEPENDS.php+= php>=7.3.0<7.3.99
BUILDLINK_ABI_DEPENDS.php+= php>=7.3.0<7.3.99
BUILDLINK_PKGSRCDIR.php?= ../../lang/php72
.include "../../textproc/libxml2/buildlink3.mk"
.endif # PHP_BUILDLINK3_MK
BUILDLINK_TREE+= -php

21
lang/php73/distinfo Normal file
View file

@ -0,0 +1,21 @@
$NetBSD: distinfo,v 1.1 2018/12/15 17:12:44 taca Exp $
SHA1 (php-7.3.0.tar.bz2) = a5dfd570ae1014beb318400db9fab43758f4240b
RMD160 (php-7.3.0.tar.bz2) = 069f463dfa8c38f5ef06d49a3225d145e89fefdf
SHA512 (php-7.3.0.tar.bz2) = e2f9e30fb22ebccb72cf0e0c0ef97ce13c429abec17909b982ee91f7061ac2fd9e2325a091088aad5e9b090c444e31fd39096752ce34191d884bd7e9d726479f
Size (php-7.3.0.tar.bz2) = 14786886 bytes
SHA1 (patch-configure) = a47c9d3b6ace5fca7cde1cf2e149dc1dc3d8acd4
SHA1 (patch-disable-filter-url) = d7e450380b584e01e2f01e9c91c864d01991cdbf
SHA1 (patch-ext_gd_config.m4) = eaecfb31b18700dd642c067ed82748d4f6be2335
SHA1 (patch-ext_phar_Makefile.frag) = 558869b60f8ed6674a3ba1d595a65f010df4c426
SHA1 (patch-ext_phar_phar_phar.php) = f630e3946b21b76d4fe857a43e00e25c9445f2c8
SHA1 (patch-ext_recode_recode.c) = 639bf762302c7a30c88d3f3fa862494e0f847bdb
SHA1 (patch-ext_tidy_config.m4) = 4d6b4bf71c606fdb244937dc8a92b49e268060e6
SHA1 (patch-ext_xsl_php__xsl.h) = a9877bff7bacc77926a4541a0ac171c00ad1a627
SHA1 (patch-php.ini-development) = 0150deec620db99272d10bc01585a503b2fc4b86
SHA1 (patch-php.ini-production) = 8c3451ff6253c9cd0dbf342761231c8fe54fdc52
SHA1 (patch-run-tests.php) = 278cd99b3c5f3d2131eef564e18eb2ee9924db5a
SHA1 (patch-sapi_cgi_Makefile.frag) = 18769900f588ff81cc34474542afa1d65c070e65
SHA1 (patch-sapi_cli_Makefile.frag) = 1cd29d09042863acbf5330e406410fdcf75d06b3
SHA1 (patch-sapi_fpm_fpm_events_port.c) = b82b7caffffde1343190fae430a68eb411b5cf8a
SHA1 (patch-sapi_fpm_php-fpm.conf.in) = b3c4fd499cbfd2dffd9176abb54e298ea542a5d7

View file

@ -0,0 +1,27 @@
$NetBSD: patch-configure,v 1.1 2018/12/15 17:12:44 taca Exp $
Don't automatically add libgcc on SunOS. Reported upstream as #75941.
The meta_ccld removal reported upstream as #75940.
--- configure.orig 2018-12-04 16:12:21.000000000 +0000
+++ configure
@@ -5453,9 +5453,6 @@ fi
case $host_alias in
*solaris*)
CPPFLAGS="$CPPFLAGS -D_POSIX_PTHREAD_SEMANTICS"
- if test "${enable_libgcc+set}" != "set" && test "$GCC" = "yes"; then
- enable_libgcc=yes
- fi
;;
*dgux*)
CPPFLAGS="$CPPFLAGS -D_BSD_TIMEOFDAY_FLAVOR"
@@ -83290,7 +83287,7 @@ $as_echo "#define HAVE_TIDYBUFFIO_H 1" >
fi
TIDY_LIBDIR=$TIDY_DIR/$PHP_LIBDIR
- if test "$TIDY_LIB_NAME" == 'tidyp'; then
+ if test "$TIDY_LIB_NAME" = 'tidyp'; then
$as_echo "#define HAVE_TIDYP_H 1" >>confdefs.h

View file

@ -0,0 +1,30 @@
$NetBSD: patch-disable-filter-url,v 1.1 2018/12/15 17:12:44 taca Exp $
Add build-time disable option for dangerous php://filter URL
php://filter URL is a feature documented here:
http://php.net/manual/en/wrappers.php.php
Unfortunately, it allows remote control of include() behavior
beyond what many developpers expected, enabling easy dump of
PHP source files. The administrator may want to disable the
feature for security sake, and this patch makes that possible.
--- ext/standard/php_fopen_wrapper.c.orig 2018-12-04 16:12:26.000000000 +0000
+++ ext/standard/php_fopen_wrapper.c
@@ -338,6 +338,7 @@ php_stream * php_stream_url_wrap_php(php
"[%d]: %s", fildes_ori, errno, strerror(errno));
return NULL;
}
+#ifndef DISABLE_FILTER_URL
} else if (!strncasecmp(path, "filter/", 7)) {
/* Save time/memory when chain isn't specified */
if (strchr(mode, 'r') || strchr(mode, '+')) {
@@ -375,6 +376,7 @@ php_stream * php_stream_url_wrap_php(php
efree(pathdup);
return stream;
+#endif /* !DISABLE_FILTER_URL */
} else {
/* invalid php://thingy */
php_error_docref(NULL, E_WARNING, "Invalid php:// URL specified");

View file

@ -0,0 +1,97 @@
$NetBSD: patch-ext_gd_config.m4,v 1.1 2018/12/15 17:12:44 taca Exp $
Allow pkg-config rather than freetype-config
--- ext/gd/config.m4.orig 2018-10-09 15:09:51.000000000 +0000
+++ ext/gd/config.m4
@@ -43,18 +43,7 @@ dnl Checks for the configure options
dnl
AC_DEFUN([PHP_GD_ZLIB],[
- if test "$PHP_ZLIB_DIR" != "no" && test "$PHP_ZLIB_DIR" != "yes"; then
- if test -f "$PHP_ZLIB_DIR/include/zlib/zlib.h"; then
- PHP_ZLIB_DIR="$PHP_ZLIB_DIR"
- PHP_ZLIB_INCDIR="$PHP_ZLIB_DIR/include/zlib"
- elif test -f "$PHP_ZLIB_DIR/include/zlib.h"; then
- PHP_ZLIB_DIR="$PHP_ZLIB_DIR"
- PHP_ZLIB_INCDIR="$PHP_ZLIB_DIR/include"
- else
- AC_MSG_ERROR([Can't find zlib headers under "$PHP_ZLIB_DIR"])
- fi
- else
- for i in /usr/local /usr; do
+ for i in "$PHP_ZLIB_DIR" /usr/local /usr; do
if test -f "$i/include/zlib/zlib.h"; then
PHP_ZLIB_DIR="$i"
PHP_ZLIB_INCDIR="$i/include/zlib"
@@ -63,7 +52,6 @@ AC_DEFUN([PHP_GD_ZLIB],[
PHP_ZLIB_INCDIR="$i/include"
fi
done
- fi
])
AC_DEFUN([PHP_GD_WEBP],[
@@ -140,13 +128,13 @@ AC_DEFUN([PHP_GD_PNG],[
AC_MSG_ERROR([PNG support requires ZLIB. Use --with-zlib-dir=<DIR>])
fi
- PHP_CHECK_LIBRARY(png,png_write_image,
+ PHP_CHECK_LIBRARY(png16,png_write_image,
[
PHP_ADD_INCLUDE($GD_PNG_DIR/include)
PHP_ADD_LIBRARY_WITH_PATH(z, $PHP_ZLIB_DIR/$PHP_LIBDIR, GD_SHARED_LIBADD)
- PHP_ADD_LIBRARY_WITH_PATH(png, $GD_PNG_DIR/$PHP_LIBDIR, GD_SHARED_LIBADD)
+ PHP_ADD_LIBRARY_WITH_PATH(png16, $GD_PNG_DIR/$PHP_LIBDIR, GD_SHARED_LIBADD)
],[
- AC_MSG_ERROR([Problem with libpng.(a|so) or libz.(a|so). Please check config.log for more information.])
+ AC_MSG_ERROR([Problem with libpng16.(a|so) or libz.(a|so). Please check config.log for more information.])
],[
-L$PHP_ZLIB_DIR/$PHP_LIBDIR -lz -L$GD_PNG_DIR/$PHP_LIBDIR
])
@@ -186,6 +174,9 @@ AC_DEFUN([PHP_GD_XPM],[
AC_DEFUN([PHP_GD_FREETYPE2],[
if test "$PHP_FREETYPE_DIR" != "no"; then
+ AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
+
+ AC_MSG_CHECKING([for freetype])
for i in $PHP_FREETYPE_DIR /usr/local /usr; do
if test -f "$i/bin/freetype-config"; then
FREETYPE2_DIR=$i
@@ -194,13 +185,20 @@ AC_DEFUN([PHP_GD_FREETYPE2],[
fi
done
- if test -z "$FREETYPE2_DIR"; then
+ if test -n "$FREETYPE2_CONFIG"; then
+ FREETYPE2_CFLAGS=`$FREETYPE2_CONFIG --cflags`
+ FREETYPE2_LIBS=`$FREETYPE2_CONFIG --libs`
+ AC_MSG_RESULT([found in $FREETYPE2_DIR])
+ elif test "$PKG_CONFIG" != "no" && $PKG_CONFIG --exists freetype2; then
+ FREETYPE2_DIR=pkg-config
+ FREETYPE2_CFLAGS=`$PKG_CONFIG freetype2 --cflags`
+ FREETYPE2_LIBS=`$PKG_CONFIG freetype2 --libs`
+ AC_MSG_RESULT([found by pkg-config])
+ else
+ AC_MSG_RESULT([not found])
AC_MSG_ERROR([freetype-config not found.])
fi
- FREETYPE2_CFLAGS=`$FREETYPE2_CONFIG --cflags`
- FREETYPE2_LIBS=`$FREETYPE2_CONFIG --libs`
-
PHP_EVAL_INCLINE($FREETYPE2_CFLAGS)
PHP_EVAL_LIBLINE($FREETYPE2_LIBS, GD_SHARED_LIBADD)
AC_DEFINE(HAVE_LIBFREETYPE,1,[ ])
@@ -220,7 +218,9 @@ AC_DEFUN([PHP_GD_CHECK_VERSION],[
PHP_CHECK_LIBRARY(gd, gdImageCreateFromPng, [AC_DEFINE(HAVE_GD_PNG, 1, [ ])], [], [ $GD_SHARED_LIBADD ])
PHP_CHECK_LIBRARY(gd, gdImageCreateFromWebp, [AC_DEFINE(HAVE_GD_WEBP, 1, [ ])], [], [ $GD_SHARED_LIBADD ])
PHP_CHECK_LIBRARY(gd, gdImageCreateFromJpeg, [AC_DEFINE(HAVE_GD_JPG, 1, [ ])], [], [ $GD_SHARED_LIBADD ])
- PHP_CHECK_LIBRARY(gd, gdImageCreateFromXpm, [AC_DEFINE(HAVE_GD_XPM, 1, [ ])], [], [ $GD_SHARED_LIBADD ])
+ if test "$PHP_XPM_DIR" != "no"; then
+ PHP_CHECK_LIBRARY(gd, gdImageCreateFromXpm, [AC_DEFINE(HAVE_GD_XPM, 1, [ ])], [], [ $GD_SHARED_LIBADD ])
+ fi
PHP_CHECK_LIBRARY(gd, gdImageCreateFromBmp, [AC_DEFINE(HAVE_GD_BMP, 1, [ ])], [], [ $GD_SHARED_LIBADD ])
PHP_CHECK_LIBRARY(gd, gdImageStringFT, [AC_DEFINE(HAVE_GD_FREETYPE, 1, [ ])], [], [ $GD_SHARED_LIBADD ])
PHP_CHECK_LIBRARY(gd, gdVersionString, [AC_DEFINE(HAVE_GD_LIBVERSION, 1, [ ])], [], [ $GD_SHARED_LIBADD ])

View file

@ -0,0 +1,13 @@
$NetBSD: patch-ext_phar_Makefile.frag,v 1.1 2018/12/15 17:12:44 taca Exp $
--- ext/phar/Makefile.frag.orig 2015-06-23 17:33:33.000000000 +0000
+++ ext/phar/Makefile.frag
@@ -18,7 +18,7 @@ PHP_PHARCMD_EXECUTABLE = ` \
else \
$(top_srcdir)/build/shtool echo -n -- "$(PHP_EXECUTABLE)"; \
fi;`
-PHP_PHARCMD_BANG = `$(top_srcdir)/build/shtool echo -n -- "$(INSTALL_ROOT)$(bindir)/$(program_prefix)php$(program_suffix)$(EXEEXT)";`
+PHP_PHARCMD_BANG = `$(top_srcdir)/build/shtool echo -n -- "$(bindir)/$(program_prefix)php$(program_suffix)$(EXEEXT)";`
$(builddir)/phar/phar.inc: $(srcdir)/phar/phar.inc
-@test -d $(builddir)/phar || mkdir $(builddir)/phar

View file

@ -0,0 +1,10 @@
$NetBSD: patch-ext_phar_phar_phar.php,v 1.1 2018/12/15 17:12:44 taca Exp $
--- ext/phar/phar/phar.php.orig 2015-06-23 17:33:33.000000000 +0000
+++ ext/phar/phar/phar.php
@@ -1,4 +1,4 @@
-#!/usr/local/bin/php
+#!@PREFIX@/bin/php
<?php
/** @file phar.php

View file

@ -0,0 +1,27 @@
$NetBSD: patch-ext_recode_recode.c,v 1.1 2018/12/15 17:12:44 taca Exp $
program_name is expected variable, is required by recode 3.5 and
recode 3.6 to actually work.
The config.m4 test for it is broken at least for some platforms -
it only tests if program without it compiles, but on Solaris and
MacOS/Darwin at least it only fails when run.
Reported upstream as #75617
--- ext/recode/recode.c.orig 2016-07-24 13:07:47.000000000 +0000
+++ ext/recode/recode.c
@@ -29,11 +29,8 @@
#if HAVE_LIBRECODE
-/* For recode 3.5 */
-#if HAVE_BROKEN_RECODE
-extern char *program_name;
-char *program_name = "php";
-#endif
+extern const char *program_name;
+const char *program_name = "php";
#ifdef HAVE_STDBOOL_H
# include <stdbool.h>

View file

@ -0,0 +1,13 @@
$NetBSD: patch-ext_tidy_config.m4,v 1.1 2018/12/15 17:12:44 taca Exp $
--- ext/tidy/config.m4.orig 2018-12-04 16:12:28.000000000 +0000
+++ ext/tidy/config.m4
@@ -40,7 +40,7 @@ if test "$PHP_TIDY" != "no"; then
fi
TIDY_LIBDIR=$TIDY_DIR/$PHP_LIBDIR
- if test "$TIDY_LIB_NAME" == 'tidyp'; then
+ if test "$TIDY_LIB_NAME" = 'tidyp'; then
AC_DEFINE(HAVE_TIDYP_H,1,[defined if tidyp.h exists])
else
AC_DEFINE(HAVE_TIDY_H,1,[defined if tidy.h exists])

View file

@ -0,0 +1,15 @@
$NetBSD: patch-ext_xsl_php__xsl.h,v 1.1 2018/12/15 17:12:44 taca Exp $
The dom header is now supplied by the main php bl3.
--- ext/xsl/php_xsl.h.orig 2017-03-14 13:17:46.000000000 +0000
+++ ext/xsl/php_xsl.h
@@ -41,7 +41,7 @@ extern zend_module_entry xsl_module_entr
#include <libexslt/exsltconfig.h>
#endif
-#include "../dom/xml_common.h"
+#include "dom/xml_common.h"
#include "xsl_fe.h"
#include <libxslt/extensions.h>

View file

@ -0,0 +1,32 @@
$NetBSD: patch-php.ini-development,v 1.1 2018/12/15 17:12:44 taca Exp $
--- php.ini-development.orig 2018-12-04 16:12:20.000000000 +0000
+++ php.ini-development
@@ -722,7 +722,7 @@ default_charset = "UTF-8"
;;;;;;;;;;;;;;;;;;;;;;;;;
; UNIX: "/path1:/path2"
-;include_path = ".:/php/includes"
+include_path = ".:@PREFIX@/lib/php"
;
; Windows: "\path1;\path2"
;include_path = ".;c:\php\includes"
@@ -743,7 +743,8 @@ doc_root =
; http://php.net/user-dir
user_dir =
-; Directory in which the loadable extensions (modules) reside.
+; Directory in which the loadable extensions (modules) reside. If not
+; defined, then use the extension directory specified at compile-time.
; http://php.net/extension-dir
;extension_dir = "./"
; On windows:
@@ -828,7 +829,7 @@ file_uploads = On
; Temporary directory for HTTP uploaded files (will use system default if not
; specified).
; http://php.net/upload-tmp-dir
-;upload_tmp_dir =
+upload_tmp_dir = /tmp
; Maximum allowed size for uploaded files.
; http://php.net/upload-max-filesize

View file

@ -0,0 +1,32 @@
$NetBSD: patch-php.ini-production,v 1.1 2018/12/15 17:12:44 taca Exp $
--- php.ini-production.orig 2018-12-04 16:12:20.000000000 +0000
+++ php.ini-production
@@ -729,7 +729,7 @@ default_charset = "UTF-8"
;;;;;;;;;;;;;;;;;;;;;;;;;
; UNIX: "/path1:/path2"
-;include_path = ".:/php/includes"
+include_path = ".:@PREFIX@/lib/php"
;
; Windows: "\path1;\path2"
;include_path = ".;c:\php\includes"
@@ -750,7 +750,8 @@ doc_root =
; http://php.net/user-dir
user_dir =
-; Directory in which the loadable extensions (modules) reside.
+; Directory in which the loadable extensions (modules) reside. If not
+; defined, then use the extension directory specified at compile-time.
; http://php.net/extension-dir
;extension_dir = "./"
; On windows:
@@ -835,7 +836,7 @@ file_uploads = On
; Temporary directory for HTTP uploaded files (will use system default if not
; specified).
; http://php.net/upload-tmp-dir
-;upload_tmp_dir =
+upload_tmp_dir = /tmp
; Maximum allowed size for uploaded files.
; http://php.net/upload-max-filesize

View file

@ -0,0 +1,10 @@
$NetBSD: patch-run-tests.php,v 1.1 2018/12/15 17:12:44 taca Exp $
--- run-tests.php.orig 2018-12-04 16:12:20.000000000 +0000
+++ run-tests.php
@@ -1,4 +1,4 @@
-#!/usr/bin/env php
+#!/usr/pkg/bin/php
<?php
/*
+----------------------------------------------------------------------+

View file

@ -0,0 +1,16 @@
$NetBSD: patch-sapi_cgi_Makefile.frag,v 1.1 2018/12/15 17:12:44 taca Exp $
--- sapi/cgi/Makefile.frag.orig 2015-06-23 17:33:33.000000000 +0000
+++ sapi/cgi/Makefile.frag
@@ -4,9 +4,9 @@ $(SAPI_CGI_PATH): $(PHP_GLOBAL_OBJS) $(P
$(BUILD_CGI)
install-cgi: $(SAPI_CGI_PATH)
- @echo "Installing PHP CGI binary: $(INSTALL_ROOT)$(bindir)/"
+ @echo "Installing PHP CGI binary: $(INSTALL_ROOT)@CGIDIR@/"
@$(mkinstalldirs) $(INSTALL_ROOT)$(bindir)
- @$(INSTALL) -m 0755 $(SAPI_CGI_PATH) $(INSTALL_ROOT)$(bindir)/$(program_prefix)php-cgi$(program_suffix)$(EXEEXT)
+ @$(INSTALL) -m 0755 $(SAPI_CGI_PATH) $(INSTALL_ROOT)@CGIDIR@/$(program_prefix)php$(program_suffix)$(EXEEXT)
@echo "Installing PHP CGI man page: $(INSTALL_ROOT)$(mandir)/man1/"
@$(mkinstalldirs) $(INSTALL_ROOT)$(mandir)/man1
@$(INSTALL_DATA) sapi/cgi/php-cgi.1 $(INSTALL_ROOT)$(mandir)/man1/$(program_prefix)php-cgi$(program_suffix).1

View file

@ -0,0 +1,19 @@
$NetBSD: patch-sapi_cli_Makefile.frag,v 1.1 2018/12/15 17:12:44 taca Exp $
Needed on NetBSD with PaX MPROTEXT, otherwise core dump with:
#1 0x00000000004d0d87 in _pcre_jit_exec ()
#2 0x00000000004a53f1 in php_pcre_exec ()
https://bugs.php.net/bug.php?id=72281
--- sapi/cli/Makefile.frag.orig 2016-04-28 18:12:27.000000000 +0000
+++ sapi/cli/Makefile.frag
@@ -2,6 +2,9 @@ cli: $(SAPI_CLI_PATH)
$(SAPI_CLI_PATH): $(PHP_GLOBAL_OBJS) $(PHP_BINARY_OBJS) $(PHP_CLI_OBJS)
$(BUILD_CLI)
+ @if test -x /usr/sbin/paxctl; then \
+ /usr/sbin/paxctl +m $(SAPI_CLI_PATH); \
+ fi
install-cli: $(SAPI_CLI_PATH)
@echo "Installing PHP CLI binary: $(INSTALL_ROOT)$(bindir)/"

View file

@ -0,0 +1,49 @@
$NetBSD: patch-sapi_fpm_fpm_events_port.c,v 1.1 2018/12/15 17:12:44 taca Exp $
Similar to upstream bug #65800. We should resubmit this patch and
get that bugfix intergrated, by changing port_associate() call to
use the wrapper fpm_event_port_add().
--- sapi/fpm/fpm/events/port.c.orig 2015-06-23 17:33:33.000000000 +0000
+++ sapi/fpm/fpm/events/port.c
@@ -124,6 +124,7 @@ static int fpm_event_port_wait(struct fp
t.tv_nsec = (timeout % 1000) * 1000 * 1000;
/* wait for inconming event or timeout. We want at least one event or timeout */
+again:
nget = 1;
ret = port_getn(pfd, events, nevents, &nget, &t);
if (ret < 0) {
@@ -133,17 +134,31 @@ static int fpm_event_port_wait(struct fp
zlog(ZLOG_WARNING, "poll() returns %d", errno);
return -1;
}
+
+ if (errno == EINTR)
+ goto again;
+
+ return 0;
}
for (i = 0; i < nget; i++) {
+ struct fpm_event_s *ev;
/* do we have a ptr to the event ? */
if (!events[i].portev_user) {
continue;
}
+ ev = (struct fpm_event_s *)events[i].portev_user;
+
+ if (port_associate(pfd, PORT_SOURCE_FD,
+ ev->fd, POLLIN, (void *)ev) < 0) {
+ zlog(ZLOG_ERROR, "port: unable to add the event");
+ return -1;
+ }
+
/* fire the event */
- fpm_event_fire((struct fpm_event_s *)events[i].portev_user);
+ fpm_event_fire(ev);
/* sanity check */
if (fpm_globals.parent_pid != getpid()) {

View file

@ -0,0 +1,13 @@
$NetBSD: patch-sapi_fpm_php-fpm.conf.in,v 1.1 2018/12/15 17:12:44 taca Exp $
--- sapi/fpm/php-fpm.conf.in.orig 2015-06-23 17:33:33.000000000 +0000
+++ sapi/fpm/php-fpm.conf.in
@@ -14,7 +14,7 @@
; Pid file
; Note: the default prefix is @EXPANDED_LOCALSTATEDIR@
; Default Value: none
-;pid = run/php-fpm.pid
+pid = run/php-fpm.pid
; Error log file
; If it's set to "syslog", log is sent to syslogd instead of being written