From c50026089c338ab55df65e1f9edd673e2b179587 Mon Sep 17 00:00:00 2001 From: Nicolas Thill Date: Sun, 22 Oct 2006 21:32:16 +0000 Subject: [PATCH] port php5 to -ng SVN-Revision: 5265 --- lang/php5/Makefile | 376 ++++++++++++ lang/php5/files/php.ini | 561 ++++++++++++++++++ lang/php5/files/php.init | 19 + .../patches/php-5.0.4-configure-cross.patch | 83 +++ 4 files changed, 1039 insertions(+) create mode 100644 lang/php5/Makefile create mode 100644 lang/php5/files/php.ini create mode 100644 lang/php5/files/php.init create mode 100644 lang/php5/patches/php-5.0.4-configure-cross.patch diff --git a/lang/php5/Makefile b/lang/php5/Makefile new file mode 100644 index 0000000000..fd82f479c0 --- /dev/null +++ b/lang/php5/Makefile @@ -0,0 +1,376 @@ +# +# Copyright (C) 2006 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# +# $Id$ + +include $(TOPDIR)/rules.mk + +PKG_NAME:=php +PKG_VERSION:=5.0.5 +PKG_RELEASE:=1 + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 +PKG_SOURCE_URL:=http://fr.php.net/distributions/ +PKG_MD5SUM:=b5d4ca75bbb11ee5b830fa67213d9f7f +PKG_CAT:=bzcat + +PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION) + +include $(INCLUDE_DIR)/package.mk + +define Package/php5/Default + SECTION:=lang + CATEGORY:=Languages + TITLE:=PHP5 Hypertext preprocessor + DESCRIPTION:=\ + PHP is a widely-used general-purpose scripting language that is especially \\\ + suited for Web development and can be embedded into HTML. + URL:=http://www.php.net/ +endef + +define Package/php5 + $(call Package/php5/Default) + DEPENDS:=+libopenssl +zlib + DESCRIPTION+=\\\ + \\\ + This package contains only the PHP config file. You must actually choose your \\\ + PHP flavour (cli, cgi or fastcgi). + MENU:=1 +endef + +define Package/php5/conffiles +/etc/php.ini +endef + +define Package/php5-cli + $(call Package/php5/Default) + DEPENDS:=php5 + TITLE+= (CLI) + DESCRIPTION+=\\\ + \\\ + This package contains the CLI version of the PHP5 interpreter. +endef + +define Package/php5-cgi + $(call Package/php5/Default) + DEPENDS:=php5 + TITLE+= (CGI) + DESCRIPTION+=\\\ + \\\ + This package contains the CGI version of the PHP5 interpreter. +endef + +define Package/php5-fastcgi + $(call Package/php5/Default) + DEPENDS:=php5 + TITLE+= (FastCGI) + DESCRIPTION+=\\\ + \\\ + This package contains the FastCGI version of the PHP5 interpreter. +endef + +define Package/php5-mod-curl + $(call Package/php5/Default) + DEPENDS:=php5 +libcurl + TITLE:=cURL module +endef + +define Package/php5-mod-ftp + $(call Package/php5/Default) + DEPENDS:=php5 + TITLE:=FTP module +endef + +define Package/php5-mod-gd + $(call Package/php5/Default) + DEPENDS:=php5 +libgd + TITLE:=GD graphics module +endef + +define Package/php5-mod-gmp + $(call Package/php5/Default) + DEPENDS:=php5 +libgmp + TITLE:=GMP module +endef + +define Package/php5-mod-ldap + $(call Package/php5/Default) + DEPENDS:=php5 +libopenldap + TITLE:=LDAP module +endef + +define Package/php5-mod-mysql + $(call Package/php5/Default) + DEPENDS:=php5 +libmysqlclient + TITLE:=MySQL module +endef + +define Package/php5-mod-openssl + $(call Package/php5/Default) + DEPENDS:=php5 +libopenssl + TITLE:=OpenSSL module +endef + +define Package/php5-mod-pcre + $(call Package/php5/Default) + DEPENDS:=php5 +libpcre + TITLE:=PCRE module +endef + +define Package/php5-mod-pgsql + $(call Package/php5/Default) + DEPENDS:=php5 +libpq + TITLE:=PostgreSQL module +endef + +define Package/php5-mod-session + $(call Package/php5/Default) + DEPENDS:=php5 + TITLE:=Session module +endef + +define Package/php5-mod-sockets + $(call Package/php5/Default) + DEPENDS:=php5 + TITLE:=Sockets module +endef + +define Package/php5-mod-sqlite + $(call Package/php5/Default) + DEPENDS:=php5 +libsqlite2 + TITLE:=SQLite module +endef + +define Package/php5-mod-xml + $(call Package/php5/Default) + DEPENDS:=php5 +libexpat + TITLE:=XML module +endef + +PKG_CONFIGURE_LIBS:= -lcrypto -lssl +PKG_CONFIGURE_OPTS:= \ + --enable-shared \ + --disable-static \ + --disable-rpath \ + --disable-debug \ + --without-pear \ + --disable-spl \ + \ + --with-config-file-path=/etc \ + --disable-ipv6 \ + --enable-magic-quotes \ + --enable-memory-limit \ + --disable-short-tags \ + \ + --disable-ctype \ + --disable-dom \ + --enable-ftp=shared \ + --without-gettext \ + --without-iconv \ + --disable-libxml \ + --without-libxml-dir \ + --disable-mbstring \ + --disable-mbregex \ + --with-openssl=shared,"$(STAGING_DIR)/usr" \ + --with-kerberos=no \ + --with-openssl-dir="$(STAGING_DIR)/usr" \ + --enable-session=shared \ + --disable-simplexml \ + --disable-soap \ + --enable-sockets=shared \ + --disable-tokenizer \ + --with-zlib="$(STAGING_DIR)/usr" \ + --with-zlib-dir="$(STAGING_DIR)/usr" \ + +ifneq ($(SDK),) + PKG_BUILDDEP:=libopenssl zlib libcurl libgd libgmp libopenldap libmysqlclient libpq libsqlite2 libexpat +# force PKG_CONFIGURE_{LIBS,OPTS} below when built in the SDK + CONFIG_PACKAGE_php5-cli:=m + CONFIG_PACKAGE_php5-cgi:=m + CONFIG_PACKAGE_php5-fastcgi:=m + CONFIG_PACKAGE_php5-mod-curl:=m + CONFIG_PACKAGE_php5-mod-gd:=m + CONFIG_PACKAGE_php5-mod-gmp:=m + CONFIG_PACKAGE_php5-mod-ldap:=m + CONFIG_PACKAGE_php5-mod-mysql:=m + CONFIG_PACKAGE_php5-mod-pcre:=m + CONFIG_PACKAGE_php5-mod-pgsql:=m + CONFIG_PACKAGE_php5-mod-sqlite:=m + CONFIG_PACKAGE_php5-mod-xml:=m +endif + +ifneq ($(CONFIG_PACKAGE_php5-mod-curl),) + PKG_CONFIGURE_OPTS+= --with-curl=shared,"$(STAGING_DIR)/usr" +else + PKG_CONFIGURE_OPTS+= --without-curl +endif +ifneq ($(CONFIG_PACKAGE_php5-mod-gd),) + PKG_CONFIGURE_OPTS+= --with-gd=shared,"$(STAGING_DIR)/usr" \ + --without-freetype-dir \ + --with-jpeg-dir="$(STAGING_DIR)/usr" \ + --with-png-dir="$(STAGING_DIR)/usr" \ + --without-xpm-dir \ + --without-ttf \ + --without-t1lib \ + --enable-gd-native-ttf \ + --disable-gd-jis-conv +else + PKG_CONFIGURE_OPTS+= --without-gd +endif +ifneq ($(CONFIG_PACKAGE_php5-mod-gmp),) + PKG_CONFIGURE_OPTS+= --with-gmp=shared,"$(STAGING_DIR)/usr" +else + PKG_CONFIGURE_OPTS+= --without-gmp +endif +ifneq ($(CONFIG_PACKAGE_php5-mod-ldap),) + PKG_CONFIGURE_OPTS+= --with-ldap=shared,"$(STAGING_DIR)/usr" \ + --with-ldap-sasl="$(STAGING_DIR)/usr" +else + PKG_CONFIGURE_OPTS+= --without-ldap +endif +ifneq ($(CONFIG_PACKAGE_php5-mod-mysql),) + PKG_CONFIGURE_OPTS+= --with-mysql=shared,"$(STAGING_DIR)/usr" +else + PKG_CONFIGURE_OPTS+= --without-mysql +endif +ifneq ($(CONFIG_PACKAGE_php5-mod-pcre),) + PKG_CONFIGURE_OPTS+= --with-pcre-regex=shared,"$(STAGING_DIR)/usr" +else + PKG_CONFIGURE_OPTS+= --without-pcre-regex +endif +ifneq ($(CONFIG_PACKAGE_php5-mod-pgsql),) + PKG_CONFIGURE_OPTS+= --with-pgsql=shared,"$(STAGING_DIR)/usr" +else + PKG_CONFIGURE_OPTS+= --without-pgsql +endif +ifneq ($(CONFIG_PACKAGE_php5-mod-sqlite),) + PKG_CONFIGURE_OPTS+= --with-sqlite=shared,"$(STAGING_DIR)/usr" +else + PKG_CONFIGURE_OPTS+= --without-sqlite +endif +ifneq ($(CONFIG_PACKAGE_php5-mod-xml),) + PKG_CONFIGURE_OPTS+= --enable-xml=shared,"$(STAGING_DIR)/usr" \ + --with-libexpat-dir="$(STAGING_DIR)/usr" +else + PKG_CONFIGURE_OPTS+= --disable-xml +endif + +define Build/Configure +endef + +ifneq ($(CONFIG_PACKAGE_php5-cli),) + define Build/Compile/php5-cli + -$(MAKE) -C $(PKG_BUILD_DIR) clean + $(call Build/Configure/Default, \ + $(PKG_CONFIGURE_OPTS) \ + --enable-cli \ + --disable-cgi \ + --disable-fastcgi \ + --enable-force-cgi-redirect \ + --enable-discard-path \ + , \ + LIBS="$(PKG_CONFIGURE_LIBS)" \ + php_cv_cc_rpath="no" \ + ) + $(MAKE) -C $(PKG_BUILD_DIR) + mv $(PKG_BUILD_DIR)/sapi/cli/php $(PKG_BUILD_DIR)/php-cli + endef +endif + +ifneq ($(CONFIG_PACKAGE_php5-cgi),) + define Build/Compile/php5-cgi + -$(MAKE) -C $(PKG_BUILD_DIR) clean + $(call Build/Configure/Default, \ + $(PKG_CONFIGURE_OPTS) \ + --disable-cli \ + --enable-cgi \ + --disable-fastcgi \ + --enable-force-cgi-redirect \ + --enable-discard-path \ + , \ + LIBS="$(PKG_CONFIGURE_LIBS)" \ + php_cv_cc_rpath="no" \ + ) + $(MAKE) -C $(PKG_BUILD_DIR) + mv $(PKG_BUILD_DIR)/sapi/cgi/php $(PKG_BUILD_DIR)/php-cgi + endef +endif + +ifneq ($(CONFIG_PACKAGE_php5-fastcgi),) + define Build/Compile/php5-fastcgi + -$(MAKE) -C $(PKG_BUILD_DIR) clean + $(call Build/Configure/Default, \ + $(PKG_CONFIGURE_OPTS) \ + --disable-cli \ + --enable-cgi \ + --enable-fastcgi \ + --enable-force-cgi-redirect \ + --enable-discard-path \ + , \ + LIBS="$(PKG_CONFIGURE_LIBS)" \ + php_cv_cc_rpath="no" \ + ) + $(MAKE) -C $(PKG_BUILD_DIR) + mv $(PKG_BUILD_DIR)/sapi/cgi/php $(PKG_BUILD_DIR)/php-fastcgi + endef +endif + +define Build/Compile + $(call Build/Compile/php5-cli) + $(call Build/Compile/php5-cgi) + $(call Build/Compile/php5-fastcgi) +endef + +define Package/php5/install + install -m0755 -d $(1)/etc + install -m0644 ./files/php.ini $(1)/etc/ +endef + +define Package/php5-cli/install + install -m0755 -d $(1)/usr/bin + $(CP) $(PKG_BUILD_DIR)/php-cli $(1)/usr/bin/php +endef + +define Package/php5-cgi/install + install -m0755 -d $(1)/usr/bin + $(CP) $(PKG_BUILD_DIR)/php-cgi $(1)/usr/bin/php +endef + +define Package/php5-fastcgi/install + install -m0755 -d $(1)/usr/sbin + $(CP) $(PKG_BUILD_DIR)/php-fastcgi $(1)/usr/sbin/php + install -m0755 -d $(1)/etc/init.d + install -m0755 ./files/php.init $(1)/etc/init.d/php +endef + +define BuildPlugin + define Package/$(1)/install + [ -z "$(2)" ] || install -d -m0755 $$(1)/usr/lib/php + for m in $(2); do \ + install -m0755 $(PKG_BUILD_DIR)/modules/$$$$$$$${m}.so $$(1)/usr/lib/php/ ; \ + done + endef + + $$(eval $$(call BuildPackage,$(1))) +endef + +$(eval $(call BuildPackage,php5)) +$(eval $(call BuildPackage,php5-cli)) +$(eval $(call BuildPackage,php5-cgi)) +$(eval $(call BuildPackage,php5-fastcgi)) +$(eval $(call BuildPlugin,php5-mod-curl,curl)) +$(eval $(call BuildPlugin,php5-mod-ftp,ftp)) +$(eval $(call BuildPlugin,php5-mod-gd,gd)) +$(eval $(call BuildPlugin,php5-mod-gmp,gmp)) +$(eval $(call BuildPlugin,php5-mod-ldap,ldap)) +$(eval $(call BuildPlugin,php5-mod-mysql,mysql)) +$(eval $(call BuildPlugin,php5-mod-openssl,openssl)) +$(eval $(call BuildPlugin,php5-mod-pcre,pcre)) +$(eval $(call BuildPlugin,php5-mod-pgsql,pgsql)) +$(eval $(call BuildPlugin,php5-mod-session,session)) +$(eval $(call BuildPlugin,php5-mod-sockets,sockets)) +$(eval $(call BuildPlugin,php5-mod-sqlite,sqlite)) +$(eval $(call BuildPlugin,php5-mod-xml,xml)) diff --git a/lang/php5/files/php.ini b/lang/php5/files/php.ini new file mode 100644 index 0000000000..ae16d0b617 --- /dev/null +++ b/lang/php5/files/php.ini @@ -0,0 +1,561 @@ +[PHP] + +cgi.fix_pathinfo=1 + +zend.ze1_compatibility_mode = Off + +;short_open_tag = Off +asp_tags = Off +precision = 12 +y2k_compliance = On +output_buffering = Off + +zlib.output_compression = Off +;zlib.output_handler = +implicit_flush = Off + +unserialize_callback_func= +serialize_precision = 100 + +allow_call_time_pass_reference = On + +safe_mode = Off + +safe_mode_gid = Off + +safe_mode_include_dir = + +safe_mode_exec_dir = + +safe_mode_allowed_env_vars = PHP_ + +safe_mode_protected_env_vars = LD_LIBRARY_PATH + +;open_basedir = + +disable_functions = + +disable_classes = + +; Colors for Syntax Highlighting mode. Anything that's acceptable in +; would work. +;highlight.string = #DD0000 +;highlight.comment = #FF9900 +;highlight.keyword = #007700 +;highlight.bg = #FFFFFF +;highlight.default = #0000BB +;highlight.html = #000000 + +expose_php = On + + +;;;;;;;;;;;;;;;;;;; +; Resource Limits ; +;;;;;;;;;;;;;;;;;;; + +max_execution_time = 30 ; Maximum execution time of each script, in seconds +max_input_time = 60 ; Maximum amount of time each script may spend parsing request data +memory_limit = 8M ; Maximum amount of memory a script may consume (8MB) + + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +; Error handling and logging ; +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; + +; error_reporting is a bit-field. Or each number up to get desired error +; reporting level +; E_ALL - All errors and warnings (doesn't include E_STRICT) +; E_ERROR - fatal run-time errors +; E_WARNING - run-time warnings (non-fatal errors) +; E_PARSE - compile-time parse errors +; E_NOTICE - run-time notices (these are warnings which often result +; from a bug in your code, but it's possible that it was +; intentional (e.g., using an uninitialized variable and +; relying on the fact it's automatically initialized to an +; empty string) +; E_STRICT - run-time notices, enable to have PHP suggest changes +; to your code which will ensure the best interoperability +; and forward compatibility of your code +; E_CORE_ERROR - fatal errors that occur during PHP's initial startup +; E_CORE_WARNING - warnings (non-fatal errors) that occur during PHP's +; initial startup +; E_COMPILE_ERROR - fatal compile-time errors +; E_COMPILE_WARNING - compile-time warnings (non-fatal errors) +; E_USER_ERROR - user-generated error message +; E_USER_WARNING - user-generated warning message +; E_USER_NOTICE - user-generated notice message +; +; Examples: +; +; - Show all errors, except for notices and coding standards warnings +; +;error_reporting = E_ALL & ~E_NOTICE & ~E_STRICT +; +; - Show all errors, except for notices +; +;error_reporting = E_ALL & ~E_NOTICE +; +; - Show only errors +; +;error_reporting = E_COMPILE_ERROR|E_ERROR|E_CORE_ERROR +; +; - Show all errors except for notices and coding standards warnings +; +error_reporting = E_ALL & ~E_NOTICE & ~E_STRICT + +; Print out errors (as a part of the output). For production web sites, +; you're strongly encouraged to turn this feature off, and use error logging +; instead (see below). Keeping display_errors enabled on a production web site +; may reveal security information to end users, such as file paths on your Web +; server, your database schema or other information. +display_errors = On + +; Even when display_errors is on, errors that occur during PHP's startup +; sequence are not displayed. It's strongly recommended to keep +; display_startup_errors off, except for when debugging. +display_startup_errors = Off + +; Log errors into a log file (server-specific log, stderr, or error_log (below)) +; As stated above, you're strongly advised to use error logging in place of +; error displaying on production web sites. +log_errors = Off + +; Set maximum length of log_errors. In error_log information about the source is +; added. The default is 1024 and 0 allows to not apply any maximum length at all. +log_errors_max_len = 1024 + +; Do not log repeated messages. Repeated errors must occur in same file on same +; line until ignore_repeated_source is set true. +ignore_repeated_errors = Off + +; Ignore source of message when ignoring repeated messages. When this setting +; is On you will not log errors with repeated messages from different files or +; sourcelines. +ignore_repeated_source = Off + +; If this parameter is set to Off, then memory leaks will not be shown (on +; stdout or in the log). This has only effect in a debug compile, and if +; error reporting includes E_WARNING in the allowed list +report_memleaks = On + +; Store the last error/warning message in $php_errormsg (boolean). +track_errors = Off + +; Disable the inclusion of HTML tags in error messages. +; Note: Never use this feature for production boxes. +;html_errors = Off + +; If html_errors is set On PHP produces clickable error messages that direct +; to a page describing the error or function causing the error in detail. +; You can download a copy of the PHP manual from http://www.php.net/docs.php +; and change docref_root to the base URL of your local copy including the +; leading '/'. You must also specify the file extension being used including +; the dot. +; Note: Never use this feature for production boxes. +;docref_root = "/phpmanual/" +;docref_ext = .html + +; String to output before an error message. +;error_prepend_string = "" + +; String to output after an error message. +;error_append_string = "" + +; Log errors to specified file. +;error_log = filename + +; Log errors to syslog (Event Log on NT, not valid in Windows 95). +;error_log = syslog + + +;;;;;;;;;;;;;;;;; +; Data Handling ; +;;;;;;;;;;;;;;;;; +; +; Note - track_vars is ALWAYS enabled as of PHP 4.0.3 + +; The separator used in PHP generated URLs to separate arguments. +; Default is "&". +;arg_separator.output = "&" + +; List of separator(s) used by PHP to parse input URLs into variables. +; Default is "&". +; NOTE: Every character in this directive is considered as separator! +;arg_separator.input = ";&" + +; This directive describes the order in which PHP registers GET, POST, Cookie, +; Environment and Built-in variables (G, P, C, E & S respectively, often +; referred to as EGPCS or GPC). Registration is done from left to right, newer +; values override older values. +variables_order = "EGPCS" + +; Whether or not to register the EGPCS variables as global variables. You may +; want to turn this off if you don't want to clutter your scripts' global scope +; with user data. This makes most sense when coupled with track_vars - in which +; case you can access all of the GPC variables through the $HTTP_*_VARS[], +; variables. +; +; You should do your best to write your scripts so that they do not require +; register_globals to be on; Using form variables as globals can easily lead +; to possible security problems, if the code is not very well thought of. +register_globals = Off + +; Whether or not to register the old-style input arrays, HTTP_GET_VARS +; and friends. If you're not using them, it's recommended to turn them off, +; for performance reasons. +register_long_arrays = On + +; This directive tells PHP whether to declare the argv&argc variables (that +; would contain the GET information). If you don't use these variables, you +; should turn it off for increased performance. +register_argc_argv = On + +; Maximum size of POST data that PHP will accept. +post_max_size = 8M + +; Magic quotes +; + +; Magic quotes for incoming GET/POST/Cookie data. +magic_quotes_gpc = On + +; Magic quotes for runtime-generated data, e.g. data from SQL, from exec(), etc. +magic_quotes_runtime = Off + +; Use Sybase-style magic quotes (escape ' with '' instead of \'). +magic_quotes_sybase = Off + +; Automatically add files before or after any PHP document. +auto_prepend_file = +auto_append_file = + +; As of 4.0b4, PHP always outputs a character encoding by default in +; the Content-type: header. To disable sending of the charset, simply +; set it to be empty. +; +; PHP's built-in default is text/html +default_mimetype = "text/html" +;default_charset = "iso-8859-1" + +; Always populate the $HTTP_RAW_POST_DATA variable. +;always_populate_raw_post_data = On + + +;;;;;;;;;;;;;;;;;;;;;;;;; +; Paths and Directories ; +;;;;;;;;;;;;;;;;;;;;;;;;; + +; UNIX: "/path1:/path2" +;include_path = ".:/php/includes" +; +; Windows: "\path1;\path2" +;include_path = ".;c:\php\includes" + +; The root of the PHP pages, used only if nonempty. +; if PHP was not compiled with FORCE_REDIRECT, you SHOULD set doc_root +; if you are running php as a CGI under any web server (other than IIS) +; see documentation for security issues. The alternate is to use the +; cgi.force_redirect configuration below +doc_root = /www + +; The directory under which PHP opens the script using /~username used only +; if nonempty. +user_dir = + +; Directory in which the loadable extensions (modules) reside. +extension_dir = "/usr/lib/php" + +; Whether or not to enable the dl() function. The dl() function does NOT work +; properly in multithreaded servers, such as IIS or Zeus, and is automatically +; disabled on them. +enable_dl = On + +; cgi.force_redirect is necessary to provide security running PHP as a CGI under +; most web servers. Left undefined, PHP turns this on by default. You can +; turn it off here AT YOUR OWN RISK +; **You CAN safely turn this off for IIS, in fact, you MUST.** +; cgi.force_redirect = 1 + +; if cgi.nph is enabled it will force cgi to always sent Status: 200 with +; every request. +; cgi.nph = 1 + +; if cgi.force_redirect is turned on, and you are not running under Apache or Netscape +; (iPlanet) web servers, you MAY need to set an environment variable name that PHP +; will look for to know it is OK to continue execution. Setting this variable MAY +; cause security issues, KNOW WHAT YOU ARE DOING FIRST. +; cgi.redirect_status_env = ; + +; FastCGI under IIS (on WINNT based OS) supports the ability to impersonate +; security tokens of the calling client. This allows IIS to define the +; security context that the request runs under. mod_fastcgi under Apache +; does not currently support this feature (03/17/2002) +; Set to 1 if running under IIS. Default is zero. +; fastcgi.impersonate = 1; + +; cgi.rfc2616_headers configuration option tells PHP what type of headers to +; use when sending HTTP response code. If it's set 0 PHP sends Status: header that +; is supported by Apache. When this option is set to 1 PHP will send +; RFC2616 compliant header. +; Default is zero. +;cgi.rfc2616_headers = 0 + + +;;;;;;;;;;;;;;;; +; File Uploads ; +;;;;;;;;;;;;;;;; + +; Whether to allow HTTP file uploads. +file_uploads = On + +; Temporary directory for HTTP uploaded files (will use system default if not +; specified). +upload_tmp_dir = /tmp + +; Maximum allowed size for uploaded files. +upload_max_filesize = 2M + + +;;;;;;;;;;;;;;;;;; +; Fopen wrappers ; +;;;;;;;;;;;;;;;;;; + +; Whether to allow the treatment of URLs (like http:// or ftp://) as files. +allow_url_fopen = On + +; Define the anonymous ftp password (your email address) +;from="john@doe.com" + +; Define the User-Agent string +; user_agent="PHP" + +; Default timeout for socket based streams (seconds) +default_socket_timeout = 60 + +; If your scripts have to deal with files from Macintosh systems, +; or you are running on a Mac and need to deal with files from +; unix or win32 systems, setting this flag will cause PHP to +; automatically detect the EOL character in those files so that +; fgets() and file() will work regardless of the source of the file. +; auto_detect_line_endings = Off + + +;;;;;;;;;;;;;;;;;;;;;; +; Dynamic Extensions ; +;;;;;;;;;;;;;;;;;;;;;; +; +; If you wish to have an extension loaded automatically, use the following +; syntax: +; +; extension=modulename.extension +; +; For example, on Windows: +; +; extension=msql.dll +; +; ... or under UNIX: +; +; extension=msql.so +; +; Note that it should be the name of the module only; no directory information +; needs to go here. Specify the location of the extension with the +; extension_dir directive above. + + +;Windows Extensions +;Note that ODBC support is built in, so no dll is needed for it. +; + +;extension=ftp.so +;extension=gd.so +;extension=mysql.so +;extension=pcre.so +;extension=session.so +;extension=sockets.so +;extension=xml.so + + + + +;;;;;;;;;;;;;;;;;;; +; Module Settings ; +;;;;;;;;;;;;;;;;;;; + +[SQL] +sql.safe_mode = Off + +[Session] +; Handler used to store/retrieve data. +session.save_handler = files + +; Argument passed to save_handler. In the case of files, this is the path +; where data files are stored. Note: Windows users have to change this +; variable in order to use PHP's session functions. +; +; As of PHP 4.0.1, you can define the path as: +; +; session.save_path = "N;/path" +; +; where N is an integer. Instead of storing all the session files in +; /path, what this will do is use subdirectories N-levels deep, and +; store the session data in those directories. This is useful if you +; or your OS have problems with lots of files in one directory, and is +; a more efficient layout for servers that handle lots of sessions. +; +; NOTE 1: PHP will not create this directory structure automatically. +; You can use the script in the ext/session dir for that purpose. +; NOTE 2: See the section on garbage collection below if you choose to +; use subdirectories for session storage +; +; The file storage module creates files using mode 600 by default. +; You can change that by using +; +; session.save_path = "N;MODE;/path" +; +; where MODE is the octal representation of the mode. Note that this +; does not overwrite the process's umask. +session.save_path = "/tmp" + +; Whether to use cookies. +session.use_cookies = 1 + +; This option enables administrators to make their users invulnerable to +; attacks which involve passing session ids in URLs; defaults to 0. +; session.use_only_cookies = 1 + +; Name of the session (used as cookie name). +session.name = PHPSESSID + +; Initialize session on request startup. +session.auto_start = 0 + +; Lifetime in seconds of cookie or, if 0, until browser is restarted. +session.cookie_lifetime = 0 + +; The path for which the cookie is valid. +session.cookie_path = / + +; The domain for which the cookie is valid. +session.cookie_domain = + +; Handler used to serialize data. php is the standard serializer of PHP. +session.serialize_handler = php + +; Define the probability that the 'garbage collection' process is started +; on every session initialization. +; The probability is calculated by using gc_probability/gc_divisor, +; e.g. 1/100 means there is a 1% chance that the GC process starts +; on each request. + +session.gc_probability = 1 +session.gc_divisor = 100 + +; After this number of seconds, stored data will be seen as 'garbage' and +; cleaned up by the garbage collection process. +session.gc_maxlifetime = 1440 + +; NOTE: If you are using the subdirectory option for storing session files +; (see session.save_path above), then garbage collection does *not* +; happen automatically. You will need to do your own garbage +; collection through a shell script, cron entry, or some other method. +; For example, the following script would is the equivalent of +; setting session.gc_maxlifetime to 1440 (1440 seconds = 24 minutes): +; cd /path/to/sessions; find -cmin +24 | xargs rm + +; PHP 4.2 and less have an undocumented feature/bug that allows you to +; to initialize a session variable in the global scope, albeit register_globals +; is disabled. PHP 4.3 and later will warn you, if this feature is used. +; You can disable the feature and the warning separately. At this time, +; the warning is only displayed, if bug_compat_42 is enabled. + +session.bug_compat_42 = 1 +session.bug_compat_warn = 1 + +; Check HTTP Referer to invalidate externally stored URLs containing ids. +; HTTP_REFERER has to contain this substring for the session to be +; considered as valid. +session.referer_check = + +; How many bytes to read from the file. +session.entropy_length = 0 + +; Specified here to create the session id. +session.entropy_file = + +;session.entropy_length = 16 + +;session.entropy_file = /dev/urandom + +; Set to {nocache,private,public,} to determine HTTP caching aspects +; or leave this empty to avoid sending anti-caching headers. +session.cache_limiter = nocache + +; Document expires after n minutes. +session.cache_expire = 180 + +; trans sid support is disabled by default. +; Use of trans sid may risk your users security. +; Use this option with caution. +; - User may send URL contains active session ID +; to other person via. email/irc/etc. +; - URL that contains active session ID may be stored +; in publically accessible computer. +; - User may access your site with the same session ID +; always using URL stored in browser's history or bookmarks. +session.use_trans_sid = 0 + +; Select a hash function +; 0: MD5 (128 bits) +; 1: SHA-1 (160 bits) +session.hash_function = 0 + +; Define how many bits are stored in each character when converting +; the binary hash data to something readable. +; +; 4 bits: 0-9, a-f +; 5 bits: 0-9, a-v +; 6 bits: 0-9, a-z, A-Z, "-", "," +session.hash_bits_per_character = 4 + +; The URL rewriter will look for URLs in a defined set of HTML tags. +; form/fieldset are special; if you include them here, the rewriter will +; add a hidden field with the info which is otherwise appended +; to URLs. If you want XHTML conformity, remove the form entry. +; Note that all valid entries require a "=", even if no value follows. +url_rewriter.tags = "a=href,area=href,frame=src,input=src,form=,fieldset=" + + +[Assertion] +; Assert(expr); active by default. +;assert.active = On + +; Issue a PHP warning for each failed assertion. +;assert.warning = On + +; Don't bail out by default. +;assert.bail = Off + +; User-function to be called if an assertion fails. +;assert.callback = 0 + +; Eval the expression with current error_reporting(). Set to true if you want +; error_reporting(0) around the eval(). +;assert.quiet_eval = 0 + + + + + +[exif] +; Exif UNICODE user comments are handled as UCS-2BE/UCS-2LE and JIS as JIS. +; With mbstring support this will automatically be converted into the encoding +; given by corresponding encode setting. When empty mbstring.internal_encoding +; is used. For the decode settings you can distinguish between motorola and +; intel byte order. A decode setting cannot be empty. +;exif.encode_unicode = ISO-8859-15 +;exif.decode_unicode_motorola = UCS-2BE +;exif.decode_unicode_intel = UCS-2LE +;exif.encode_jis = +;exif.decode_jis_motorola = JIS +;exif.decode_jis_intel = JIS + diff --git a/lang/php5/files/php.init b/lang/php5/files/php.init new file mode 100644 index 0000000000..b29387bd74 --- /dev/null +++ b/lang/php5/files/php.init @@ -0,0 +1,19 @@ +#!/bin/sh + +export PHP_FCGI_CHILDREN='' +PORT=1026 +BIN=/usr/sbin/php + +case $1 in + start) + $BIN -b $PORT & + ;; + stop) + kill `pidof php` + ;; + *) + echo "usage: $0 (start|stop)" + exit 1 +esac + +exit $? diff --git a/lang/php5/patches/php-5.0.4-configure-cross.patch b/lang/php5/patches/php-5.0.4-configure-cross.patch new file mode 100644 index 0000000000..d4c423b3b0 --- /dev/null +++ b/lang/php5/patches/php-5.0.4-configure-cross.patch @@ -0,0 +1,83 @@ +--- php-5.0.4/configure 2005-06-16 19:23:10.000000000 +0200 ++++ php-5.0.4-patched/configure 2005-07-01 23:52:04.000000000 +0200 +@@ -13851,7 +13851,7 @@ + ac_libs=$LIBS + LIBS="$LIBS -ldl" + if test "$cross_compiling" = yes; then +- found=no ++ found=yes + else + cat > conftest.$ac_ext <&2; exit 1; } ++ { echo "configure: error: can not run test program while cross compiling" 1>&2; } + else + cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + if test "$cross_compiling" = yes; then +- { echo "configure: error: can not run test program while cross compiling" 1>&2; exit 1; } ++ { echo "configure: error: can not run test program while cross compiling" 1>&2; } + else + cat > conftest.$ac_ext <&2; exit 1; } ++ { echo "configure: error: can not run test program while cross compiling" 1>&2; } + else + cat > conftest.$ac_ext <&6 + echo "configure:41407: checking if iconv supports errno" >&5 + if test "$cross_compiling" = yes; then +- { echo "configure: error: can not run test program while cross compiling" 1>&2; exit 1; } ++ { echo "configure: error: can not run test program while cross compiling" 1>&2; } + else + cat > conftest.$ac_ext <