Merge branch 'master' into gnome-3
This commit is contained in:
commit
dcbc0f5bd7
@ -6,8 +6,8 @@
|
||||
, perl, pkgconfig, python, serd, sord, sratom, suil }:
|
||||
|
||||
let
|
||||
# Ardour 3 Beta 4a
|
||||
rev = "12406";
|
||||
# Ardour 3 Beta 5
|
||||
rev = "13072";
|
||||
in
|
||||
|
||||
stdenv.mkDerivation {
|
||||
@ -16,7 +16,7 @@ stdenv.mkDerivation {
|
||||
src = fetchsvn {
|
||||
url = http://subversion.ardour.org/svn/ardour2/branches/3.0;
|
||||
inherit rev;
|
||||
sha256 = "0a68xb3l36m5908y3airxw1b3bymhrjrf1l492mgcvviq6pn7pmk";
|
||||
sha256 = "17k990kdb5q17z6jcz5b60imvvfbjw9zfxzy9fk0vg8gd6yq7736";
|
||||
};
|
||||
|
||||
buildInputs =
|
||||
|
@ -1,5 +1,5 @@
|
||||
{ stdenv, fetchsvn, alsaLib, asio, autoconf, automake, bison
|
||||
, jackaudio, libgig, libsndfile, libtool , pkgconfig }:
|
||||
, jackaudio, libgig, libsndfile, libtool, lv2, pkgconfig }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "linuxsampler-svn-${version}";
|
||||
@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
buildInputs = [
|
||||
alsaLib asio autoconf automake bison jackaudio libgig libsndfile
|
||||
libtool pkgconfig
|
||||
libtool lv2 pkgconfig
|
||||
];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
|
@ -158,6 +158,20 @@ in {
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
eclipse_sdk_42 = buildEclipse {
|
||||
name = "eclipse-sdk-4.2";
|
||||
description = "Eclipse Classic";
|
||||
src =
|
||||
if stdenv.system == "x86_64-linux" then
|
||||
fetchurl {
|
||||
url = http://eclipse.ialto.com/eclipse/downloads/drops4/R-4.2-201206081400/eclipse-SDK-4.2-linux-gtk-x86_64.tar.gz;
|
||||
sha256 = "1vcr49qm6rsbgzi9d43ggmby68pdigqcy55l5vy1gmixqks3g6s0";
|
||||
}
|
||||
else
|
||||
fetchurl {
|
||||
url = http://eclipse.ialto.com/eclipse/downloads/drops4/R-4.2-201206081400/eclipse-SDK-4.2-linux-gtk.tar.gz;
|
||||
sha256 = "1zlv80idkkdda05ks4biknbkczp24b2xki81ik5nygrjg29jqgnz";
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
|
@ -0,0 +1,30 @@
|
||||
{ stdenv, fetchurl, emacs }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "auto-complete-1.3.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://cx4a.org/pub/auto-complete/${name}.tar.bz2";
|
||||
sha256 = "124qxfp0pcphwlmrasbfrci48brxnrzc38h4wcf2sn20x1mvcrlj";
|
||||
};
|
||||
|
||||
buildInputs = [ emacs ];
|
||||
|
||||
preInstall = ''
|
||||
install -d $out/share/emacs/site-lisp
|
||||
'';
|
||||
|
||||
installFlags = "DIR=$(out)/share/emacs/site-lisp";
|
||||
|
||||
postInstall = ''
|
||||
ln -s javascript-mode $out/share/emacs/site-lisp/ac-dict/js2-mode
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "Auto-complete extension for Emacs";
|
||||
homepage = http://cx4a.org/software/auto-complete/;
|
||||
license = "GPLv3+";
|
||||
|
||||
platforms = stdenv.lib.platforms.all;
|
||||
};
|
||||
}
|
30
pkgs/applications/editors/emacs-modes/coffee/default.nix
Normal file
30
pkgs/applications/editors/emacs-modes/coffee/default.nix
Normal file
@ -0,0 +1,30 @@
|
||||
{ stdenv, fetchgit, emacs }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "coffee-mode-0.4.1";
|
||||
|
||||
src = fetchgit {
|
||||
url = "https://github.com/defunkt/coffee-mode.git";
|
||||
rev = "c45c5f7a529363bc7aa57db0f3df26389fd233d8";
|
||||
sha256 = "36a7792b5ffbcc5a580e8d5b2425494c60a8015cfde0e3f8a946a685da231ce2";
|
||||
};
|
||||
|
||||
buildInputs = [ emacs ];
|
||||
|
||||
buildPhase = ''
|
||||
emacs --batch -f batch-byte-compile coffee-mode.el
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
install -d $out/share/emacs/site-lisp
|
||||
install coffee-mode.el coffee-mode.elc $out/share/emacs/site-lisp
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "An Emacs major mode for CoffeeScript, unfancy JavaScript.";
|
||||
homepage = https://github.com/defunkt/coffee-mode;
|
||||
license = "GPLv2+";
|
||||
|
||||
platforms = stdenv.lib.platforms.all;
|
||||
};
|
||||
}
|
@ -0,0 +1,32 @@
|
||||
{ stdenv, fetchurl, emacs }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "flymake-cursor-0.1.4";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://www.emacswiki.org/emacs/download/flymake-cursor.el";
|
||||
sha256 = "1wxqqmn2fk2b778nksvgn1mi7ajarcpc5lla90xx9jwz47d9hx02";
|
||||
};
|
||||
|
||||
phases = [ "buildPhase" "installPhase"];
|
||||
|
||||
buildInputs = [ emacs ];
|
||||
|
||||
buildPhase = ''
|
||||
cp $src flymake-cursor.el
|
||||
emacs --batch -f batch-byte-compile flymake-cursor.el
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
install -d $out/share/emacs/site-lisp
|
||||
install flymake-cursor.el flymake-cursor.elc $out/share/emacs/site-lisp
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "Displays flymake error msg in minibuffer after delay.";
|
||||
homepage = http://www.emacswiki.org/emacs/flymake-cursor.el;
|
||||
license = stdenv.lib.licenses.publicDomain;
|
||||
|
||||
platforms = stdenv.lib.platforms.all;
|
||||
};
|
||||
}
|
31
pkgs/applications/editors/emacs-modes/gh/default.nix
Normal file
31
pkgs/applications/editors/emacs-modes/gh/default.nix
Normal file
@ -0,0 +1,31 @@
|
||||
{ stdenv, fetchgit, emacs, pcache, logito }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "gh-0.5.3";
|
||||
|
||||
src = fetchgit {
|
||||
url = "https://github.com/sigma/gh.el.git";
|
||||
rev = "ef03b63d063ec22f03af449aa955c98dfad7f80e";
|
||||
sha256 = "efa231e0091e8c7785385149dc97b2d8dc24aba65f4b0974b8ed7f62b7596ad3";
|
||||
};
|
||||
|
||||
buildInputs = [ emacs ];
|
||||
propagatedUserEnvPkgs = [ pcache logito ];
|
||||
|
||||
patchPhase = ''
|
||||
sed -i Makefile \
|
||||
-e "s|^ *EFLAGS *=|& -L ${pcache}/share/emacs/site-lisp -L ${logito}/share/emacs/site-lisp --eval '(setq user-emacs-directory \"./\")'|" \
|
||||
-e "s|/usr/local|$out|" \
|
||||
-e "s|/site-lisp/\$(PKGNAME)|/site-lisp|"
|
||||
'';
|
||||
|
||||
buildPhase = "make lisp";
|
||||
|
||||
meta = {
|
||||
description = "A (very early) GitHub client library for Emacs";
|
||||
homepage = https://github.com/sigma/gh.el;
|
||||
license = "GPLv2+";
|
||||
|
||||
platforms = stdenv.lib.platforms.all;
|
||||
};
|
||||
}
|
36
pkgs/applications/editors/emacs-modes/gist/default.nix
Normal file
36
pkgs/applications/editors/emacs-modes/gist/default.nix
Normal file
@ -0,0 +1,36 @@
|
||||
{ stdenv, fetchgit, emacs, gh, pcache, logito }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "gist-1.0";
|
||||
|
||||
src = fetchgit {
|
||||
url = "https://github.com/sigma/gist.el.git";
|
||||
rev = "bbb457e4eaaf5f96cfaaa4f63021e3e542bfbfed";
|
||||
sha256 = "469f9df52076d0c6038183cff4b9415bca98de66c08814a60b69729b44bdf294";
|
||||
};
|
||||
|
||||
buildInputs = [ emacs ];
|
||||
|
||||
buildPhase = ''
|
||||
emacs -L ${gh}/share/emacs/site-lisp \
|
||||
-L ${pcache}/share/emacs/site-lisp \
|
||||
-L ${logito}/share/emacs/site-lisp \
|
||||
--eval '(setq user-emacs-directory "./")' \
|
||||
--batch -f batch-byte-compile gist.el
|
||||
'';
|
||||
|
||||
propagatedUserEnvPkgs = [ gh pcache logito ];
|
||||
|
||||
installPhase = ''
|
||||
install -d $out/share/emacs/site-lisp
|
||||
install gist.el gist.elc $out/share/emacs/site-lisp
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "Emacs integration for gist.github.com";
|
||||
homepage = https://github.com/sigma/gist.el;
|
||||
license = "GPLv2+";
|
||||
|
||||
platforms = stdenv.lib.platforms.all;
|
||||
};
|
||||
}
|
@ -1,12 +1,12 @@
|
||||
{ stdenv, fetchgit, emacs }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "haskell-mode-2.8.0.29-g7682f99";
|
||||
name = "haskell-mode-2.8.0.29-gae3e4499d2";
|
||||
|
||||
src = fetchgit {
|
||||
url = "http://github.com/haskell/haskell-mode.git";
|
||||
rev = "7682f991acd63d9400597d5f4980f62d7b1c4c0b";
|
||||
sha256 = "f4508a11fa65ece237c9ee9f623bc4e9ad3d3d58ab2fcacc8ddb080c29aac717";
|
||||
rev = "ae3e4499d27a1468bdf88ffe0ce15cd7e4bb9f2a";
|
||||
sha256 = "29a1725da620c13ff2b3b56906e76dd9f19317eee92bd5750b3aa9a4264effae";
|
||||
};
|
||||
|
||||
buildInputs = [emacs];
|
||||
|
30
pkgs/applications/editors/emacs-modes/jade/default.nix
Normal file
30
pkgs/applications/editors/emacs-modes/jade/default.nix
Normal file
@ -0,0 +1,30 @@
|
||||
{ stdenv, fetchgit, emacs }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "jade-mode-0-20120802";
|
||||
|
||||
src = fetchgit {
|
||||
url = "https://github.com/brianc/jade-mode.git";
|
||||
rev = "275ab149edb0f6bcfae6ac17ba456f3351191604";
|
||||
sha256 = "3cd2bebcd66e59d60b8e5e538e65a8ffdfc9a53b86443090a284e8329d7cb09b";
|
||||
};
|
||||
|
||||
buildInputs = [ emacs ];
|
||||
|
||||
buildPhase = ''
|
||||
emacs --batch -L . -f batch-byte-compile *.el
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/share/emacs/site-lisp
|
||||
cp *.el *.elc $out/share/emacs/site-lisp/
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "Emacs major mode for jade and stylus.";
|
||||
homepage = https://github.com/brianc/jade-mode;
|
||||
license = "GPLv2+";
|
||||
|
||||
platforms = stdenv.lib.platforms.all;
|
||||
};
|
||||
}
|
@ -1,12 +1,12 @@
|
||||
{ stdenv, fetchgit, emacs }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "js2-mode-0-20120601";
|
||||
name = "js2-mode-0-20120712";
|
||||
|
||||
src = fetchgit {
|
||||
url = "git://github.com/mooz/js2-mode.git";
|
||||
rev = "81bcbf7df7077db27facf0470cf9e31c18b8333e";
|
||||
sha256 = "1bec62816ec9d5f5882832902020573d95d038fff25b17bf1975b84a3ab535c3";
|
||||
rev = "f8cb9c52614e0a8e477f1ac557585ed950246c9b";
|
||||
sha256 = "37055b7e8c1d9eee6b86f6b9b9d74ad196cc43701bc2263ffd539a3e44025047";
|
||||
};
|
||||
|
||||
buildInputs = [ emacs ];
|
||||
|
30
pkgs/applications/editors/emacs-modes/logito/default.nix
Normal file
30
pkgs/applications/editors/emacs-modes/logito/default.nix
Normal file
@ -0,0 +1,30 @@
|
||||
{ stdenv, fetchgit, emacs }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "logito-0.1";
|
||||
|
||||
src = fetchgit {
|
||||
url = "https://github.com/sigma/logito.git";
|
||||
rev = "824acb89d2cc18cb47281a4fbddd81ad244a2052";
|
||||
sha256 = "b9a7433417eafc5bc158f63dddf559b2044368eb3061f0264169de319c68fe4a";
|
||||
};
|
||||
|
||||
buildInputs = [ emacs ];
|
||||
|
||||
buildPhase = ''
|
||||
emacs --batch -f batch-byte-compile logito.el
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
install -d $out/share/emacs/site-lisp
|
||||
install logito.el logito.elc $out/share/emacs/site-lisp
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "tiny logging framework for Emacs";
|
||||
homepage = https://github.com/sigma/logito;
|
||||
license = "GPLv2+";
|
||||
|
||||
platforms = stdenv.lib.platforms.all;
|
||||
};
|
||||
}
|
@ -0,0 +1,32 @@
|
||||
{ stdenv, fetchurl, emacs }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "lorem-ipsum-0.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://www.emacswiki.org/emacs/download/lorem-ipsum.el";
|
||||
sha256 = "122d0z3xqfaikgk34l7bh989mfxddin2ljinysp2lqw8djfi7jsl";
|
||||
};
|
||||
|
||||
phases = [ "buildPhase" "installPhase"];
|
||||
|
||||
buildInputs = [ emacs ];
|
||||
|
||||
buildPhase = ''
|
||||
cp $src lorem-ipsum.el
|
||||
emacs --batch -f batch-byte-compile lorem-ipsum.el
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
install -d $out/share/emacs/site-lisp
|
||||
install lorem-ipsum.el lorem-ipsum.elc $out/share/emacs/site-lisp
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "Insert dummy pseudo Latin text for emacs.";
|
||||
homepage = http://www.emacswiki.org/emacs/LoremIpsum;
|
||||
license = "GPLv2+";
|
||||
|
||||
platforms = stdenv.lib.platforms.all;
|
||||
};
|
||||
}
|
30
pkgs/applications/editors/emacs-modes/pcache/default.nix
Normal file
30
pkgs/applications/editors/emacs-modes/pcache/default.nix
Normal file
@ -0,0 +1,30 @@
|
||||
{ stdenv, fetchgit, emacs }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "pcache-0.2.3";
|
||||
|
||||
src = fetchgit {
|
||||
url = "https://github.com/sigma/pcache.git";
|
||||
rev = "fa8f863546e2e8f2fc0a70f5cc766a7f584e01b6";
|
||||
sha256 = "f7cdad5a729b24f96ec69db4adfd19daf45c27aaf3a0267385b252cb2e59daa0";
|
||||
};
|
||||
|
||||
buildInputs = [ emacs ];
|
||||
|
||||
buildPhase = ''
|
||||
emacs --batch -f batch-byte-compile pcache.el
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
install -d $out/share/emacs/site-lisp
|
||||
install pcache.el pcache.elc $out/share/emacs/site-lisp
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "Persistent caching for Emacs";
|
||||
homepage = https://github.com/sigma/pcache.el;
|
||||
license = "GPLv2+";
|
||||
|
||||
platforms = stdenv.lib.platforms.all;
|
||||
};
|
||||
}
|
@ -1,10 +1,11 @@
|
||||
{stdenv, fetchurl} :
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "joe-3.3";
|
||||
stdenv.mkDerivation rec {
|
||||
name = "joe-3.7";
|
||||
|
||||
src = fetchurl {
|
||||
url = mirror://sourceforge/joe-editor/joe-3.3.tar.gz;
|
||||
md5 = "02221716679c039c5da00c275d61dbf4";
|
||||
url = "mirror://sourceforge/joe-editor/${name}.tar.gz";
|
||||
sha256 = "0vqhffdjn3xwsfa383i6kdrpfwilq8b382ljjhy1v32smphmdr6a";
|
||||
};
|
||||
|
||||
meta = {
|
||||
|
24
pkgs/applications/misc/gxneur/default.nix
Normal file
24
pkgs/applications/misc/gxneur/default.nix
Normal file
@ -0,0 +1,24 @@
|
||||
{ stdenv, fetchurl, pkgconfig, gtk2, xorg, glib, xneur_0_13, libglade, GConf, pcre }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "gxneur-0.13.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = http://dists.xneur.ru/release-0.13.0/tgz/gxneur-0.13.0.tar.bz2;
|
||||
sha256 = "f093428a479158247a7ff8424f0aec9af9f7b1d05b191cf30b7c534965a6839f";
|
||||
};
|
||||
|
||||
buildInputs = [
|
||||
xorg.libX11 pkgconfig glib gtk2 xorg.libXpm xorg.libXt xorg.libXext xneur_0_13
|
||||
libglade GConf pcre
|
||||
];
|
||||
|
||||
preConfigure = ''
|
||||
sed -e 's@-Werror@@' -i configure
|
||||
sed -e 's@"xneur"@"${xneur_0_13}/bin/xneur"@' -i src/misc.c
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "GUI for XNEUR keyboard layout switcher";
|
||||
};
|
||||
}
|
@ -1,32 +1,51 @@
|
||||
{ stdenv, fetchurl, perl, gettext, makeWrapper, lib, PerlMagick, YAML
|
||||
{ stdenv, fetchurl, perl, gettext, makeWrapper, PerlMagick, YAML
|
||||
, TextMarkdown, URI, HTMLParser, HTMLScrubber, HTMLTemplate, TimeDate
|
||||
, CGISession, CGIFormBuilder, DBFile, LocaleGettext, RpcXML, XMLSimple
|
||||
, YAMLLibYAML
|
||||
, YAMLLibYAML, which, HTMLTree, AuthenPassphrase, NetOpenIDConsumer
|
||||
, LWPxParanoidAgent, CryptSSLeay
|
||||
, gitSupport ? false, git ? null
|
||||
, docutilsSupport ? false, python ? null, docutils ? null
|
||||
, monotoneSupport ? false, monotone ? null
|
||||
, bazaarSupport ? false, bazaar ? null
|
||||
, cvsSupport ? false, cvs ? null, cvsps ? null, Filechdir ? null
|
||||
, subversionSupport ? false, subversion ? null
|
||||
, mercurialSupport ? false, mercurial ? null
|
||||
, extraUtils ? []
|
||||
}:
|
||||
|
||||
assert docutilsSupport -> (python != null && docutils != null);
|
||||
assert gitSupport -> (git != null);
|
||||
assert monotoneSupport -> (monotone != null);
|
||||
assert bazaarSupport -> (bazaar != null);
|
||||
assert cvsSupport -> (cvs != null && cvsps != null && Filechdir != null);
|
||||
assert subversionSupport -> (subversion != null);
|
||||
assert mercurialSupport -> (mercurial != null);
|
||||
|
||||
let
|
||||
name = "ikiwiki";
|
||||
version = "3.20120516";
|
||||
version = "3.20120629";
|
||||
|
||||
lib = stdenv.lib;
|
||||
in
|
||||
stdenv.mkDerivation {
|
||||
name = "${name}-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://ftp.de.debian.org/debian/pool/main/i/ikiwiki/${name}_${version}.tar.gz";
|
||||
sha256 = "b75097d4f4db79a16f8b74bc4e7f824a586e0e150ecf18103888bbe553a41eb0";
|
||||
sha256 = "7e39cdb727f261ce20fde5f0b05966680589a3d028c569780addd4b530382f07";
|
||||
};
|
||||
|
||||
buildInputs = [ perl TextMarkdown URI HTMLParser HTMLScrubber HTMLTemplate
|
||||
TimeDate gettext makeWrapper DBFile CGISession CGIFormBuilder LocaleGettext
|
||||
RpcXML XMLSimple PerlMagick YAML YAMLLibYAML ]
|
||||
++ stdenv.lib.optionals gitSupport [git]
|
||||
++ stdenv.lib.optionals monotoneSupport [monotone];
|
||||
RpcXML XMLSimple PerlMagick YAML YAMLLibYAML which HTMLTree AuthenPassphrase
|
||||
NetOpenIDConsumer LWPxParanoidAgent CryptSSLeay ]
|
||||
++ lib.optionals docutilsSupport [python docutils]
|
||||
++ lib.optionals gitSupport [git]
|
||||
++ lib.optionals monotoneSupport [monotone]
|
||||
++ lib.optionals bazaarSupport [bazaar]
|
||||
++ lib.optionals cvsSupport [cvs cvsps Filechdir]
|
||||
++ lib.optionals subversionSupport [subversion]
|
||||
++ lib.optionals mercurialSupport [mercurial];
|
||||
|
||||
patchPhase = ''
|
||||
sed -i s@/usr/bin/perl@${perl}/bin/perl@ pm_filter mdwn2man
|
||||
@ -42,17 +61,31 @@ stdenv.mkDerivation {
|
||||
postInstall = ''
|
||||
for a in "$out/bin/"*; do
|
||||
wrapProgram $a --suffix PERL5LIB : $PERL5LIB --prefix PATH : ${perl}/bin:$out/bin \
|
||||
${lib.optionalString gitSupport
|
||||
''--prefix PATH : ${git}/bin \''}
|
||||
${lib.optionalString monotoneSupport
|
||||
''--prefix PATH : ${monotone}/bin \''}
|
||||
${lib.optionalString gitSupport ''--prefix PATH : ${git}/bin \''}
|
||||
${lib.optionalString monotoneSupport ''--prefix PATH : ${monotone}/bin \''}
|
||||
${lib.optionalString bazaarSupport ''--prefix PATH : ${bazaar}/bin \''}
|
||||
${lib.optionalString cvsSupport ''--prefix PATH : ${cvs}/bin \''}
|
||||
${lib.optionalString cvsSupport ''--prefix PATH : ${cvsps}/bin \''}
|
||||
${lib.optionalString subversionSupport ''--prefix PATH : ${subversion}/bin \''}
|
||||
${lib.optionalString mercurialSupport ''--prefix PATH : ${mercurial}/bin \''}
|
||||
${lib.concatMapStrings (x: "--prefix PATH : ${x}/bin ") extraUtils}
|
||||
done
|
||||
'';
|
||||
|
||||
preCheck = ''
|
||||
# Git needs some help figuring this out during test suite run.
|
||||
export EMAIL="nobody@example.org"
|
||||
'';
|
||||
|
||||
checkTarget = "test";
|
||||
doCheck = true;
|
||||
|
||||
meta = {
|
||||
description = "Wiki compiler, storing pages and history in a RCS";
|
||||
homepage = http://ikiwiki.info/;
|
||||
homepage = "http://ikiwiki.info/";
|
||||
license = "GPLv2+";
|
||||
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
maintainers = [ stdenv.lib.maintainers.simons ];
|
||||
};
|
||||
}
|
||||
|
@ -1,18 +1,27 @@
|
||||
# I haven't put much effort into this expressions .. so some optional depencencies may be missing - Marc
|
||||
{ fetchurl, stdenv, texLive, python, makeWrapper, pkgconfig
|
||||
, libX11, qt
|
||||
, libX11, qt4, enchant #, mythes, boost
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "2.0.3";
|
||||
version = "2.0.4";
|
||||
name = "lyx-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "ftp://ftp.lyx.org/pub/lyx/stable/2.0.x/${name}.tar.xz";
|
||||
sha256 = "1j2sl22w41h4vrgnxv2n0s7d11k6zchjbggjw3ai9yxcahvrj72f";
|
||||
sha256 = "137dzmz1z6aqz9mdj8gmmi0k60s9sfn6gy916j175cwzq6hpncb8";
|
||||
};
|
||||
|
||||
buildInputs = [texLive qt python makeWrapper pkgconfig ];
|
||||
configureFlags = [
|
||||
#"--without-included-boost"
|
||||
/* Boost is a huge dependency from which 1.4 MB of libs would be used.
|
||||
Using internal boost stuff only increases executable by around 0.2 MB. */
|
||||
#"--without-included-mythes" # such a small library isn't worth a split package
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
texLive qt4 python makeWrapper pkgconfig
|
||||
enchant # mythes boost
|
||||
];
|
||||
|
||||
meta = {
|
||||
description = "WYSIWYM frontend for LaTeX, DocBook, etc.";
|
||||
|
23
pkgs/applications/misc/st/default.nix
Normal file
23
pkgs/applications/misc/st/default.nix
Normal file
@ -0,0 +1,23 @@
|
||||
{ stdenv, fetchurl, libX11, ncurses}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "st-0.2.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = http://hg.suckless.org/st/archive/0.2.1.tar.gz;
|
||||
sha256 = "15yqyys69ifjc4vrzvamrg7x0pwa60mnjpi0kap4y9ykhds83xab";
|
||||
};
|
||||
|
||||
buildInputs = [ libX11 ncurses ];
|
||||
|
||||
installPhase = ''
|
||||
TERMINFO=$out/share/terminfo make install PREFIX=$out
|
||||
'';
|
||||
|
||||
meta = {
|
||||
homepage = http://st.suckless.org/;
|
||||
license = "MIT";
|
||||
maintainers = with stdenv.lib.maintainers; [viric];
|
||||
platforms = with stdenv.lib.platforms; linux;
|
||||
};
|
||||
}
|
@ -2,11 +2,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "surf-${version}";
|
||||
version="0.4.1";
|
||||
version="0.5";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://dl.suckless.org/surf/surf-${version}.tar.gz";
|
||||
sha256 = "0im5psjw0r8av3zjyy2wqcl6y5ylwnrab5kfcwc23bsbx2irnw4k";
|
||||
sha256 = "19qfkwdk6p5hcwnnplscp1kmypz74mga7x6iqy6w3g18s221f2mx";
|
||||
};
|
||||
|
||||
buildInputs = [ gtk webkit pkgconfig glib libsoup ];
|
||||
|
@ -172,6 +172,7 @@ in stdenv.mkDerivation rec {
|
||||
mkdir -vp "$out/libexec/${packageName}"
|
||||
cp -v "out/${buildType}/"*.pak "$out/libexec/${packageName}/"
|
||||
cp -vR "out/${buildType}/locales" "out/${buildType}/resources" "$out/libexec/${packageName}/"
|
||||
cp -v out/${buildType}/libffmpegsumo.so "$out/libexec/${packageName}/"
|
||||
|
||||
cp -v "out/${buildType}/chrome" "$out/libexec/${packageName}/${packageName}"
|
||||
|
||||
|
@ -1,19 +1,19 @@
|
||||
# This file is autogenerated from update.sh in the same directory.
|
||||
# VHASH: 5e5af2017fa2e05f11aa741c6f87fff0549b93e3bc2aa40e6cc0a0aff84ba010
|
||||
# VHASH: c9500486764a2433d0f059134a981eb9adccd3546a6f779bc0e05cdcb26d2ae6
|
||||
{
|
||||
dev = {
|
||||
version = "21.0.1180.15";
|
||||
url = "http://commondatastorage.googleapis.com/chromium-browser-official/chromium-21.0.1180.15.tar.bz2";
|
||||
sha256 = "0ahsrsyw4928vg1kl3dv44q77ksp85crw6m7fy20nq46qihb0mxa";
|
||||
version = "22.0.1221.1";
|
||||
url = "http://commondatastorage.googleapis.com/chromium-browser-official/chromium-22.0.1221.1.tar.bz2";
|
||||
sha256 = "08cx2im0ng1dg83mk8jlx4in7v8f5vsf9y2ild0i22jb20c7h31s";
|
||||
};
|
||||
beta = {
|
||||
version = "20.0.1132.47";
|
||||
url = "http://commondatastorage.googleapis.com/chromium-browser-official/chromium-20.0.1132.47.tar.bz2";
|
||||
sha256 = "1rd1lfn9xchf4nrgi46van5aigqxj2n303890sslc4bcj6p8fkm3";
|
||||
version = "21.0.1180.57";
|
||||
url = "http://commondatastorage.googleapis.com/chromium-browser-official/chromium-21.0.1180.57.tar.bz2";
|
||||
sha256 = "0idimvkrhs09x93hl8p7rddyb0ymk9f8i5jm6m3lg6ga959aj6ri";
|
||||
};
|
||||
stable = {
|
||||
version = "20.0.1132.47";
|
||||
url = "http://commondatastorage.googleapis.com/chromium-browser-official/chromium-20.0.1132.47.tar.bz2";
|
||||
sha256 = "1rd1lfn9xchf4nrgi46van5aigqxj2n303890sslc4bcj6p8fkm3";
|
||||
version = "21.0.1180.57";
|
||||
url = "http://commondatastorage.googleapis.com/chromium-browser-official/chromium-21.0.1180.57.tar.bz2";
|
||||
sha256 = "0idimvkrhs09x93hl8p7rddyb0ymk9f8i5jm6m3lg6ga959aj6ri";
|
||||
};
|
||||
}
|
||||
|
@ -7,6 +7,8 @@ with stdenv.lib;
|
||||
|
||||
let
|
||||
|
||||
baseURL = "http://dl.google.com/linux/talkplugin/deb/pool/main/g/google-talkplugin";
|
||||
|
||||
rpathPlugin = makeLibraryPath
|
||||
[ mesa
|
||||
xorg.libXt
|
||||
@ -39,28 +41,26 @@ let
|
||||
|
||||
in
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "google-talk-plugin-2.9.10.0";
|
||||
stdenv.mkDerivation rec {
|
||||
name = "google-talk-plugin-${version}";
|
||||
version = "3.2.4.0";
|
||||
|
||||
src =
|
||||
if stdenv.system == "x86_64-linux" then
|
||||
fetchurl {
|
||||
url = "http://dl.google.com/linux/direct/google-talkplugin_current_x86_64.rpm";
|
||||
sha256 = "1lgvv6bkdc5knghyn4gsg5gp7h3qyr4rb978gsi39gkvcazksm0b";
|
||||
url = "${baseURL}/google-talkplugin_${version}-1_amd64.deb";
|
||||
sha256 = "0hd8iyv092fr4bz760xjawiad581hphddv608d0dvzy2bhnl17g1";
|
||||
}
|
||||
else if stdenv.system == "i686-linux" then
|
||||
fetchurl {
|
||||
url = "http://dl.google.com/linux/direct/google-talkplugin_current_i386.rpm";
|
||||
sha256 = "0k9j27pklwb3vih2cydz9552p9270p73hdi14f0bmn6afxjxd13m";
|
||||
url = "${baseURL}/google-talkplugin_${version}-1_i386.deb";
|
||||
sha256 = "13vqs4k16a6bzc5i4zpnakh31nkdqp7m9cv7p16r1sq5smv1331i";
|
||||
}
|
||||
else throw "Google Talk does not support your platform.";
|
||||
|
||||
buildInputs = [ rpm cpio ];
|
||||
|
||||
unpackPhase =
|
||||
''
|
||||
rpm2cpio $src | cpio -i --make-directories -v
|
||||
'';
|
||||
unpackPhase = ''
|
||||
ar p "$src" data.tar.gz | tar xz
|
||||
'';
|
||||
|
||||
installPhase =
|
||||
''
|
||||
|
@ -9,22 +9,22 @@
|
||||
assert stdenv.isLinux && stdenv.gcc.gcc != null && stdenv.gcc.libc != null;
|
||||
|
||||
let
|
||||
mirror = ftp://ftp.ussg.iu.edu/pub/opera;
|
||||
mirror = http://get.geo.opera.com/pub/opera;
|
||||
in
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "opera-11.64-1403";
|
||||
name = "opera-12.00-1467";
|
||||
|
||||
src =
|
||||
if stdenv.system == "i686-linux" then
|
||||
fetchurl {
|
||||
url = "${mirror}/linux/1164/${name}.i386.linux.tar.xz";
|
||||
sha256 = "8b7998586b1b3f8f5722beef7ebb621c0f15915c260b096249e9db5973e30d82";
|
||||
url = "${mirror}/linux/1200/${name}.i386.linux.tar.xz";
|
||||
sha256 = "d5683f5a4cf0cfd9ce715359b77909c7923c85bcec98513907c1844285356fdc";
|
||||
}
|
||||
else if stdenv.system == "x86_64-linux" then
|
||||
fetchurl {
|
||||
url = "${mirror}/linux/1164/${name}.x86_64.linux.tar.xz";
|
||||
sha256 = "3b2012cbab826a04417deb56b85d8d31f9c17130071304736bcfa572f78b4c69";
|
||||
url = "${mirror}/linux/1200/${name}.x86_64.linux.tar.xz";
|
||||
sha256 = "7c3dbe122b1fd20123f1b48a420dea080cc24ede4183d47d66b383c2b7ca5051";
|
||||
}
|
||||
else throw "Opera is not supported on ${stdenv.system} (only i686-linux and x86_64 linux are supported)";
|
||||
|
||||
|
@ -27,6 +27,7 @@ stdenv.mkDerivation rec {
|
||||
configureFlags = "--with-ssl=${openssl} --with-gc=${boehmgc}";
|
||||
|
||||
preConfigure = ''
|
||||
substituteInPlace ./configure --replace "/lib /usr/lib /usr/local/lib /usr/ucblib /usr/ccslib /usr/ccs/lib /lib64 /usr/lib64" /no-such-path
|
||||
substituteInPlace ./configure --replace /usr /no-such-path
|
||||
'';
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
{ stdenv, fetchurl, openssl, curl }:
|
||||
{ stdenv, fetchurl, openssl, curl, coreutils, gawk, bash, which }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "esniper-2.27.0";
|
||||
@ -10,8 +10,12 @@ stdenv.mkDerivation {
|
||||
|
||||
buildInputs = [openssl curl];
|
||||
|
||||
# Add support for CURL_CA_BUNDLE variable.
|
||||
patches = [ ./find-ca-bundle.patch ];
|
||||
|
||||
postInstall = ''
|
||||
sed -e "2i export PATH=\"$out/bin:\$PATH\"" <"frontends/snipe" >"$out/bin/snipe"
|
||||
sed <"frontends/snipe" >"$out/bin/snipe" \
|
||||
-e "2i export PATH=\"$out/bin:${coreutils}/bin:${gawk}/bin:${bash}/bin:${which}/bin:\$PATH\""
|
||||
chmod 555 "$out/bin/snipe"
|
||||
'';
|
||||
|
||||
@ -24,5 +28,3 @@ stdenv.mkDerivation {
|
||||
maintainers = [ stdenv.lib.maintainers.simons ];
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
|
26
pkgs/applications/networking/esniper/find-ca-bundle.patch
Normal file
26
pkgs/applications/networking/esniper/find-ca-bundle.patch
Normal file
@ -0,0 +1,26 @@
|
||||
diff -ubr '--exclude=*.o' esniper-2-27-0-orig/http.c esniper-2-27-0-patched/http.c
|
||||
--- esniper-2-27-0-orig/http.c 2012-02-06 22:04:06.000000000 +0100
|
||||
+++ esniper-2-27-0-patched/http.c 2012-07-27 10:54:20.893054646 +0200
|
||||
@@ -200,6 +200,9 @@
|
||||
int
|
||||
initCurlStuff(void)
|
||||
{
|
||||
+ /* Path to OpenSSL bundle file. */
|
||||
+ const char *ssl_capath=NULL;
|
||||
+
|
||||
/* list for custom headers */
|
||||
struct curl_slist *slist=NULL;
|
||||
|
||||
@@ -241,6 +244,12 @@
|
||||
if ((curlrc = curl_easy_setopt(easyhandle, CURLOPT_COOKIEFILE, "")))
|
||||
return initCurlStuffFailed();
|
||||
|
||||
+ /* If the environment variable CURL_CA_BUNDLE is set, pass through its
|
||||
+ * contents to curl. */
|
||||
+ if ((ssl_capath = getenv("CURL_CA_BUNDLE")))
|
||||
+ if ((curlrc = curl_easy_setopt(easyhandle, CURLOPT_CAINFO, ssl_capath)))
|
||||
+ return initCurlStuffFailed();
|
||||
+
|
||||
slist = curl_slist_append(slist, "Accept: text/*");
|
||||
slist = curl_slist_append(slist, "Accept-Language: en");
|
||||
slist = curl_slist_append(slist, "Accept-Charset: iso-8859-1,*,utf-8");
|
@ -12,11 +12,11 @@ let
|
||||
buildInputs = map (n: builtins.getAttr n x)
|
||||
(builtins.attrNames (builtins.removeAttrs x helperArgNames));
|
||||
sourceInfo = rec {
|
||||
version="1.1.2";
|
||||
version="1.2.0";
|
||||
baseName="vacuum-im";
|
||||
name="${baseName}-${version}";
|
||||
url="http://vacuum-im.googlecode.com/files/vacuum-${version}.tar.xz";
|
||||
hash="451dde9b3587503b035fa1ddd2c99f2052a0b17a603491c59e8c47a8bcd4746d";
|
||||
hash="55a2c27aaaf79c7a4de127c22d3845ede35970283d35ee57fd5ceca581b085fc";
|
||||
};
|
||||
in
|
||||
rec {
|
||||
|
20
pkgs/applications/networking/irc/ii/default.nix
Normal file
20
pkgs/applications/networking/irc/ii/default.nix
Normal file
@ -0,0 +1,20 @@
|
||||
{stdenv, fetchurl}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "ii-1.6";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://dl.suckless.org/tools/${name}.tar.gz";
|
||||
sha256 = "0afccbcm7i9lfch5mwzs3l1ax79dg3g6rrw0z8rb7d2kn8wsckvr";
|
||||
};
|
||||
|
||||
installPhase = ''
|
||||
make install PREFIX=$out
|
||||
'';
|
||||
|
||||
meta = {
|
||||
homepage = http://tools.suckless.org/ii/;
|
||||
license = "MIT";
|
||||
description = "Irc it, simple FIFO based irc client";
|
||||
};
|
||||
}
|
@ -2,12 +2,12 @@
|
||||
, zlib, curl , pkgconfig, libgcrypt, ruby, lua5, tcl, guile }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "0.3.7";
|
||||
version = "0.3.8";
|
||||
name = "weechat-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://weechat.org/files/src/${name}.tar.gz";
|
||||
sha256 = "1bphyhx5rnirga5l42z4lijw68qx724gffic1z60jdwfxc5dxknl";
|
||||
sha256 = "4293eb9d29f11b8ee8c301049d57e535acbea677bc1dc41ab12fe1bb8af0f10e";
|
||||
};
|
||||
|
||||
buildInputs =
|
||||
|
@ -3,11 +3,11 @@
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "notmuch-0.12";
|
||||
name = "notmuch-0.13.2";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://notmuchmail.org/releases/${name}.tar.gz";
|
||||
sha256 = "1dbbbbba3567df9c67ecc642d1e63269a527952c557f6b0c8bafcd4e37893992";
|
||||
sha256 = "75ec5f5d04bb7e3a8cc6224859b691f704a2a35f2f6027ffb674e829268f1d68";
|
||||
};
|
||||
|
||||
buildInputs = [ bash emacs gdb glib gmime gnupg1 pkgconfig talloc xapian ];
|
||||
|
@ -1,11 +1,19 @@
|
||||
{stdenv, fetchurl}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "netperf-2.5.0";
|
||||
name = "netperf-2.6.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "ftp://ftp.netperf.org/netperf/${name}.tar.bz2";
|
||||
sha256 = "1l06bb99b4wfnmq247b8rvp4kn3w6bh1m46ri4d74z22li7br545";
|
||||
sha256 = "cd8dac710d4273d29f70e8dbd09353a6362ac58a11926e0822233c0cb230323a";
|
||||
};
|
||||
|
||||
meta = {
|
||||
description = "benchmark to measure the performance of many different types of networking";
|
||||
homepage = "http://www.netperf.org/netperf/";
|
||||
license = "Hewlett-Packard BSD-like license";
|
||||
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
maintainers = [];
|
||||
};
|
||||
}
|
||||
|
||||
|
@ -5,14 +5,14 @@
|
||||
|
||||
assert spellChecking -> gtkspell != null;
|
||||
|
||||
let version = "0.138"; in
|
||||
let version = "0.139"; in
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "pan-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://pan.rebelbase.com/download/releases/${version}/source/pan-${version}.tar.bz2";
|
||||
sha1 = "8ad70d0b2bfb771eb7af1f973af6520f9998591a";
|
||||
sha1 = "01ea0361a6d81489888e6abb075fd552999c3c60";
|
||||
};
|
||||
|
||||
buildInputs = [ pkgconfig gtk perl gmime gettext intltool dbus_glib libnotify ]
|
||||
|
@ -1,11 +1,8 @@
|
||||
{ stdenv, fetchurl, libextractor, libmicrohttpd, libgcrypt
|
||||
, zlib, gmp, curl, libtool, adns, sqlite, pkgconfig
|
||||
, libxml2, ncurses, gettext, libunistring
|
||||
, gtkSupport ? false, gtk ? null, libglade ? null
|
||||
, makeWrapper }:
|
||||
|
||||
assert gtkSupport -> (gtk != null) && (libglade != null);
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "gnunet-0.9.3";
|
||||
|
||||
@ -18,7 +15,7 @@ stdenv.mkDerivation rec {
|
||||
libextractor libmicrohttpd libgcrypt gmp curl libtool
|
||||
zlib adns sqlite libxml2 ncurses
|
||||
pkgconfig gettext libunistring makeWrapper
|
||||
] ++ (if gtkSupport then [ gtk libglade ] else []);
|
||||
];
|
||||
|
||||
preConfigure = ''
|
||||
# Brute force: since nix-worker chroots don't provide
|
||||
|
@ -1,11 +1,11 @@
|
||||
{stdenv, fetchurl, libpcap, ncurses, expat, pcre}:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "kismet-2010-01-r1";
|
||||
name = "kismet-2011-03-r2";
|
||||
|
||||
src = fetchurl {
|
||||
url = http://www.kismetwireless.net/code/kismet-2010-01-R1.tar.gz;
|
||||
sha256 = "106qird64x1v29nz6k5zs9dxxdq6q7fb7d6np0pnwm3dd2p1w7cx";
|
||||
url = http://www.kismetwireless.net/code/kismet-2011-03-R2.tar.gz;
|
||||
sha256 = "0r1admlaiq7k0v13d9ci9i9mf5m25i1r5r18bkawsla9fbxrk83i";
|
||||
};
|
||||
|
||||
buildInputs = [libpcap ncurses expat pcre];
|
||||
|
@ -1,9 +1,6 @@
|
||||
{stdenv, fetchurl, ocaml, lablgtk, fontschumachermisc, xset, makeWrapper, ncurses
|
||||
, enableX11 ? true}:
|
||||
|
||||
let
|
||||
nativeCode = if stdenv.isArm then false else true;
|
||||
in
|
||||
stdenv.mkDerivation (rec {
|
||||
|
||||
name = "unison-2.40.63";
|
||||
@ -19,7 +16,7 @@ stdenv.mkDerivation (rec {
|
||||
'' else "";
|
||||
|
||||
makeFlags = "INSTALLDIR=$(out)/bin/" + (if enableX11 then " UISTYLE=gtk2" else "")
|
||||
+ (if ! nativeCode then " NATIVE=false" else "");
|
||||
+ (if ! ocaml.nativeCompilers then " NATIVE=false" else "");
|
||||
|
||||
preInstall = "mkdir -p $out/bin";
|
||||
|
||||
@ -30,7 +27,7 @@ stdenv.mkDerivation (rec {
|
||||
done
|
||||
'' else "";
|
||||
|
||||
dontStrip = if ! nativeCode then true else false;
|
||||
dontStrip = if ! ocaml.nativeCompilers then true else false;
|
||||
|
||||
meta = {
|
||||
homepage = http://www.cis.upenn.edu/~bcpierce/unison/;
|
||||
|
@ -1,21 +1,18 @@
|
||||
{stdenv, fetchurl, readline, openssh}:
|
||||
{stdenv, fetchurl, readline, libssh, intltool}:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "yafc-1.1.1";
|
||||
stdenv.mkDerivation rec {
|
||||
name = "yafc-1.2.0";
|
||||
src = fetchurl {
|
||||
url = mirror://sourceforge/yafc/yafc-1.1.1.tar.bz2;
|
||||
sha256 = "ab72b2ed89fb75dbe8ebd119458cf513392225f367cccfad881e9780aefcd7e6";
|
||||
url = "https://github.com/downloads/sebastinas/yafc/${name}.tar.xz";
|
||||
sha256 = "0h5cbvvfkigvzfqqzvgqpn8m0ilyng3rgyh85c0mi48klzv8kb58";
|
||||
};
|
||||
|
||||
buildInputs = [readline openssh];
|
||||
|
||||
patchPhase = "
|
||||
sed -e 's@/usr/bin/ssh@${openssh}/bin/ssh@' -i src/main.c
|
||||
";
|
||||
buildInputs = [ readline libssh intltool ];
|
||||
|
||||
meta = {
|
||||
description = "ftp/sftp client with readline, autocompletion and bookmarks";
|
||||
homepage = http://yafc.sourceforge.net;
|
||||
homepage = http://www.yafc-ftp.com;
|
||||
maintainers = [ stdenv.lib.maintainers.page ];
|
||||
license = "GPLv2+";
|
||||
};
|
||||
}
|
||||
|
@ -1,21 +1,24 @@
|
||||
{ stdenv, fetchurl, pkgconfig, freetype, lcms, libtiff, libxml2
|
||||
, libart_lgpl, qt, python, cups, fontconfig, libjpeg
|
||||
, zlib, libpng, xorg, cairo, podofo, aspell, boost, cmake }:
|
||||
stdenv.mkDerivation {
|
||||
name = "scribus-1.4.0rc6";
|
||||
, libart_lgpl, qt4, python, cups, fontconfig, libjpeg
|
||||
, zlib, libpng, xorg, cairo, podofo, aspell, boostHeaders, cmake }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "scribus-1.4.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = mirror://sourceforge/scribus/scribus/scribus-1.4.0.rc6.tar.bz2;
|
||||
sha256 = "1rrnzxjzhqj4lgyfswly501xlyvm4hsnnq7zw008v0cnkx31icli";
|
||||
url = "mirror://sourceforge/scribus/scribus/${name}.tar.xz";
|
||||
sha256 = "1n67z2bk5ca2sxvv43jvj7yygfr4d2x5yc69zk70v38prm0gqlv8";
|
||||
};
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
buildInputs =
|
||||
[ pkgconfig cmake freetype lcms libtiff libxml2 libart_lgpl qt
|
||||
buildInputs = with xorg;
|
||||
[ pkgconfig cmake freetype lcms libtiff libxml2 libart_lgpl qt4
|
||||
python cups fontconfig
|
||||
xorg.libXaw xorg.libXext xorg.libX11 xorg.libXtst xorg.libXi xorg.libXinerama
|
||||
libjpeg zlib libpng podofo aspell cairo
|
||||
boostHeaders # for internal 2geom library
|
||||
libXaw libXext libX11 libXtst libXi libXinerama
|
||||
libpthreadstubs libXau libXdmcp
|
||||
];
|
||||
|
||||
meta = {
|
||||
|
@ -1,14 +1,14 @@
|
||||
{stdenv, fetchurl, cmake, freetype, libpng, mesa, gettext, openssl, qt4, perl, libiconv}:
|
||||
|
||||
let
|
||||
name = "stellarium-0.11.2";
|
||||
name = "stellarium-0.11.3";
|
||||
in
|
||||
stdenv.mkDerivation {
|
||||
inherit name;
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/stellarium/${name}.tar.gz";
|
||||
sha256 = "1qk26s0gal2pqr8zy95270fiszxsc6znzzrj5jap91zzibn17945";
|
||||
sha256 = "f7c7eeaefcdc54c0fb8766f09e0c838acb742719adcdf12a6c1e12d55ecd6ac3";
|
||||
};
|
||||
|
||||
buildInputs = [ cmake freetype libpng mesa gettext openssl qt4 perl libiconv ];
|
||||
|
@ -1,10 +1,10 @@
|
||||
{stdenv, fetchurl, gtk, gperf, pkgconfig, bzip2, tcl, tk, judy, xz}:
|
||||
stdenv.mkDerivation rec {
|
||||
name = "gtkwave-3.3.28";
|
||||
name = "gtkwave-3.3.39";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/gtkwave/${name}.tar.gz";
|
||||
sha256 = "0y3dmx39xwc3m23fwjkxvp9gqxpckk8s5814nhs8fnxa384z5cz0";
|
||||
sha256 = "1va506anlbpbha7l6h94s44xjdy6ch22iv629swn4bh5m3qi33bg";
|
||||
};
|
||||
|
||||
buildInputs = [ gtk gperf pkgconfig bzip2 tcl tk judy xz ];
|
||||
|
@ -23,5 +23,6 @@ stdenv.mkDerivation rec {
|
||||
meta = {
|
||||
homepage = http://bazaar-vcs.org/;
|
||||
description = "A distributed version control system that Just Works";
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
};
|
||||
}
|
||||
|
@ -9,10 +9,10 @@
|
||||
|
||||
let
|
||||
|
||||
version = "1.7.11";
|
||||
|
||||
version = "1.7.11.4";
|
||||
|
||||
svn = subversionClient.override { perlBindings = true; };
|
||||
|
||||
|
||||
in
|
||||
|
||||
stdenv.mkDerivation {
|
||||
@ -20,7 +20,7 @@ stdenv.mkDerivation {
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://git-core.googlecode.com/files/git-${version}.tar.gz";
|
||||
sha256 = "0qgi1cj19dnn0sl3n38dbz68nllvyppdvs2jb77ksiar4jb9lsc3";
|
||||
sha256 = "16a1gm256w82j9ardzyfyqi0f35l3x92xsqz8ghz1pnja8jns7g9";
|
||||
};
|
||||
|
||||
patches = [ ./docbook2texi.patch ];
|
||||
@ -100,7 +100,7 @@ stdenv.mkDerivation {
|
||||
for prog in bin/gitk libexec/git-core/{git-gui,git-citool,git-gui--askpass}; do
|
||||
sed -i -e "s|exec 'wish'|exec '${tk}/bin/wish'|g" \
|
||||
-e "s|exec wish|exec '${tk}/bin/wish'|g" \
|
||||
"$out/$prog"
|
||||
"$out/$prog"
|
||||
done
|
||||
'' else ''
|
||||
# Don't wrap Tcl/Tk, replace them by notification scripts
|
||||
|
@ -2,14 +2,14 @@
|
||||
, guiSupport ? false, tk ? null, curses }:
|
||||
|
||||
let
|
||||
name = "mercurial-2.1.2";
|
||||
name = "mercurial-2.2.3";
|
||||
in
|
||||
stdenv.mkDerivation {
|
||||
inherit name;
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://mercurial.selenic.com/release/${name}.tar.gz";
|
||||
sha256 = "11lqjnbal667rkbafby9qvb7hyxfycyc7h3hw04p4s4mw64lhkci";
|
||||
sha256 = "0yv7kn96270fixigry910c1i3zzivimh1xjxywqjn9dshn2y6qbw";
|
||||
};
|
||||
|
||||
inherit python; # pass it so that the same version can be used in hg2git
|
||||
@ -43,7 +43,7 @@ stdenv.mkDerivation {
|
||||
|
||||
# copy hgweb.cgi to allow use in apache
|
||||
mkdir -p $out/share/cgi-bin
|
||||
cp -v hgweb.cgi $out/share/cgi-bin
|
||||
cp -v hgweb.cgi contrib/hgweb.wsgi $out/share/cgi-bin
|
||||
chmod u+x $out/share/cgi-bin/hgweb.cgi
|
||||
'';
|
||||
|
||||
|
@ -63,7 +63,7 @@ rec {
|
||||
export SGNEEDS_DIR="$out"/sgneeds/
|
||||
export VVTHIRDPARTY="$out"/sgneeds/
|
||||
|
||||
export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I$out/sgneeds/include"
|
||||
export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I"$out/sgneeds/include" -Wno-error"
|
||||
'') ["minInit" "defEnsureDir"];
|
||||
|
||||
prepareMakefiles = a.fullDepEntry ''
|
||||
|
@ -1,9 +1,9 @@
|
||||
rec {
|
||||
version="1.5.0.10647";
|
||||
name="veracity-1.5.0.10647";
|
||||
hash="1b10npyxxg9592wigfpv66h17bzbsg2hqcfm7imyn941a34qrkd3";
|
||||
url="http://download.sourcegear.com/Veracity/nightly/1.5.0.10647/veracity-source-${version}.tar.gz";
|
||||
advertisedUrl="http://download.sourcegear.com/Veracity/nightly/1.5.0.10647/veracity-source-1.5.0.10647.tar.gz";
|
||||
version="2.0.0.10822";
|
||||
name="veracity-2.0.0.10822";
|
||||
hash="0zgvrsjxfd1p9pflx1kxggmk953jhjk02h1hili9h1vdasvn2188";
|
||||
url="http://download.sourcegear.com/Veracity/release/2.0.0.10822/veracity-source-${version}.tar.gz";
|
||||
advertisedUrl="http://download.sourcegear.com/Veracity/release/2.0.0.10822/veracity-source-2.0.0.10822.tar.gz";
|
||||
|
||||
|
||||
}
|
||||
|
@ -97,7 +97,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
buildInputs =
|
||||
[ freetype zlib pkgconfig ]
|
||||
++ stdenv.lib.optional x11Support [ libX11 libXext mesa ]
|
||||
++ stdenv.lib.optionals x11Support [ libX11 libXext mesa ]
|
||||
++ stdenv.lib.optional alsaSupport alsaLib
|
||||
++ stdenv.lib.optional xvSupport libXv
|
||||
++ stdenv.lib.optional theoraSupport libtheora
|
||||
|
@ -10,11 +10,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "vlc-${version}";
|
||||
version = "2.0.1";
|
||||
version = "2.0.3";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://download.videolan.org/pub/videolan/vlc/${version}/${name}.tar.xz";
|
||||
sha256 = "7f485725c17487a77d70844cbd9acf528360d65cd6ff79d206657920f4fcbf4b";
|
||||
sha256 = "1lnjfpizgp8slj6i4fgk5wld6nfw08wfhkb1i1dvzbhmfigq1agv";
|
||||
};
|
||||
|
||||
buildInputs =
|
||||
|
@ -0,0 +1,13 @@
|
||||
#!/usr/bin/python -t
|
||||
# this script was written to use /etc/nixos/nixpkgs/pkgs/development/python-modules/generic/wrap.sh
|
||||
# which already automates python executable wrapping by extending the PATH/pythonPath
|
||||
|
||||
# from http://docs.python.org/library/subprocess.html
|
||||
# Warning Invoking the system shell with shell=True can be a security hazard if combined with untrusted input. See the warning under Frequently Used Arguments for details.
|
||||
|
||||
from subprocess import Popen, PIPE, STDOUT
|
||||
|
||||
cmd = 'PYTHON_EXECUTABLE_PATH -t THE_CUSTOM_PATH/share/virt-manager/THE_CUSTOM_PROGRAM.py'
|
||||
p = Popen(cmd, shell=True, stdin=PIPE, stdout=PIPE, stderr=STDOUT, close_fds=True)
|
||||
output = p.stdout.read()
|
||||
print output
|
@ -1,70 +1,85 @@
|
||||
x@{builderDefsPackage
|
||||
, gnome, gtk, glib, libxml2, libvirt, gtkvnc, cyrus_sasl, libtasn1, makeWrapper
|
||||
, intltool, python, pygtk, libxml2Python
|
||||
# virtinst is required, but it breaks when building
|
||||
, ...}:
|
||||
builderDefsPackage
|
||||
(a :
|
||||
let
|
||||
helperArgNames = ["stdenv" "fetchurl" "builderDefsPackage"] ++
|
||||
["gnome"];
|
||||
{ stdenv, fetchurl, pythonPackages, intltool, libvirt, libxml2Python, curl, python, makeWrapper, virtinst, pyGtkGlade, pythonDBus, gnome_python, gtkvnc}:
|
||||
|
||||
buildInputs = (map (n: builtins.getAttr n x)
|
||||
(builtins.attrNames (builtins.removeAttrs x helperArgNames)))
|
||||
++ [gnome.libglade intltool python libvirt];
|
||||
sourceInfo = rec {
|
||||
baseName="virt-manager";
|
||||
with stdenv.lib;
|
||||
|
||||
version = "0.9.1";
|
||||
name = "virt-manager-${version}";
|
||||
let version = "0.9.1"; in
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "virt-manager-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://virt-manager.et.redhat.com/download/sources/virt-manager/virt-manager-${version}.tar.gz";
|
||||
hash = "15e064167ba5ff84ce6fc8790081d61890430f2967f89886a84095a23e40094a";
|
||||
};
|
||||
in
|
||||
rec {
|
||||
src = a.fetchurl {
|
||||
url = sourceInfo.url;
|
||||
sha256 = sourceInfo.hash;
|
||||
sha256 = "15e064167ba5ff84ce6fc8790081d61890430f2967f89886a84095a23e40094a";
|
||||
};
|
||||
|
||||
patchPhase = a.fullDepEntry ''
|
||||
substituteInPlace "src/virt-manager.in" --replace "exec /usr/bin/python" "exec ${python}/bin/python"
|
||||
sed -e '/import libxml2/i import sys\
|
||||
sys.path.append("${libxml2Python}/lib/${python.libPrefix}/site-packages")' \
|
||||
-i src/virtManager/util.py
|
||||
sed -e '/import libxml2/i import sys\
|
||||
sys.path.append("${libxml2Python}/lib/${python.libPrefix}/site-packages")' \
|
||||
-i src/virtManager/libvirtobject.py
|
||||
'' ["minInit"];
|
||||
pythonPath = with pythonPackages;
|
||||
[ setuptools eventlet greenlet gflags netaddr sqlalchemy carrot routes
|
||||
paste_deploy m2crypto ipy boto_1_9 twisted sqlalchemy_migrate
|
||||
distutils_extra simplejson readline glance cheetah lockfile httplib2
|
||||
# !!! should libvirt be a build-time dependency? Note that
|
||||
# libxml2Python is a dependency of libvirt.py.
|
||||
libvirt libxml2Python urlgrabber virtinst pyGtkGlade pythonDBus gnome_python gtkvnc
|
||||
];
|
||||
|
||||
inherit (sourceInfo) name version;
|
||||
inherit buildInputs;
|
||||
buildInputs =
|
||||
[ pythonPackages.python
|
||||
pythonPackages.wrapPython
|
||||
pythonPackages.mox
|
||||
pythonPackages.urlgrabber
|
||||
intltool
|
||||
pyGtkGlade
|
||||
pythonDBus
|
||||
gnome_python
|
||||
gtkvnc
|
||||
] ++ pythonPath;
|
||||
|
||||
/* doConfigure should be removed if not needed */
|
||||
phaseNames = [ "doUnpack" "patchPhase" "doConfigure" "doMakeInstall" "installPhase" ];
|
||||
buildPhase = "make";
|
||||
|
||||
buildNativeInputs = [ makeWrapper pythonPackages.wrapPython ];
|
||||
|
||||
installPhase = a.fullDepEntry ''
|
||||
wrapProgram $out/bin/virt-manager --set PYTHONPATH $PYTHONPATH
|
||||
'' ["minInit"];
|
||||
# patch the runner script in order to make wrapPythonPrograms work and run the program using a syscall
|
||||
# example code: /etc/nixos/nixpkgs/pkgs/development/interpreters/spidermonkey/1.8.0-rc1.nix
|
||||
customRunner = ./custom_runner.py;
|
||||
|
||||
#NIX_CFLAGS_COMPILE = "-fno-stack-protector";
|
||||
# TODO
|
||||
# virt-manager -> import gtk.glade -> No module named glade --> fixed by removing 'pygtk' and by only using pyGtkGlade
|
||||
# -> import gconf -> ImportError: No module named gconf
|
||||
# -> pfad um gtk-2.0 erweitern in virt-manger runner -> /nix/store/hnyxc9i4yz2mc42n44ms13mn8n486s5h-gnome-python-2.28.1/lib/python2.7/site-packages/gtk-2.0
|
||||
# -> Error starting Virtual Machine Manager: Failed to contact configuration server; the most common cause is a missing or misconfigured D-Bus session bus daemon. See http://projects.gnome.org/gconf/ for information. (Details - 1: GetIOR failed: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name org.gnome.GConf was not provided by any .service files)
|
||||
|
||||
#Traceback (most recent call last):
|
||||
# File "/nix/store/y9rcdiv6686sqcv4r39p575s37jzc2cz-virt-manager-0.9.1/share/virt-manager/virt-manager.py", line 383, in <module>
|
||||
# main()
|
||||
# File "/nix/store/y9rcdiv6686sqcv4r39p575s37jzc2cz-virt-manager-0.9.1/share/virt-manager/virt-manager.py", line 315, in main
|
||||
# config = virtManager.config.vmmConfig(appname, appversion, glade_dir)
|
||||
# File "/nix/store/y9rcdiv6686sqcv4r39p575s37jzc2cz-virt-manager-0.9.1/share/virt-manager/virtManager/config.py", line 98, in __init__
|
||||
# self.conf.add_dir(self.conf_dir, gconf.CLIENT_PRELOAD_NONE)
|
||||
#GError: Failed to contact configuration server; the most common cause is a missing or misconfigured D-Bus session bus daemon. See http://projects.gnome.org/gconf/ for information. (Details - 1: GetIOR failed: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name org.gnome.GConf was not provided by any .service files)
|
||||
# -> fixed by http://nixos.org/wiki/Solve_GConf_errors_when_running_GNOME_applications & a restart
|
||||
# virt-manager-tui -> ImportError: No module named newt_syrup.dialogscreen
|
||||
|
||||
patchPhase = ''
|
||||
cat ${customRunner} > src/virt-manager.in
|
||||
substituteInPlace "src/virt-manager.in" --replace "THE_CUSTOM_PATH" "$out"
|
||||
substituteInPlace "src/virt-manager.in" --replace "THE_CUSTOM_PROGRAM" "virt-manager"
|
||||
substituteInPlace "src/virt-manager.in" --replace "PYTHON_EXECUTABLE_PATH" "${python}/bin/python"
|
||||
|
||||
cat ${customRunner} > src/virt-manager-tui.in
|
||||
substituteInPlace "src/virt-manager-tui.in" --replace "THE_CUSTOM_PATH" "$out"
|
||||
substituteInPlace "src/virt-manager-tui.in" --replace "THE_CUSTOM_PROGRAM" "virt-manager-tui"
|
||||
substituteInPlace "src/virt-manager-tui.in" --replace "PYTHON_EXECUTABLE_PATH" "${python}/bin/python"
|
||||
'';
|
||||
|
||||
# /etc/nixos/nixpkgs/pkgs/development/python-modules/generic/wrap.sh
|
||||
installPhase = ''
|
||||
make install
|
||||
wrapPythonPrograms
|
||||
'';
|
||||
|
||||
meta = {
|
||||
homepage = http://virt-manager.org;
|
||||
description = "The 'Virtual Machine Manager' application (virt-manager for short package name) is a desktop user interface for managing virtual machines.";
|
||||
|
||||
maintainers = with a.lib.maintainers;
|
||||
[
|
||||
qknight
|
||||
];
|
||||
platforms = with a.lib.platforms;
|
||||
linux;
|
||||
license = a.lib.licenses.gpl2;
|
||||
license = "GPLv2";
|
||||
maintainers = with stdenv.lib.maintainers; [qknight];
|
||||
};
|
||||
passthru = {
|
||||
updateInfo = {
|
||||
downloadPage = "http://virt-manager.org/download.html";
|
||||
};
|
||||
};
|
||||
}) x
|
||||
|
||||
}
|
||||
|
@ -30,19 +30,11 @@ stdenv.mkDerivation rec {
|
||||
|
||||
buildPhase = "python setup.py build";
|
||||
|
||||
PYTHON_EGG_CACHE = "`pwd`/.egg-cache";
|
||||
|
||||
# substituteInPlace nova/api/ec2/cloud.py \
|
||||
# --replace 'sh genrootca.sh' $out/libexec/nova/genrootca.sh
|
||||
# '';
|
||||
|
||||
installPhase =
|
||||
''
|
||||
python setup.py install --prefix="$out";
|
||||
'';
|
||||
|
||||
#checkPhase = "python setup.py test";
|
||||
|
||||
meta = {
|
||||
homepage = http://virt-manager.org;
|
||||
license = "GPLv2+";
|
||||
|
@ -17,16 +17,16 @@ stdenv.mkDerivation {
|
||||
cp -r install/* $out
|
||||
|
||||
'';
|
||||
|
||||
|
||||
buildCommand = ''
|
||||
${if stdenv.system == "i686-linux" || stdenv.system == "x86_64-linux" then ''
|
||||
isoinfo -J -i $src -x /VBoxLinuxAdditions.run > ./VBoxLinuxAdditions.run
|
||||
chmod 755 ./VBoxLinuxAdditions.run
|
||||
./VBoxLinuxAdditions.run --noexec --keep
|
||||
./VBoxLinuxAdditions.run --noexec --keep
|
||||
''
|
||||
else throw ("Architecture: "+stdenv.system+" not supported for VirtualBox guest additions")
|
||||
}
|
||||
|
||||
|
||||
# Unpack files
|
||||
cd install
|
||||
${if stdenv.system == "i686-linux" then ''
|
||||
@ -38,31 +38,31 @@ stdenv.mkDerivation {
|
||||
else throw ("Architecture: "+stdenv.system+" not supported for VirtualBox guest additions")
|
||||
}
|
||||
|
||||
|
||||
# Build kernel modules
|
||||
cd src
|
||||
|
||||
# Build kernel modules
|
||||
cd src
|
||||
|
||||
for i in *
|
||||
do
|
||||
cd $i
|
||||
find . -type f | xargs sed 's/depmod -a/true/' -i
|
||||
make
|
||||
cd ..
|
||||
cd $i
|
||||
find . -type f | xargs sed 's/depmod -a/true/' -i
|
||||
make
|
||||
cd ..
|
||||
done
|
||||
|
||||
cd ..
|
||||
|
||||
|
||||
# Change the interpreter for various binaries
|
||||
for i in sbin/VBoxService bin/{VBoxClient,VBoxControl}
|
||||
do
|
||||
${if stdenv.system == "i686-linux" then ''
|
||||
patchelf --set-interpreter ${stdenv.glibc}/lib/ld-linux.so.2 $i
|
||||
''
|
||||
else if stdenv.system == "x86_64-linux" then ''
|
||||
patchelf --set-interpreter ${stdenv.glibc}/lib/ld-linux-x86-64.so.2 $i
|
||||
''
|
||||
else throw ("Architecture: "+stdenv.system+" not supported for VirtualBox guest additions")
|
||||
}
|
||||
''
|
||||
else if stdenv.system == "x86_64-linux" then ''
|
||||
patchelf --set-interpreter ${stdenv.glibc}/lib/ld-linux-x86-64.so.2 $i
|
||||
''
|
||||
else throw ("Architecture: "+stdenv.system+" not supported for VirtualBox guest additions")
|
||||
}
|
||||
done
|
||||
|
||||
# Change rpath for various binaries and libraries
|
||||
@ -72,11 +72,11 @@ stdenv.mkDerivation {
|
||||
do
|
||||
patchelf --set-rpath $out/lib $i
|
||||
done
|
||||
|
||||
|
||||
# Remove references to /usr from various scripts and files
|
||||
sed -i -e "s|/usr/bin|$out/bin|" share/VBoxGuestAdditions/vboxclient.desktop
|
||||
sed -i -e "s|/usr/bin|$out/bin|" bin/VBoxClient-all
|
||||
|
||||
|
||||
# Install binaries
|
||||
mkdir -p $out/sbin
|
||||
install -m 755 sbin/VBoxService $out/sbin
|
||||
@ -94,7 +94,7 @@ stdenv.mkDerivation {
|
||||
cp -v lib/VBoxOGL*.so $out/lib
|
||||
mkdir -p $out/lib/dri
|
||||
ln -s $out/lib/VBoxOGL.so $out/lib/dri/vboxvideo_dri.so
|
||||
|
||||
|
||||
# Install desktop file
|
||||
mkdir -p $out/share/autostart
|
||||
cp -v share/VBoxGuestAdditions/vboxclient.desktop $out/share/autostart
|
||||
@ -103,23 +103,23 @@ stdenv.mkDerivation {
|
||||
mkdir -p $out/lib/xorg/modules/{drivers,input}
|
||||
install -m 644 lib/VBoxGuestAdditions/vboxvideo_drv_19.so $out/lib/xorg/modules/drivers/vboxvideo_drv.so
|
||||
# There doesn't appear to be a vboxmouse driver for Xorg 1.9. Was there ever?
|
||||
# install -m 644 lib/VBoxGuestAdditions/vboxmouse_drv_19.so $out/lib/xorg/modules/input/vboxmouse_drv.so
|
||||
#install -m 644 lib/VBoxGuestAdditions/vboxmouse_drv_19.so $out/lib/xorg/modules/input/vboxmouse_drv.so
|
||||
|
||||
# Install kernel modules
|
||||
cd src
|
||||
|
||||
|
||||
for i in *
|
||||
do
|
||||
cd $i
|
||||
kernelVersion=$(cd ${kernel}/lib/modules; ls)
|
||||
export MODULE_DIR=$out/lib/modules/$kernelVersion/misc
|
||||
find . -type f | xargs sed -i -e "s|-o root||g" \
|
||||
-e "s|-g root||g"
|
||||
make install
|
||||
cd ..
|
||||
done
|
||||
'';
|
||||
|
||||
kernelVersion=$(cd ${kernel}/lib/modules; ls)
|
||||
export MODULE_DIR=$out/lib/modules/$kernelVersion/misc
|
||||
find . -type f | xargs sed -i -e "s|-o root||g" \
|
||||
-e "s|-g root||g"
|
||||
make install
|
||||
cd ..
|
||||
done
|
||||
''; # */
|
||||
|
||||
meta = {
|
||||
description = "Guest additions for VirtualBox";
|
||||
longDescriptions = ''
|
||||
@ -129,5 +129,6 @@ stdenv.mkDerivation {
|
||||
'';
|
||||
license = "GPL";
|
||||
maintainers = [ lib.maintainers.sander ];
|
||||
platforms = lib.platforms.linux;
|
||||
};
|
||||
}
|
||||
|
@ -6,7 +6,7 @@ with stdenv.lib;
|
||||
|
||||
let
|
||||
|
||||
version = "4.0.3";
|
||||
version = "4.1.2";
|
||||
|
||||
libDir = if stdenv.is64bit then "lib64" else "lib";
|
||||
|
||||
@ -30,23 +30,24 @@ let
|
||||
}
|
||||
];
|
||||
|
||||
in
|
||||
ipxeSrc =
|
||||
{ url = http://xenbits.xensource.com/xen-extfiles/ipxe-git-v1.0.0.tar.gz;
|
||||
sha256 = "d3128bfda9a1542049c278755f85bbcbb8441da7bfd702d511ce237fcf86a723";
|
||||
};
|
||||
in
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "xen-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://bits.xensource.com/oss-xen/release/${version}/xen-${version}.tar.gz";
|
||||
sha256 = "0p4i7mm8cdsr8i9z3dij6nriyvz6la2rhm7jkyk2n8h62nnxi1b5";
|
||||
sha256 = "7d9c93057cf480d3f1efa792b19285a84fa3c06060ea5c5c453be00887389b0d";
|
||||
};
|
||||
|
||||
patches =
|
||||
[ # Xen looks for headers in /usr/include and for libraries using
|
||||
# ldconfig. Don't do that.
|
||||
./has-header.patch
|
||||
|
||||
# GCC 4.5 compatibility.
|
||||
./gcc-4.5.patch
|
||||
];
|
||||
|
||||
buildInputs =
|
||||
@ -102,12 +103,18 @@ stdenv.mkDerivation {
|
||||
--replace 'XENDOM_CONFIG=/etc/sysconfig/xendomains' "" \
|
||||
--replace /bin/ls ls
|
||||
|
||||
grep -rl /etc/xen * | xargs sed -i 's|/etc/xen|$out/etc/xen|g'
|
||||
|
||||
# Xen's stubdoms need various sources that it usually fetches at
|
||||
# build time using wget. We can't have that.
|
||||
${flip concatMapStrings stubdomSrcs (x: let src = fetchurl x; in ''
|
||||
cp ${src} stubdom/${src.name}
|
||||
'')}
|
||||
|
||||
${let src = fetchurl ipxeSrc; in ''
|
||||
cp ${src} tools/firmware/etherboot/ipxe.tar.gz
|
||||
''}
|
||||
|
||||
# Hack to get `gcc -m32' to work without having 32-bit Glibc headers.
|
||||
mkdir -p tools/include/gnu
|
||||
touch tools/include/gnu/stubs-32.h
|
||||
|
@ -1,39 +0,0 @@
|
||||
http://lists.xensource.com/archives/html/xen-devel/2010-07/msg01276.html
|
||||
|
||||
diff -ru -x '*~' xen-4.0.1-orig//extras/mini-os/arch/x86/mm.c xen-4.0.1//extras/mini-os/arch/x86/mm.c
|
||||
--- xen-4.0.1-orig//extras/mini-os/arch/x86/mm.c 2010-08-25 12:22:07.000000000 +0200
|
||||
+++ xen-4.0.1//extras/mini-os/arch/x86/mm.c 2010-12-22 20:10:05.000000000 +0100
|
||||
@@ -281,7 +281,7 @@
|
||||
/*
|
||||
* Mark portion of the address space read only.
|
||||
*/
|
||||
-extern void shared_info;
|
||||
+extern char shared_info[PAGE_SIZE];
|
||||
static void set_readonly(void *text, void *etext)
|
||||
{
|
||||
unsigned long start_address =
|
||||
diff -ru -x '*~' xen-4.0.1-orig//extras/mini-os/minios.mk xen-4.0.1//extras/mini-os/minios.mk
|
||||
--- xen-4.0.1-orig//extras/mini-os/minios.mk 2010-08-25 12:22:07.000000000 +0200
|
||||
+++ xen-4.0.1//extras/mini-os/minios.mk 2010-12-22 20:03:11.000000000 +0100
|
||||
@@ -10,6 +10,7 @@
|
||||
DEF_CFLAGS += $(call cc-option,$(CC),-fno-stack-protector,)
|
||||
DEF_CFLAGS += $(call cc-option,$(CC),-fgnu89-inline)
|
||||
DEF_CFLAGS += -Wstrict-prototypes -Wnested-externs -Wpointer-arith -Winline
|
||||
+DEF_CFLAGS += -Wno-uninitialized
|
||||
DEF_CPPFLAGS += -D__XEN_INTERFACE_VERSION__=$(XEN_INTERFACE_VERSION)
|
||||
|
||||
DEF_ASFLAGS += -D__ASSEMBLY__
|
||||
diff -ru -x '*~' xen-4.0.1-orig//extras/mini-os/netfront.c xen-4.0.1//extras/mini-os/netfront.c
|
||||
--- xen-4.0.1-orig//extras/mini-os/netfront.c 2010-08-25 12:22:07.000000000 +0200
|
||||
+++ xen-4.0.1//extras/mini-os/netfront.c 2010-12-22 19:56:59.000000000 +0100
|
||||
@@ -25,8 +25,8 @@
|
||||
|
||||
|
||||
|
||||
-#define NET_TX_RING_SIZE __RING_SIZE((struct netif_tx_sring *)0, PAGE_SIZE)
|
||||
-#define NET_RX_RING_SIZE __RING_SIZE((struct netif_rx_sring *)0, PAGE_SIZE)
|
||||
+#define NET_TX_RING_SIZE __CONST_RING_SIZE(netif_tx, PAGE_SIZE)
|
||||
+#define NET_RX_RING_SIZE __CONST_RING_SIZE(netif_rx, PAGE_SIZE)
|
||||
#define GRANT_INVALID_REF 0
|
||||
|
||||
|
@ -1,40 +0,0 @@
|
||||
From 1aedd853fcaeeafadd24512f84e6e269f5db0b4e Mon Sep 17 00:00:00 2001
|
||||
From: Thomas Moschny <thomas.moschny@gmx.de>
|
||||
Date: Mon, 21 Feb 2011 17:58:04 +0100
|
||||
Subject: [PATCH] Normalize icon path names (fixes #869).
|
||||
|
||||
The elements in ${icon_sources}, as returned by file(GLOB ...) contain
|
||||
double slashes, could be a bug in cmake. This causes building with
|
||||
cmake 2.8.4 to fail, due to dependency problems lateron.
|
||||
|
||||
This patch works around the issue by normalizing all path names in
|
||||
${icon_sources} while appending them to ${ALL_ICONS}, thereby removing
|
||||
the double slashes.
|
||||
---
|
||||
CMakeLists.txt | 3 ++-
|
||||
1 files changed, 2 insertions(+), 1 deletions(-)
|
||||
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 64be9b9..472bec2 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -244,14 +244,15 @@ endif()
|
||||
|
||||
# {{{ Theme icons
|
||||
file(GLOB icon_sources RELATIVE ${SOURCE_DIR} ${SOURCE_DIR}/themes/*/titlebar/*.png)
|
||||
-set(ALL_ICONS ${icon_sources})
|
||||
|
||||
foreach(icon ${icon_sources})
|
||||
# Copy all icons to the build dir to simplify the following code.
|
||||
# Source paths are interpreted relative to ${SOURCE_DIR}, target paths
|
||||
# relative to ${BUILD_DIR}.
|
||||
get_filename_component(icon_path ${icon} PATH)
|
||||
+ get_filename_component(icon_name ${icon} NAME)
|
||||
file(COPY ${icon} DESTINATION ${icon_path})
|
||||
+ set(ALL_ICONS ${ALL_ICONS} "${icon_path}/${icon_name}")
|
||||
endforeach()
|
||||
|
||||
macro(a_icon_convert match replacement input)
|
||||
--
|
||||
1.7.3.4
|
||||
|
@ -6,7 +6,7 @@
|
||||
, docbook_xml_dtd_45, libxslt, coreutils}:
|
||||
|
||||
let
|
||||
version = "3.4.11";
|
||||
version = "3.4.13";
|
||||
in
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://awesome.naquadah.org/download/awesome-${version}.tar.xz";
|
||||
sha256 = "576b4f6d2c3f56dfbe52ad92f2eecece111f0f05816e32126cd03d4b4387761d";
|
||||
sha256 = "0jhsgb8wdzpfmdyl9fxp2w6app7l6zl8b513z3ff513nvdlxj5hr";
|
||||
};
|
||||
|
||||
buildInputs = [ cmake gperf imagemagick pkgconfig lua glib cairo pango
|
||||
@ -36,19 +36,9 @@ stdenv.mkDerivation rec {
|
||||
# asciidoc: FAILED: <stdin>: line 3: section title expected
|
||||
# make[2]: *** [manpages/ru/man1/awesome.1.xml] Error 1
|
||||
substituteInPlace CMakeLists.txt \
|
||||
--replace "set(AWE_MAN_LANGS es fr de ru)" \
|
||||
"set(AWE_MAN_LANGS es fr de)"
|
||||
--replace "set(AWE_MAN_LANGS it es fr de ru)" \
|
||||
"set(AWE_MAN_LANGS it es fr de)"
|
||||
'';
|
||||
|
||||
# XXX: maybe not needed anymore
|
||||
# Somehow libev does not get into the rpath, although it should.
|
||||
# Something may be wrong in the gcc wrapper.
|
||||
preBuild = ''
|
||||
export NIX_LDFLAGS_BEFORE="-lev";
|
||||
'';
|
||||
|
||||
# Cmake fails strangely at finding lua. Looks to me like a cmake 2.8 error.
|
||||
cmakeFlags = [ "-DLUA_LIBRARIES=${lua}/lib/liblua.a" ];
|
||||
|
||||
meta = {
|
||||
homepage = http://awesome.naquadah.org/;
|
||||
|
@ -13,18 +13,13 @@ stdenv.mkDerivation rec {
|
||||
buildInputs = [ which pkgconfig libxcb xcbutilkeysyms xcbutil bison xcbutilwm
|
||||
libstartup_notification libX11 pcre libev yajl flex libXcursor perl ];
|
||||
|
||||
prePatch = ''
|
||||
sed s,/usr/bin/env,${coreutils}/bin/env, -i generate-command-parser.pl
|
||||
sed s,/usr/bin/env,${coreutils}/bin/env, -i i3-migrate-config-to-v4
|
||||
sed s,/usr/bin/env,${coreutils}/bin/env, -i i3-wsbar
|
||||
'';
|
||||
patchPhase = "patchShebangs .";
|
||||
|
||||
makeFlags = "all";
|
||||
installFlags = "PREFIX=\${out}";
|
||||
configurePhase = "makeFlags=PREFIX=$out";
|
||||
|
||||
meta = {
|
||||
description = "i3 is a tiling window manager";
|
||||
homepage = http://i3wm.org;
|
||||
homepage = "http://i3wm.org";
|
||||
maintainers = [ stdenv.lib.maintainers.garbas ];
|
||||
license = stdenv.lib.licenses.bsd3;
|
||||
};
|
||||
|
@ -1,14 +1,14 @@
|
||||
{ stdenv, fetchurl, pkgconfig, gdk_pixbuf, gtk, libXmu }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "trayer-1.1.3";
|
||||
name = "trayer-1.1.5";
|
||||
|
||||
buildInputs = [ pkgconfig gdk_pixbuf gtk libXmu ];
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/sargon/trayer-srg/tarball/${name}";
|
||||
name = "${name}.tar.gz";
|
||||
sha256 = "03be5ea47278ecdb6ffb1d3b5115a855a6eccd6aa6702b84e89ee047ddd76558";
|
||||
sha256 = "98804500188c0bb99c7389ebea4b2e4dfffa2f3d06dc97e633b4934cf7c29757";
|
||||
};
|
||||
|
||||
makeFlags = [ "PREFIX=$(out)" ];
|
||||
|
@ -66,7 +66,7 @@ sub findFiles {
|
||||
|
||||
unless (-d $target && ($oldTarget eq "" || -d $oldTarget)) {
|
||||
if ($ignoreCollisions) {
|
||||
warn "collision between `$target' and `$oldTarget'";
|
||||
warn "collision between `$target' and `$oldTarget'" if $ignoreCollisions == 1;
|
||||
return;
|
||||
} else {
|
||||
die "collision between `$target' and `$oldTarget'";
|
||||
@ -122,7 +122,7 @@ while (scalar(keys %postponed) > 0) {
|
||||
my @pkgDirs = keys %postponed;
|
||||
%postponed = ();
|
||||
foreach my $pkgDir (sort @pkgDirs) {
|
||||
addPkg($pkgDir, 1);
|
||||
addPkg($pkgDir, 2);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -22,6 +22,21 @@ let
|
||||
then builtins.attrNames mirrors
|
||||
else [] /* backwards compatibility */;
|
||||
|
||||
impureEnvVars = [
|
||||
# We borrow these environment variables from the caller to allow
|
||||
# easy proxy configuration. This is impure, but a fixed-output
|
||||
# derivation like fetchurl is allowed to do so since its result is
|
||||
# by definition pure.
|
||||
"http_proxy" "https_proxy" "ftp_proxy" "all_proxy" "no_proxy"
|
||||
|
||||
# This variable allows the user to pass additional options to curl
|
||||
"NIX_CURL_FLAGS"
|
||||
|
||||
# This variable allows the user to override hashedMirrors from the
|
||||
# command-line.
|
||||
"NIX_HASHED_MIRRORS"
|
||||
] ++ (map (site: "NIX_MIRRORS_${site}") sites);
|
||||
|
||||
in
|
||||
|
||||
{ # URL to fetch.
|
||||
@ -83,23 +98,8 @@ stdenv.mkDerivation {
|
||||
if sha256 != "" then "sha256" else if sha1 != "" then "sha1" else "md5";
|
||||
outputHash = if outputHash != "" then outputHash else
|
||||
if sha256 != "" then sha256 else if sha1 != "" then sha1 else md5;
|
||||
|
||||
impureEnvVars = [
|
||||
# We borrow these environment variables from the caller to allow
|
||||
# easy proxy configuration. This is impure, but a fixed-output
|
||||
# derivation like fetchurl is allowed to do so since its result is
|
||||
# by definition pure.
|
||||
"http_proxy" "https_proxy" "ftp_proxy" "all_proxy" "no_proxy"
|
||||
|
||||
# This variable allows the user to pass additional options to curl
|
||||
"NIX_CURL_FLAGS"
|
||||
|
||||
# This variable allows the user to override hashedMirrors from the
|
||||
# command-line.
|
||||
"NIX_HASHED_MIRRORS"
|
||||
] ++ (map (site: "NIX_MIRRORS_${site}") sites);
|
||||
|
||||
inherit showURLs mirrorsFile;
|
||||
inherit showURLs mirrorsFile impureEnvVars;
|
||||
|
||||
# Doing the download on a remote machine just duplicates network
|
||||
# traffic, so don't do that.
|
||||
|
194
pkgs/build-support/gcc-wrapper/buildergo.sh
Normal file
194
pkgs/build-support/gcc-wrapper/buildergo.sh
Normal file
@ -0,0 +1,194 @@
|
||||
source $stdenv/setup
|
||||
|
||||
|
||||
mkdir -p $out/bin
|
||||
mkdir -p $out/nix-support
|
||||
|
||||
|
||||
if test -z "$nativeLibc"; then
|
||||
dynamicLinker="$libc/lib/$dynamicLinker"
|
||||
echo $dynamicLinker > $out/nix-support/dynamic-linker
|
||||
|
||||
if test -e $libc/lib/32/ld-linux.so.2; then
|
||||
echo $libc/lib/32/ld-linux.so.2 > $out/nix-support/dynamic-linker-m32
|
||||
fi
|
||||
|
||||
# The "-B$libc/lib/" flag is a quick hack to force gcc to link
|
||||
# against the crt1.o from our own glibc, rather than the one in
|
||||
# /usr/lib. (This is only an issue when using an `impure'
|
||||
# compiler/linker, i.e., one that searches /usr/lib and so on.)
|
||||
#
|
||||
# Unfortunately, setting -B appears to override the default search
|
||||
# path. Thus, the gcc-specific "../includes-fixed" directory is
|
||||
# now longer searched and glibc's <limits.h> header fails to
|
||||
# compile, because it uses "#include_next <limits.h>" to find the
|
||||
# limits.h file in ../includes-fixed. To remedy the problem,
|
||||
# another -idirafter is necessary to add that directory again.
|
||||
echo "-B$libc/lib/ -idirafter $libc/include -idirafter $gcc/lib/gcc/*/*/include-fixed" > $out/nix-support/libc-cflags
|
||||
|
||||
echo "-L$libc/lib" > $out/nix-support/libc-ldflags
|
||||
|
||||
# The dynamic linker is passed in `ldflagsBefore' to allow
|
||||
# explicit overrides of the dynamic linker by callers to gcc/ld
|
||||
# (the *last* value counts, so ours should come first).
|
||||
echo "-dynamic-linker $dynamicLinker" > $out/nix-support/libc-ldflags-before
|
||||
fi
|
||||
|
||||
if test -n "$nativeTools"; then
|
||||
gccPath="$nativePrefix/bin"
|
||||
ldPath="$nativePrefix/bin"
|
||||
else
|
||||
if test -e "$gcc/lib64"; then
|
||||
gccLDFlags="$gccLDFlags -L$gcc/lib64"
|
||||
fi
|
||||
gccLDFlags="$gccLDFlags -L$gcc/lib"
|
||||
if [ -n "$langVhdl" ]; then
|
||||
gccLDFlags="$gccLDFlags -L$zlib/lib"
|
||||
fi
|
||||
echo "$gccLDFlags" > $out/nix-support/gcc-ldflags
|
||||
|
||||
# GCC shows $gcc/lib in `gcc -print-search-dirs', but not
|
||||
# $gcc/lib64 (even though it does actually search there...)..
|
||||
# This confuses libtool. So add it to the compiler tool search
|
||||
# path explicitly.
|
||||
if test -e "$gcc/lib64"; then
|
||||
gccCFlags="$gccCFlags -B$gcc/lib64"
|
||||
fi
|
||||
|
||||
# Find the gcc libraries path (may work only without multilib)
|
||||
if [ -n "$langAda" ]; then
|
||||
basePath=`echo $gcc/lib/*/*/*`
|
||||
gccCFlags="$gccCFlags -B$basePath -I$basePath/adainclude"
|
||||
|
||||
gnatCFlags="-aI$basePath/adainclude -aO$basePath/adalib"
|
||||
echo "$gnatCFlags" > $out/nix-support/gnat-cflags
|
||||
fi
|
||||
echo "$gccCFlags" > $out/nix-support/gcc-cflags
|
||||
|
||||
gccPath="$gcc/bin"
|
||||
ldPath="$binutils/bin"
|
||||
fi
|
||||
|
||||
|
||||
doSubstitute() {
|
||||
local src=$1
|
||||
local dst=$2
|
||||
# Can't use substitute() here, because replace may not have been
|
||||
# built yet (in the bootstrap).
|
||||
sed \
|
||||
-e "s^@out@^$out^g" \
|
||||
-e "s^@shell@^$shell^g" \
|
||||
-e "s^@gcc@^$gcc^g" \
|
||||
-e "s^@gccProg@^$gccProg^g" \
|
||||
-e "s^@gnatProg@^$gnatProg^g" \
|
||||
-e "s^@gnatlinkProg@^$gnatlinkProg^g" \
|
||||
-e "s^@binutils@^$binutils^g" \
|
||||
-e "s^@coreutils@^$coreutils^g" \
|
||||
-e "s^@libc@^$libc^g" \
|
||||
-e "s^@ld@^$ldPath/ld^g" \
|
||||
< "$src" > "$dst"
|
||||
}
|
||||
|
||||
|
||||
# Make wrapper scripts around gcc, g++, and gfortran. Also make symlinks
|
||||
# cc, c++, and f77.
|
||||
mkGccWrapper() {
|
||||
local dst=$1
|
||||
local src=$2
|
||||
|
||||
if ! test -f "$src"; then
|
||||
echo "$src does not exist (skipping)"
|
||||
return 1
|
||||
fi
|
||||
|
||||
gccProg="$src"
|
||||
doSubstitute "$gccWrapper" "$dst"
|
||||
chmod +x "$dst"
|
||||
}
|
||||
|
||||
mkGnatWrapper() {
|
||||
local dst=$1
|
||||
local src=$2
|
||||
|
||||
if ! test -f "$src"; then
|
||||
echo "$src does not exist (skipping)"
|
||||
return 1
|
||||
fi
|
||||
|
||||
gnatProg="$src"
|
||||
doSubstitute "$gnatWrapper" "$dst"
|
||||
chmod +x "$dst"
|
||||
}
|
||||
|
||||
mkGnatLinkWrapper() {
|
||||
local dst=$1
|
||||
local src=$2
|
||||
|
||||
if ! test -f "$src"; then
|
||||
echo "$src does not exist (skipping)"
|
||||
return 1
|
||||
fi
|
||||
|
||||
gnatlinkProg="$src"
|
||||
doSubstitute "$gnatlinkWrapper" "$dst"
|
||||
chmod +x "$dst"
|
||||
}
|
||||
|
||||
if mkGccWrapper $out/bin/gcc $gccPath/gcc
|
||||
then
|
||||
ln -sv gcc $out/bin/cc
|
||||
fi
|
||||
|
||||
if mkGccWrapper $out/bin/g++ $gccPath/g++
|
||||
then
|
||||
ln -sv g++ $out/bin/c++
|
||||
fi
|
||||
|
||||
if mkGccWrapper $out/bin/gfortran $gccPath/gfortran
|
||||
then
|
||||
ln -sv gfortran $out/bin/g77
|
||||
ln -sv gfortran $out/bin/f77
|
||||
fi
|
||||
|
||||
mkGccWrapper $out/bin/gcj $gccPath/gcj || true
|
||||
|
||||
mkGccWrapper $out/bin/gccgo $gccPath/gccgo || true
|
||||
|
||||
mkGccWrapper $out/bin/gnatgcc $gccPath/gnatgcc || true
|
||||
mkGnatWrapper $out/bin/gnatmake $gccPath/gnatmake || true
|
||||
mkGnatWrapper $out/bin/gnatbind $gccPath/gnatbind || true
|
||||
mkGnatLinkWrapper $out/bin/gnatlink $gccPath/gnatlink || true
|
||||
|
||||
if [ -f $gccPath/ghdl ]; then
|
||||
ln -sf $gccPath/ghdl $out/bin/ghdl
|
||||
fi
|
||||
|
||||
# Create a symlink to as (the assembler). This is useful when a
|
||||
# gcc-wrapper is installed in a user environment, as it ensures that
|
||||
# the right assembler is called.
|
||||
ln -s $ldPath/as $out/bin/as
|
||||
|
||||
|
||||
# Make a wrapper around the linker.
|
||||
doSubstitute "$ldWrapper" "$out/bin/ld"
|
||||
chmod +x "$out/bin/ld"
|
||||
|
||||
|
||||
# Emit a setup hook. Also store the path to the original GCC and
|
||||
# Glibc.
|
||||
test -n "$gcc" && echo $gcc > $out/nix-support/orig-gcc
|
||||
test -n "$libc" && echo $libc > $out/nix-support/orig-libc
|
||||
|
||||
doSubstitute "$addFlags" "$out/nix-support/add-flags.sh"
|
||||
|
||||
doSubstitute "$setupHook" "$out/nix-support/setup-hook"
|
||||
|
||||
cp -p $utils $out/nix-support/utils.sh
|
||||
|
||||
|
||||
# Propagate the wrapped gcc so that if you install the wrapper, you get
|
||||
# tools like gcov, the manpages, etc. as well (including for binutils
|
||||
# and Glibc).
|
||||
if test -z "$nativeTools"; then
|
||||
echo $gcc $binutils $libc > $out/nix-support/propagated-user-env-packages
|
||||
fi
|
@ -21,10 +21,11 @@ let
|
||||
|
||||
gccVersion = (builtins.parseDrvName gcc.name).version;
|
||||
gccName = (builtins.parseDrvName gcc.name).name;
|
||||
|
||||
|
||||
langGo = if nativeTools then false else gcc ? langGo && gcc.langGo;
|
||||
in
|
||||
|
||||
stdenv.mkDerivation {
|
||||
stdenv.mkDerivation ({
|
||||
name =
|
||||
(if name != "" then name else gccName + "-wrapper") +
|
||||
(if gcc != null && gccVersion != "" then "-" + gccVersion else "");
|
||||
@ -90,3 +91,9 @@ stdenv.mkDerivation {
|
||||
abort "don't know the name of the dynamic linker for this platform")
|
||||
else "";
|
||||
}
|
||||
# This go wrapper should be reworked in stdenv-updates.
|
||||
// (if langGo then
|
||||
{
|
||||
inherit langGo;
|
||||
builder = ./buildergo.sh;
|
||||
} else {}))
|
||||
|
@ -100,15 +100,10 @@ stdenv.mkDerivation (
|
||||
postHook = ''
|
||||
mkdir -p $out/nix-support
|
||||
echo "$system" > $out/nix-support/system
|
||||
. ${./functions.sh}
|
||||
|
||||
# If `src' is the result of a call to `makeSourceTarball', then it
|
||||
# has a subdirectory containing the actual tarball(s). If there are
|
||||
# multiple tarballs, just pick the first one.
|
||||
origSrc=$src
|
||||
if test -d $src/tarballs; then
|
||||
src=$(ls $src/tarballs/*.tar.bz2 $src/tarballs/*.tar.gz | sort | head -1)
|
||||
fi
|
||||
|
||||
src=$(findTarballs $src | head -1)
|
||||
'';
|
||||
}
|
||||
)
|
||||
|
@ -35,14 +35,10 @@ stdenv.mkDerivation (
|
||||
postHook = ''
|
||||
mkdir -p $out/nix-support
|
||||
echo "$system" > $out/nix-support/system
|
||||
. ${./functions.sh}
|
||||
|
||||
# If `src' is the result of a call to `makeSourceTarball', then it
|
||||
# has a subdirectory containing the actual tarball(s). If there are
|
||||
# multiple tarballs, just pick the first one.
|
||||
origSrc=$src
|
||||
if test -d $src/tarballs; then
|
||||
src=$(ls $src/tarballs/*.tar.bz2 $src/tarballs/*.tar.gz | sort | head -1)
|
||||
fi
|
||||
src=$(findTarballs $src | head -1)
|
||||
|
||||
if test -e $origSrc/nix-support/hydra-release-name; then
|
||||
releaseName=$(cat $origSrc/nix-support/hydra-release-name)
|
||||
|
@ -30,17 +30,10 @@ vmTools.runInLinuxImage (stdenv.mkDerivation (
|
||||
|
||||
# !!! cut&paste from rpm-build.nix
|
||||
postHook = ''
|
||||
mkdir -p $out/nix-support
|
||||
cat "$diskImage"/nix-support/full-name > $out/nix-support/full-name
|
||||
|
||||
# If `src' is the result of a call to `makeSourceTarball', then it
|
||||
# has a subdirectory containing the actual tarball(s). If there are
|
||||
# multiple tarballs, just pick the first one.
|
||||
echo $src
|
||||
if test -d $src/tarballs; then
|
||||
src=$(ls $src/tarballs/*.tar.bz2 $src/tarballs/*.tar.gz | sort | head -1)
|
||||
fi
|
||||
''; # */
|
||||
. ${./functions.sh}
|
||||
propagateImageName
|
||||
src=$(findTarballs $src | head -1) # Find a tarball.
|
||||
'';
|
||||
|
||||
installExtraDebsPhase = ''
|
||||
for i in $extraDebs; do
|
||||
|
14
pkgs/build-support/release/functions.sh
Normal file
14
pkgs/build-support/release/functions.sh
Normal file
@ -0,0 +1,14 @@
|
||||
findTarballs() {
|
||||
local suffix
|
||||
test -d "$1/tarballs/" && {
|
||||
for suffix in tar.gz tgz tar.bz2 tbz2 tar.xz tar.lzma; do
|
||||
ls $1/tarballs/*.$suffix 2> /dev/null
|
||||
done | sort
|
||||
}
|
||||
echo "$1"
|
||||
}
|
||||
|
||||
propagateImageName() {
|
||||
ensureDir $out/nix-support
|
||||
cat "$diskImage"/nix-support/full-name > $out/nix-support/full-name
|
||||
}
|
@ -58,13 +58,9 @@ stdenv.mkDerivation (
|
||||
name = name + (if src ? version then "-" + src.version else "");
|
||||
|
||||
postHook = ''
|
||||
# If `src' is the result of a call to `makeSourceTarball', then it
|
||||
# has a subdirectory containing the actual tarball(s). If there are
|
||||
# multiple tarballs, just pick the first one.
|
||||
. ${./functions.sh}
|
||||
origSrc=$src
|
||||
if test -d $src/tarballs; then
|
||||
src=$(ls $src/tarballs/*.tar.bz2 $src/tarballs/*.tar.gz $src/tarballs/*.tar.xz | sort | head -1)
|
||||
fi
|
||||
src=$(findTarballs $src | head -1)
|
||||
|
||||
# Set GCC flags for coverage analysis, if desired.
|
||||
if test -n "${toString doCoverageAnalysis}"; then
|
||||
|
@ -14,16 +14,10 @@ vmTools.buildRPM (
|
||||
name = name + "-" + diskImage.name + (if src ? version then "-" + src.version else "");
|
||||
|
||||
preBuild = ''
|
||||
mkdir -p $out/nix-support
|
||||
cat "$diskImage"/nix-support/full-name > $out/nix-support/full-name
|
||||
|
||||
# If `src' is the result of a call to `makeSourceTarball', then it
|
||||
# has a subdirectory containing the actual tarball(s). If there are
|
||||
# multiple tarballs, just pick the first one.
|
||||
if test -d $src/tarballs; then
|
||||
src=$(ls $src/tarballs/*.tar.bz2 $src/tarballs/*.tar.gz | sort | head -1)
|
||||
fi
|
||||
''; # */
|
||||
. ${./functions.sh}
|
||||
propagateImageName
|
||||
src=$(findTarballs $src | head -1) # Pick the first tarball.
|
||||
'';
|
||||
|
||||
postInstall = ''
|
||||
declare -a rpms rpmNames
|
||||
@ -36,12 +30,12 @@ vmTools.buildRPM (
|
||||
done
|
||||
|
||||
echo "installing ''${rpms[*]}..."
|
||||
rpm -ip ''${rpms[*]} --excludepath /nix/store
|
||||
rpm -Up ''${rpms[*]} --excludepath /nix/store
|
||||
|
||||
eval "$postRPMInstall"
|
||||
|
||||
echo "uninstalling ''${rpmNames[*]}..."
|
||||
rpm -e ''${rpmNames[*]}
|
||||
rpm -e ''${rpmNames[*]} --nodeps
|
||||
|
||||
for i in $out/rpms/*/*.src.rpm; do
|
||||
echo "file srpm $i" >> $out/nix-support/hydra-build-products
|
||||
|
30
pkgs/data/fonts/lmodern/lmmath.nix
Normal file
30
pkgs/data/fonts/lmodern/lmmath.nix
Normal file
@ -0,0 +1,30 @@
|
||||
{ stdenv, fetchurl, unzip }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "lmmath-0.903";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://www.gust.org.pl/projects/e-foundry/lm-math/download/lmmath0903otf";
|
||||
sha256 = "ee96cb14f5c746d6c6b9ecfbdf97dafc2f535be3dd277e15e8ea6fb594995d64";
|
||||
name = "lmmath-0.903.zip";
|
||||
};
|
||||
|
||||
buildInputs = [unzip];
|
||||
|
||||
sourceRoot = ".";
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/texmf/fonts/opentype
|
||||
mkdir -p $out/share/fonts/opentype
|
||||
|
||||
cp *.{OTF,otf} $out/texmf/fonts/opentype/lmmath-regular.otf
|
||||
cp *.{OTF,otf} $out/share/fonts/opentype/lmmath-regular.otf
|
||||
|
||||
ln -s $out/texmf* $out/share/
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "Latin Modern font";
|
||||
};
|
||||
}
|
||||
|
24
pkgs/data/fonts/tipa/default.nix
Normal file
24
pkgs/data/fonts/tipa/default.nix
Normal file
@ -0,0 +1,24 @@
|
||||
{ stdenv, fetchurl }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "tipa-1.3";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://debian/pool/main/t/tipa/tipa_1.3.orig.tar.gz";
|
||||
sha256 = "1q1sisxdcd2zd9b7mnagr2mxf9v3n1r4s5892zx5ly4r0niyya9m";
|
||||
};
|
||||
|
||||
installPhase = ''
|
||||
export PREFIX="$out/texmf"
|
||||
mkdir -p "$PREFIX" "$out/share"
|
||||
make install PREFIX="$PREFIX"
|
||||
|
||||
ln -s $out/texmf* $out/share/
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "Phonetic font for TeX";
|
||||
};
|
||||
}
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
{ stdenv, fetchurl }:
|
||||
|
||||
let
|
||||
version = "20110511";
|
||||
version = "20120614";
|
||||
pname = "mobile-broadband-provider-info";
|
||||
name = "${pname}-${version}";
|
||||
in
|
||||
@ -9,8 +9,8 @@ stdenv.mkDerivation rec {
|
||||
inherit name;
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnome/sources/${pname}/${version}/${name}.tar.bz2";
|
||||
sha256 = "0cny8bd6kdwvabnwdr00f4wp4xjbc8ynp0kcdg72c1q9186kdikj";
|
||||
url = "mirror://gnome/sources/${pname}/${version}/${name}.tar.xz";
|
||||
sha256 = "72507a732e0cd16cf27424bb094b1c7a03e2206c119ad124722a283e587755f1";
|
||||
};
|
||||
|
||||
meta = {
|
||||
|
@ -13,9 +13,10 @@ stdenv.mkDerivation rec {
|
||||
|
||||
phases = "unpackPhase configurePhase buildPhase installPhase";
|
||||
|
||||
# You should be using WAF instead; see the file INSTALL.WAF
|
||||
# WAF is probably the biggest crap on this planet, btw i removed the /gtk-2.0 path thingy
|
||||
configurePhase = ''
|
||||
python waf configure --prefix=$out
|
||||
sed -e "s@{PYTHONDIR}/gtk-2.0@{PYTHONDIR}/@" -i gconf/wscript
|
||||
python waf configure --prefix=$out
|
||||
'';
|
||||
|
||||
buildPhase = ''
|
||||
@ -35,4 +36,4 @@ stdenv.mkDerivation rec {
|
||||
description = "Python wrapper for gconf";
|
||||
maintainers = [ stdenv.lib.maintainers.qknight ];
|
||||
};
|
||||
}
|
||||
}
|
||||
|
@ -44,6 +44,8 @@
|
||||
|
||||
gnome_mime_data = callPackage ./platform/gnome-mime-data { };
|
||||
|
||||
gnome_python = callPackage ./bindings/gnome-python { };
|
||||
|
||||
gnome_vfs = callPackage ./platform/gnome-vfs { };
|
||||
|
||||
gnome_vfs_monikers = callPackage ./platform/gnome-vfs-monikers { };
|
||||
@ -115,6 +117,4 @@
|
||||
|
||||
libglademm = callPackage ./bindings/libglademm { };
|
||||
|
||||
gnome_python = callPackage ./bindings/gnome-python { };
|
||||
|
||||
}
|
||||
|
@ -1,12 +1,14 @@
|
||||
{ stdenv, fetchurl, pkgconfig, intltool, iconnamingutils }:
|
||||
{ stdenv, fetchurl, pkgconfig, intltool, iconnamingutils, gtk }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "gnome-icon-theme-2.30.3";
|
||||
#name = "gnome-icon-theme-3.4.0";
|
||||
name = "gnome-icon-theme-2.91.93";
|
||||
|
||||
src = fetchurl {
|
||||
url = mirror://gnome/sources/gnome-icon-theme/2.30/gnome-icon-theme-2.30.3.tar.bz2;
|
||||
sha256 = "1iysjfw3rajv9skdhshwcbjsm4jrsl6sfvqzrfynsfl4fyfjyzj1";
|
||||
#url = "mirror://gnome/sources/gnome-icon-theme/3.4/${name}.tar.xz";
|
||||
url = "mirror://gnome/sources/gnome-icon-theme/2.91/${name}.tar.bz2";
|
||||
sha256 = "cc7f15e54e2640697b58c26e74cc3f6ebadeb4ef6622bffe9c1e6874cc3478d6";
|
||||
};
|
||||
|
||||
buildNativeInputs = [ pkgconfig intltool iconnamingutils ];
|
||||
buildNativeInputs = [ pkgconfig intltool iconnamingutils gtk ];
|
||||
}
|
||||
|
@ -27,6 +27,8 @@ kde {
|
||||
--replace /usr/share/X11 ${xkeyboard_config}/etc/X11
|
||||
'';
|
||||
|
||||
enableParallelBuilding = false;
|
||||
|
||||
meta = {
|
||||
description = "KDE workspace components such as Plasma, Kwin and System Settings";
|
||||
license = "GPLv2";
|
||||
|
@ -1,4 +1,4 @@
|
||||
{ stdenv, fetchurl, pkgconfig, glib, dbus, intltool, udev, libgdu }:
|
||||
{ stdenv, fetchurl, pkgconfig, glib, dbus, intltool, udev, libgdu, fuse }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "gvfs-1.8.2";
|
||||
@ -8,7 +8,7 @@ stdenv.mkDerivation rec {
|
||||
sha256 = "0895ac8f6d416e1b15433b6b6b68eb119c6e8b04fdb66db665d684355ef89345";
|
||||
};
|
||||
|
||||
buildInputs = [ pkgconfig glib dbus.libs intltool udev libgdu ];
|
||||
buildInputs = [ pkgconfig glib dbus.libs intltool udev libgdu fuse ];
|
||||
|
||||
meta = {
|
||||
description = "Virtual Filesystem support library (for Xfce)";
|
||||
|
249
pkgs/development/compilers/gcc/4.7/builder.sh
Normal file
249
pkgs/development/compilers/gcc/4.7/builder.sh
Normal file
@ -0,0 +1,249 @@
|
||||
source $stdenv/setup
|
||||
|
||||
|
||||
export NIX_FIXINC_DUMMY=$NIX_BUILD_TOP/dummy
|
||||
mkdir $NIX_FIXINC_DUMMY
|
||||
|
||||
|
||||
if test "$staticCompiler" = "1"; then
|
||||
EXTRA_LDFLAGS="-static"
|
||||
else
|
||||
EXTRA_LDFLAGS=""
|
||||
fi
|
||||
|
||||
# GCC interprets empty paths as ".", which we don't want.
|
||||
if test -z "$CPATH"; then unset CPATH; fi
|
||||
if test -z "$LIBRARY_PATH"; then unset LIBRARY_PATH; fi
|
||||
echo "\$CPATH is \`$CPATH'"
|
||||
echo "\$LIBRARY_PATH is \`$LIBRARY_PATH'"
|
||||
|
||||
if test "$noSysDirs" = "1"; then
|
||||
|
||||
if test -e $NIX_GCC/nix-support/orig-libc; then
|
||||
|
||||
# Figure out what extra flags to pass to the gcc compilers
|
||||
# being generated to make sure that they use our glibc.
|
||||
extraFlags="$(cat $NIX_GCC/nix-support/libc-cflags)"
|
||||
extraLDFlags="$(cat $NIX_GCC/nix-support/libc-ldflags) $(cat $NIX_GCC/nix-support/libc-ldflags-before)"
|
||||
|
||||
# Use *real* header files, otherwise a limits.h is generated
|
||||
# that does not include Glibc's limits.h (notably missing
|
||||
# SSIZE_MAX, which breaks the build).
|
||||
export NIX_FIXINC_DUMMY=$(cat $NIX_GCC/nix-support/orig-libc)/include
|
||||
|
||||
# The path to the Glibc binaries such as `crti.o'.
|
||||
glibc_libdir="$(cat $NIX_GCC/nix-support/orig-libc)/lib"
|
||||
|
||||
else
|
||||
# Hack: support impure environments.
|
||||
extraFlags="-isystem /usr/include"
|
||||
extraLDFlags="-L/usr/lib64 -L/usr/lib"
|
||||
glibc_libdir="/usr/lib"
|
||||
export NIX_FIXINC_DUMMY=/usr/include
|
||||
fi
|
||||
|
||||
extraFlags="-I$NIX_FIXINC_DUMMY $extraFlags"
|
||||
extraLDFlags="-L$glibc_libdir -rpath $glibc_libdir $extraLDFlags"
|
||||
|
||||
# BOOT_CFLAGS defaults to `-g -O2'; since we override it below,
|
||||
# make sure to explictly add them so that files compiled with the
|
||||
# bootstrap compiler are optimized and (optionally) contain
|
||||
# debugging information (info "(gccinstall) Building").
|
||||
if test -n "$dontStrip"; then
|
||||
extraFlags="-O2 -g $extraFlags"
|
||||
else
|
||||
# Don't pass `-g' at all; this saves space while building.
|
||||
extraFlags="-O2 $extraFlags"
|
||||
fi
|
||||
|
||||
EXTRA_FLAGS="$extraFlags"
|
||||
for i in $extraLDFlags; do
|
||||
EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,$i"
|
||||
done
|
||||
|
||||
if test -n "$targetConfig"; then
|
||||
# Cross-compiling, we need gcc not to read ./specs in order to build
|
||||
# the g++ compiler (after the specs for the cross-gcc are created).
|
||||
# Having LIBRARY_PATH= makes gcc read the specs from ., and the build
|
||||
# breaks. Having this variable comes from the default.nix code to bring
|
||||
# gcj in.
|
||||
unset LIBRARY_PATH
|
||||
unset CPATH
|
||||
if test -z "$crossStageStatic"; then
|
||||
EXTRA_TARGET_CFLAGS="-B${libcCross}/lib -idirafter ${libcCross}/include"
|
||||
EXTRA_TARGET_LDFLAGS="-Wl,-L${libcCross}/lib"
|
||||
fi
|
||||
else
|
||||
if test -z "$NIX_GCC_CROSS"; then
|
||||
EXTRA_TARGET_CFLAGS="$EXTRA_FLAGS"
|
||||
EXTRA_TARGET_CXXFLAGS="$EXTRA_FLAGS"
|
||||
EXTRA_TARGET_LDFLAGS="$EXTRA_LDFLAGS"
|
||||
else
|
||||
# This the case of cross-building the gcc.
|
||||
# We need special flags for the target, different than those of the build
|
||||
# Assertion:
|
||||
test -e $NIX_GCC_CROSS/nix-support/orig-libc
|
||||
|
||||
# Figure out what extra flags to pass to the gcc compilers
|
||||
# being generated to make sure that they use our glibc.
|
||||
extraFlags="$(cat $NIX_GCC_CROSS/nix-support/libc-cflags)"
|
||||
extraLDFlags="$(cat $NIX_GCC_CROSS/nix-support/libc-ldflags) $(cat $NIX_GCC_CROSS/nix-support/libc-ldflags-before)"
|
||||
|
||||
# Use *real* header files, otherwise a limits.h is generated
|
||||
# that does not include Glibc's limits.h (notably missing
|
||||
# SSIZE_MAX, which breaks the build).
|
||||
NIX_FIXINC_DUMMY_CROSS=$(cat $NIX_GCC_CROSS/nix-support/orig-libc)/include
|
||||
|
||||
# The path to the Glibc binaries such as `crti.o'.
|
||||
glibc_libdir="$(cat $NIX_GCC_CROSS/nix-support/orig-libc)/lib"
|
||||
|
||||
extraFlags="-I$NIX_FIXINC_DUMMY_CROSS $extraFlags"
|
||||
extraLDFlags="-L$glibc_libdir -rpath $glibc_libdir $extraLDFlags"
|
||||
|
||||
EXTRA_TARGET_CFLAGS="$extraFlags"
|
||||
for i in $extraLDFlags; do
|
||||
EXTRA_TARGET_LDFLAGS="$EXTRA_TARGET_LDFLAGS -Wl,$i"
|
||||
done
|
||||
fi
|
||||
fi
|
||||
|
||||
|
||||
# CFLAGS_FOR_TARGET are needed for the libstdc++ configure script to find
|
||||
# the startfiles.
|
||||
# FLAGS_FOR_TARGET are needed for the target libraries to receive the -Bxxx
|
||||
# for the startfiles.
|
||||
makeFlagsArray=( \
|
||||
"${makeFlagsArray[@]}" \
|
||||
NATIVE_SYSTEM_HEADER_DIR="$NIX_FIXINC_DUMMY" \
|
||||
SYSTEM_HEADER_DIR="$NIX_FIXINC_DUMMY" \
|
||||
CFLAGS_FOR_BUILD="$EXTRA_FLAGS $EXTRA_LDFLAGS" \
|
||||
CXXFLAGS_FOR_BUILD="$EXTRA_FLAGS $EXTRA_LDFLAGS" \
|
||||
CFLAGS_FOR_TARGET="$EXTRA_TARGET_CFLAGS $EXTRA_TARGET_LDFLAGS" \
|
||||
CXXFLAGS_FOR_TARGET="$EXTRA_TARGET_CFLAGS $EXTRA_TARGET_LDFLAGS" \
|
||||
FLAGS_FOR_TARGET="$EXTRA_TARGET_CFLAGS $EXTRA_TARGET_LDFLAGS" \
|
||||
LDFLAGS_FOR_BUILD="$EXTRA_FLAGS $EXTRA_LDFLAGS" \
|
||||
LDFLAGS_FOR_TARGET="$EXTRA_TARGET_LDFLAGS $EXTRA_TARGET_LDFLAGS" \
|
||||
)
|
||||
|
||||
if test -z "$targetConfig"; then
|
||||
makeFlagsArray=( \
|
||||
"${makeFlagsArray[@]}" \
|
||||
BOOT_CFLAGS="$EXTRA_FLAGS $EXTRA_LDFLAGS" \
|
||||
BOOT_LDFLAGS="$EXTRA_TARGET_CFLAGS $EXTRA_TARGET_LDFLAGS" \
|
||||
)
|
||||
fi
|
||||
|
||||
if test -n "$targetConfig" -a "$crossStageStatic" == 1; then
|
||||
# We don't want the gcc build to assume there will be a libc providing
|
||||
# limits.h in this stagae
|
||||
makeFlagsArray=( \
|
||||
"${makeFlagsArray[@]}" \
|
||||
LIMITS_H_TEST=false \
|
||||
)
|
||||
else
|
||||
makeFlagsArray=( \
|
||||
"${makeFlagsArray[@]}" \
|
||||
LIMITS_H_TEST=true \
|
||||
)
|
||||
fi
|
||||
fi
|
||||
|
||||
if test -n "$targetConfig"; then
|
||||
# The host strip will destroy some important details of the objects
|
||||
dontStrip=1
|
||||
fi
|
||||
|
||||
|
||||
preConfigure() {
|
||||
if test -n "$newlibSrc"; then
|
||||
tar xvf "$newlibSrc" -C ..
|
||||
ln -s ../newlib-*/newlib newlib
|
||||
# Patch to get armvt5el working:
|
||||
sed -i -e 's/ arm)/ arm*)/' newlib/configure.host
|
||||
fi
|
||||
# Bug - they packaged zlib
|
||||
if test -d "zlib"; then
|
||||
# This breaks the build without-headers, which should build only
|
||||
# the target libgcc as target libraries.
|
||||
# See 'configure:5370'
|
||||
rm -Rf zlib
|
||||
fi
|
||||
|
||||
if test -f "$NIX_GCC/nix-support/orig-libc"; then
|
||||
# Patch the configure script so it finds glibc headers. It's
|
||||
# important for example in order not to get libssp built,
|
||||
# because its functionality is in glibc already.
|
||||
glibc_headers="$(cat $NIX_GCC/nix-support/orig-libc)/include"
|
||||
sed -i \
|
||||
-e "s,glibc_header_dir=/usr/include,glibc_header_dir=$glibc_headers", \
|
||||
gcc/configure
|
||||
fi
|
||||
|
||||
if test -n "$crossMingw" -a -n "$crossStageStatic"; then
|
||||
mkdir -p ../mingw
|
||||
# --with-build-sysroot expects that:
|
||||
cp -R $libcCross/include ../mingw
|
||||
configureFlags="$configureFlags --with-build-sysroot=`pwd`/.."
|
||||
fi
|
||||
|
||||
# Perform the build in a different directory.
|
||||
mkdir ../build
|
||||
cd ../build
|
||||
configureScript=../$sourceRoot/configure
|
||||
}
|
||||
|
||||
|
||||
postConfigure() {
|
||||
# Don't store the configure flags in the resulting executables.
|
||||
sed -e '/TOPLEVEL_CONFIGURE_ARGUMENTS=/d' -i Makefile
|
||||
}
|
||||
|
||||
|
||||
postInstall() {
|
||||
# Remove precompiled headers for now. They are very big and
|
||||
# probably not very useful yet.
|
||||
find $out/include -name "*.gch" -exec rm -rf {} \; -prune
|
||||
|
||||
# Remove `fixincl' to prevent a retained dependency on the
|
||||
# previous gcc.
|
||||
rm -rf $out/libexec/gcc/*/*/install-tools
|
||||
rm -rf $out/lib/gcc/*/*/install-tools
|
||||
|
||||
# More dependencies with the previous gcc or some libs (gccbug stores the build command line)
|
||||
rm -rf $out/bin/gccbug
|
||||
# Take out the bootstrap-tools from the rpath, as it's not needed at all having $out
|
||||
for i in $out/libexec/gcc/*/*/*; do
|
||||
if PREV_RPATH=`patchelf --print-rpath $i`; then
|
||||
patchelf --set-rpath `echo $PREV_RPATH | sed 's,:[^:]*bootstrap-tools/lib,,'` $i
|
||||
fi
|
||||
done
|
||||
|
||||
# Get rid of some "fixed" header files
|
||||
rm -rf $out/lib/gcc/*/*/include/root
|
||||
|
||||
# Replace hard links for i686-pc-linux-gnu-gcc etc. with symlinks.
|
||||
for i in $out/bin/*-gcc*; do
|
||||
if cmp -s $out/bin/gcc $i; then
|
||||
ln -sfn gcc $i
|
||||
fi
|
||||
done
|
||||
|
||||
for i in $out/bin/c++ $out/bin/*-c++* $out/bin/*-g++*; do
|
||||
if cmp -s $out/bin/g++ $i; then
|
||||
ln -sfn g++ $i
|
||||
fi
|
||||
done
|
||||
|
||||
eval "$postInstallGhdl"
|
||||
}
|
||||
|
||||
|
||||
if test -z "$targetConfig" && test -z "$crossConfig"; then
|
||||
if test -z "$profiledCompiler"; then
|
||||
buildFlags="bootstrap $buildFlags"
|
||||
else
|
||||
buildFlags="profiledbootstrap $buildFlags"
|
||||
fi
|
||||
fi
|
||||
|
||||
genericBuild
|
452
pkgs/development/compilers/gcc/4.7/default.nix
Normal file
452
pkgs/development/compilers/gcc/4.7/default.nix
Normal file
@ -0,0 +1,452 @@
|
||||
{ stdenv, fetchurl, noSysDirs
|
||||
, langC ? true, langCC ? true, langFortran ? false
|
||||
, langJava ? false
|
||||
, langAda ? false
|
||||
, langVhdl ? false
|
||||
, langGo ? false
|
||||
, profiledCompiler ? false
|
||||
, staticCompiler ? false
|
||||
, enableShared ? true
|
||||
, texinfo ? null
|
||||
, perl ? null # optional, for texi2pod (then pod2man); required for Java
|
||||
, gmp, mpfr, mpc, gettext, which
|
||||
, libelf # optional, for link-time optimizations (LTO)
|
||||
, ppl ? null, cloog ? null # optional, for the Graphite optimization framework.
|
||||
, zlib ? null, boehmgc ? null
|
||||
, zip ? null, unzip ? null, pkgconfig ? null, gtk ? null, libart_lgpl ? null
|
||||
, libX11 ? null, libXt ? null, libSM ? null, libICE ? null, libXtst ? null
|
||||
, libXrender ? null, xproto ? null, renderproto ? null, xextproto ? null
|
||||
, libXrandr ? null, libXi ? null, inputproto ? null, randrproto ? null
|
||||
, gnatboot ? null
|
||||
, enableMultilib ? false
|
||||
, enablePlugin ? true # whether to support user-supplied plug-ins
|
||||
, name ? "gcc"
|
||||
, cross ? null
|
||||
, binutilsCross ? null
|
||||
, libcCross ? null
|
||||
, crossStageStatic ? true
|
||||
, gnat ? null
|
||||
, libpthread ? null, libpthreadCross ? null # required for GNU/Hurd
|
||||
, stripped ? true
|
||||
, gnused ? null
|
||||
}:
|
||||
|
||||
assert langJava -> zip != null && unzip != null
|
||||
&& zlib != null && boehmgc != null
|
||||
&& perl != null; # for `--enable-java-home'
|
||||
assert langAda -> gnatboot != null;
|
||||
assert langVhdl -> gnat != null;
|
||||
|
||||
# LTO needs libelf and zlib.
|
||||
assert libelf != null -> zlib != null;
|
||||
|
||||
# Make sure we get GNU sed.
|
||||
assert stdenv.isDarwin -> gnused != null;
|
||||
|
||||
# The go frontend is written in c++
|
||||
assert langGo -> langCC;
|
||||
|
||||
with stdenv.lib;
|
||||
with builtins;
|
||||
|
||||
let version = "4.7.1";
|
||||
|
||||
# Whether building a cross-compiler for GNU/Hurd.
|
||||
crossGNU = cross != null && cross.config == "i586-pc-gnu";
|
||||
|
||||
patches = [ ]
|
||||
++ optional (cross != null) ./libstdc++-target.patch
|
||||
# ++ optional noSysDirs ./no-sys-dirs.patch
|
||||
# The GNAT Makefiles did not pay attention to CFLAGS_FOR_TARGET for its
|
||||
# target libraries and tools.
|
||||
++ optional langAda ./gnat-cflags.patch
|
||||
++ optional langFortran ./gfortran-driving.patch
|
||||
++ optional (stdenv.isGNU || crossGNU) ./hurd-sigrtmin.patch;
|
||||
|
||||
javaEcj = fetchurl {
|
||||
# The `$(top_srcdir)/ecj.jar' file is automatically picked up at
|
||||
# `configure' time.
|
||||
|
||||
# XXX: Eventually we might want to take it from upstream.
|
||||
url = "ftp://sourceware.org/pub/java/ecj-4.3.jar";
|
||||
sha256 = "0jz7hvc0s6iydmhgh5h2m15yza7p2rlss2vkif30vm9y77m97qcx";
|
||||
};
|
||||
|
||||
# Antlr (optional) allows the Java `gjdoc' tool to be built. We want a
|
||||
# binary distribution here to allow the whole chain to be bootstrapped.
|
||||
javaAntlr = fetchurl {
|
||||
url = http://www.antlr.org/download/antlr-3.1.3.jar;
|
||||
sha256 = "1f41j0y4kjydl71lqlvr73yagrs2jsg1fjymzjz66mjy7al5lh09";
|
||||
};
|
||||
|
||||
xlibs = [
|
||||
libX11 libXt libSM libICE libXtst libXrender libXrandr libXi
|
||||
xproto renderproto xextproto inputproto randrproto
|
||||
];
|
||||
|
||||
javaAwtGtk = langJava && gtk != null;
|
||||
|
||||
/* Cross-gcc settings */
|
||||
gccArch = stdenv.lib.attrByPath [ "gcc" "arch" ] null cross;
|
||||
gccCpu = stdenv.lib.attrByPath [ "gcc" "cpu" ] null cross;
|
||||
gccAbi = stdenv.lib.attrByPath [ "gcc" "abi" ] null cross;
|
||||
withArch = if gccArch != null then " --with-arch=${gccArch}" else "";
|
||||
withCpu = if gccCpu != null then " --with-cpu=${gccCpu}" else "";
|
||||
withAbi = if gccAbi != null then " --with-abi=${gccAbi}" else "";
|
||||
crossMingw = (cross != null && cross.libc == "msvcrt");
|
||||
|
||||
crossConfigureFlags =
|
||||
"--target=${cross.config}" +
|
||||
withArch +
|
||||
withCpu +
|
||||
withAbi +
|
||||
(if (crossMingw && crossStageStatic) then
|
||||
" --with-headers=${libcCross}/include" +
|
||||
" --with-gcc" +
|
||||
" --with-gnu-as" +
|
||||
" --with-gnu-ld" +
|
||||
" --with-gnu-ld" +
|
||||
" --disable-shared" +
|
||||
" --disable-nls" +
|
||||
" --disable-debug" +
|
||||
" --enable-sjlj-exceptions" +
|
||||
" --enable-threads=win32" +
|
||||
" --disable-win32-registry"
|
||||
else if crossStageStatic then
|
||||
" --disable-libssp --disable-nls" +
|
||||
" --without-headers" +
|
||||
" --disable-threads " +
|
||||
" --disable-libmudflap " +
|
||||
" --disable-libgomp " +
|
||||
" --disable-libquadmath" +
|
||||
" --disable-shared" +
|
||||
" --disable-decimal-float" # libdecnumber requires libc
|
||||
else
|
||||
" --with-headers=${libcCross}/include" +
|
||||
" --enable-__cxa_atexit" +
|
||||
" --enable-long-long" +
|
||||
(if crossMingw then
|
||||
" --enable-threads=win32" +
|
||||
" --enable-sjlj-exceptions" +
|
||||
" --enable-hash-synchronization" +
|
||||
" --disable-libssp" +
|
||||
" --disable-nls" +
|
||||
" --with-dwarf2" +
|
||||
# I think noone uses shared gcc libs in mingw, so we better do the same.
|
||||
# In any case, mingw32 g++ linking is broken by default with shared libs,
|
||||
# unless adding "-lsupc++" to any linking command. I don't know why.
|
||||
" --disable-shared" +
|
||||
(if cross.config == "x86_64-w64-mingw32" then
|
||||
# To keep ABI compatibility with upstream mingw-w64
|
||||
" --enable-fully-dynamic-string"
|
||||
else "")
|
||||
else (if cross.libc == "uclibc" then
|
||||
# In uclibc cases, libgomp needs an additional '-ldl'
|
||||
# and as I don't know how to pass it, I disable libgomp.
|
||||
" --disable-libgomp" else "") +
|
||||
" --enable-threads=posix" +
|
||||
" --enable-nls" +
|
||||
" --disable-decimal-float") # No final libdecnumber (it may work only in 386)
|
||||
);
|
||||
stageNameAddon = if (crossStageStatic) then "-stage-static" else
|
||||
"-stage-final";
|
||||
crossNameAddon = if (cross != null) then "-${cross.config}" + stageNameAddon else "";
|
||||
|
||||
in
|
||||
|
||||
# We need all these X libraries when building AWT with GTK+.
|
||||
assert gtk != null -> (filter (x: x == null) xlibs) == [];
|
||||
|
||||
stdenv.mkDerivation ({
|
||||
name = "${name}${if stripped then "" else "-debug"}-${version}" + crossNameAddon;
|
||||
|
||||
builder = ./builder.sh;
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://ftp.gnu.org/gnu/gcc/gcc-4.7.1/gcc-4.7.1.tar.bz2";
|
||||
sha256 = "0vs0v89zzgkngkw2p8kdynyk7j8ky4wf6zyrg3rsschpl1pky28n";
|
||||
};
|
||||
|
||||
inherit patches;
|
||||
|
||||
postPatch =
|
||||
if (stdenv.isGNU
|
||||
|| (libcCross != null # e.g., building `gcc.hostDrv'
|
||||
&& libcCross ? crossConfig
|
||||
&& libcCross.crossConfig == "i586-pc-gnu")
|
||||
|| (crossGNU && libcCross != null))
|
||||
then
|
||||
# On GNU/Hurd glibc refers to Hurd & Mach headers and libpthread is not
|
||||
# in glibc, so add the right `-I' flags to the default spec string.
|
||||
assert libcCross != null -> libpthreadCross != null;
|
||||
let
|
||||
libc = if libcCross != null then libcCross else stdenv.glibc;
|
||||
gnu_h = "gcc/config/gnu.h";
|
||||
i386_gnu_h = "gcc/config/i386/gnu.h";
|
||||
extraCPPDeps =
|
||||
libc.propagatedBuildInputs
|
||||
++ stdenv.lib.optional (libpthreadCross != null) libpthreadCross
|
||||
++ stdenv.lib.optional (libpthread != null) libpthread;
|
||||
extraCPPSpec =
|
||||
concatStrings (intersperse " "
|
||||
(map (x: "-I${x}/include") extraCPPDeps));
|
||||
extraLibSpec =
|
||||
if libpthreadCross != null
|
||||
then "-L${libpthreadCross}/lib ${libpthreadCross.TARGET_LDFLAGS}"
|
||||
else "-L${libpthread}/lib";
|
||||
in
|
||||
'' echo "augmenting \`CPP_SPEC' in \`${i386_gnu_h}' with \`${extraCPPSpec}'..."
|
||||
sed -i "${i386_gnu_h}" \
|
||||
-es'|CPP_SPEC *"\(.*\)$|CPP_SPEC "${extraCPPSpec} \1|g'
|
||||
|
||||
echo "augmenting \`LIB_SPEC' in \`${gnu_h}' with \`${extraLibSpec}'..."
|
||||
sed -i "${gnu_h}" \
|
||||
-es'|LIB_SPEC *"\(.*\)$|LIB_SPEC "${extraLibSpec} \1|g'
|
||||
|
||||
echo "setting \`NATIVE_SYSTEM_HEADER_DIR' and \`STANDARD_INCLUDE_DIR' to \`${libc}/include'..."
|
||||
sed -i "${gnu_h}" \
|
||||
-es'|#define STANDARD_INCLUDE_DIR.*$|#define STANDARD_INCLUDE_DIR "${libc}/include"|g'
|
||||
sed -i gcc/config/t-gnu \
|
||||
-es'|NATIVE_SYSTEM_HEADER_DIR.*$|NATIVE_SYSTEM_HEADER_DIR = ${libc}/include|g'
|
||||
''
|
||||
else if cross != null || stdenv.gcc.libc != null then
|
||||
# On NixOS, use the right path to the dynamic linker instead of
|
||||
# `/lib/ld*.so'.
|
||||
let
|
||||
libc = if (libcCross != null) then libcCross else stdenv.gcc.libc;
|
||||
in
|
||||
'' echo "fixing the \`GLIBC_DYNAMIC_LINKER' and \`UCLIBC_DYNAMIC_LINKER' macros..."
|
||||
for header in "gcc/config/"*-gnu.h "gcc/config/"*"/"*.h
|
||||
do
|
||||
grep -q LIBC_DYNAMIC_LINKER "$header" || continue
|
||||
echo " fixing \`$header'..."
|
||||
sed -i "$header" \
|
||||
-e 's|define[[:blank:]]*\([UCG]\+\)LIBC_DYNAMIC_LINKER\([0-9]*\)[[:blank:]]"\([^\"]\+\)"$|define \1LIBC_DYNAMIC_LINKER\2 "${libc}\3"|g'
|
||||
done
|
||||
''
|
||||
else null;
|
||||
|
||||
inherit noSysDirs profiledCompiler staticCompiler langJava crossStageStatic
|
||||
libcCross crossMingw;
|
||||
|
||||
buildNativeInputs = [ texinfo which gettext ]
|
||||
++ (optional (perl != null) perl)
|
||||
++ (optional javaAwtGtk pkgconfig);
|
||||
|
||||
buildInputs = [ gmp mpfr mpc libelf ]
|
||||
++ (optional (ppl != null) ppl)
|
||||
++ (optional (cloog != null) cloog)
|
||||
++ (optional (zlib != null) zlib)
|
||||
++ (optionals langJava [ boehmgc zip unzip ])
|
||||
++ (optionals javaAwtGtk ([ gtk libart_lgpl ] ++ xlibs))
|
||||
++ (optionals (cross != null) [binutilsCross])
|
||||
++ (optionals langAda [gnatboot])
|
||||
++ (optionals langVhdl [gnat])
|
||||
|
||||
# The builder relies on GNU sed (for instance, Darwin's `sed' fails with
|
||||
# "-i may not be used with stdin"), and `stdenvNative' doesn't provide it.
|
||||
++ (optional stdenv.isDarwin gnused)
|
||||
;
|
||||
|
||||
configureFlagsArray = stdenv.lib.optionals
|
||||
(ppl != null && ppl ? dontDisableStatic && ppl.dontDisableStatic)
|
||||
[ "--with-host-libstdcxx=-lstdc++ -lgcc_s" ];
|
||||
|
||||
# 'iant' at #go-nuts@freenode, gccgo maintainer, said that
|
||||
# they have a bug in 4.7.1 if adding "--disable-static"
|
||||
dontDisableStatic = langGo;
|
||||
|
||||
configureFlags = "
|
||||
${if enableMultilib then "" else "--disable-multilib"}
|
||||
${if enableShared then "" else "--disable-shared"}
|
||||
${if enablePlugin then "--enable-plugin" else ""}
|
||||
${if ppl != null then "--with-ppl=${ppl}" else ""}
|
||||
${if cloog != null then
|
||||
"--with-cloog=${cloog} --enable-cloog-backend=isl"
|
||||
else ""}
|
||||
${if langJava then
|
||||
"--with-ecj-jar=${javaEcj} " +
|
||||
|
||||
# Follow Sun's layout for the convenience of IcedTea/OpenJDK. See
|
||||
# <http://mail.openjdk.java.net/pipermail/distro-pkg-dev/2010-April/008888.html>.
|
||||
"--enable-java-home --with-java-home=\${prefix}/lib/jvm/jre "
|
||||
else ""}
|
||||
${if javaAwtGtk then "--enable-java-awt=gtk" else ""}
|
||||
${if langJava && javaAntlr != null then "--with-antlr-jar=${javaAntlr}" else ""}
|
||||
--with-gmp=${gmp}
|
||||
--with-mpfr=${mpfr}
|
||||
--with-mpc=${mpc}
|
||||
${if (libelf != null) then "--with-libelf=${libelf}" else ""}
|
||||
--disable-libstdcxx-pch
|
||||
--without-included-gettext
|
||||
--with-system-zlib
|
||||
--enable-languages=${
|
||||
concatStrings (intersperse ","
|
||||
( optional langC "c"
|
||||
++ optional langCC "c++"
|
||||
++ optional langFortran "fortran"
|
||||
++ optional langJava "java"
|
||||
++ optional langAda "ada"
|
||||
++ optional langVhdl "vhdl"
|
||||
++ optional langGo "go"
|
||||
)
|
||||
)
|
||||
}
|
||||
${if (stdenv ? glibc) then " --with-native-system-header-dir=${stdenv.glibc}/include" else ""}
|
||||
${ # Trick that should be taken out once we have a mips64el-linux not loongson2f
|
||||
if cross == null && stdenv.system == "mips64el-linux" then "--with-arch=loongson2f" else ""}
|
||||
${if langAda then " --enable-libada" else ""}
|
||||
${if (cross == null && stdenv.isi686) then "--with-arch=i686" else ""}
|
||||
${if cross != null then crossConfigureFlags else ""}
|
||||
";
|
||||
|
||||
targetConfig = if (cross != null) then cross.config else null;
|
||||
|
||||
installTargets =
|
||||
if stripped
|
||||
then "install-strip"
|
||||
else "install";
|
||||
|
||||
crossAttrs = {
|
||||
patches = patches ++ [ ./hurd-sigrtmin.patch ];
|
||||
AR = "${stdenv.cross.config}-ar";
|
||||
LD = "${stdenv.cross.config}-ld";
|
||||
CC = "${stdenv.cross.config}-gcc";
|
||||
CXX = "${stdenv.cross.config}-gcc";
|
||||
AR_FOR_TARGET = "${stdenv.cross.config}-ar";
|
||||
LD_FOR_TARGET = "${stdenv.cross.config}-ld";
|
||||
CC_FOR_TARGET = "${stdenv.cross.config}-gcc";
|
||||
NM_FOR_TARGET = "${stdenv.cross.config}-nm";
|
||||
CXX_FOR_TARGET = "${stdenv.cross.config}-g++";
|
||||
# If we are making a cross compiler, cross != null
|
||||
NIX_GCC_CROSS = if cross == null then "${stdenv.gccCross}" else "";
|
||||
dontStrip = true;
|
||||
configureFlags = ''
|
||||
${if enableMultilib then "" else "--disable-multilib"}
|
||||
${if enableShared then "" else "--disable-shared"}
|
||||
${if ppl != null then "--with-ppl=${ppl.hostDrv}" else ""}
|
||||
${if cloog != null then "--with-cloog=${cloog.hostDrv} --enable-cloog-backend=isl" else ""}
|
||||
${if langJava then "--with-ecj-jar=${javaEcj.hostDrv}" else ""}
|
||||
${if javaAwtGtk then "--enable-java-awt=gtk" else ""}
|
||||
${if langJava && javaAntlr != null then "--with-antlr-jar=${javaAntlr.hostDrv}" else ""}
|
||||
--with-gmp=${gmp.hostDrv}
|
||||
--with-mpfr=${mpfr.hostDrv}
|
||||
--disable-libstdcxx-pch
|
||||
--without-included-gettext
|
||||
--with-system-zlib
|
||||
--enable-languages=${
|
||||
concatStrings (intersperse ","
|
||||
( optional langC "c"
|
||||
++ optional langCC "c++"
|
||||
++ optional langFortran "fortran"
|
||||
++ optional langJava "java"
|
||||
++ optional langAda "ada"
|
||||
++ optional langVhdl "vhdl"
|
||||
++ optional langGo "go"
|
||||
)
|
||||
)
|
||||
}
|
||||
${if langAda then " --enable-libada" else ""}
|
||||
${if (cross == null && stdenv.isi686) then "--with-arch=i686" else ""}
|
||||
${if cross != null then crossConfigureFlags else ""}
|
||||
--target=${stdenv.cross.config}
|
||||
'';
|
||||
};
|
||||
|
||||
|
||||
# Needed for the cross compilation to work
|
||||
AR = "ar";
|
||||
LD = "ld";
|
||||
CC = "gcc";
|
||||
|
||||
# Setting $CPATH and $LIBRARY_PATH to make sure both `gcc' and `xgcc' find
|
||||
# the library headers and binaries, regarless of the language being
|
||||
# compiled.
|
||||
|
||||
# Note: When building the Java AWT GTK+ peer, the build system doesn't
|
||||
# honor `--with-gmp' et al., e.g., when building
|
||||
# `libjava/classpath/native/jni/java-math/gnu_java_math_GMP.c', so we just
|
||||
# add them to $CPATH and $LIBRARY_PATH in this case.
|
||||
#
|
||||
# Likewise, the LTO code doesn't find zlib.
|
||||
|
||||
CPATH = concatStrings
|
||||
(intersperse ":" (map (x: x + "/include")
|
||||
(optionals (zlib != null) [ zlib ]
|
||||
++ optionals langJava [ boehmgc ]
|
||||
++ optionals javaAwtGtk xlibs
|
||||
++ optionals javaAwtGtk [ gmp mpfr ]
|
||||
++ optional (libpthread != null) libpthread
|
||||
++ optional (libpthreadCross != null) libpthreadCross
|
||||
|
||||
# On GNU/Hurd glibc refers to Mach & Hurd
|
||||
# headers.
|
||||
++ optionals (libcCross != null &&
|
||||
hasAttr "propagatedBuildInputs" libcCross)
|
||||
libcCross.propagatedBuildInputs)));
|
||||
|
||||
LIBRARY_PATH = concatStrings
|
||||
(intersperse ":" (map (x: x + "/lib")
|
||||
(optionals (zlib != null) [ zlib ]
|
||||
++ optionals langJava [ boehmgc ]
|
||||
++ optionals javaAwtGtk xlibs
|
||||
++ optionals javaAwtGtk [ gmp mpfr ]
|
||||
++ optional (libpthread != null) libpthread)));
|
||||
|
||||
EXTRA_TARGET_CFLAGS =
|
||||
if cross != null && libcCross != null
|
||||
then "-idirafter ${libcCross}/include"
|
||||
else null;
|
||||
|
||||
EXTRA_TARGET_LDFLAGS =
|
||||
if cross != null && libcCross != null
|
||||
then "-B${libcCross}/lib -Wl,-L${libcCross}/lib" +
|
||||
(optionalString (libpthreadCross != null)
|
||||
" -L${libpthreadCross}/lib -Wl,${libpthreadCross.TARGET_LDFLAGS}")
|
||||
else null;
|
||||
|
||||
passthru = { inherit langC langCC langAda langFortran langVhdl
|
||||
langGo enableMultilib version; };
|
||||
|
||||
/* From gccinstall.info:
|
||||
"parallel make is currently not supported since collisions in profile
|
||||
collecting may occur"
|
||||
*/
|
||||
enableParallelBuilding = !profiledCompiler;
|
||||
|
||||
meta = {
|
||||
homepage = http://gcc.gnu.org/;
|
||||
license = "GPLv3+"; # runtime support libraries are typically LGPLv3+
|
||||
description = "GNU Compiler Collection, version ${version}"
|
||||
+ (if stripped then "" else " (with debugging info)");
|
||||
|
||||
longDescription = ''
|
||||
The GNU Compiler Collection includes compiler front ends for C, C++,
|
||||
Objective-C, Fortran, OpenMP for C/C++/Fortran, Java, and Ada, as well
|
||||
as libraries for these languages (libstdc++, libgcj, libgomp,...).
|
||||
|
||||
GCC development is a part of the GNU Project, aiming to improve the
|
||||
compiler used in the GNU system including the GNU/Linux variant.
|
||||
'';
|
||||
|
||||
maintainers = [
|
||||
stdenv.lib.maintainers.ludo
|
||||
stdenv.lib.maintainers.viric
|
||||
stdenv.lib.maintainers.shlevy
|
||||
];
|
||||
|
||||
# Volunteers needed for the {Cyg,Dar}win ports of *PPL.
|
||||
# gnatboot is not available out of linux platforms, so we disable the darwin build
|
||||
# for the gnat (ada compiler).
|
||||
platforms = stdenv.lib.platforms.linux ++ optionals (langAda == false && libelf == null) [ "i686-darwin" ];
|
||||
};
|
||||
}
|
||||
|
||||
// optionalAttrs (cross != null && cross.libc == "msvcrt" && crossStageStatic) {
|
||||
makeFlags = [ "all-gcc" "all-target-libgcc" ];
|
||||
installTargets = "install-gcc install-target-libgcc";
|
||||
}
|
||||
|
||||
# Strip kills static libs of other archs (hence cross != null)
|
||||
// optionalAttrs (!stripped || cross != null) { dontStrip = true; NIX_STRIP_DEBUG = 0; }
|
||||
)
|
20
pkgs/development/compilers/gcc/4.7/gfortran-driving.patch
Normal file
20
pkgs/development/compilers/gcc/4.7/gfortran-driving.patch
Normal file
@ -0,0 +1,20 @@
|
||||
This patch fixes interaction with Libtool.
|
||||
See <http://thread.gmane.org/gmane.comp.gcc.patches/258777>, for details.
|
||||
|
||||
--- a/gcc/fortran/gfortranspec.c
|
||||
+++ b/gcc/fortran/gfortranspec.c
|
||||
@@ -461,8 +461,15 @@ For more information about these matters, see the file named COPYING\n\n"));
|
||||
{
|
||||
fprintf (stderr, _("Driving:"));
|
||||
for (i = 0; i < g77_newargc; i++)
|
||||
+ {
|
||||
+ if (g77_new_decoded_options[i].opt_index == OPT_l)
|
||||
+ /* Make sure no white space is inserted after `-l'. */
|
||||
+ fprintf (stderr, " -l%s",
|
||||
+ g77_new_decoded_options[i].canonical_option[1]);
|
||||
+ else
|
||||
fprintf (stderr, " %s",
|
||||
g77_new_decoded_options[i].orig_option_with_args_text);
|
||||
+ }
|
||||
fprintf (stderr, "\n");
|
||||
}
|
33
pkgs/development/compilers/gcc/4.7/gnat-cflags.patch
Normal file
33
pkgs/development/compilers/gcc/4.7/gnat-cflags.patch
Normal file
@ -0,0 +1,33 @@
|
||||
diff --git a/libada/Makefile.in b/libada/Makefile.in
|
||||
index f5057a0..337e0c6 100644
|
||||
--- a/libada/Makefile.in
|
||||
+++ b/libada/Makefile.in
|
||||
@@ -55,7 +55,7 @@ GCC_WARN_CFLAGS = $(LOOSE_WARN)
|
||||
WARN_CFLAGS = @warn_cflags@
|
||||
|
||||
TARGET_LIBGCC2_CFLAGS=
|
||||
-GNATLIBCFLAGS= -g -O2
|
||||
+GNATLIBCFLAGS= -g -O2 $(CFLAGS)
|
||||
GNATLIBCFLAGS_FOR_C = $(GNATLIBCFLAGS) $(TARGET_LIBGCC2_CFLAGS) -fexceptions \
|
||||
-DIN_RTS @have_getipinfo@
|
||||
|
||||
--- a/gcc/ada/gcc-interface/Makefile.in
|
||||
+++ b/gcc/ada/gcc-interface/Makefile.in
|
||||
@@ -105,7 +105,7 @@ ADAFLAGS = -W -Wall -gnatpg -gnata
|
||||
SOME_ADAFLAGS =-gnata
|
||||
FORCE_DEBUG_ADAFLAGS = -g
|
||||
GNATLIBFLAGS = -gnatpg -nostdinc
|
||||
-GNATLIBCFLAGS = -g -O2
|
||||
+GNATLIBCFLAGS = -g -O2 $(CFLAGS_FOR_TARGET)
|
||||
# Pretend that _Unwind_GetIPInfo is available for the target by default. This
|
||||
# should be autodetected during the configuration of libada and passed down to
|
||||
# here, but we need something for --disable-libada and hope for the best.
|
||||
@@ -193,7 +193,7 @@ RTSDIR = rts$(subst /,_,$(MULTISUBDIR))
|
||||
# Link flags used to build gnat tools. By default we prefer to statically
|
||||
# link with libgcc to avoid a dependency on shared libgcc (which is tricky
|
||||
# to deal with as it may conflict with the libgcc provided by the system).
|
||||
-GCC_LINK_FLAGS=-static-libgcc
|
||||
+GCC_LINK_FLAGS=-static-libgcc $(CFLAGS_FOR_TARGET)
|
||||
|
||||
# End of variables for you to override.
|
||||
|
14
pkgs/development/compilers/gcc/4.7/hurd-sigrtmin.patch
Normal file
14
pkgs/development/compilers/gcc/4.7/hurd-sigrtmin.patch
Normal file
@ -0,0 +1,14 @@
|
||||
GNU libc on GNU/Hurd doesn't define `__SIGRTMIN'.
|
||||
From <http://patch-tracker.debian.org/patch/series/view/gcc-4.6/4.6.3-1/hurd-fixes.diff>.
|
||||
|
||||
--- a/libgcc/generic-morestack.c 2011-12-19 21:14:52.000000000 +0100
|
||||
+++ b/libgcc/generic-morestack.c 2011-12-19 21:15:35.000000000 +0100
|
||||
@@ -507,7 +507,7 @@
|
||||
sigemptyset (&__morestack_initial_sp.mask);
|
||||
|
||||
sigfillset (&__morestack_fullmask);
|
||||
-#ifdef __GLIBC__
|
||||
+#if defined(__GLIBC__) && defined(__SIGRTMIN)
|
||||
/* In glibc, the first two real time signals are used by the NPTL
|
||||
threading library. By taking them out of the set of signals, we
|
||||
avoiding copying the signal mask in pthread_sigmask. More
|
17
pkgs/development/compilers/gcc/4.7/java-jvgenmain-link.patch
Normal file
17
pkgs/development/compilers/gcc/4.7/java-jvgenmain-link.patch
Normal file
@ -0,0 +1,17 @@
|
||||
The `jvgenmain' executable must be linked against `vec.o', among others,
|
||||
since it uses its vector API.
|
||||
|
||||
--- gcc-4.3.3/gcc/java/Make-lang.in 2008-12-05 00:00:19.000000000 +0100
|
||||
+++ gcc-4.3.3/gcc/java/Make-lang.in 2009-07-03 16:11:41.000000000 +0200
|
||||
@@ -109,9 +109,9 @@ jcf-dump$(exeext): $(JCFDUMP_OBJS) $(LIB
|
||||
$(CC) $(ALL_CFLAGS) $(LDFLAGS) -o $@ $(JCFDUMP_OBJS) \
|
||||
$(CPPLIBS) $(ZLIB) $(LDEXP_LIB) $(LIBS)
|
||||
|
||||
-jvgenmain$(exeext): $(JVGENMAIN_OBJS) $(LIBDEPS)
|
||||
+jvgenmain$(exeext): $(JVGENMAIN_OBJS) $(LIBDEPS) $(BUILD_RTL)
|
||||
rm -f $@
|
||||
- $(CC) $(ALL_CFLAGS) $(LDFLAGS) -o $@ $(JVGENMAIN_OBJS) $(LIBS)
|
||||
+ $(CC) $(ALL_CFLAGS) $(LDFLAGS) -o $@ $(JVGENMAIN_OBJS) $(BUILD_RTL) $(LIBS)
|
||||
|
||||
#
|
||||
# Build hooks:
|
32
pkgs/development/compilers/gcc/4.7/libstdc++-target.patch
Normal file
32
pkgs/development/compilers/gcc/4.7/libstdc++-target.patch
Normal file
@ -0,0 +1,32 @@
|
||||
Patch to make the target libraries 'configure' scripts find the proper CPP.
|
||||
I noticed that building the mingw32 cross compiler.
|
||||
Looking at the build script for mingw in archlinux, I think that only nixos
|
||||
needs this patch. I don't know why.
|
||||
diff --git a/Makefile.in b/Makefile.in
|
||||
index 93f66b6..d691917 100644
|
||||
--- a/Makefile.in
|
||||
+++ b/Makefile.in
|
||||
@@ -266,6 +266,7 @@ BASE_TARGET_EXPORTS = \
|
||||
AR="$(AR_FOR_TARGET)"; export AR; \
|
||||
AS="$(COMPILER_AS_FOR_TARGET)"; export AS; \
|
||||
CC="$(CC_FOR_TARGET) $(XGCC_FLAGS_FOR_TARGET) $$TFLAGS"; export CC; \
|
||||
+ CPP="$(CC_FOR_TARGET) $(XGCC_FLAGS_FOR_TARGET) $$TFLAGS -E"; export CC; \
|
||||
CFLAGS="$(CFLAGS_FOR_TARGET)"; export CFLAGS; \
|
||||
CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \
|
||||
CPPFLAGS="$(CPPFLAGS_FOR_TARGET)"; export CPPFLAGS; \
|
||||
@@ -291,11 +292,13 @@ BASE_TARGET_EXPORTS = \
|
||||
RAW_CXX_TARGET_EXPORTS = \
|
||||
$(BASE_TARGET_EXPORTS) \
|
||||
CXX_FOR_TARGET="$(RAW_CXX_FOR_TARGET)"; export CXX_FOR_TARGET; \
|
||||
- CXX="$(RAW_CXX_FOR_TARGET) $(XGCC_FLAGS_FOR_TARGET) $$TFLAGS"; export CXX;
|
||||
+ CXX="$(RAW_CXX_FOR_TARGET) $(XGCC_FLAGS_FOR_TARGET) $$TFLAGS"; export CXX; \
|
||||
+ CXXCPP="$(RAW_CXX_FOR_TARGET) $(XGCC_FLAGS_FOR_TARGET) $$TFLAGS -E"; export CXX;
|
||||
|
||||
NORMAL_TARGET_EXPORTS = \
|
||||
$(BASE_TARGET_EXPORTS) \
|
||||
- CXX="$(CXX_FOR_TARGET) $(XGCC_FLAGS_FOR_TARGET) $$TFLAGS"; export CXX;
|
||||
+ CXX="$(CXX_FOR_TARGET) $(XGCC_FLAGS_FOR_TARGET) $$TFLAGS"; export CXX; \
|
||||
+ CXXCPP="$(CXX_FOR_TARGET) $(XGCC_FLAGS_FOR_TARGET) $$TFLAGS -E"; export CXX;
|
||||
|
||||
# Where to find GMP
|
||||
HOST_GMPLIBS = @gmplibs@
|
41
pkgs/development/compilers/gcc/4.7/no-sys-dirs.patch
Normal file
41
pkgs/development/compilers/gcc/4.7/no-sys-dirs.patch
Normal file
@ -0,0 +1,41 @@
|
||||
diff -ru gcc-4.3.1-orig/gcc/cppdefault.c gcc-4.3.1/gcc/cppdefault.c
|
||||
--- gcc-4.3.1-orig/gcc/cppdefault.c 2007-07-26 10:37:01.000000000 +0200
|
||||
+++ gcc-4.3.1/gcc/cppdefault.c 2008-06-25 17:48:23.000000000 +0200
|
||||
@@ -41,6 +41,10 @@
|
||||
# undef CROSS_INCLUDE_DIR
|
||||
#endif
|
||||
|
||||
+#undef LOCAL_INCLUDE_DIR
|
||||
+#undef SYSTEM_INCLUDE_DIR
|
||||
+#undef STANDARD_INCLUDE_DIR
|
||||
+
|
||||
const struct default_include cpp_include_defaults[]
|
||||
#ifdef INCLUDE_DEFAULTS
|
||||
= INCLUDE_DEFAULTS;
|
||||
diff -ru gcc-4.3.1-orig/gcc/gcc.c gcc-4.3.1/gcc/gcc.c
|
||||
--- gcc-4.3.1-orig/gcc/gcc.c 2008-03-02 23:55:19.000000000 +0100
|
||||
+++ gcc-4.3.1/gcc/gcc.c 2008-06-25 17:52:53.000000000 +0200
|
||||
@@ -1478,10 +1478,10 @@
|
||||
/* Default prefixes to attach to command names. */
|
||||
|
||||
#ifndef STANDARD_STARTFILE_PREFIX_1
|
||||
-#define STANDARD_STARTFILE_PREFIX_1 "/lib/"
|
||||
+#define STANDARD_STARTFILE_PREFIX_1 ""
|
||||
#endif
|
||||
#ifndef STANDARD_STARTFILE_PREFIX_2
|
||||
-#define STANDARD_STARTFILE_PREFIX_2 "/usr/lib/"
|
||||
+#define STANDARD_STARTFILE_PREFIX_2 ""
|
||||
#endif
|
||||
|
||||
#ifdef CROSS_DIRECTORY_STRUCTURE /* Don't use these prefixes for a cross compiler. */
|
||||
--- gcc-4.3.1-orig/gcc/Makefile.in 2008-05-11 20:54:15.000000000 +0200
|
||||
+++ gcc-4.3.1/gcc/Makefile.in 2008-06-25 17:48:23.000000000 +0200
|
||||
@@ -3277,7 +3281,7 @@
|
||||
-DGPLUSPLUS_INCLUDE_DIR=\"$(gcc_gxx_include_dir)\" \
|
||||
-DGPLUSPLUS_TOOL_INCLUDE_DIR=\"$(gcc_gxx_include_dir)/$(target_noncanonical)\" \
|
||||
-DGPLUSPLUS_BACKWARD_INCLUDE_DIR=\"$(gcc_gxx_include_dir)/backward\" \
|
||||
- -DLOCAL_INCLUDE_DIR=\"$(local_includedir)\" \
|
||||
+ -DLOCAL_INCLUDE_DIR=\"/no-such-dir\" \
|
||||
-DCROSS_INCLUDE_DIR=\"$(CROSS_SYSTEM_HEADER_DIR)\" \
|
||||
-DTOOL_INCLUDE_DIR=\"$(gcc_tooldir)/include\" \
|
||||
-DPREFIX=\"$(prefix)/\" \
|
46
pkgs/development/compilers/ghc/7.6.1.nix
Normal file
46
pkgs/development/compilers/ghc/7.6.1.nix
Normal file
@ -0,0 +1,46 @@
|
||||
{ stdenv, fetchurl, ghc, perl, gmp, ncurses }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "7.6.0.20120810";
|
||||
|
||||
name = "ghc-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://haskell.org/ghc/dist/7.6.1-rc1/${name}-src.tar.bz2";
|
||||
sha256 = "04m8ms3a58590s4p8x6qma25rdanz0iai8rcla78ka798612pvjd";
|
||||
};
|
||||
|
||||
buildInputs = [ ghc perl gmp ncurses ];
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
buildMK = ''
|
||||
libraries/integer-gmp_CONFIGURE_OPTS += --configure-option=--with-gmp-libraries="${gmp}/lib"
|
||||
libraries/integer-gmp_CONFIGURE_OPTS += --configure-option=--with-gmp-includes="${gmp}/include"
|
||||
'';
|
||||
|
||||
preConfigure = ''
|
||||
echo "${buildMK}" > mk/build.mk
|
||||
sed -i -e 's|-isysroot /Developer/SDKs/MacOSX10.5.sdk||' configure
|
||||
'';
|
||||
|
||||
configureFlags=[
|
||||
"--with-gcc=${stdenv.gcc}/bin/gcc"
|
||||
];
|
||||
|
||||
# required, because otherwise all symbols from HSffi.o are stripped, and
|
||||
# that in turn causes GHCi to abort
|
||||
stripDebugFlags=["-S" "--keep-file-symbols"];
|
||||
|
||||
meta = {
|
||||
homepage = "http://haskell.org/ghc";
|
||||
description = "The Glasgow Haskell Compiler";
|
||||
maintainers = [
|
||||
stdenv.lib.maintainers.marcweber
|
||||
stdenv.lib.maintainers.andres
|
||||
stdenv.lib.maintainers.simons
|
||||
];
|
||||
platforms = ghc.meta.platforms;
|
||||
};
|
||||
|
||||
}
|
@ -1,13 +1,13 @@
|
||||
{ stdenv, fetchurl, ghc, perl, gmp, ncurses }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "7.5.20120607";
|
||||
version = "7.5.20120714";
|
||||
|
||||
name = "ghc-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://haskell.org/ghc/dist/current/dist/${name}-src.tar.bz2";
|
||||
sha256 = "1xrdx646g5ip2f2jypbm46y6jis3ddf8bild2704swbl2j4yb3vb";
|
||||
sha256 = "02jicyqqr18yixf970f1rfrn64bm528aig6s9566galji063p6ah";
|
||||
};
|
||||
|
||||
buildInputs = [ ghc perl gmp ncurses ];
|
||||
|
15
pkgs/development/compilers/go/cacert.patch
Normal file
15
pkgs/development/compilers/go/cacert.patch
Normal file
@ -0,0 +1,15 @@
|
||||
Go comes with hardcoded cacert. We add the usual in NixOS,
|
||||
for easier NixOS life.
|
||||
|
||||
diff --git a/src/pkg/crypto/x509/root_unix.go b/src/pkg/crypto/x509/root_unix.go
|
||||
index 76e79f4..6ef1dd3 100644
|
||||
--- a/src/pkg/crypto/x509/root_unix.go
|
||||
+++ b/src/pkg/crypto/x509/root_unix.go
|
||||
@@ -15,6 +15,7 @@ var certFiles = []string{
|
||||
"/etc/ssl/ca-bundle.pem", // OpenSUSE
|
||||
"/etc/ssl/cert.pem", // OpenBSD
|
||||
"/usr/local/share/certs/ca-root-nss.crt", // FreeBSD
|
||||
+ "/etc/ssl/certs/ca-bundle.crt", // NixOS
|
||||
}
|
||||
|
||||
func (c *Certificate) systemVerify(opts *VerifyOptions) (chains [][]*Certificate, err error) {
|
@ -1,46 +1,51 @@
|
||||
{ stdenv, fetchhg, bison, glibc, ed, which, bash, coreutils, makeWrapper, perl }:
|
||||
{ stdenv, fetchurl, bison, glibc, bash, coreutils, makeWrapper}:
|
||||
|
||||
let
|
||||
version = "2010-06-09";
|
||||
sha256 = "b607879b333ef100466c726a13cc69ed143566a3c1af59f6d33a6e90b9d0c917";
|
||||
|
||||
loader386 = "${glibc}/lib/ld-linux.so.2";
|
||||
loaderAmd64 = "${glibc}/lib/ld-linux-x86-64.so.2";
|
||||
in
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "go-" + version;
|
||||
name = "go-1.0.2";
|
||||
|
||||
# No tarball yet.
|
||||
src = fetchhg {
|
||||
url = https://go.googlecode.com/hg/;
|
||||
tag = "release." + version;
|
||||
inherit sha256;
|
||||
src = fetchurl {
|
||||
url = http://go.googlecode.com/files/go1.0.2.src.tar.gz;
|
||||
sha256 = "1a4mpkb3bd9dwp0r3fgrfcyk5lgw0f0cfrbskg2lrhc7a12zpz3h";
|
||||
};
|
||||
|
||||
buildInputs = [ bison glibc ed which bash makeWrapper ];
|
||||
buildInputs = [ bison glibc bash makeWrapper ];
|
||||
|
||||
# I'm not sure what go wants from its 'src', but the go installation manual
|
||||
# describes an installation keeping the src.
|
||||
preUnpack = ''
|
||||
mkdir -p $out/share
|
||||
cd $out/share
|
||||
'';
|
||||
|
||||
prePatch = ''
|
||||
patchShebangs ./ # replace /bin/bash
|
||||
# only for 386 build
|
||||
# !!! substituteInPlace does not seems to be effective.
|
||||
sed -i 's,/lib/ld-linux.so.2,${loader386},' src/cmd/8l/asm.c
|
||||
sed -i 's,/lib64/ld-linux-x86-64.so.2,${loaderAmd64},' src/cmd/6l/asm.c
|
||||
sed -i 's,/usr/share/zoneinfo/,${glibc}/share/zoneinfo/,' src/pkg/time/zoneinfo.go
|
||||
sed -i 's,/bin/ed,${ed}/bin/ed,' src/cmd/6l/mkenam
|
||||
sed -i 's,/usr/share/zoneinfo/,${glibc}/share/zoneinfo/,' src/pkg/time/zoneinfo_unix.go
|
||||
|
||||
sed -i -e 's,/bin/cat,${coreutils}/bin/cat,' \
|
||||
-e 's,/bin/echo,${coreutils}/bin/echo,' \
|
||||
src/pkg/exec/exec_test.go
|
||||
#sed -i -e 's,/bin/cat,${coreutils}/bin/cat,' \
|
||||
# -e 's,/bin/echo,${coreutils}/bin/echo,' \
|
||||
# src/pkg/exec/exec_test.go
|
||||
|
||||
# Disabling the 'os/http/net' tests (they want files not available in
|
||||
# chroot builds)
|
||||
sed -i -e '/^NOTEST=/a\\tos\\\n\thttp\\\n\tnet\\' src/pkg/Makefile
|
||||
|
||||
sed -i -e 's,/bin:/usr/bin:/usr/local/bin,'$PATH, test/run
|
||||
sed -i -e 's,/usr/bin/perl,${perl}/bin/perl,' test/errchk
|
||||
rm src/pkg/net/{multicast_test.go,parse_test.go,port_test.go}
|
||||
# The os test wants to read files in an existing path. Just it don't be /usr/bin.
|
||||
sed -i 's,/usr/bin,'"`pwd`", src/pkg/os/os_test.go
|
||||
sed -i 's,/bin/pwd,'"`type -P pwd`", src/pkg/os/os_test.go
|
||||
# Disable the hostname test
|
||||
sed -i '/TestHostname/areturn' src/pkg/os/os_test.go
|
||||
'';
|
||||
|
||||
patches = [ ./cacert.patch ];
|
||||
|
||||
GOOS = "linux";
|
||||
GOARCH = if (stdenv.system == "i686-linux") then "386"
|
||||
else if (stdenv.system == "x86_64-linux") then "amd64"
|
||||
@ -55,28 +60,16 @@ stdenv.mkDerivation {
|
||||
./all.bash
|
||||
cd -
|
||||
|
||||
# Handle Libraries and make them availabale under /share/go.
|
||||
export GOLIB="pkg/"$GOOS"_"$GOARCH
|
||||
mkdir -p "$out/lib/go/$GOLIB"
|
||||
cp -r ./$GOLIB $out/lib/go/pkg/
|
||||
|
||||
# this line set $AS $CC $GC $LD
|
||||
source ./src/Make.$GOARCH
|
||||
|
||||
# Wrap the compiler and the linker to define the location of the
|
||||
# Wrap the tools to define the location of the
|
||||
# libraries.
|
||||
wrapProgram "$out/bin/$GC" \
|
||||
--add-flags "-I" \
|
||||
--add-flags "$out/lib/go/$GOLIB"
|
||||
|
||||
wrapProgram "$out/bin/$LD" \
|
||||
--set "GOROOT" "$out/lib/go/" \
|
||||
--set "GOOS" "$GOOS" \
|
||||
--set "GOARCH" "$GOARCH"
|
||||
for a in go gofmt godoc; do
|
||||
wrapProgram "$out/bin/$a" \
|
||||
--set "GOROOT" "$out/share/go/"
|
||||
done
|
||||
|
||||
# Copy the emacs configuration for Go files.
|
||||
mkdir -p "$out/share/emacs/site-lisp"
|
||||
cp ./misc/emacs/* $out/share/emacs/site-lisp/ # */
|
||||
cp ./misc/emacs/* $out/share/emacs/site-lisp/
|
||||
'';
|
||||
|
||||
meta = {
|
||||
|
@ -1,35 +1,46 @@
|
||||
{ stdenv, fetchgit, gfortran, perl, m4, llvm, gmp, pcre, blas, liblapack
|
||||
{ stdenv, fetchgit, gfortran, perl, m4, llvm, gmp, pcre
|
||||
, readline, fftwSinglePrec, fftw, libunwind, suitesparse, glpk, fetchurl
|
||||
, ncurses, libunistring, lighttpd, patchelf
|
||||
, ncurses, libunistring, lighttpd, patchelf, openblas, liblapack
|
||||
} :
|
||||
let
|
||||
liblapackShared = liblapack.override{shared=true;};
|
||||
realGcc = stdenv.gcc.gcc;
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "julia";
|
||||
date = "20120501";
|
||||
date = "20120801";
|
||||
name = "${pname}-git-${date}";
|
||||
|
||||
grisu_ver = "1.1";
|
||||
grisu_ver = "1.1.1";
|
||||
dsfmt_ver = "2.1";
|
||||
arpack_ver = "3.1.0";
|
||||
openblas_ver = "v0.2.2";
|
||||
lapack_ver = "3.4.1";
|
||||
arpack_ver = "3.1.1";
|
||||
clp_ver = "1.14.5";
|
||||
lighttpd_ver = "1.4.29";
|
||||
|
||||
grisu_src = fetchurl {
|
||||
url = "http://double-conversion.googlecode.com/files/double-conversion-${grisu_ver}.tar.gz";
|
||||
sha256 = "addee31d11350e4dde2b19c749eda648cb0ab38a68b0dd0d0a45dc49c7346fe7";
|
||||
sha256 = "e1cabb73fd69e74f145aea91100cde483aef8b79dc730fcda0a34466730d4d1d";
|
||||
};
|
||||
dsfmt_src = fetchurl {
|
||||
url = "http://www.math.sci.hiroshima-u.ac.jp/~m-mat/MT/SFMT/dSFMT-src-${dsfmt_ver}.tar.gz";
|
||||
name = "dsfmt-${dsfmt_ver}.tar.gz";
|
||||
sha256 = "e9d3e04bc984ec3b14033342f5ebdcd5202d8d8e40128dd737f566945612378f";
|
||||
};
|
||||
openblas_src = fetchurl {
|
||||
url = "https://github.com/xianyi/OpenBLAS/tarball/${openblas_ver}";
|
||||
name = "openblas-${openblas_ver}.tar.gz";
|
||||
sha256 = "19ffec70f9678f5c159feadc036ca47720681b782910fbaa95aa3867e7e86d8e";
|
||||
};
|
||||
arpack_src = fetchurl {
|
||||
url = "http://forge.scilab.org/index.php/p/arpack-ng/downloads/376/get/";
|
||||
url = "http://forge.scilab.org/index.php/p/arpack-ng/downloads/417/get/";
|
||||
name = "arpack-ng_${arpack_ver}.tar.gz";
|
||||
sha256 = "65b7856126f06ecbf9ec450d50df92ca9260d4b0d21baf02497554ac230d6feb";
|
||||
sha256 = "be250947a7d6eac7dff8c058102fce9922c524aa06be2a090b6e0bb2d1e228cd";
|
||||
};
|
||||
lapack_src = fetchurl {
|
||||
url = "http://www.netlib.org/lapack/lapack-${lapack_ver}.tgz";
|
||||
name = "lapack-${lapack_ver}.tgz";
|
||||
sha256 = "93b910f94f6091a2e71b59809c4db4a14655db527cfc5821ade2e8c8ab75380f";
|
||||
};
|
||||
clp_src = fetchurl {
|
||||
url = "http://www.coin-or.org/download/source/Clp/Clp-${clp_ver}.tgz";
|
||||
@ -43,16 +54,17 @@ stdenv.mkDerivation rec {
|
||||
|
||||
src = fetchgit {
|
||||
url = "git://github.com/JuliaLang/julia.git";
|
||||
rev = "990ffabb00f0e51d326911888facdbc473fb634d";
|
||||
sha256 = "dfcf41b2d7b62dd490bfd6f6fb962713c920de3f00afaee47423bd26eba7e3b2";
|
||||
rev = "3b413ec24957e400c984002f7cdf6232f5391a7e";
|
||||
sha256 = "c019b724df9203899a1da5815f85d79291778191bbffc1361d2213ff7d2bbc1d";
|
||||
};
|
||||
|
||||
buildInputs = [ gfortran perl m4 gmp pcre llvm blas liblapackShared readline
|
||||
buildInputs = [ gfortran perl m4 gmp pcre llvm readline
|
||||
fftw fftwSinglePrec libunwind suitesparse glpk ncurses libunistring patchelf
|
||||
openblas liblapack
|
||||
];
|
||||
|
||||
configurePhase = ''
|
||||
for i in GMP LLVM PCRE BLAS LAPACK READLINE FFTW LIBUNWIND SUITESPARSE GLPK;
|
||||
for i in GMP LLVM PCRE LAPACK OPENBLAS BLAS READLINE FFTW LIBUNWIND SUITESPARSE GLPK LIGHTTPD;
|
||||
do
|
||||
sed -e "s@USE_SYSTEM_$i=0@USE_SYSTEM_$i=1@" -i Make.inc;
|
||||
done
|
||||
@ -62,52 +74,44 @@ stdenv.mkDerivation rec {
|
||||
cp "$1" "$2/$(basename "$1" | sed -e 's/^[a-z0-9]*-//')"
|
||||
}
|
||||
|
||||
for i in "${grisu_src}" "${dsfmt_src}" "${arpack_src}" "${clp_src}" "${lighttpd_src}" ; do
|
||||
for i in "${grisu_src}" "${dsfmt_src}" "${arpack_src}" "${clp_src}" ; do
|
||||
copy_kill_hash "$i" deps
|
||||
done
|
||||
copy_kill_hash "${dsfmt_src}" deps/random
|
||||
|
||||
sed -e '/cd SuiteSparse-SYSTEM/,+1s@find /lib /usr/lib /usr/local/lib@find ${suitesparse}/lib@' -i deps/Makefile
|
||||
|
||||
${if realGcc ==null then "" else
|
||||
''export NIX_LDFLAGS="$NIX_LDFLAGS -L${realGcc}/lib -L${realGcc}/lib64 -lpcre -llapack -lm -lfftw3f -lfftw3 -lglpk -lunistring "''}
|
||||
|
||||
sed -e 's@ cpp @ gcc -E @g' -i base/Makefile
|
||||
|
||||
sed -e '1s@#! */bin/bash@#!${stdenv.shell}@' -i deps/*.sh
|
||||
|
||||
export LDFLAGS="-L${suitesparse}/lib"
|
||||
|
||||
export GLPK_PREFIX="${glpk}/include"
|
||||
|
||||
mkdir -p "$out/lib"
|
||||
sed -e "s@/usr/local/lib@$out/lib@g" -i deps/Makefile
|
||||
sed -e "s@/usr/lib@$out/lib@g" -i deps/Makefile
|
||||
|
||||
sed -e '/libumfpack.a/s@find @find ${suitesparse}/lib @' -i deps/Makefile
|
||||
|
||||
export makeFlags="$makeFlags PREFIX=\"$out\" USR=\"$out\""
|
||||
|
||||
sed -e 's@openblas@blas@' -i base/*.jl
|
||||
|
||||
sed -e '/install -v julia-release-webserver/d' -i Makefile
|
||||
export makeFlags="$makeFlags PREFIX=$out"
|
||||
|
||||
export dontPatchELF=1
|
||||
'';
|
||||
|
||||
preBuild = ''
|
||||
make -C test/unicode all
|
||||
make -C extras glpk_h.jl GLPK_PREFIX="$GLPK_PREFIX"
|
||||
'';
|
||||
|
||||
postInstall = ''
|
||||
ln -s "$out/share/julia/julia" "$out/bin"
|
||||
ld -E --whole-archive --shared ${suitesparse}/lib/lib*[a-z].a -o "$out"/lib/libsuitesparse-shared.so
|
||||
for i in umfpack cholmod amd camd colamd ; do
|
||||
ln -s "libsuitesparse-shared.so" "$out/lib/lib$i.so"
|
||||
done
|
||||
ln -s "${lighttpd}/sbin/lighttpd" "$out/sbin/"
|
||||
ln -s "${lighttpd}/lib/"* "$out/lib/"
|
||||
|
||||
mkdir -p "$out/share/julia/ui/"
|
||||
cp -r ui/website "$out/share/julia/ui/"
|
||||
cp deps/lighttpd.conf "$out/share/julia/ui/"
|
||||
|
||||
mkdir -p "$out/share/julia/ui/webserver/"
|
||||
cp -r ui/webserver/{*.jl,*.h} "$out/share/julia/ui/webserver/"
|
||||
|
||||
echo -e '#!/bin/sh' >> "$out/bin/julia-webserver"
|
||||
echo -e "cd \"$out/share/julia\"" >> "$out/bin/julia-webserver"
|
||||
echo -e '${lighttpd}/sbin/lighttpd -D -f ./ui/lighttpd.conf &' >> "$out/bin/julia-webserver"
|
||||
echo -e "'$out/bin/julia-release-webserver' -p 2001" >> "$out/bin/julia-webserver"
|
||||
chmod a+x "$out/bin/julia-webserver"
|
||||
cp -r test examples "$out/lib/julia"
|
||||
ls -R > "$out/ls-R"
|
||||
'';
|
||||
|
||||
meta = {
|
||||
|
@ -1,8 +1,8 @@
|
||||
{ stdenv, fetchurl, ncurses, x11 }:
|
||||
|
||||
let
|
||||
useX11 = !stdenv.isArm;
|
||||
useNativeCompilers = !stdenv.isArm;
|
||||
useX11 = !stdenv.isArm && !stdenv.isMips;
|
||||
useNativeCompilers = !stdenv.isArm && !stdenv.isMips;
|
||||
inherit (stdenv.lib) optionals optionalString;
|
||||
in
|
||||
|
||||
@ -30,6 +30,10 @@ stdenv.mkDerivation rec {
|
||||
ln -sv $out/lib/ocaml/caml $out/include/caml
|
||||
'';
|
||||
|
||||
passthru = {
|
||||
nativeCompilers = useNativeCompilers;
|
||||
};
|
||||
|
||||
meta = {
|
||||
homepage = http://caml.inria.fr/ocaml;
|
||||
licenses = [ "QPL" /* compiler */ "LGPLv2" /* library */ ];
|
||||
|
63
pkgs/development/compilers/ocaml/4.00.0.nix
Normal file
63
pkgs/development/compilers/ocaml/4.00.0.nix
Normal file
@ -0,0 +1,63 @@
|
||||
{ stdenv, fetchurl, ncurses, x11 }:
|
||||
|
||||
let
|
||||
useX11 = !stdenv.isArm && !stdenv.isMips;
|
||||
useNativeCompilers = !stdenv.isArm && !stdenv.isMips;
|
||||
inherit (stdenv.lib) optionals optionalString;
|
||||
in
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
|
||||
name = "ocaml-4.00.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://caml.inria.fr/pub/distrib/ocaml-4.00/${name}.tar.bz2";
|
||||
sha256 = "ec886d7bc587ce472fcbdf294feb4b1fa2d8e7ef78ab6a4e66551699435d5cd7";
|
||||
};
|
||||
|
||||
prefixKey = "-prefix ";
|
||||
configureFlags = ["-no-tk"] ++ optionals useX11 [ "-x11lib" x11 ];
|
||||
buildFlags = "world" + optionalString useNativeCompilers " bootstrap world.opt";
|
||||
buildInputs = [ncurses] ++ optionals useX11 [ x11 ];
|
||||
installTargets = "install" + optionalString useNativeCompilers " installopt";
|
||||
preConfigure = ''
|
||||
CAT=$(type -tp cat)
|
||||
sed -e "s@/bin/cat@$CAT@" -i config/auto-aux/sharpbang
|
||||
'';
|
||||
postBuild = ''
|
||||
mkdir -p $out/include
|
||||
ln -sv $out/lib/ocaml/caml $out/include/caml
|
||||
'';
|
||||
|
||||
passthru = {
|
||||
nativeCompilers = useNativeCompilers;
|
||||
};
|
||||
|
||||
meta = {
|
||||
homepage = http://caml.inria.fr/ocaml;
|
||||
licenses = [ "QPL" /* compiler */ "LGPLv2" /* library */ ];
|
||||
description = "OCaml, the most popular variant of the Caml language";
|
||||
|
||||
longDescription =
|
||||
''
|
||||
OCaml is the most popular variant of the Caml language. From a
|
||||
language standpoint, it extends the core Caml language with a
|
||||
fully-fledged object-oriented layer, as well as a powerful module
|
||||
system, all connected by a sound, polymorphic type system featuring
|
||||
type inference.
|
||||
|
||||
The OCaml system is an industrial-strength implementation of this
|
||||
language, featuring a high-performance native-code compiler (ocamlopt)
|
||||
for 9 processor architectures (IA32, PowerPC, AMD64, Alpha, Sparc,
|
||||
Mips, IA64, HPPA, StrongArm), as well as a bytecode compiler (ocamlc)
|
||||
and an interactive read-eval-print loop (ocaml) for quick development
|
||||
and portability. The OCaml distribution includes a comprehensive
|
||||
standard library, a replay debugger (ocamldebug), lexer (ocamllex) and
|
||||
parser (ocamlyacc) generators, a pre-processor pretty-printer (camlp4)
|
||||
and a documentation generator (ocamldoc).
|
||||
'';
|
||||
|
||||
platforms = stdenv.lib.platforms.linux ++ stdenv.lib.platforms.darwin;
|
||||
};
|
||||
|
||||
}
|
@ -1,9 +1,9 @@
|
||||
rec {
|
||||
version="1.0.57";
|
||||
name="sbcl-1.0.57";
|
||||
hash="1vvifyq0lapx6p6wz6jknsgch3lbyr7m785844wdgkdx2hh8ch51";
|
||||
url="http://downloads.sourceforge.net/project/sbcl/sbcl/1.0.57/sbcl-1.0.57-source.tar.bz2";
|
||||
advertisedUrl="http://downloads.sourceforge.net/project/sbcl/sbcl/1.0.57/sbcl-1.0.57-source.tar.bz2";
|
||||
version="1.0.58";
|
||||
name="sbcl-1.0.58";
|
||||
hash="0ifr96hy5ax5c5iv7igwgkwcqb3pwrc4ism957pkfb5yy39p4yc1";
|
||||
url="http://downloads.sourceforge.net/project/sbcl/sbcl/1.0.58/sbcl-1.0.58-source.tar.bz2";
|
||||
advertisedUrl="http://downloads.sourceforge.net/project/sbcl/sbcl/1.0.58/sbcl-1.0.58-source.tar.bz2";
|
||||
|
||||
|
||||
}
|
||||
|
20
pkgs/development/interpreters/cython/default.nix
Normal file
20
pkgs/development/interpreters/cython/default.nix
Normal file
@ -0,0 +1,20 @@
|
||||
{ stdenv, fetchurl, python, pkgconfig }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "cython-0.16";
|
||||
|
||||
src = fetchurl {
|
||||
url = http://www.cython.org/release/Cython-0.16.tar.gz;
|
||||
sha256 = "1yz6jwv25xx5mbr2nm4l7mi65gvpm63dzi3vrw73p51wbpy525lp";
|
||||
};
|
||||
|
||||
buildPhase = "python setup.py build --build-base $out";
|
||||
|
||||
installPhase = "python setup.py install --prefix=$out";
|
||||
|
||||
buildInputs = [ python pkgconfig ];
|
||||
|
||||
meta = {
|
||||
description = "An interpreter to help writing C extensions for Python";
|
||||
};
|
||||
}
|
@ -81,10 +81,31 @@
|
||||
|
||||
//
|
||||
|
||||
(stdenv.lib.optionalAttrs stdenv.isSunOS {
|
||||
# TODO: Move me above.
|
||||
configureFlags =
|
||||
[
|
||||
# Make sure the right <gmp.h> is found, and not the incompatible
|
||||
# /usr/include/mp.h from OpenSolaris. See
|
||||
# <https://lists.gnu.org/archive/html/hydra-users/2012-08/msg00000.html>
|
||||
# for details.
|
||||
"--with-libgmp-prefix=${gmp}"
|
||||
|
||||
# Same for these (?).
|
||||
"--with-libreadline-prefix=${readline}"
|
||||
"--with-libunistring-prefix=${libunistring}"
|
||||
|
||||
# See below.
|
||||
"--without-threads"
|
||||
];
|
||||
})
|
||||
|
||||
//
|
||||
|
||||
(if stdenv.isFreeBSD
|
||||
then {
|
||||
# XXX: Thread support is currently broken on FreeBSD (namely the
|
||||
# `SCM_I_IS_THREAD' assertion in `scm_spawn_thread' is hit.)
|
||||
# XXX: Thread support is currently broken on FreeBSD and Solaris (namely
|
||||
# the `SCM_I_IS_THREAD' assertion in `scm_spawn_thread' is hit.)
|
||||
configureFlags = [ "--without-threads" ];
|
||||
}
|
||||
else {}))
|
||||
|
@ -3,10 +3,10 @@ libX11, graphicsmagick, pcre, liblapack, texLive, pkgconfig, mesa, fltk,
|
||||
fftw, fftwSinglePrec, zlib, curl, qrupdate }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "octave-3.6.1";
|
||||
name = "octave-3.6.2";
|
||||
src = fetchurl {
|
||||
url = "mirror://gnu/octave/${name}.tar.bz2";
|
||||
sha256 = "1xmd9rqpwzn6z808i3brw1w9lh083vpjg046cj4gg3qdazkkw1zq";
|
||||
sha256 = "1bn48ldhx585iyrylnz59b6mb3wlpvmz2i3ri8q75s5ys29rpdhb";
|
||||
};
|
||||
|
||||
buildInputs = [ gfortran readline ncurses perl flex texinfo qhull libX11
|
||||
|
@ -8,7 +8,7 @@ in
|
||||
|
||||
composableDerivation {} ( fixed : let inherit (fixed.fixed) version; in {
|
||||
|
||||
version = "5.3.14";
|
||||
version = "5.3.15";
|
||||
|
||||
name = "php-${version}";
|
||||
|
||||
@ -149,15 +149,12 @@ composableDerivation {} ( fixed : let inherit (fixed.fixed) version; in {
|
||||
|
||||
installPhase = ''
|
||||
unset installPhase; installPhase;
|
||||
cp php.ini-${ if builtins.lessThan (builtins.compareVersions version "5.3") 0
|
||||
then "recommended" /* < PHP 5.3 */
|
||||
else "production" /* >= PHP 5.3 */
|
||||
} $iniFile
|
||||
cp php.ini-production $iniFile
|
||||
'';
|
||||
|
||||
src = args.fetchurl {
|
||||
url = "http://nl.php.net/get/php-${version}.tar.bz2/from/this/mirror";
|
||||
sha256 = "1cqw0knkrb7wn49ki5kcly4i0hjnd12sf9l4rhk0vny5hdp5n1y8";
|
||||
sha256 = "1vzij845n2akh2lkpacgdc5r0f7nw6pk9l9vi1h8l8k4krjjbdzr";
|
||||
name = "php-${version}.tar.bz2";
|
||||
};
|
||||
|
||||
|
@ -1,26 +1,19 @@
|
||||
{ stdenv, fetchurl, builderDefs, python }:
|
||||
{ stdenv, fetchurl, pythonPackages }:
|
||||
|
||||
let
|
||||
let version = "0.9.5.1.1"; in
|
||||
|
||||
localDefs = builderDefs.passthru.function {
|
||||
pythonPackages.buildPythonPackage rec {
|
||||
name = "pyrex-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = http://www.cosc.canterbury.ac.nz/greg.ewing/python/Pyrex/oldtar/Pyrex-0.9.5.1.1.tar.gz;
|
||||
sha256 = "0lxxvn4mjfb83swcbqb5908q4iy53w4ip5i0f9angm2va1jyhd3z";
|
||||
};
|
||||
src = fetchurl {
|
||||
url = "http://www.cosc.canterbury.ac.nz/greg.ewing/python/Pyrex/oldtar/Pyrex-${version}.tar.gz";
|
||||
sha256 = "0lxxvn4mjfb83swcbqb5908q4iy53w4ip5i0f9angm2va1jyhd3z";
|
||||
};
|
||||
|
||||
buildInputs = [python];
|
||||
doCheck = false;
|
||||
|
||||
};
|
||||
|
||||
in with localDefs;
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "pyrex-0.9.5.1.1";
|
||||
builder = writeScript (name + "-builder")
|
||||
(textClosure localDefs [installPythonPackage doForceShare]);
|
||||
meta = {
|
||||
description = "Python package compiler or something like that";
|
||||
inherit src;
|
||||
homepage = http://www.cosc.canterbury.ac.nz/greg.ewing/python/Pyrex/;
|
||||
description = "A language for writing Python extension modules";
|
||||
};
|
||||
}
|
||||
|
@ -1,26 +1,19 @@
|
||||
{ stdenv, fetchurl, builderDefs, python }:
|
||||
{ stdenv, fetchurl, pythonPackages }:
|
||||
|
||||
let
|
||||
let version = "0.9.6.4"; in
|
||||
|
||||
localDefs = builderDefs.passthru.function {
|
||||
|
||||
src = fetchurl {
|
||||
url = http://www.cosc.canterbury.ac.nz/greg.ewing/python/Pyrex/oldtar/Pyrex-0.9.6.4.tar.gz;
|
||||
sha256 = "18pd9f8al3l6i27cc0ddhgg7hxf28lnfs75x4a8jzscydxgiq5a8";
|
||||
};
|
||||
|
||||
buildInputs = [python];
|
||||
pythonPackages.buildPythonPackage rec {
|
||||
name = "pyrex-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://www.cosc.canterbury.ac.nz/greg.ewing/python/Pyrex/oldtar/Pyrex-${version}.tar.gz";
|
||||
sha256 = "18pd9f8al3l6i27cc0ddhgg7hxf28lnfs75x4a8jzscydxgiq5a8";
|
||||
};
|
||||
|
||||
in with localDefs;
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "pyrex-0.9.6.4";
|
||||
builder = writeScript (name + "-builder")
|
||||
(textClosure localDefs [installPythonPackage doForceShare]);
|
||||
doCheck = false;
|
||||
|
||||
meta = {
|
||||
description = "Python package compiler or something like that";
|
||||
inherit src;
|
||||
homepage = http://www.cosc.canterbury.ac.nz/greg.ewing/python/Pyrex/;
|
||||
description = "A language for writing Python extension modules";
|
||||
};
|
||||
}
|
||||
|
@ -1,15 +1,19 @@
|
||||
{fetchurl, stdenv, builderDefs, stringsWithDeps, singlePrecision ? false}:
|
||||
let localDefs = builderDefs.passthru.function {
|
||||
{fetchurl, stdenv, builderDefs, stringsWithDeps, singlePrecision ? false, pthreads ? false}:
|
||||
let
|
||||
version = "3.3.2";
|
||||
localDefs = builderDefs.passthru.function {
|
||||
src =
|
||||
fetchurl {
|
||||
url = ftp://ftp.fftw.org/pub/fftw/fftw-3.2.2.tar.gz;
|
||||
sha256 = "13vnglardq413q2518zi4a8pam3znydrz28m9w09kss9xrjsx9va";
|
||||
url = "ftp://ftp.fftw.org/pub/fftw/fftw-${version}.tar.gz";
|
||||
sha256 = "b1236a780ca6e66fc5f8eda6ef0665d680e8253d9f01d7bf211b714a50032d01";
|
||||
};
|
||||
buildInputs = [];
|
||||
configureFlags = ["--enable-shared" "--enable-openmp"]
|
||||
configureFlags = ["--enable-shared"]
|
||||
# some distros seem to be shipping both versions within the same package?
|
||||
# why does --enable-float still result in ..3f.so instead of ..3.so?
|
||||
++ (if singlePrecision then [ "--enable-single" ] else [ ])
|
||||
++ (stdenv.lib.optional (!pthreads) "--enable-openmp")
|
||||
++ (stdenv.lib.optional pthreads "--enable-threads")
|
||||
# I think all i686 has sse
|
||||
++ (if (stdenv.isi686 || stdenv.isx86_64) && singlePrecision then [ "--enable-sse" ] else [ ])
|
||||
# I think all x86_64 has sse2
|
||||
@ -18,8 +22,8 @@ let localDefs = builderDefs.passthru.function {
|
||||
};
|
||||
in with localDefs;
|
||||
stdenv.mkDerivation {
|
||||
name = "fftw-3.2.2" + ( if singlePrecision then "-single" else "-double" );
|
||||
builder = writeScript "fftw-3.2.1-builder"
|
||||
name = "fftw-3.3.2" + ( if singlePrecision then "-single" else "-double" );
|
||||
builder = writeScript "fftw-3.3.2-builder"
|
||||
(textClosure localDefs [doConfigure doMakeInstall doForceShare]);
|
||||
meta = {
|
||||
description = "Fastest Fourier Transform in the West library";
|
||||
|
@ -1,15 +1,15 @@
|
||||
{ fetchurl, stdenv, zlib, lzo, libtasn1, nettle
|
||||
, guileBindings, guile, perl, psmisc }:
|
||||
, guileBindings, guile, perl }:
|
||||
|
||||
assert guileBindings -> guile != null;
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
stdenv.mkDerivation (rec {
|
||||
|
||||
name = "gnutls-3.0.18";
|
||||
name = "gnutls-3.0.22";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnu/gnutls/${name}.tar.xz";
|
||||
sha256 = "1ynqnj1j6rrzplk2i64dik34829r0y7lwk4qlvjx993q3mj7z863";
|
||||
sha256 = "1pp90fm27qi5cd0pq18xcmnl79xcbfwxc54bg1xi1wv0vryqdpcr";
|
||||
};
|
||||
|
||||
configurePhase = ''
|
||||
@ -29,13 +29,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
propagatedBuildInputs = [ nettle libtasn1 ];
|
||||
|
||||
# XXX: Disable tests on non-Linux because of the `mini-loss-time' hack
|
||||
# below, which is Linux-specific.
|
||||
doCheck = stdenv.isLinux;
|
||||
|
||||
postCheck =
|
||||
# Kill a process that's left behind.
|
||||
stdenv.lib.optionalString doCheck "${psmisc}/bin/killall mini-loss-time";
|
||||
doCheck = true;
|
||||
|
||||
meta = {
|
||||
description = "The GNU Transport Layer Security Library";
|
||||
@ -60,3 +54,10 @@ stdenv.mkDerivation rec {
|
||||
maintainers = [ stdenv.lib.maintainers.ludo ];
|
||||
};
|
||||
}
|
||||
|
||||
//
|
||||
|
||||
(stdenv.lib.optionalAttrs stdenv.isFreeBSD {
|
||||
# FreeBSD doesn't have <alloca.h>, and Gnulib's `alloca' module isn't used.
|
||||
patches = [ ./guile-gnulib-includes.patch ];
|
||||
}))
|
||||
|
@ -0,0 +1,17 @@
|
||||
commit 699ae6ef085c699dd5f3fb460b0f8a2408cc2860
|
||||
Author: Simon Josefsson <simon@josefsson.org>
|
||||
Date: Thu Aug 9 15:24:11 2012 +0200
|
||||
|
||||
Add gnulib -I's to guile-snarf command.
|
||||
|
||||
--- gnutls-3.0.22/guile/src/Makefile.in 2012-08-04 20:52:39.000000000 +0200
|
||||
+++ gnutls-3.0.22/guile/src/Makefile.in 2012-08-11 21:55:20.000000000 +0200
|
||||
@@ -1564,7 +1564,7 @@ AM_CPPFLAGS = \
|
||||
# `$(GUILE_CFLAGS)' may contain a series of `-I' switches so it must be
|
||||
# included here, even though we'd really want `$(GUILE_CPPFLAGS)'.
|
||||
snarfcppopts = $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
|
||||
- $(CFLAGS) $(AM_CFLAGS) $(GUILE_CFLAGS)
|
||||
+ $(CFLAGS) $(guile_gnutls_v_2_la_CFLAGS)
|
||||
|
||||
all: $(BUILT_SOURCES)
|
||||
$(MAKE) $(AM_MAKEFLAGS) all-am
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user