php: security bump to version 5.3.13 and enhance
Bump php to version 5.3.13 to solve multiple CVEs. The 5.2 series is no longer maintained. The PCRE and SPL extensions are no longer optional. Reflection is no longer optional either. Ncurses was spun out to PECL. Add a ton of new extensions and give more granular options on others (like the libxml2-based ones). The FastCGI option no longer exists, it's always on as long as CGI is. Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
This commit is contained in:
parent
360f0e40f0
commit
aeb9350cfb
@ -1,28 +1,21 @@
|
||||
menu "PHP Extensions"
|
||||
menu "Extensions"
|
||||
|
||||
config BR2_PACKAGE_PHP_CONFIG
|
||||
string "PHP configuration file to use"
|
||||
default "$(PHP_DIR)/php.ini-dist"
|
||||
config BR2_PACKAGE_PHP_EXT_CALENDAR
|
||||
bool "Calendar"
|
||||
help
|
||||
If you want to use a different php.ini file define it here.
|
||||
Otherwise it'll just copy the default php.ini-dist from PHP.
|
||||
Calendar and event support
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_SOCKETS
|
||||
bool "socket"
|
||||
config BR2_PACKAGE_PHP_EXT_FILEINFO
|
||||
bool "Fileinfo"
|
||||
help
|
||||
Sockets support
|
||||
File Information support
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_POSIX
|
||||
bool "posix"
|
||||
default y
|
||||
config BR2_PACKAGE_PHP_EXT_READLINE
|
||||
bool "Readline"
|
||||
select BR2_PACKAGE_NCURSES
|
||||
select BR2_PACKAGE_READLINE
|
||||
help
|
||||
POSIX support
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_SPL
|
||||
bool "SPL"
|
||||
default y
|
||||
help
|
||||
Standard PHP library support
|
||||
Readline support
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_SESSION
|
||||
bool "Session"
|
||||
@ -30,98 +23,13 @@ config BR2_PACKAGE_PHP_EXT_SESSION
|
||||
help
|
||||
Session support
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_OPENSSL
|
||||
bool "openssl"
|
||||
select BR2_PACKAGE_OPENSSL
|
||||
comment "Compression extensions"
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_BZIP2
|
||||
bool "bzip2"
|
||||
select BR2_PACKAGE_BZIP2
|
||||
help
|
||||
openssl support
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_LIBXML2
|
||||
bool "xml2"
|
||||
select BR2_PACKAGE_LIBXML2
|
||||
help
|
||||
libxml2 support
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_SIMPLEXML
|
||||
bool "simplexml"
|
||||
select BR2_PACKAGE_PHP_EXT_LIBXML2
|
||||
help
|
||||
SimpleXML support
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_ZLIB
|
||||
bool "zlib"
|
||||
select BR2_PACKAGE_ZLIB
|
||||
default y
|
||||
help
|
||||
zlib support
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_EXIF
|
||||
bool "EXIF"
|
||||
help
|
||||
EXIF support
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_FTP
|
||||
bool "FTP"
|
||||
help
|
||||
FTP Support
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_GETTEXT
|
||||
bool "gettext"
|
||||
select BR2_PACKAGE_GETTEXT if BR2_NEEDS_GETTEXT
|
||||
depends on BR2_USE_WCHAR
|
||||
help
|
||||
gettext support
|
||||
|
||||
comment "gettext support requires a toolchain with WCHAR support"
|
||||
depends on !BR2_USE_WCHAR
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_GMP
|
||||
bool "gmp"
|
||||
select BR2_PACKAGE_GMP
|
||||
help
|
||||
GMP support
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_JSON
|
||||
bool "JSON"
|
||||
help
|
||||
JavaScript Object Serialization support
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_READLINE
|
||||
bool "readline"
|
||||
depends on (BR2_PACKAGE_PHP_CLI || BR2_PACKAGE_PHP_CGI) && BR2_PACKAGE_READLINE
|
||||
help
|
||||
readline support
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_NCURSES
|
||||
bool "ncurses"
|
||||
depends on (BR2_PACKAGE_PHP_CLI || BR2_PACKAGE_PHP_CGI) && BR2_PACKAGE_NCURSES
|
||||
help
|
||||
ncurses support
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_PCRE
|
||||
bool "PCRE"
|
||||
help
|
||||
Perl Compatible Regular Expressions support
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_PCNTL
|
||||
bool "PCNTL"
|
||||
help
|
||||
Process Control Support
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_SYSVMSG
|
||||
bool "sysvmsg - System V Message queue"
|
||||
help
|
||||
System V Message queue support
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_SYSVSEM
|
||||
bool "sysvsem - System V Semaphores"
|
||||
help
|
||||
System V Sempahore support
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_SYSVSHM
|
||||
bool "sysvshm - System V Shared memory"
|
||||
help
|
||||
System V Shared memory support
|
||||
bzip2 read/write support
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_ZIP
|
||||
bool "zip"
|
||||
@ -129,19 +37,60 @@ config BR2_PACKAGE_PHP_EXT_ZIP
|
||||
help
|
||||
Zip read/write support
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_FILTER
|
||||
bool "filter"
|
||||
select BR2_PACKAGE_PHP_EXT_PCRE
|
||||
config BR2_PACKAGE_PHP_EXT_ZLIB
|
||||
bool "zlib"
|
||||
select BR2_PACKAGE_ZLIB
|
||||
default y
|
||||
help
|
||||
Input filter support
|
||||
zlib support
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_CALENDAR
|
||||
bool "calendar"
|
||||
comment "Cryptography extensions"
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_HASH
|
||||
bool "hash"
|
||||
help
|
||||
Calendar and event support
|
||||
HASH message digest framework
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_OPENSSL
|
||||
bool "openssl"
|
||||
select BR2_PACKAGE_OPENSSL
|
||||
help
|
||||
openssl support
|
||||
|
||||
comment "Database extensions"
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_DBA
|
||||
bool "DBA"
|
||||
help
|
||||
Database Abstraction Layer
|
||||
|
||||
if BR2_PACKAGE_PHP_EXT_DBA
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_DBA_CDB
|
||||
bool "cdb"
|
||||
help
|
||||
CDB handler
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_DBA_DB4
|
||||
bool "db4/5"
|
||||
select BR2_PACKAGE_BERKELEYDB
|
||||
help
|
||||
BerkeleyDB version 4/5 handler
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_DBA_FLAT
|
||||
bool "flat"
|
||||
default y
|
||||
help
|
||||
Flat file handler
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_DBA_INI
|
||||
bool "ini"
|
||||
default y
|
||||
help
|
||||
INI file handler
|
||||
|
||||
endif
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_SQLITE
|
||||
bool "SQLite"
|
||||
help
|
||||
@ -151,35 +100,243 @@ config BR2_PACKAGE_PHP_EXT_SQLITE_UTF8
|
||||
bool "sqlite UTF8 support"
|
||||
depends on BR2_PACKAGE_PHP_EXT_SQLITE
|
||||
help
|
||||
UTF8 Support for sqlite
|
||||
UTF8 support for sqlite
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_MYSQL
|
||||
bool "Mysql"
|
||||
depends on BR2_INSTALL_LIBSTDCPP
|
||||
select BR2_PACKAGE_MYSQL_CLIENT
|
||||
help
|
||||
MySQL support
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_MYSQLI
|
||||
bool "Mysqli"
|
||||
depends on BR2_INSTALL_LIBSTDCPP
|
||||
select BR2_PACKAGE_MYSQL_CLIENT
|
||||
select BR2_PACKAGE_PHP_EXT_MYSQL
|
||||
help
|
||||
MySQL Improved extension support
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_PDO
|
||||
bool "PDO"
|
||||
help
|
||||
PHP Data Objects support
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_PDO_SQLITE
|
||||
bool "PDO_SQLite"
|
||||
depends on BR2_PACKAGE_PHP_EXT_PDO
|
||||
help
|
||||
SQLite driver for PDO
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_PDO_SQLITE_EXTERNAL
|
||||
bool "PDO_SQLite external"
|
||||
depends on BR2_PACKAGE_PHP_EXT_PDO_SQLITE
|
||||
select BR2_PACKAGE_SQLITE
|
||||
help
|
||||
Use external sqlite3 library
|
||||
if BR2_PACKAGE_PHP_EXT_PDO
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_PDO_MYSQL
|
||||
bool "PDO_MySQL"
|
||||
depends on BR2_PACKAGE_PHP_EXT_PDO
|
||||
bool "MySQL"
|
||||
depends on BR2_INSTALL_LIBSTDCPP
|
||||
select BR2_PACKAGE_MYSQL_CLIENT
|
||||
help
|
||||
PDO driver for MySQL
|
||||
|
||||
comment "PDO_MySQL requires a toolchain with C++ support"
|
||||
depends on !BR2_INSTALL_LIBSTDCPP && BR2_PACKAGE_PHP_EXT_PDO
|
||||
comment "MySQL drivers require a toolchain with C++ support"
|
||||
depends on !BR2_INSTALL_LIBSTDCPP
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_PDO_SQLITE
|
||||
bool "SQLite3"
|
||||
select BR2_PACKAGE_SQLITE
|
||||
help
|
||||
SQLite3 driver for PDO
|
||||
|
||||
endif
|
||||
|
||||
comment "Human language and character encoding support"
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_GETTEXT
|
||||
bool "Gettext"
|
||||
select BR2_PACKAGE_GETTEXT if BR2_NEEDS_GETTEXT
|
||||
depends on BR2_USE_WCHAR
|
||||
help
|
||||
Gettext support
|
||||
|
||||
comment "Gettext support requires a toolchain with WCHAR support"
|
||||
depends on !BR2_USE_WCHAR
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_ICONV
|
||||
bool "iconv"
|
||||
select BR2_PACKAGE_LIBICONV if !BR2_ENABLE_LOCALE
|
||||
help
|
||||
iconv character set conversion support
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_INTL
|
||||
bool "intl"
|
||||
select BR2_PACKAGE_ICU
|
||||
depends on BR2_INSTALL_LIBSTDCPP
|
||||
depends on BR2_USE_WCHAR
|
||||
help
|
||||
Internationalization support
|
||||
|
||||
comment "intl support requires a toolchain with C++ and WCHAR support"
|
||||
depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR
|
||||
|
||||
comment "Image processing"
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_EXIF
|
||||
bool "EXIF"
|
||||
help
|
||||
EXIF support
|
||||
|
||||
comment "Mathematical extensions"
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_BCMATH
|
||||
bool "BC math"
|
||||
help
|
||||
BCMath arbitrary precision mathematics support
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_GMP
|
||||
bool "GMP"
|
||||
select BR2_PACKAGE_GMP
|
||||
help
|
||||
GNU Multiple Precision support
|
||||
|
||||
comment "Other basic extensions"
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_JSON
|
||||
bool "JSON"
|
||||
help
|
||||
JavaScript Object Serialization support
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_TOKENIZER
|
||||
bool "Tokenizer"
|
||||
help
|
||||
Tokenizer functions support
|
||||
|
||||
comment "Other services"
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_CURL
|
||||
bool "cURL"
|
||||
select BR2_PACKAGE_LIBCURL
|
||||
help
|
||||
cURL for URL streams
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_FTP
|
||||
bool "FTP"
|
||||
help
|
||||
FTP support
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_SNMP
|
||||
bool "SNMP"
|
||||
select BR2_PACKAGE_NETSNMP
|
||||
help
|
||||
SNMP support
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_SOCKETS
|
||||
bool "sockets"
|
||||
help
|
||||
Sockets support
|
||||
|
||||
comment "Process Control"
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_PCNTL
|
||||
bool "PCNTL"
|
||||
help
|
||||
Process control support
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_POSIX
|
||||
bool "Posix"
|
||||
default y
|
||||
help
|
||||
POSIX.1 (IEEE 1003.1) function support
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_SHMOP
|
||||
bool "shmop"
|
||||
help
|
||||
Shared memory support
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_SYSVMSG
|
||||
bool "sysvmsg"
|
||||
help
|
||||
System V message queue support
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_SYSVSEM
|
||||
bool "sysvsem"
|
||||
help
|
||||
System V semaphore support
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_SYSVSHM
|
||||
bool "sysvshm"
|
||||
help
|
||||
System V shared memory support
|
||||
|
||||
comment "Variable and Type related"
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_CTYPE
|
||||
bool "Ctype"
|
||||
help
|
||||
Character type checking support
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_FILTER
|
||||
bool "Filter"
|
||||
help
|
||||
Input filter support
|
||||
|
||||
comment "Web services"
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_SOAP
|
||||
bool "SOAP"
|
||||
select BR2_PACKAGE_PHP_EXT_LIBXML2
|
||||
help
|
||||
SOAP support
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_XMLRPC
|
||||
bool "XML-RPC"
|
||||
select BR2_PACKAGE_PHP_EXT_LIBXML2
|
||||
select BR2_PACKAGE_LIBICONV if !BR2_ENABLE_LOCALE
|
||||
help
|
||||
XML-RPC support
|
||||
|
||||
comment "XML manipulation"
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_DOM
|
||||
bool "DOM"
|
||||
select BR2_PACKAGE_PHP_EXT_LIBXML2
|
||||
help
|
||||
Document Object Model support
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_LIBXML2
|
||||
bool "libxml"
|
||||
select BR2_PACKAGE_LIBXML2
|
||||
help
|
||||
libxml2 support
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_SIMPLEXML
|
||||
bool "SimpleXML"
|
||||
select BR2_PACKAGE_PHP_EXT_LIBXML2
|
||||
help
|
||||
SimpleXML support
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_WDDX
|
||||
bool "WDDX"
|
||||
select BR2_PACKAGE_PHP_EXT_LIBXML2
|
||||
help
|
||||
WDDX support
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_XML
|
||||
bool "XML Parser"
|
||||
select BR2_PACKAGE_PHP_EXT_LIBXML2
|
||||
help
|
||||
XML Parser support
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_XMLREADER
|
||||
bool "XMLReader"
|
||||
select BR2_PACKAGE_PHP_EXT_LIBXML2
|
||||
help
|
||||
XMLReader support
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_XMLWRITER
|
||||
bool "XMLWriter"
|
||||
select BR2_PACKAGE_PHP_EXT_LIBXML2
|
||||
help
|
||||
XMLWriter support
|
||||
|
||||
config BR2_PACKAGE_PHP_EXT_XSL
|
||||
bool "XSL"
|
||||
select BR2_PACKAGE_PHP_EXT_DOM
|
||||
select BR2_PACKAGE_PHP_EXT_LIBXML2
|
||||
select BR2_PACKAGE_LIBXSLT
|
||||
help
|
||||
XSL transformation support
|
||||
|
||||
endmenu
|
||||
|
@ -9,6 +9,8 @@ config BR2_PACKAGE_PHP
|
||||
|
||||
if BR2_PACKAGE_PHP
|
||||
|
||||
source "package/php/Config.ext"
|
||||
|
||||
config BR2_PACKAGE_PHP_CLI
|
||||
bool
|
||||
|
||||
@ -16,38 +18,30 @@ config BR2_PACKAGE_PHP_CGI
|
||||
bool
|
||||
|
||||
choice
|
||||
prompt "PHP interface"
|
||||
prompt "Interface"
|
||||
default BR2_PACKAGE_PHP_SAPI_CGI
|
||||
help
|
||||
Select the PHP interface(s).
|
||||
|
||||
config BR2_PACKAGE_PHP_SAPI_CGI
|
||||
bool "CGI"
|
||||
select BR2_PACKAGE_PHP_CGI
|
||||
help
|
||||
Common Gateway Interface
|
||||
|
||||
config BR2_PACKAGE_PHP_SAPI_CLI
|
||||
bool "cli interface"
|
||||
bool "CLI"
|
||||
select BR2_PACKAGE_PHP_CLI
|
||||
help
|
||||
Command line interface for PHP.
|
||||
|
||||
config BR2_PACKAGE_PHP_SAPI_CGI
|
||||
bool "cgi interface"
|
||||
select BR2_PACKAGE_PHP_CGI
|
||||
help
|
||||
CGI interface for PHP.
|
||||
Command Line Interface
|
||||
|
||||
config BR2_PACKAGE_PHP_SAPI_CLI_CGI
|
||||
bool "cli and cgi interfaces"
|
||||
bool "CGI and CLI"
|
||||
select BR2_PACKAGE_PHP_CLI
|
||||
select BR2_PACKAGE_PHP_CGI
|
||||
help
|
||||
Command line and CGI interfaces for PHP.
|
||||
Command line and Common gateway interfaces
|
||||
|
||||
endchoice
|
||||
|
||||
config BR2_PACKAGE_PHP_FASTCGI
|
||||
bool "fastcgi"
|
||||
depends on BR2_PACKAGE_PHP_CGI
|
||||
default y
|
||||
help
|
||||
fast cgi interface for php
|
||||
|
||||
source "package/php/Config.ext"
|
||||
endif
|
||||
|
@ -1,30 +0,0 @@
|
||||
From e814fcac0599dbaae50ede1f9f78e20941e27877 Mon Sep 17 00:00:00 2001
|
||||
From: pajoye <pajoye@c90b9560-bf6c-de11-be94-00142212c4b1>
|
||||
Date: Tue, 23 Feb 2010 11:07:39 +0000
|
||||
Subject: [PATCH] - fix build when __GMP_BITS_PER_MP_LIMB is not defined but GMP_LIMB_BITS (no trace of this change in gmp's changelog...)
|
||||
|
||||
git-svn-id: http://svn.php.net/repository/php/php-src/branches/PHP_5_3@295402 c90b9560-bf6c-de11-be94-00142212c4b1
|
||||
---
|
||||
ext/gmp/gmp.c | 5 ++++-
|
||||
1 files changed, 4 insertions(+), 1 deletions(-)
|
||||
|
||||
diff --git a/ext/gmp/gmp.c b/ext/gmp/gmp.c
|
||||
index a54ffe9..f53dcd6 100644
|
||||
--- a/ext/gmp/gmp.c
|
||||
+++ b/ext/gmp/gmp.c
|
||||
@@ -1374,8 +1374,11 @@ ZEND_FUNCTION(gmp_random)
|
||||
|
||||
GMPG(rand_initialized) = 1;
|
||||
}
|
||||
+#ifdef GMP_LIMB_BITS
|
||||
+ mpz_urandomb(*gmpnum_result, GMPG(rand_state), GMP_ABS (limiter) * GMP_LIMB_BITS);
|
||||
+#else
|
||||
mpz_urandomb(*gmpnum_result, GMPG(rand_state), GMP_ABS (limiter) * __GMP_BITS_PER_MP_LIMB);
|
||||
-
|
||||
+#endif
|
||||
ZEND_REGISTER_RESOURCE(return_value, gmpnum_result, le_gmp);
|
||||
}
|
||||
/* }}} */
|
||||
--
|
||||
1.7.1
|
||||
|
21
package/php/php-no-iconv-search.patch
Normal file
21
package/php/php-no-iconv-search.patch
Normal file
@ -0,0 +1,21 @@
|
||||
Don't push LDFLAGS/CFLAGS for iconv.
|
||||
Just assume they're covered somewhere else.
|
||||
Otherwise we get -L/usr/lib and -I/usr/include search paths with uClibc
|
||||
internal iconv support, which breaks things.
|
||||
|
||||
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
|
||||
|
||||
diff -Nura php-5.3.13/configure php-5.3.13-iconv/configure
|
||||
--- php-5.3.13/configure 2012-05-08 06:41:23.000000000 -0300
|
||||
+++ php-5.3.13-iconv/configure 2012-05-18 22:18:21.313975849 -0300
|
||||
@@ -47885,8 +47885,8 @@
|
||||
PHP_ICONV_PREFIX="$ICONV_DIR"
|
||||
fi
|
||||
|
||||
- CFLAGS="-I$PHP_ICONV_PREFIX/include $CFLAGS"
|
||||
- LDFLAGS="-L$PHP_ICONV_PREFIX/$PHP_LIBDIR $LDFLAGS"
|
||||
+ #CFLAGS="-I$PHP_ICONV_PREFIX/include $CFLAGS"
|
||||
+ #LDFLAGS="-L$PHP_ICONV_PREFIX/$PHP_LIBDIR $LDFLAGS"
|
||||
|
||||
if test -r "$PHP_ICONV_PREFIX/include/giconv.h"; then
|
||||
PHP_ICONV_H_PATH="$PHP_ICONV_PREFIX/include/giconv.h"
|
@ -4,53 +4,59 @@
|
||||
#
|
||||
#############################################################
|
||||
|
||||
PHP_VERSION = 5.2.17
|
||||
PHP_VERSION = 5.3.13
|
||||
PHP_SOURCE = php-$(PHP_VERSION).tar.bz2
|
||||
PHP_SITE = http://www.php.net/distributions
|
||||
PHP_INSTALL_STAGING = YES
|
||||
PHP_INSTALL_STAGING_OPT = INSTALL_ROOT=$(STAGING_DIR) install
|
||||
PHP_INSTALL_TARGET_OPT = INSTALL_ROOT=$(TARGET_DIR) install
|
||||
PHP_LIBTOOL_PATCH = NO
|
||||
PHP_CONF_OPT = --mandir=/usr/share/man \
|
||||
--infodir=/usr/share/info \
|
||||
--disable-all \
|
||||
--without-pear \
|
||||
--with-config-file-path=/etc \
|
||||
--localstatedir=/var \
|
||||
--disable-rpath
|
||||
|
||||
PHP_CFLAGS = $(TARGET_CFLAGS)
|
||||
|
||||
ifneq ($(BR2_PACKAGE_PHP_CLI),y)
|
||||
PHP_CONF_OPT += --disable-cli
|
||||
else
|
||||
PHP_CONF_OPT += --enable-cli
|
||||
# Workaround for non-IPv6 uClibc toolchain
|
||||
ifeq ($(BR2_TOOLCHAIN_BUILDROOT)$(BR2_TOOLCHAIN_EXTERNAL_UCLIBC)$(BR2_TOOLCHAIN_CTNG_uClibc),y)
|
||||
ifneq ($(BR2_INET_IPV6),y)
|
||||
PHP_CFLAGS += -DHAVE_DEPRECATED_DNS_FUNCS
|
||||
endif
|
||||
endif
|
||||
|
||||
ifneq ($(BR2_PACKAGE_PHP_CGI),y)
|
||||
PHP_CONF_OPT += --disable-cgi
|
||||
else
|
||||
PHP_CONF_OPT += --enable-cgi
|
||||
ifeq ($(BR2_PACKAGE_PHP_FASTCGI),y)
|
||||
PHP_CONF_OPT += --enable-fastcgi
|
||||
endif
|
||||
endif
|
||||
PHP_CONF_OPT += $(if $(BR2_PACKAGE_PHP_CLI),,--disable-cli)
|
||||
PHP_CONF_OPT += $(if $(BR2_PACKAGE_PHP_CGI),,--disable-cgi)
|
||||
|
||||
### Extensions
|
||||
ifeq ($(BR2_PACKAGE_PHP_EXT_SOCKETS),y)
|
||||
PHP_CONF_OPT += --enable-sockets
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_PACKAGE_PHP_EXT_POSIX),y)
|
||||
PHP_CONF_OPT += --enable-posix
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_PACKAGE_PHP_EXT_SPL),y)
|
||||
PHP_CONF_OPT += --enable-spl
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_PACKAGE_PHP_EXT_SESSION),y)
|
||||
PHP_CONF_OPT += --enable-session
|
||||
endif
|
||||
PHP_CONF_OPT += $(if $(BR2_PACKAGE_PHP_EXT_SOCKETS),--enable-sockets) \
|
||||
$(if $(BR2_PACKAGE_PHP_EXT_POSIX),--enable-posix) \
|
||||
$(if $(BR2_PACKAGE_PHP_EXT_SESSION),--enable-session) \
|
||||
$(if $(BR2_PACKAGE_PHP_EXT_HASH),--enable-hash) \
|
||||
$(if $(BR2_PACKAGE_PHP_EXT_DOM),--enable-dom) \
|
||||
$(if $(BR2_PACKAGE_PHP_EXT_SIMPLEXML),--enable-simplexml) \
|
||||
$(if $(BR2_PACKAGE_PHP_EXT_SOAP),--enable-soap) \
|
||||
$(if $(BR2_PACKAGE_PHP_EXT_WDDX),--enable-wddx) \
|
||||
$(if $(BR2_PACKAGE_PHP_EXT_XML),--enable-xml) \
|
||||
$(if $(BR2_PACKAGE_PHP_EXT_XMLREADER),--enable-xmlreader) \
|
||||
$(if $(BR2_PACKAGE_PHP_EXT_XMLWRITER),--enable-xmlwriter) \
|
||||
$(if $(BR2_PACKAGE_PHP_EXT_EXIF),--enable-exif) \
|
||||
$(if $(BR2_PACKAGE_PHP_EXT_FTP),--enable-ftp) \
|
||||
$(if $(BR2_PACKAGE_PHP_EXT_JSON),--enable-json) \
|
||||
$(if $(BR2_PACKAGE_PHP_EXT_TOKENIZER),--enable-tokenizer) \
|
||||
$(if $(BR2_PACKAGE_PHP_EXT_PCNTL),--enable-pcntl) \
|
||||
$(if $(BR2_PACKAGE_PHP_EXT_SHMOP),--enable-shmop) \
|
||||
$(if $(BR2_PACKAGE_PHP_EXT_SYSVMSG),--enable-sysvmsg) \
|
||||
$(if $(BR2_PACKAGE_PHP_EXT_SYSVSEM),--enable-sysvsem) \
|
||||
$(if $(BR2_PACKAGE_PHP_EXT_SYSVSHM),--enable-sysvshm) \
|
||||
$(if $(BR2_PACKAGE_PHP_EXT_ZIP),--enable-zip) \
|
||||
$(if $(BR2_PACKAGE_PHP_EXT_CTYPE),--enable-ctype) \
|
||||
$(if $(BR2_PACKAGE_PHP_EXT_FILTER),--enable-filter) \
|
||||
$(if $(BR2_PACKAGE_PHP_EXT_CALENDAR),--enable-calendar) \
|
||||
$(if $(BR2_PACKAGE_PHP_EXT_FILENIFO),--enable-fileinfo) \
|
||||
$(if $(BR2_PACKAGE_PHP_EXT_BCMATH),--enable-bcmath)
|
||||
|
||||
ifeq ($(BR2_PACKAGE_PHP_EXT_OPENSSL),y)
|
||||
PHP_CONF_OPT += --with-openssl=$(STAGING_DIR)/usr
|
||||
@ -58,16 +64,14 @@ ifeq ($(BR2_PACKAGE_PHP_EXT_OPENSSL),y)
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_PACKAGE_PHP_EXT_LIBXML2),y)
|
||||
PHP_CONF_OPT += --enable-libxml \
|
||||
--with-libxml-dir=${STAGING_DIR}/usr \
|
||||
--enable-xml \
|
||||
--enable-xmlreader \
|
||||
--enable-xmlwriter
|
||||
PHP_CONF_OPT += --enable-libxml --with-libxml-dir=${STAGING_DIR}/usr
|
||||
PHP_DEPENDENCIES += libxml2
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_PACKAGE_PHP_EXT_SIMPLEXML),y)
|
||||
PHP_CONF_OPT += --enable-simplexml
|
||||
ifeq ($(BR2_PACKAGE_PHP_EXT_XMLRPC),y)
|
||||
PHP_CONF_OPT += --with-xmlrpc \
|
||||
$(if $(BR2_PACKAGE_LIBICONV),--with-iconv-dir=$(STAGING_DIR)/usr)
|
||||
PHP_DEPENDENCIES += $(if $(BR2_PACKAGE_LIBICONV),libiconv)
|
||||
endif
|
||||
|
||||
ifneq ($(BR2_PACKAGE_PHP_EXT_ZLIB)$(BR2_PACKAGE_PHP_EXT_ZIP),)
|
||||
@ -75,70 +79,35 @@ ifneq ($(BR2_PACKAGE_PHP_EXT_ZLIB)$(BR2_PACKAGE_PHP_EXT_ZIP),)
|
||||
PHP_DEPENDENCIES += zlib
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_PACKAGE_PHP_EXT_EXIF),y)
|
||||
PHP_CONF_OPT += --enable-exif
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_PACKAGE_PHP_EXT_FTP),y)
|
||||
PHP_CONF_OPT += --enable-ftp
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_PACKAGE_PHP_EXT_GETTEXT),y)
|
||||
PHP_CONF_OPT += --with-gettext=$(STAGING_DIR)/usr
|
||||
PHP_DEPENDENCIES += $(if $(BR2_NEEDS_GETTEXT),gettext)
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_PACKAGE_PHP_EXT_ICONV),y)
|
||||
ifeq ($(BR2_PACKAGE_LIBICONV),y)
|
||||
PHP_CONF_OPT += --with-iconv=$(STAGING_DIR)/usr
|
||||
PHP_DEPENDENCIES += libiconv
|
||||
else
|
||||
PHP_CONF_OPT += --with-iconv
|
||||
endif
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_PACKAGE_PHP_EXT_INTL),y)
|
||||
PHP_CONF_OPT += --enable-intl --with-icu-dir=$(STAGING_DIR)/usr
|
||||
PHP_DEPENDENCIES += icu
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_PACKAGE_PHP_EXT_GMP),y)
|
||||
PHP_CONF_OPT += --with-gmp=$(STAGING_DIR)/usr
|
||||
PHP_DEPENDENCIES += gmp
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_PACKAGE_PHP_EXT_JSON),y)
|
||||
PHP_CONF_OPT += --enable-json
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_PACKAGE_PHP_EXT_READLINE),y)
|
||||
PHP_CONF_OPT += --with-readline=$(STAGING_DIR)/usr
|
||||
PHP_DEPENDENCIES += readline
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_PACKAGE_PHP_EXT_NCURSES),y)
|
||||
PHP_CONF_OPT += --with-ncurses=$(STAGING_DIR)/usr
|
||||
PHP_DEPENDENCIES += ncurses
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_PACKAGE_PHP_EXT_PCNTL),y)
|
||||
PHP_CONF_OPT += --enable-pcntl
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_PACKAGE_PHP_EXT_SYSVMSG),y)
|
||||
PHP_CONF_OPT += --enable-sysvmsg
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_PACKAGE_PHP_EXT_SYSVSEM),y)
|
||||
PHP_CONF_OPT += --enable-sysvsem
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_PACKAGE_PHP_EXT_SYSVSHM),y)
|
||||
PHP_CONF_OPT += --enable-sysvshm
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_PACKAGE_PHP_EXT_ZIP),y)
|
||||
PHP_CONF_OPT += --enable-zip
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_PACKAGE_PHP_EXT_FILTER),y)
|
||||
PHP_CONF_OPT += --enable-filter
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_PACKAGE_PHP_EXT_CALENDAR),y)
|
||||
PHP_CONF_OPT += --enable-calendar
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_PACKAGE_PHP_EXT_PCRE),y)
|
||||
PHP_CONF_OPT += --with-pcre-regex
|
||||
endif
|
||||
|
||||
### Legacy sqlite2 support
|
||||
ifeq ($(BR2_PACKAGE_PHP_EXT_SQLITE),y)
|
||||
PHP_CONF_OPT += --with-sqlite
|
||||
@ -150,16 +119,22 @@ ifeq ($(BR2_PACKAGE_PHP_EXT_SQLITE_UTF8),y)
|
||||
endif
|
||||
endif
|
||||
|
||||
### Native MySQL extensions
|
||||
ifeq ($(BR2_PACKAGE_PHP_EXT_MYSQL),y)
|
||||
PHP_CONF_OPT += --with-mysql=$(STAGING_DIR)/usr
|
||||
PHP_DEPENDENCIES += mysql_client
|
||||
endif
|
||||
ifeq ($(BR2_PACKAGE_PHP_EXT_MYSQLI),y)
|
||||
PHP_CONF_OPT += --with-mysqli=$(STAGING_DIR)/usr/bin/mysql_config
|
||||
PHP_DEPENDENCIES += mysql_client
|
||||
endif
|
||||
|
||||
### PDO
|
||||
ifeq ($(BR2_PACKAGE_PHP_EXT_PDO),y)
|
||||
PHP_CONF_OPT += --enable-pdo
|
||||
ifeq ($(BR2_PACKAGE_PHP_EXT_PDO_SQLITE),y)
|
||||
ifeq ($(BR2_PACKAGE_PHP_EXT_PDO_SQLITE_EXTERNAL),y)
|
||||
PHP_CONF_OPT += --with-pdo-sqlite=$(STAGING_DIR)/usr
|
||||
PHP_DEPENDENCIES += sqlite
|
||||
else
|
||||
PHP_CONF_OPT += --with-pdo-sqlite
|
||||
endif
|
||||
PHP_CFLAGS += -DSQLITE_OMIT_LOAD_EXTENSION
|
||||
ifneq ($(BR2_LARGEFILE),y)
|
||||
PHP_CFLAGS += -DSQLITE_DISABLE_LFS
|
||||
@ -171,6 +146,50 @@ ifeq ($(BR2_PACKAGE_PHP_EXT_PDO_MYSQL),y)
|
||||
endif
|
||||
endif
|
||||
|
||||
### Use external PCRE if it's available
|
||||
ifeq ($(BR2_PACKAGE_PCRE),y)
|
||||
PHP_CONF_OPT += --with-pcre-regex=$(STAGING_DIR)/usr
|
||||
PHP_DEPENDENCIES += pcre
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_PACKAGE_PHP_EXT_CURL),y)
|
||||
PHP_CONF_OPT += --with-curl=$(STAGING_DIR)/usr
|
||||
PHP_DEPENDENCIES += libcurl
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_PACKAGE_PHP_EXT_XSL),y)
|
||||
PHP_CONF_OPT += --with-xsl=$(STAGING_DIR)/usr
|
||||
PHP_DEPENDENCIES += libxslt
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_PACKAGE_PHP_EXT_BZIP2),y)
|
||||
PHP_CONF_OPT += --with-bz2=$(STAGING_DIR)/usr
|
||||
PHP_DEPENDENCIES += bzip2
|
||||
endif
|
||||
|
||||
### DBA
|
||||
ifeq ($(BR2_PACKAGE_PHP_EXT_DBA),y)
|
||||
PHP_CONF_OPT += --enable-dba
|
||||
ifneq ($(BR2_PACKAGE_PHP_EXT_DBA_CDB),y)
|
||||
PHP_CONF_OPT += --without-cdb
|
||||
endif
|
||||
ifneq ($(BR2_PACKAGE_PHP_EXT_DBA_FLAT),y)
|
||||
PHP_CONF_OPT += --without-flatfile
|
||||
endif
|
||||
ifneq ($(BR2_PACKAGE_PHP_EXT_DBA_INI),y)
|
||||
PHP_CONF_OPT += --without-inifile
|
||||
endif
|
||||
ifeq ($(BR2_PACKAGE_PHP_EXT_DBA_DB4),y)
|
||||
PHP_CONF_OPT += --with-db4=$(STAGING_DIR)/usr
|
||||
PHP_DEPENDENCIES += berkeleydb
|
||||
endif
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_PACKAGE_PHP_EXT_SNMP),y)
|
||||
PHP_CONF_OPT += --with-snmp=$(STAGING_DIR)/usr
|
||||
PHP_DEPENDENCIES += netsnmp
|
||||
endif
|
||||
|
||||
# Fixup prefix= and exec_prefix= in php-config
|
||||
define PHP_FIXUP_PHP_CONFIG
|
||||
$(SED) 's%^prefix="/usr"%prefix="$(STAGING_DIR)/usr"%' \
|
||||
@ -185,7 +204,9 @@ define PHP_INSTALL_FIXUP
|
||||
rm -f $(TARGET_DIR)/usr/bin/phpize
|
||||
rm -f $(TARGET_DIR)/usr/bin/php-config
|
||||
if [ ! -f $(TARGET_DIR)/etc/php.ini ]; then \
|
||||
$(INSTALL) -m 0755 $(BR2_PACKAGE_PHP_CONFIG) $(TARGET_DIR)/etc/php.ini; fi
|
||||
$(INSTALL) -m 0755 $(PHP_DIR)/php.ini-production \
|
||||
$(TARGET_DIR)/etc/php.ini; \
|
||||
fi
|
||||
endef
|
||||
|
||||
PHP_POST_INSTALL_TARGET_HOOKS += PHP_INSTALL_FIXUP
|
||||
|
Loading…
Reference in New Issue
Block a user