forked from mirrors/nixpkgs
broken comment php_unstable when compiling wihtout xdebug/ xdebug supported
svn path=/nixpkgs/trunk/; revision=10056
This commit is contained in:
parent
2d08dca911
commit
028b0d7ff4
|
@ -1,3 +1,15 @@
|
||||||
|
/* TODO check security issues such as :
|
||||||
|
+--------------------------------------------------------------------+
|
||||||
|
| *** WARNING *** |
|
||||||
|
| |
|
||||||
|
| You will be compiling the CGI version of PHP without any |
|
||||||
|
| redirection checking. By putting this cgi binary somewhere in |
|
||||||
|
| your web space, users may be able to circumvent existing .htaccess |
|
||||||
|
| security by loading files directly through the parser. See |
|
||||||
|
| http://www.php.net/manual/security.php for more details. |
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
args:
|
args:
|
||||||
( args.mkDerivationByConfiguration {
|
( args.mkDerivationByConfiguration {
|
||||||
flagConfig = {
|
flagConfig = {
|
||||||
|
@ -394,7 +406,7 @@ args:
|
||||||
|
|
||||||
# SAPI modules:
|
# SAPI modules:
|
||||||
apxs2 = { cfgOption = "--with-apxs2=\$apacheHttpd/bin/apxs";
|
apxs2 = { cfgOption = "--with-apxs2=\$apacheHttpd/bin/apxs";
|
||||||
pass = { inherit (args) apacheHttpd; }; };
|
pass = "apacheHttpd"; };
|
||||||
|
|
||||||
# Extensions
|
# Extensions
|
||||||
|
|
||||||
|
@ -425,6 +437,22 @@ args:
|
||||||
If unspecified, the default locations are searched
|
If unspecified, the default locations are searched
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
/*
|
||||||
|
Building xdebug withing php to be able to add the parameters to the ini file.. Ther should be a better way
|
||||||
|
meta = {
|
||||||
|
description = "debugging support for PHP";
|
||||||
|
homepage = http://xdebug.org;
|
||||||
|
license = "based on the PHP license - as is";
|
||||||
|
};
|
||||||
|
*/
|
||||||
|
xdebug = { buildInputs = [ "automake" "autoconf" ];
|
||||||
|
pass = { xdebug_src = args.fetchurl {
|
||||||
|
name = "xdebug-2.0.2.tar.gz";
|
||||||
|
url = "http://xdebug.org/link.php?url=xdebug202";
|
||||||
|
sha256 = "1h0bxvf8krr203fmk1k7izrrr81gz537xmd3pqh4vslwdlbhrvic";
|
||||||
|
};};};
|
||||||
|
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
defaults = [ "mysql" "mysqli" "pdo_mysql" "libxml2" "apxs2" ];
|
defaults = [ "mysql" "mysqli" "pdo_mysql" "libxml2" "apxs2" ];
|
||||||
|
@ -436,19 +464,43 @@ args:
|
||||||
extraAttrs = co : {
|
extraAttrs = co : {
|
||||||
name = "php_configurable-5.2.4";
|
name = "php_configurable-5.2.4";
|
||||||
|
|
||||||
buildInputs = ( args.lib.getAttr [ "phpIncludes" ] [] args );
|
buildInputs = ( args.lib.getAttr [ "phpIncludes" ] [] args ) ++ co.buildInputs;
|
||||||
|
|
||||||
|
|
||||||
configurePhase =
|
configurePhase =
|
||||||
"
|
"
|
||||||
iniFile=\$out/etc/\$name.ini
|
iniFile=\$out/etc/\$name.ini
|
||||||
[[ -z \"\$libxml2\" ]] || export PATH=\$PATH:\$libxml2/bin
|
[[ -z \"\$libxml2\" ]] || export PATH=\$PATH:\$libxml2/bin
|
||||||
./configure --with-config-file-path=\$iniFile --prefix=\$out " + co.configureFlags;
|
./configure --with-config-file-scan-dir=/etc --with-config-file-path=\$iniFile --prefix=\$out " + co.configureFlags + "
|
||||||
|
echo configurePhase end
|
||||||
|
";
|
||||||
|
|
||||||
installPhase = "
|
installPhase = "
|
||||||
unset installPhase; installPhase;
|
unset installPhase; installPhase;
|
||||||
cp php.ini-recommended $\iniFile
|
cp php.ini-recommended $\iniFile
|
||||||
echo \"include_path=.\$PATH_DELIMITER\$out/lib/php\$PATH_DELIMITER\$PHP_INCLUDES\" > \$iniFile
|
|
||||||
|
# Now Let's build xdebug if flag has been given
|
||||||
|
# TODO I think there are better paths than the given below
|
||||||
|
if [ -n \$flag_set_xdebug ]; then
|
||||||
|
PATH=\$PATH:\$out/bin
|
||||||
|
tar xfz \$xdebug_src;
|
||||||
|
cd xdebug*
|
||||||
|
phpize
|
||||||
|
./configure --prefix=\$out
|
||||||
|
make
|
||||||
|
ensureDir \$out/lib; cp modules/xdebug.so $out/lib
|
||||||
|
cat >> $iniFile << EOF
|
||||||
|
zend_extension=\"\$out/lib/xdebug.so\"
|
||||||
|
zend_extension_ts=\"\$out/lib/xdebug.so\"
|
||||||
|
zend_extension_debug=\"\$out/lib/xdebug.so\"
|
||||||
|
xdebug.remote_enable=true
|
||||||
|
xdebug.remote_host=127.0.0.1
|
||||||
|
xdebug.remote_port=9000
|
||||||
|
xdebug.remote_handler=dbgp
|
||||||
|
xdebug.profiler_enable=0
|
||||||
|
xdebug.profiler_output_dir=\"/tmp/xdebug\"
|
||||||
|
xdebug.remote_mode=req
|
||||||
|
EOF
|
||||||
|
fi
|
||||||
";
|
";
|
||||||
|
|
||||||
src = args.fetchurl {
|
src = args.fetchurl {
|
||||||
|
|
|
@ -1256,6 +1256,8 @@ rec {
|
||||||
# perhaps this can be done setting php_value in apache don't have time to investigate any further ?
|
# perhaps this can be done setting php_value in apache don't have time to investigate any further ?
|
||||||
# This expression is a quick hack now. But perhaps it helps you adding the configuration flags you need?
|
# This expression is a quick hack now. But perhaps it helps you adding the configuration flags you need?
|
||||||
php = php_unstable;
|
php = php_unstable;
|
||||||
|
|
||||||
|
# compiling without xdebug is currenlty broken (should be easy to fix though
|
||||||
php_unstable = (import ../development/interpreters/php_configurable) {
|
php_unstable = (import ../development/interpreters/php_configurable) {
|
||||||
inherit mkDerivationByConfiguration autoconf automake;
|
inherit mkDerivationByConfiguration autoconf automake;
|
||||||
lib = lib_unstable;
|
lib = lib_unstable;
|
||||||
|
@ -1263,8 +1265,8 @@ rec {
|
||||||
# optional features
|
# optional features
|
||||||
inherit fetchurl flex bison apacheHttpd mysql; # gettext;
|
inherit fetchurl flex bison apacheHttpd mysql; # gettext;
|
||||||
inherit libxml2;
|
inherit libxml2;
|
||||||
flags = [ "mysql" "mysqli" "pdo_mysql" "libxml2" "apxs2" ];
|
flags = [ "xdebug" "mysql" "mysqli" "pdo_mysql" "libxml2" "apxs2" ];
|
||||||
};
|
};
|
||||||
|
|
||||||
python = getVersion "python" python_alts;
|
python = getVersion "python" python_alts;
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue