summary refs log tree commit diff
path: root/pkgs/development/interpreters
diff options
context:
space:
mode:
authorLluís Batlle i Rossell <viric@vicerveza.homeunix.net>2010-01-14 14:49:31 +0000
committerLluís Batlle i Rossell <viric@vicerveza.homeunix.net>2010-01-14 14:49:31 +0000
commit9183f21f7e005b9229b615e65fa463733267ce96 (patch)
tree9155247a14d60982c3f4be514e386a976f7240d3 /pkgs/development/interpreters
parentc161cd1773e6411054047b1dd2a9544b0b05b0d1 (diff)
parentc63858a16919de0f929d8377ce616e93a99f2074 (diff)
downloadnixlib-9183f21f7e005b9229b615e65fa463733267ce96.tar
nixlib-9183f21f7e005b9229b615e65fa463733267ce96.tar.gz
nixlib-9183f21f7e005b9229b615e65fa463733267ce96.tar.bz2
nixlib-9183f21f7e005b9229b615e65fa463733267ce96.tar.lz
nixlib-9183f21f7e005b9229b615e65fa463733267ce96.tar.xz
nixlib-9183f21f7e005b9229b615e65fa463733267ce96.tar.zst
nixlib-9183f21f7e005b9229b615e65fa463733267ce96.zip
Merging from trunk.
I fixed conflicts regarding the renaming 'kernel' -> 'linux' in all-packages.
Also a small conflict in all-packages about making openssl overridable.
And I some linux 2.6.31-zen kernel files also marked in conflict.


svn path=/nixpkgs/branches/stdenv-updates/; revision=19438
Diffstat (limited to 'pkgs/development/interpreters')
-rw-r--r--pkgs/development/interpreters/guile/1.9.nix4
-rw-r--r--pkgs/development/interpreters/guile/gcov-file-name.patch42
-rw-r--r--pkgs/development/interpreters/php-xdebug/default.nix34
-rw-r--r--pkgs/development/interpreters/php/ini-bulider.nix43
-rw-r--r--pkgs/development/interpreters/php_configurable/default.nix36
5 files changed, 122 insertions, 37 deletions
diff --git a/pkgs/development/interpreters/guile/1.9.nix b/pkgs/development/interpreters/guile/1.9.nix
index 1dd3d495339e..27e412484056 100644
--- a/pkgs/development/interpreters/guile/1.9.nix
+++ b/pkgs/development/interpreters/guile/1.9.nix
@@ -17,8 +17,8 @@ rec {
   propagatedBuildInputs = [ gmp boehmgc ];
 
   patches =
-    stdenv.lib.optional (coverageAnalysis != null)
-      ./disable-gc-sensitive-tests.patch;
+    stdenv.lib.optionals (coverageAnalysis != null)
+      [ ./gcov-file-name.patch ./disable-gc-sensitive-tests.patch ];
 
   postInstall = ''
     wrapProgram $out/bin/guile-snarf --prefix PATH : "${gawk}/bin"
diff --git a/pkgs/development/interpreters/guile/gcov-file-name.patch b/pkgs/development/interpreters/guile/gcov-file-name.patch
new file mode 100644
index 000000000000..f144296170ed
--- /dev/null
+++ b/pkgs/development/interpreters/guile/gcov-file-name.patch
@@ -0,0 +1,42 @@
+This patch arranges so that we don't end up, with profiling builds, with a
+file named `<stdout>.gcov' since that confuses lcov:
+
+  <stdout>:cannot open source file
+  geninfo: ERROR: cannot read <stdout>.gcov!
+
+--- guile/libguile/c-tokenize.c	2009-09-13 13:05:15.000000000 +0200
++++ guile/libguile/c-tokenize.c	2009-10-28 16:24:15.000000000 +0100
+@@ -1,5 +1,5 @@
+ 
+-#line 3 "<stdout>"
++#line 3 "c-tokenize.c"
+ 
+ #define  YY_INT_ALIGNED short int
+ 
+@@ -616,7 +616,7 @@ int cookie_was_last = 0; 
+ #define IS_COOKIE cookie_was_last = 1
+ #define IS_NOT_COOKIE cookie_was_last = 0
+  
+-#line 620 "<stdout>"
++#line 620 "c-tokenize.c"
+ 
+ #define INITIAL 0
+ 
+@@ -799,7 +799,7 @@ YY_DECL
+ #line 65 "./c-tokenize.lex"
+ 
+ 
+-#line 803 "<stdout>"
++#line 803 "c-tokenize.c"
+ 
+ 	if ( !(yy_init) )
+ 		{
+@@ -1235,7 +1235,7 @@ YY_RULE_SETUP
+ #line 181 "./c-tokenize.lex"
+ ECHO;
+ 	YY_BREAK
+-#line 1239 "<stdout>"
++#line 1239 "c-tokenize.c"
+ case YY_STATE_EOF(INITIAL):
+ 	yyterminate();
+ 
diff --git a/pkgs/development/interpreters/php-xdebug/default.nix b/pkgs/development/interpreters/php-xdebug/default.nix
new file mode 100644
index 000000000000..6fdeac2d24c5
--- /dev/null
+++ b/pkgs/development/interpreters/php-xdebug/default.nix
@@ -0,0 +1,34 @@
+args: with args;
+stdenv.mkDerivation {
+  name = "php-xdebug";
+
+  src = args.fetchurl {
+    url = "http://xdebug.org/files/xdebug-2.0.5.tgz";
+    sha256 = "1cmq7c36gj8n41mfq1wba5rij8j77yqhydpcsbcysk1zchg68f26";
+  };
+
+  buildInputs = [php autoconf automake];
+
+  configurePhase = ''
+    phpize
+    ./configure --prefix=$out
+  '';
+
+  buildPhase = ''
+    make && make test
+  '';
+
+  installPhase = ''
+    ensureDir $out/lib/xdebug
+    cp modules/xdebug.so $out/lib
+    cp LICENSE $out/lib/xdebug
+  '';
+
+  meta = {
+    description = "php debugger and profiler extension";
+    homepage = http://xdebug.org/;
+    license = "xdebug"; # based on PHP-3
+    maintainers = [stdenv.lib.maintainers.marcweber];
+    platforms = stdenv.lib.platforms.linux;
+  };
+}
diff --git a/pkgs/development/interpreters/php/ini-bulider.nix b/pkgs/development/interpreters/php/ini-bulider.nix
new file mode 100644
index 000000000000..72179fd068bd
--- /dev/null
+++ b/pkgs/development/interpreters/php/ini-bulider.nix
@@ -0,0 +1,43 @@
+{runCommand, php, appendLines ? "", prefixPhpRecommended ? true} :
+
+
+/*
+
+NixOS: see apache-httpd/default.nix's phpIni option
+
+to enable Xdebug append these lines:
+  ''
+      zend_extension="${pkgs.phpXdebug}/lib/xdebug.so"
+      zend_extension_ts="${pkgs.phpXdebug}/lib/xdebug.so"
+      zend_extension_debug="${pkgs.phpXdebug}/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
+  ''
+
+to make php's mail() function work add
+  ''
+   ; Needed for PHP's mail() function.
+   sendmail_path = sendmail -t -i
+  ''
+*/
+
+
+runCommand "php.ini"
+  {
+    inherit php appendLines prefixPhpRecommended;
+  }
+  ''
+    [ -z "$prefixPhpRecommended" ] || {
+      {
+      echo "# PHP RECOMMENDED INI START"
+      cat $php/etc/php-recommended.ini
+      echo "# PHP RECOMMENDED INI END"
+      } >> $out
+    }
+    echo "$appendLines" >> $out
+  ''
diff --git a/pkgs/development/interpreters/php_configurable/default.nix b/pkgs/development/interpreters/php_configurable/default.nix
index 07ac6f90a1b3..eb4a29dd720d 100644
--- a/pkgs/development/interpreters/php_configurable/default.nix
+++ b/pkgs/development/interpreters/php_configurable/default.nix
@@ -106,13 +106,6 @@ composableDerivation {} ( fixed : {
                 license = "based on the PHP license - as is";
                 };
       */
-      xdebug = {
-        buildInputs = [ automake autoconf ];
-        xdebug_src = args.fetchurl {
-          url = "http://xdebug.org/files/xdebug-2.0.5.tgz";
-          sha256 = "1cmq7c36gj8n41mfq1wba5rij8j77yqhydpcsbcysk1zchg68f26";
-        };
-      };
     };
 
   cfg = {
@@ -130,14 +123,13 @@ composableDerivation {} ( fixed : {
     soapSupport = getConfig ["php" "soap"] true;
     zlibSupport = getConfig ["php" "zlib"] true;
     opensslSupport = getConfig ["php" "openssl"] true;
-    xdebugSupport = getConfig ["php" "xdebug"] false;
     mbstringSupport = getConfig ["php" "mbstring"] true;
     gdSupport = getConfig ["php" "gd"] true;
   };
 
   # only -O1
   configurePhase = ''
-    iniFile=$out/etc/$name.ini
+    iniFile=$out/etc/php-recommended.ini
     [[ -z "$libxml2" ]] || export PATH=$PATH:$libxml2/bin
     ./configure --with-config-file-scan-dir=/etc --with-config-file-path=$out/etc --prefix=$out  $configureFlags
     echo configurePhase end
@@ -147,32 +139,6 @@ composableDerivation {} ( fixed : {
   installPhase = ''
     unset installPhase; installPhase;
     cp php.ini-recommended $iniFile
-
-    # Now Let's build xdebug if flag has been given
-    # TODO I think there are better paths than the given below
-    if [ -n "$xdebug_src" ]; 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 >> $out/etc/php.ini << 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
-        max_execution_time = 300
-        date.timezone = UTC
-  EOF
-    fi
   '';
 
   src = args.fetchurl {