Merge branch stdenv-updates into x-updates

x-updates is supposed to merge after stdenv-updates, so let's test it

Conflicts:
	pkgs/development/libraries/gtk+/2.x.nix (both updated, taking newer)
	pkgs/development/libraries/mesa/default.nix (taking nativeBuildInputs)
This commit is contained in:
Vladimír Čunát 2013-02-21 12:41:13 +01:00
commit 0d72174dbd
609 changed files with 5410 additions and 7636 deletions

View File

@ -41,7 +41,7 @@ stdenv.mkDerivation {
# Then build the plugins.
(
buildNativeInputs="$out $buildNativeInputs" # to find audacious
nativeBuildInputs="$out $nativeBuildInputs" # to find audacious
source $stdenv/setup
rm -rfv audacious-*
src=$pluginsSrc

View File

@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
patches = [ ./id3v2-0.1.11-track-bad-free.patch ];
buildNativeInputs = [ groff ];
nativeBuildInputs = [ groff ];
buildInputs = [ id3lib ];
configurePhase = ''

View File

@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
buildInputs = [ alsaLib boost fftwSinglePrec fltk jackaudio libsndfile mesa
minixml zlib ];
buildNativeInputs = [ cmake pkgconfig ];
nativeBuildInputs = [ cmake pkgconfig ];
preConfigure = "cd src";

View File

@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
};
buildInputs = [ alsaLib fftw fltk13 minixml zlib ];
buildNativeInputs = [ cmake pkgconfig ];
nativeBuildInputs = [ cmake pkgconfig ];
patches = [
(fetchurl {

View File

@ -1,11 +1,11 @@
{ fetchurl, stdenv }:
stdenv.mkDerivation rec {
name = "ed-1.5";
name = "ed-1.7";
src = fetchurl {
url = "mirror://gnu/ed/${name}.tar.gz";
sha256 = "18gvhyhwpabmgv4lh21lg8vl3z7acdyhh2mr2kj9g75wksj39pcp";
sha256 = "0c908wb5pm48rjrrfbm5dhrqzys8f1dbvi90dn0vgwjzk80l2hl9";
};
/* FIXME: Tests currently fail on Darwin:

View File

@ -1,27 +0,0 @@
source $stdenv/setup
preConfigure() {
libc=$(cat ${NIX_GCC}/nix-support/orig-libc)
echo "libc: $libc"
case "${system}" in
x86_64-*) glibclibdir=lib64 ;;
*) glibclibdir=lib ;;
esac
for i in src/s/*.h src/m/*.h; do
substituteInPlace $i \
--replace /usr/${glibclibdir}/crt1.o $libc/${glibclibdir}/crt1.o \
--replace /usr/${glibclibdir}/crti.o $libc/${glibclibdir}/crti.o \
--replace /usr/${glibclibdir}/crtn.o $libc/${glibclibdir}/crtn.o \
--replace /usr/lib/crt1.o $libc/${glibclibdir}/crt1.o \
--replace /usr/lib/crti.o $libc/${glibclibdir}/crti.o \
--replace /usr/lib/crtn.o $libc/${glibclibdir}/crtn.o
done
for i in Makefile.in ./src/Makefile.in ./lib-src/Makefile.in ./leim/Makefile.in; do
substituteInPlace $i --replace /bin/pwd pwd
done
}
genericBuild

View File

@ -1,58 +0,0 @@
{ xawSupport ? true
, xpmSupport ? true
, xaw3dSupport ? false
, gtkGUI ? false
, stdenv, fetchurl, x11, libXaw ? null, libXpm ? null, Xaw3d ? null
, pkgconfig ? null, gtk ? null
, ncurses
}:
assert xawSupport && !xaw3dSupport -> libXaw != null;
assert xawSupport && xaw3dSupport -> Xaw3d != null;
assert xpmSupport -> libXpm != null;
assert gtkGUI -> pkgconfig != null && gtk != null;
stdenv.mkDerivation rec {
name = "emacs-22.3";
builder = ./builder.sh;
src = fetchurl {
url = "mirror://gnu/emacs/${name}.tar.gz";
sha256 = "05hd89bchcpwzcx5la0alcp0wb7xywvnf98dxrshrqlfvccvgnbv";
};
buildInputs = [ncurses x11]
++ stdenv.lib.optional xawSupport (if xaw3dSupport then Xaw3d else libXaw)
++ stdenv.lib.optional xpmSupport libXpm
++ stdenv.lib.optionals gtkGUI [pkgconfig gtk];
configureFlags =
stdenv.lib.optional gtkGUI "--with-x-toolkit=gtk";
postInstall = ''
cat >$out/share/emacs/site-lisp/site-start.el <<EOF
;; nixos specific load-path
(when (getenv "NIX_PROFILES") (setq load-path
(append (reverse (mapcar (lambda (x) (concat x "/share/emacs/site-lisp/"))
(split-string (getenv "NIX_PROFILES"))))
load-path)))
EOF
'';
meta = {
description = "GNU Emacs, *the* text editor";
longDescription = ''
GNU Emacs is an extensible, customizable text editorand more.
At its core is an interpreter for Emacs Lisp, a dialect of the
Lisp programming language with extensions to support text
editing.
'';
homepage = http://www.gnu.org/software/emacs/;
license = "GPLv3+";
platforms = stdenv.lib.platforms.all;
};
}

View File

@ -0,0 +1,26 @@
{ clangStdenv, fetchgit, llvm, clangUnwrapped }:
clangStdenv.mkDerivation {
name = "emacs-clang-complete-async-20130218";
src = fetchgit {
url = "git://github.com/Golevka/emacs-clang-complete-async.git";
rev = "f01488971ec8b5752780d130fb84de0c16a46f31";
sha256 = "1c8zqi6axbsb951azz9iqx3j52j30nd9ypv396hvids3g02cirrf";
};
buildInputs = [ llvm clangUnwrapped ];
installPhase = ''
mkdir -p $out/bin
mkdir -p $out/share/emacs/site-lisp
install -m 755 clang-complete $out/bin
install -m 644 auto-complete-clang-async.el $out/share/emacs/site-lisp
'';
meta = {
homepage = "https://github.com/Golevka/emacs-clang-complete-async";
description = "An emacs plugin to complete C and C++ code using libclang";
license = "GPLv3+";
};
}

View File

@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
};
buildInputs = [ emacs ];
buildNativeInputs = [ texinfo texLive ];
nativeBuildInputs = [ texinfo texLive ];
configurePhase =
'' sed -i mk/default.mk \

View File

@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
buildInputs = [ kdevplatform kdebase_workspace okteta ];
buildNativeInputs = [ cmake pkgconfig automoc4 shared_mime_info gettext perl ];
nativeBuildInputs = [ cmake pkgconfig automoc4 shared_mime_info gettext perl ];
patches =
[ ( fetchurl {

View File

@ -8,7 +8,7 @@ stdenv.mkDerivation rec {
sha256 = "0nx5fmjrxrndnzvknxnybd8qh15jzfxzbny2rljq3amjw02y9lc2";
};
buildNativeInputs = [ cmake gettext ];
nativeBuildInputs = [ cmake gettext ];
buildInputs = [ kdelibs ];
# for KDE 4.7 the nl translations fail since kile-2.1.2

View File

@ -13,7 +13,7 @@ composableDerivation {} {
configureFlags = ["--enable-gui=auto" "--with-features=${args.features}"];
buildNativeInputs = [ncurses pkgconfig]
nativeBuildInputs = [ncurses pkgconfig]
++ [ gtk libX11 libXext libSM libXpm libXt libXaw libXau libXmu glib
libICE ];
@ -27,11 +27,11 @@ composableDerivation {} {
// edf { name = "xsmp"; } #Disable XSMP session management
// edf { name = "xsmp_interact"; } #Disable XSMP interaction
// edf { name = "mzscheme"; } #Include MzScheme interpreter.
// edf { name = "perl"; feat = "perlinterp"; enable = { buildNativeInputs = [perl]; };} #Include Perl interpreter.
// edf { name = "python"; feat = "pythoninterp"; enable = { buildNativeInputs = [python]; }; } #Include Python interpreter.
// edf { name = "tcl"; enable = { buildNativeInputs = [tcl]; }; } #Include Tcl interpreter.
// edf { name = "ruby"; feat = "rubyinterp"; enable = { buildNativeInputs = [ruby]; };} #Include Ruby interpreter.
// edf { name = "lua" ; feat = "luainterp"; enable = { buildNativeInputs = [lua]; configureFlags = ["--with-lua-prefix=${args.lua}"];};}
// edf { name = "perl"; feat = "perlinterp"; enable = { nativeBuildInputs = [perl]; };} #Include Perl interpreter.
// edf { name = "python"; feat = "pythoninterp"; enable = { nativeBuildInputs = [python]; }; } #Include Python interpreter.
// edf { name = "tcl"; enable = { nativeBuildInputs = [tcl]; }; } #Include Tcl interpreter.
// edf { name = "ruby"; feat = "rubyinterp"; enable = { nativeBuildInputs = [ruby]; };} #Include Ruby interpreter.
// edf { name = "lua" ; feat = "luainterp"; enable = { nativeBuildInputs = [lua]; configureFlags = ["--with-lua-prefix=${args.lua}"];};}
// edf { name = "cscope"; } #Include cscope interface.
// edf { name = "workshop"; } #Include Sun Visual Workshop support.
// edf { name = "netbeans"; } #Disable NetBeans integration support.
@ -42,7 +42,7 @@ composableDerivation {} {
// edf { name = "fontset"; } #Include X fontset output support.
// edf { name = "acl"; } #Don't check for ACL support.
// edf { name = "gpm"; } #Don't use gpm (Linux mouse daemon).
// edf { name = "nls"; enable = {buildNativeInputs = [gettext];}; } #Don't support NLS (gettext()).
// edf { name = "nls"; enable = {nativeBuildInputs = [gettext];}; } #Don't support NLS (gettext()).
;
cfg = {
@ -70,11 +70,11 @@ composableDerivation {} {
postInstall = "
rpath=`patchelf --print-rpath \$out/bin/vim`;
for i in $\buildNativeInputs; do
for i in \$nativeBuildInputs; do
echo adding \$i/lib
rpath=\$rpath:\$i/lib
done
echo \$buildNativeInputs
echo \$nativeBuildInputs
echo \$rpath
patchelf --set-rpath \$rpath \$out/bin/{vim,gvim}
";

View File

@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
};
buildInputs = [ ncurses pkgconfig ];
buildNativeInputs = [ gettext ];
nativeBuildInputs = [ gettext ];
configureFlags = [
"--enable-multibyte"

View File

@ -9,10 +9,10 @@ stdenv.mkDerivation rec {
};
buildInputs = [ ncurses boehmgc ];
buildNativeInputs = [ help2man perl ];
nativeBuildInputs = [ help2man perl ];
# `help2man' wants to run Zile, which fails when cross-compiling.
crossAttrs.buildNativeInputs = [];
crossAttrs.nativeBuildInputs = [];
# Tests can't be run because most of them rely on the ability to
# fiddle with the terminal.

View File

@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
patches = [ ./install.patch ];
buildNativeInputs = [ cmake pkgconfig ];
nativeBuildInputs = [ cmake pkgconfig ];
NIX_LDFLAGS = "-llcms -ljpeg";

View File

@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
libxslt docbook_xsl libart_lgpl
] ++ stdenv.lib.optional withGNOME libgnomeui;
buildNativeInputs = [ pkgconfig intltool perl ];
nativeBuildInputs = [ pkgconfig intltool perl ];
configureFlags = stdenv.lib.optionalString withGNOME "--enable-gnome";

View File

@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
sha256 = "1prnaywnbv0xpw6knqagzc4gn1vsj9kw2hvdasjwknc9ljiyl721";
};
buildNativeInputs = [ cmake automoc4 pkgconfig ];
nativeBuildInputs = [ cmake automoc4 pkgconfig ];
buildInputs = [ qt4 kdelibs phonon qimageblitz qca2 eigen lcms libjpeg libtiff
jasper libgphoto2 kdepimlibs gettext soprano liblqr1 lensfun qjson libkdcraw

View File

@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
buildInputs = [djvulibre qt4];
buildNativeInputs = [ pkgconfig ];
nativeBuildInputs = [ pkgconfig ];
patches = [ ./djview4-qt-4.8.patch ];

View File

@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
sha256 = "1riia87v5nsx858xnlvc7sspr1p36adjqrdch1255ikr5xbv6h6x";
};
buildNativeInputs = [ pkgconfig which ];
nativeBuildInputs = [ pkgconfig which ];
buildInputs =
[ libexif libjpeg libpng libungif freetype fontconfig libtiff libwebp
imagemagick curl saneBackends

View File

@ -36,7 +36,7 @@ let
libLQR = pluginDerivation {
name = "liblqr-1-0.4.1";
# required by lqrPlugin, you don't havet to install this lib explicitely
buildInputs = [ gimp ] ++ gimp.buildNativeInputs;
buildInputs = [ gimp ] ++ gimp.nativeBuildInputs;
src = fetchurl {
url = http://registry.gimp.org/files/liblqr-1-0.4.1.tar.bz2;
sha256 = "02g90wag7xi5rjlmwq8h0qs666b1i2sa90s4303hmym40il33nlz";
@ -50,7 +50,7 @@ rec {
Video
*/
name = "gap-2.6.0";
buildInputs = [ gimp pkgconfig glib pkgs.intltool gimp.gtk ] ++ gimp.buildNativeInputs;
buildInputs = [ gimp pkgconfig glib pkgs.intltool gimp.gtk ] ++ gimp.nativeBuildInputs;
src = fetchurl {
url = ftp://ftp.gimp.org/pub/gimp/plug-ins/v2.6/gap/gimp-gap-2.6.0.tar.bz2;
sha256 = "1jic7ixcmsn4kx2cn32nc5087rk6g8xsrz022xy11yfmgvhzb0ql";
@ -74,7 +74,7 @@ rec {
Filters/Generic/FFT Inverse
*/
name = "fourier-0.3.3";
buildInputs = [ gimp pkgs.fftwSinglePrec pkgconfig glib] ++ gimp.buildNativeInputs;
buildInputs = [ gimp pkgs.fftwSinglePrec pkgconfig glib] ++ gimp.nativeBuildInputs;
postInstall = "fail";
installPhase = "installPlugins fourier";
src = fetchurl {
@ -91,7 +91,7 @@ rec {
Filters/Enhance/Smart remove selection
*/
name = "resynthesizer-0.16";
buildInputs = [ gimp pkgs.fftw ] ++ gimp.buildNativeInputs;
buildInputs = [ gimp pkgs.fftw ] ++ gimp.nativeBuildInputs;
src = fetchurl {
url = http://www.logarithmic.net/pfh-files/resynthesizer/resynthesizer-0.16.tar.gz;
sha256 = "1k90a1jzswxmajn56rdxa4r60v9v34fmqsiwfdxqcvx3yf4yq96x";
@ -105,7 +105,7 @@ rec {
texturize = pluginDerivation {
name = "texturize-2.1";
buildInputs = [ gimp ] ++ gimp.buildNativeInputs;
buildInputs = [ gimp ] ++ gimp.nativeBuildInputs;
src = fetchurl {
url = http://prdownloads.sourceforge.net/gimp-texturize/texturize-2.1_src.tgz;
sha256 = "0cdjq25g3yfxx6bzx6nid21kq659s1vl9id4wxyjs2dhcv229cg3";
@ -118,7 +118,7 @@ rec {
Filters/Enhance/Wavelet sharpen
*/
name = "wavelet-sharpen-0.1.2";
buildInputs = [ gimp ] ++ gimp.buildNativeInputs;
buildInputs = [ gimp ] ++ gimp.nativeBuildInputs;
src = fetchurl {
url = http://registry.gimp.org/files/wavelet-sharpen-0.1.2.tar.gz;
sha256 = "0vql1k67i21g5ivaa1jh56rg427m0icrkpryrhg75nscpirfxxqw";
@ -131,7 +131,7 @@ rec {
Layer/Liquid Rescale
*/
name = "lqr-plugin-0.6.1";
buildInputs = [ pkgconfig libLQR gimp ] ++ gimp.buildNativeInputs;
buildInputs = [ pkgconfig libLQR gimp ] ++ gimp.nativeBuildInputs;
src = fetchurl {
url = http://registry.gimp.org/files/gimp-lqr-plugin-0.6.1.tar.bz2;
sha256 = "00hklkpcimcbpjly4rjhfipaw096cpy768g9wixglwrsyqhil7l9";
@ -146,7 +146,7 @@ rec {
let imagemagick = pkgs.imagemagickBig; # maybe the non big version is enough?
in pluginDerivation {
name = "gmic-1.3.2.0";
buildInputs = [ imagemagick pkgconfig gimp pkgs.fftwSinglePrec ] ++ gimp.buildNativeInputs;
buildInputs = [ imagemagick pkgconfig gimp pkgs.fftwSinglePrec ] ++ gimp.nativeBuildInputs;
src = fetchurl {
url = http://dfn.dl.sourceforge.net/sourceforge/gmic/gmic_1.3.2.0.tar.gz;
sha256 = "0mxq664vzzc2l6k6sqm9syp34mihhi262i6fixk1g12lmc28797h";
@ -172,7 +172,7 @@ rec {
# or use the binary
ufraw = pluginDerivation {
name = "ufraw-0.15";
buildInputs = [pkgs.lcms gimp] ++ gimp.buildNativeInputs;
buildInputs = [pkgs.lcms gimp] ++ gimp.nativeBuildInputs;
# --enable-mime - install mime files, see README for more information
# --enable-extras - build extra (dcraw, nikon-curve) executables
# --enable-dst-correction - enable DST correction for file timestamps.

View File

@ -19,7 +19,7 @@ stdenv.mkDerivation {
zlib libtool
];
buildNativeInputs = [ xz ];
nativeBuildInputs = [ xz ];
postInstall = ''
sed -i 's/-ltiff.*'\'/\'/ $out/bin/*

View File

@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
buildInputs = [ panotools wxGTK libtiff libpng openexr boost tclap
exiv2 gettext ilmbase mesa freeglut glew libXmu libXi ];
buildNativeInputs = [ cmake pkgconfig ];
nativeBuildInputs = [ cmake pkgconfig ];
propagatedUserEnvPackages = [ enblendenfuse autopanosiftc ];

View File

@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
libksane libxslt gettext opencv libgpod gdk_pixbuf qjson
];
buildNativeInputs = [ pkgconfig cmake automoc4 ];
nativeBuildInputs = [ pkgconfig cmake automoc4 ];
meta = {
description = "Photo Management Program";

View File

@ -10,5 +10,5 @@ stdenv.mkDerivation rec {
buildInputs = [ kdelibs imlib ];
buildNativeInputs = [ cmake gettext pkgconfig ];
nativeBuildInputs = [ cmake gettext pkgconfig ];
}

View File

@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
'';
buildInputs = [saneBackends libX11 gtk pkgconfig] ++
(if (libusb != null) then [libusb] else []);
(if libusb != null then [libusb] else []);
meta = {
homepage = "http://www.sane-project.org/";

View File

@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
'';
buildInputs = [libpng saneBackends saneFrontends libX11 gtk pkgconfig ] ++
(if (libusb != null) then [libusb] else []);
(if libusb != null then [libusb] else []);
meta = {
homepage = http://www.sane-project.org/;

View File

@ -9,7 +9,7 @@ stdenv.mkDerivation {
sha256 = "05xbzq1i1vw2mdsv7zjqfpxfv3g1j0g5kks0gq6sh373xd6y8lyh";
};
buildNativeInputs = [ automake pkgconfig gettext perl zip ];
nativeBuildInputs = [ automake pkgconfig gettext perl zip ];
buildInputs = [ wxGTK gtk libxml2 freetype pango ];
configureFlags = "--disable-svnversion";

View File

@ -14,7 +14,7 @@ stdenv.mkDerivation {
buildInputs = [x11 libXpm libXmu libXi libXp Xaw3d libpng libjpeg];
buildNativeInputs = [ imake makeWrapper ];
nativeBuildInputs = [ imake makeWrapper ];
NIX_CFLAGS_COMPILE = "-I${libXpm}/include/X11";

View File

@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
pango libX11 xproto zlib poppler poppler_data
];
buildNativeInputs = [ autoconf automake libtool pkgconfig ];
nativeBuildInputs = [ autoconf automake libtool pkgconfig ];
# Build with poppler-0.18.x
patchFlags = "-p0";

View File

@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
inherit python;
buildNativeInputs = [ makeWrapper pkgconfig ];
nativeBuildInputs = [ makeWrapper pkgconfig ];
buildInputs =
[ python pyqt4 sip popplerQt4 libpng imagemagick libjpeg

View File

@ -13,7 +13,7 @@ stdenv.mkDerivation {
sha256 = "0bcpmnlk03382x577qbnbw3i6y08hr3qmg85pqj35scnl6van74c";
};
buildNativeInputs = [
nativeBuildInputs = [
glibc
glib
stdenv.gcc.gcc
@ -55,7 +55,7 @@ stdenv.mkDerivation {
chmod +x $out/bin/googleearth
fullPath=
for i in $buildNativeInputs; do
for i in $nativeBuildInputs; do
fullPath=$fullPath:$i/lib
done

View File

@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
sha256 = "08x1p8xhl65r79a6gn1fi63z1lspd5j55l05diiyzcwfxvqwsm47";
};
buildNativeInputs = [ pkgconfig gettext ];
nativeBuildInputs = [ pkgconfig gettext ];
buildInputs = [ libgphoto2 libexif popt libjpeg readline libtool ];
meta = {

View File

@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
buildInputs = [ kdelibs ];
buildNativeInputs = [ gettext ];
nativeBuildInputs = [ gettext ];
meta = with stdenv.lib; {
description = "KDE Wacom graphic tablet configuration tool";

View File

@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
buildInputs = [ neon libusb openssl udev avahi freeipmi ];
buildNativeInputs = [ pkgconfig ];
nativeBuildInputs = [ pkgconfig ];
configureFlags =
[ "--with-all"

View File

@ -7,7 +7,7 @@ stdenv.mkDerivation rec {
buildInputs = [ gdal qt4 flex bison proj geos x11 sqlite gsl pyqt4 qwt
fcgi ];
buildNativeInputs = [ cmake python];
nativeBuildInputs = [ cmake python];
patches = [ ./r14988.diff ];

View File

@ -8,7 +8,7 @@ stdenv.mkDerivation rec {
sha256 = "1yrf73r8mixskh8b531wb8dfs9z7rrw010xsrflhjhjmqh94h8mw";
};
buildNativeInputs = [ gettext ];
nativeBuildInputs = [ gettext ];
buildInputs = [ kdelibs kdebase_workspace ];

View File

@ -10,7 +10,7 @@ stdenv.mkDerivation {
sha256 = "0diy72sgiyvfl6bdy7k3qwv3ijx2z1y477smkk6jsbbd9fsp2lfg";
};
buildNativeInputs = [ cmake ];
nativeBuildInputs = [ cmake ];
meta = {
description = "GTD (getting things done) implementation";

View File

@ -69,7 +69,7 @@ stdenv.mkDerivation {
};
buildInputs = [ pkgconfig fuse devicemapper wxGTK nasm ];
makeFlags = if (wxGUI) then "" else "NOGUI=1";
makeFlags = if wxGUI then "" else "NOGUI=1";
meta = {
description = "Free Open-Source filesystem on-the-fly encryption";

View File

@ -14,7 +14,7 @@ stdenv.mkDerivation {
buildInputs = [ kdelibs ];
buildNativeInputs = [ gettext ];
nativeBuildInputs = [ gettext ];
meta = {
homepage = http://yakuake.kde.org;

View File

@ -117,7 +117,8 @@ in stdenv.mkDerivation rec {
patches = optional cupsSupport ./cups_allow_deprecated.patch
++ optional pulseSupport ./pulseaudio_array_bounds.patch
++ maybeFixPulseAudioBuild;
++ maybeFixPulseAudioBuild
++ [ ./glibc-2.16-use-siginfo_t.patch ];
postPatch = optionalString useOpenSSL ''
cat $opensslPatches | patch -p1 -d third_party/openssl/openssl

View File

@ -0,0 +1,27 @@
--- a/third_party/tcmalloc/chromium/src/base/linux_syscall_support.h.orig 2012-12-22 16:01:44.000000000 +0200
+++ b/third_party/tcmalloc/chromium/src/base/linux_syscall_support.h 2012-12-23 21:53:26.746069153 +0200
@@ -250,7 +250,7 @@
struct kernel_old_sigaction {
union {
void (*sa_handler_)(int);
- void (*sa_sigaction_)(int, struct siginfo *, void *);
+ void (*sa_sigaction_)(int, siginfo_t *, void *);
};
unsigned long sa_mask;
unsigned long sa_flags;
@@ -287,13 +287,13 @@
unsigned long sa_flags;
union {
void (*sa_handler_)(int);
- void (*sa_sigaction_)(int, struct siginfo *, void *);
+ void (*sa_sigaction_)(int, siginfo_t *, void *);
};
struct kernel_sigset_t sa_mask;
#else
union {
void (*sa_handler_)(int);
- void (*sa_sigaction_)(int, struct siginfo *, void *);
+ void (*sa_sigaction_)(int, siginfo_t *, void *);
};
unsigned long sa_flags;
void (*sa_restorer)(void);

View File

@ -21,12 +21,12 @@ stdenv.mkDerivation rec {
'';
crossAttrs = {
propagatedBuildInputs = [ ncurses.hostDrv zlib.hostDrv openssl.hostDrv ];
propagatedBuildInputs = [ ncurses.crossDrv zlib.crossDrv openssl.crossDrv ];
configureFlags = ''
--enable-finger --enable-html-highlight
--enable-gopher --enable-cgi --enable-bittorrent --enable-nntp
--with-openssl=${openssl.hostDrv}
--with-bzip2=${bzip2.hostDrv}
--with-openssl=${openssl.crossDrv}
--with-bzip2=${bzip2.crossDrv}
'';
};

View File

@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
++ stdenv.lib.optionals enableX11 [ libX11 libXau libXt ]
++ stdenv.lib.optional enableDirectFB [ directfb ];
buildNativeInputs = [ pkgconfig bzip2 ];
nativeBuildInputs = [ pkgconfig bzip2 ];
configureFlags = [ "--with-ssl" ]
++ stdenv.lib.optional (enableX11 || enableFB || enableDirectFB) "--enable-graphics"

View File

@ -15,7 +15,7 @@ stdenv.mkDerivation {
configureFlags = if sslSupport then "--with-ssl" else "";
buildInputs = [ ncurses gzip ] ++ stdenv.lib.optional sslSupport openssl;
buildNativeInputs = [ ncurses ];
nativeBuildInputs = [ ncurses ];
crossAttrs = {
configureFlags = "--enable-widec" +

View File

@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
buildInputs = [ kdelibs qca2 qoauth ];
buildNativeInputs = [ gettext pkgconfig shared_desktop_ontologies ];
nativeBuildInputs = [ gettext pkgconfig shared_desktop_ontologies ];
meta = with stdenv.lib; {
platforms = platforms.linux;

View File

@ -19,9 +19,10 @@ stdenv.mkDerivation rec {
sha256 = "1qx9f0kprf92r1wxl3sacykla0g04qsi0idypzz24b7xy9ix5579";
};
# Patch for the newer unstable boehm-gc 7.2alpha. Not all platforms use that
# alpha. At the time of writing this, boehm-gc-7.1 is the last stable.
patches = stdenv.lib.optional (boehmgc.name != "boehm-gc-7.1") [ ./newgc.patch ];
patches = [ ./glibc214.patch ]
# Patch for the newer unstable boehm-gc 7.2alpha. Not all platforms use that
# alpha. At the time of writing this, boehm-gc-7.1 is the last stable.
++ stdenv.lib.optional (boehmgc.name != "boehm-gc-7.1") [ ./newgc.patch ];
buildInputs = [ncurses boehmgc gettext zlib]
++ stdenv.lib.optional sslSupport openssl
@ -36,6 +37,8 @@ stdenv.mkDerivation rec {
substituteInPlace ./configure --replace /usr /no-such-path
'';
enableParallelBuilding = false;
meta = {
homepage = http://w3m.sourceforge.net/;
description = "A text-mode web browser";

View File

@ -0,0 +1,60 @@
http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/www-client/w3m/files/w3m-0.5.3-glibc214.patch?revision=1.1
--- a/istream.c.~1.27.~ 2011-01-04 18:22:22.000000000 +0900
+++ b/istream.c 2011-06-24 08:15:23.522990618 +0900
@@ -22,8 +22,8 @@
static void basic_close(int *handle);
static int basic_read(int *handle, char *buf, int len);
-static void file_close(struct file_handle *handle);
-static int file_read(struct file_handle *handle, char *buf, int len);
+static void file_close(struct afile_handle *handle);
+static int file_read(struct afile_handle *handle, char *buf, int len);
static int str_read(Str handle, char *buf, int len);
@@ -114,7 +114,7 @@
stream = New(union input_stream);
init_base_stream(&stream->base, STREAM_BUF_SIZE);
stream->file.type = IST_FILE;
- stream->file.handle = New(struct file_handle);
+ stream->file.handle = New(struct afile_handle);
stream->file.handle->f = f;
if (closep)
stream->file.handle->close = closep;
@@ -658,13 +658,13 @@
}
static void
-file_close(struct file_handle *handle)
+file_close(struct afile_handle *handle)
{
handle->close(handle->f);
}
static int
-file_read(struct file_handle *handle, char *buf, int len)
+file_read(struct afile_handle *handle, char *buf, int len)
{
return fread(buf, 1, len, handle->f);
}
--- a/istream.h.~1.12.~ 2003-10-21 01:41:56.000000000 +0900
+++ b/istream.h 2011-06-24 08:15:54.392991144 +0900
@@ -20,7 +20,7 @@
typedef struct stream_buffer *StreamBuffer;
-struct file_handle {
+struct afile_handle {
FILE *f;
void (*close) ();
};
@@ -53,7 +53,7 @@
struct file_stream {
struct stream_buffer stream;
- struct file_handle *handle;
+ struct afile_handle *handle;
char type;
char iseos;
int (*read) ();

View File

@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
buildInputs = [ gtk libglade libosip libexosip readline mediastreamer speex libsoup ];
buildNativeInputs = [ intltool pkgconfig ];
nativeBuildInputs = [ intltool pkgconfig ];
preConfigure = "rm -r mediastreamer2 oRTP";

View File

@ -0,0 +1,86 @@
http://pkgs.fedoraproject.org/gitweb/?p=psimedia.git;a=blob_plain;f=psimedia-remove-v4l.patch;hb=HEAD
--- a/gstprovider/deviceenum/deviceenum_unix.cpp
+++ b/gstprovider/deviceenum/deviceenum_unix.cpp
@@ -35,7 +35,7 @@
# include <sys/stat.h>
# include <dirent.h>
# include <sys/ioctl.h>
-# include <linux/videodev.h>
+# include <linux/videodev2.h>
#endif
namespace DeviceEnum {
@@ -478,72 +478,7 @@
// v4l detection scheme adapted from PWLib (used by Ekiga/Gnomemeeting)
static QList<Item> get_v4l_items()
{
-#ifdef Q_OS_LINUX
- QList<Item> out;
-
- QList<V4LName> list = get_v4l_names("/sys/class/video4linux", true);
- if(list.isEmpty())
- list = get_v4l_names("/proc/video/dev", false);
-
- // if we can't find anything, then do a raw scan for possibilities
- if(list.isEmpty())
- {
- QStringList possible = scan_for_videodevs("/dev");
- foreach(QString str, possible)
- {
- V4LName v;
- v.dev = str;
- list += v;
- }
- }
-
- for(int n = 0; n < list.count(); ++n)
- {
- V4LName &v = list[n];
-
- // if we already have a friendly name then we'll skip the confirm
- // in order to save resources. the only real drawback here that
- // I can think of is if the device isn't a capture type. but
- // what does it mean to have a V4L device that isn't capture??
- if(v.friendlyName.isEmpty())
- {
- int fd = open(QFile::encodeName(v.dev).data(), O_RDONLY | O_NONBLOCK);
- if(fd == -1)
- continue;
-
- // get video capabilities and close
- struct video_capability caps;
- memset(&caps, 0, sizeof(caps));
- int ret = ioctl(fd, VIDIOCGCAP, &caps);
- close(fd);
- if(ret == -1)
- continue;
-
- if(!(caps.type & VID_TYPE_CAPTURE))
- continue;
-
- v.friendlyName = caps.name;
- }
-
- Item i;
- i.type = Item::Video;
- i.dir = Item::Input;
- i.name = v.friendlyName;
- i.driver = "v4l";
- i.id = v.dev;
-
- // HACK
- if(v.friendlyName == "Labtec Webcam Notebook")
- i.explicitCaptureSize = QSize(640, 480);
-
- out += i;
- }
-
- return out;
-#else
- // return empty list if non-linux
return QList<Item>();
-#endif
}
static QList<Item> get_v4l2_items()

View File

@ -2,14 +2,14 @@
, glib, pkgconfig }:
stdenv.mkDerivation rec {
name = "psimedia";
name = "psimedia-1.0.3";
src = fetchurl {
url = "http://delta.affinix.com/download/psimedia/psimedia-1.0.3.tar.bz2";
url = "http://delta.affinix.com/download/psimedia/${name}.tar.bz2";
sha256 = "0fxjdz8afh75gfx2msysb1gss6zx578l3224jvc9jhm99w1ii781";
};
patches = [ ./glib-2.32.patch ];
patches = [ ./glib-2.32.patch ./linux-headers.patch ];
buildInputs = [ qt4 gstreamer gst_plugins_base liboil speex which glib pkgconfig ];

View File

@ -40,7 +40,7 @@ stdenv.mkDerivation rec {
cp -r * $out/libexec/skype/
fullPath=
for i in $buildNativeInputs; do
for i in $nativeBuildInputs; do
fullPath=$fullPath''${fullPath:+:}$i/lib
done

View File

@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
sha256 = "0fk65f7q75z3wm5h4wad7g5sm2j6r8v2845b74ycl29br78ki2hf";
};
buildNativeInputs = [pkgconfig libxslt];
nativeBuildInputs = [pkgconfig libxslt];
buildInputs = [ libxml2 dbus_glib sqlite libsoup libnice telepathy_glib gnutls ];
configureFlags = "--with-ca-certificates=/etc/ca-bundle.crt";

View File

@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
buildInputs = [ glib telepathy_glib dbus_glib pidgin ];
buildNativeInputs = [ pkgconfig libxslt ];
nativeBuildInputs = [ pkgconfig libxslt ];
meta = {
description = "A Telepathy connection manager based on libpurple";

View File

@ -20,7 +20,7 @@ let
text_ui = [ ktp.telepathy_logger_qt qt_gstreamer telepathy_logger ];
};
extraBuildNativeInputs = {
extraNativeBuildInputs = {
telepathy_logger_qt = [ flex bison ];
};
@ -37,7 +37,7 @@ let
inherit sha256;
};
buildNativeInputs = [ gettext pkgconfig ] ++ (stdenv.lib.attrByPath [ key ] [] extraBuildNativeInputs);
nativeBuildInputs = [ gettext pkgconfig ] ++ (stdenv.lib.attrByPath [ key ] [] extraNativeBuildInputs);
buildInputs = [ kdelibs telepathy_qt ]
++ stdenv.lib.optional (name != "ktp-common-internals") ktp.common_internals
++ (stdenv.lib.attrByPath [ key ] [] extraBuildInputs);

View File

@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
buildInputs = [ dbus_glib libxml2 sqlite telepathy_glib pkgconfig intltool ];
buildNativeInputs = [ libxslt ];
nativeBuildInputs = [ libxslt ];
configureFlags = "--enable-call";

View File

@ -11,5 +11,5 @@ stdenv.mkDerivation rec {
buildInputs = [ telepathy_glib ];
buildNativeInputs = [ pkgconfig libxslt ];
nativeBuildInputs = [ pkgconfig libxslt ];
}

View File

@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
sha256 = "11cmmdq31kivm6nsv61hxy3hxnnmbd8sj55xqwx9hyqzybh70dyf";
};
buildNativeInputs = [pkgconfigUpstream libxslt python];
nativeBuildInputs = [pkgconfigUpstream libxslt python];
buildInputs = [ libxml2 dbus_glib telepathy_glib sofia_sip];
meta = {

View File

@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
buildInputs = [ glib libxml2 telepathy_glib avahi libsoup libuuid gnutls
sqlite ];
buildNativeInputs = [ libxslt pkgconfigUpstream ];
nativeBuildInputs = [ libxslt pkgconfigUpstream ];
configureFlags = "--disable-avahi-tests";

View File

@ -3,11 +3,11 @@
}:
stdenv.mkDerivation rec {
name = "notmuch-0.14";
name = "notmuch-0.15";
src = fetchurl {
url = "http://notmuchmail.org/releases/${name}.tar.gz";
sha256 = "095e191dc0f3125c4fd98440fdf55050cba01b8e9f68245ffe0190a7f39ca753";
sha256 = "07bi87jxfh761b4fvcwf4svlksd7jlznnzhnsp983gdldkabg60q";
};
buildInputs = [ bash emacs gdb glib gmime gnupg1 pkgconfig talloc xapian ];
@ -65,7 +65,7 @@ stdenv.mkDerivation rec {
description = "Notmuch -- The mail indexer";
longDescription = "";
license = stdenv.lib.licenses.gpl3;
maintainers = with stdenv.lib.maintainers; [ chaoflow ];
maintainers = with stdenv.lib.maintainers; [ chaoflow garbas ];
platforms = stdenv.lib.platforms.gnu;
};
}

View File

@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
patches = [] ++ stdenv.lib.optional enableCopyDevicesPatch "./patches/copy-devices.diff";
buildInputs = stdenv.lib.optional enableACLs acl;
buildNativeInputs = [perl];
nativeBuildInputs = [perl];
meta = {
homepage = http://samba.anu.edu.au/rsync/;

View File

@ -27,7 +27,7 @@ stdenv.mkDerivation (rec {
done
'' else "";
dontStrip = if ! ocaml.nativeCompilers then true else false;
dontStrip = !ocaml.nativeCompilers;
meta = {
homepage = http://www.cis.upenn.edu/~bcpierce/unison/;

View File

@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
buildInputs = [ kdelibs qimageblitz kdepimlibs gpgme ];
buildNativeInputs = [ cmake gettext ];
nativeBuildInputs = [ cmake gettext ];
meta = {
description = "A multi-purpose note-taking application";

View File

@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
sha256 = "0q6ydi7hzrzwqzb38gikdh1l2zf8qp4i3nkgyb01148bjwrhvf21";
};
buildNativeInputs = [ cmake perl pkgconfig ];
nativeBuildInputs = [ cmake perl pkgconfig ];
buildInputs = [ kdelibs attica zlib libpng boost mesa kdepimlibs
createresources eigen qca2 exiv2 soprano marble lcms2 fontconfig freetype

View File

@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
};
buildInputs = [ kdepimlibs perl boost gpgme gmpxx libalkimia libofx libical ];
buildNativeInputs = [ cmake automoc4 gettext shared_mime_info pkgconfig ];
nativeBuildInputs = [ cmake automoc4 gettext shared_mime_info pkgconfig ];
KDEDIRS = libalkimia;

View File

@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
buildInputs = [ kdelibs grantlee qca2 libofx ];
buildNativeInputs = [ gettext ];
nativeBuildInputs = [ gettext ];
meta = {
inherit (kdelibs.meta) platforms;

View File

@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
buildInputs = [ qt4 eigen zlib openbabel mesa libX11 ];
buildNativeInputs = [ cmake pkgconfig ];
nativeBuildInputs = [ cmake pkgconfig ];
NIX_CFLAGS_COMPILE = "-include ${mesa}/include/GL/glu.h";

View File

@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
propagatedBuildInputs = [ cln ];
buildInputs = [ readline ];
buildNativeInputs = [ pkgconfig ];
nativeBuildInputs = [ pkgconfig ];
configureFlags = "--disable-rpath";

View File

@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
};
# Perl is only for the documentation
buildNativeInputs = [ perl ];
nativeBuildInputs = [ perl ];
patches = [ ./gcc43.patch ];

View File

@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
buildInputs = [ libxml2 freetype glew mesa qt4 libjpeg ];
buildNativeInputs = [ cmake makeWrapper ];
nativeBuildInputs = [ cmake makeWrapper ];
# FIXME: "make check" needs Docbook's DTD 4.4, among other things.
doCheck = false;

View File

@ -9,7 +9,7 @@ stdenv.mkDerivation {
};
buildInputs = [ zlib openssl readline sqlite ];
buildNativeInputs = [ tcl ];
nativeBuildInputs = [ tcl ];
doCheck = true;

View File

@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
buildInputs = [ apr aprutil subversion db4 kdelibs expat ];
buildNativeInputs = [ gettext ];
nativeBuildInputs = [ gettext ];
meta = {
description = "KDE SVN front-end";

View File

@ -1,11 +1,11 @@
{stdenv, fetchurl}:
{ stdenv, fetchurl }:
stdenv.mkDerivation rec {
name = "rcs-5.8";
name = "rcs-5.8.1";
src = fetchurl {
url = "mirror://gnu/rcs/${name}.tar.gz";
sha256 = "0q12nlghv4khxw5lk0y4949caghzg4jg0ripddi2h3q75vmfh6vh";
sha256 = "1b1y6s4gy3miv2bvx0z01kvnv58h35sw766lccdkxkalk43cml04";
};
doCheck = true;

View File

@ -8,7 +8,7 @@ stdenv.mkDerivation rec {
};
buildInputs = [ kdelibs phonon soprano shared_desktop_ontologies kdemultimedia taglib gettext ];
buildNativeInputs = [ cmake ];
nativeBuildInputs = [ cmake ];
meta = with stdenv.lib; {
description = "A media player for KDE based on Nepomuk and Phonon";

View File

@ -9,7 +9,7 @@ stdenv.mkDerivation rec{
};
buildInputs = [ libpng freetype libdvdread libxml2 zlib fribidi imagemagick ];
buildNativeInputs = [ pkgconfig ];
nativeBuildInputs = [ pkgconfig ];
meta = {
description = "Tools for generating DVD files to be played on standalone DVD players";

View File

@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
# this is the bare minimum configuration, as I'm only interested in MP4Box
# For most other functionality, this should probably be extended
buildNativeInputs = [ pkgconfig zlib ];
nativeBuildInputs = [ pkgconfig zlib ];
meta = {
description = "Open Source multimedia framework for research and academic purposes";

View File

@ -114,7 +114,7 @@ stdenv.mkDerivation rec {
++ optional libpngSupport libpng
;
buildNativeInputs = [ yasm ];
nativeBuildInputs = [ yasm ];
postConfigure = ''
echo CONFIG_MPEGAUDIODSP=yes >> config.mak

View File

@ -93,7 +93,7 @@ stdenv.mkDerivation rec {
++ optional libpngSupport libpng
;
buildNativeInputs = [ yasm python3 ];
nativeBuildInputs = [ yasm python3 ];
postConfigure = ''
patchShebangs TOOLS

View File

@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
libX11 libXv libXrandr libXvMC libXmu libXinerama libXxf86vm libXmu
];
buildNativeInputs = [ pkgconfig which ];
nativeBuildInputs = [ pkgconfig which ];
patches = [ ./settings.patch ];
}

View File

@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
libdc1394 libraw1394
];
buildNativeInputs = [ pkgconfig ];
nativeBuildInputs = [ pkgconfig ];
configureFlags =
[ "--enable-alsa"

View File

@ -0,0 +1,90 @@
{ stdenv, lib, fetchurl, makeWrapper
, pkgconfig, cmake, gnumake, yasm, python
, boost
, gettext, pcre, yajl, fribidi
, openssl, gperf
, libX11, xproto, inputproto
, libXt, libXmu, libXext, xextproto
, libXinerama, libXrandr, randrproto
, libXtst, libXfixes, fixesproto
, SDL, SDL_image, SDL_mixer, alsaLib
, mesa, glew, fontconfig, freetype, ftgl
, libjpeg, jasper, libpng, libtiff
, ffmpeg, libmpeg2, libsamplerate, libmad
, libogg, libvorbis, flac
, lzo, libcdio, libmodplug, libass
, sqlite, mysql, nasm
, curl, bzip2, zip, unzip, glxinfo, xdpyinfo
, dbus_libs ? null, dbusSupport ? true
, udev, udevSupport ? true
, libusb ? null, usbSupport ? false
, samba ? null, sambaSupport ? true
# TODO: would be nice to have nfsSupport (needs libnfs library)
, libvdpau ? null, vdpauSupport ? true
}:
assert dbusSupport -> dbus_libs != null;
assert udevSupport -> udev != null;
assert usbSupport -> libusb != null && ! udevSupport; # libusb won't be used if udev is avaliable
assert sambaSupport -> samba != null;
assert vdpauSupport -> libvdpau != null && ffmpeg.vdpauSupport;
stdenv.mkDerivation rec {
name = "xbmc-11.0";
src = fetchurl {
url = "http://mirrors.xbmc.org/releases/source/${name}.tar.gz";
sha256 = "1fe5d310c16138f26e2b13bc545604e95f48ace6c8636f23e77da402cd7b0b19";
};
buildInputs = [
makeWrapper
pkgconfig cmake gnumake yasm python
boost
gettext pcre yajl fribidi
openssl gperf
libX11 xproto inputproto
libXt libXmu libXext xextproto
libXinerama libXrandr randrproto
libXtst libXfixes fixesproto
SDL SDL_image SDL_mixer alsaLib
mesa glew fontconfig freetype ftgl
libjpeg jasper libpng libtiff
ffmpeg libmpeg2 libsamplerate libmad
libogg libvorbis flac
lzo libcdio libmodplug libass
sqlite mysql nasm
curl bzip2 zip unzip glxinfo xdpyinfo
]
++ lib.optional dbusSupport dbus_libs
++ lib.optional udevSupport udev
++ lib.optional usbSupport libusb
++ lib.optional sambaSupport samba
++ lib.optional vdpauSupport libvdpau;
dontUseCmakeConfigure = true;
configureFlags = [
"--enable-external-libraries"
"--disable-webserver"
]
++ lib.optional (! sambaSupport) "--disable-samba"
++ lib.optional vdpauSupport "--enable-vdpau";
postInstall = ''
for p in $(ls $out/bin/) ; do
wrapProgram $out/bin/$p \
--prefix PATH ":" "${python}/bin" \
--prefix PATH ":" "${glxinfo}/bin" \
--prefix PATH ":" "${xdpyinfo}/bin" \
--prefix LD_LIBRARY_PATH ":" "${curl}/lib" \
--prefix LD_LIBRARY_PATH ":" "${libvdpau}/lib"
done
'';
meta = {
homepage = http://xbmc.org/;
description = "XBMC Media Center";
license = "GPLv2";
};
}

View File

@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
sha256 = "1i3byriqav06b55kwzs4dkzrjw7mmmcv0rc7jzb52hn8qp8xz34x";
};
buildNativeInputs = [ pkgconfig shared_mime_info ];
nativeBuildInputs = [ pkgconfig shared_mime_info ];
buildInputs =
[ xineLib libpng readline ncurses curl lirc libjpeg

View File

@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
buildPhase = "make";
buildNativeInputs = [ makeWrapper pythonPackages.wrapPython ];
nativeBuildInputs = [ makeWrapper pythonPackages.wrapPython ];
# 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

View File

@ -20,21 +20,21 @@ let inherit (builtins) head tail trace; in
else if (hasSuffixHack ".tar.gz" s) || (hasSuffixHack ".tgz" s) then "tgz"
else if (hasSuffixHack ".tar.bz2" s) || (hasSuffixHack ".tbz2" s) ||
(hasSuffixHack ".tbz" s) then "tbz2"
else if (hasSuffixHack ".tar.Z" s) then "tZ"
else if (hasSuffixHack ".tar.lzma" s) then "tar.lzma"
else if (hasSuffixHack ".tar.xz" s) then "tar.xz"
else if hasSuffixHack ".tar.Z" s then "tZ"
else if hasSuffixHack ".tar.lzma" s then "tar.lzma"
else if hasSuffixHack ".tar.xz" s then "tar.xz"
else if (hasSuffixHack ".zip" s) || (hasSuffixHack ".ZIP" s) then "zip"
else if (hasSuffixHack "-cvs-export" s) then "cvs-dir"
else if (hasSuffixHack "-git-export" s) then "git-dir"
else if (hasSuffixHack ".nar.bz2" s) then "narbz2"
else if (hasSuffixHack ".rpm" s) then "rpm"
else if hasSuffixHack "-cvs-export" s then "cvs-dir"
else if hasSuffixHack "-git-export" s then "git-dir"
else if hasSuffixHack ".nar.bz2" s then "narbz2"
else if hasSuffixHack ".rpm" s then "rpm"
# Mostly for manually specified directories..
else if (hasSuffixHack "/" s) then "dir"
else if hasSuffixHack "/" s then "dir"
# Last block - for single files!! It should be always after .tar.*
else if (hasSuffixHack ".bz2" s) then "plain-bz2"
else if (hasSuffixHack ".gz" s) then "plain-gz"
else if hasSuffixHack ".bz2" s then "plain-bz2"
else if hasSuffixHack ".gz" s then "plain-gz"
# For bootstrap calls
else if (s ==("" + (substring 0 0 s))) then "empty"
@ -391,7 +391,7 @@ let inherit (builtins) head tail trace; in
cmakeFlags = attrByPath ["cmakeFlags"] [] args;
cmakeRPathFlag = if (attrByPath ["cmakeSkipRpath "] true args) then " -DCMAKE_SKIP_BUILD_RPATH=ON " else "";
cmakeRPathFlag = if attrByPath ["cmakeSkipRpath "] true args then " -DCMAKE_SKIP_BUILD_RPATH=ON " else "";
cmakeBuildDir = attrByPath ["cmakeBuildDir"] "build" args;
@ -508,7 +508,7 @@ let inherit (builtins) head tail trace; in
);
builderDefsPackage = bd: func:
if (builtins.isFunction func) then
if builtins.isFunction func then
(foldArgs
(x: y: ((func (bd // x // y)) // y))
(innerBuilderDefsPackage bd)
@ -588,7 +588,7 @@ let inherit (builtins) head tail trace; in
url = srcInfo.url;
sha256 = srcInfo.hash;
} //
(if (srcInfo ? downloadName) then {name = srcInfo.downloadName;} else {}));
(if srcInfo ? downloadName then {name = srcInfo.downloadName;} else {}));
fetchGitFromSrcInfo = srcInfo: fetchgit {
url = srcInfo.url;

View File

@ -80,20 +80,30 @@
isLibrary = ! self.isExecutable;
isExecutable = false;
# ignore version restrictions on the build inputs that the cabal file might specify
jailbreak = false;
# pass the '--enable-split-objs' flag to cabal in the configure stage
enableSplitObjs = true;
# configure flag to pass to enable/disable library profiling
libraryProfiling =
if enableLibraryProfiling then ["--enable-library-profiling"]
else ["--disable-library-profiling"];
# configure flag to pass to enable/disable object splitting
splitObjects = if self.enableSplitObjs then "--enable-split-objs" else "--disable-split-objs";
# compiles Setup and configures
configurePhase = ''
eval "$preConfigure"
${lib.optionalString (lib.attrByPath ["jailbreak"] false self) "${jailbreakCabal}/bin/jailbreak-cabal ${self.pname}.cabal && "
}for i in Setup.hs Setup.lhs; do
${lib.optionalString self.jailbreak "${jailbreakCabal}/bin/jailbreak-cabal ${self.pname}.cabal"}
for i in Setup.hs Setup.lhs; do
test -f $i && ghc --make $i
done
for p in $extraBuildInputs $propagatedBuildNativeInputs; do
for p in $extraBuildInputs $propagatedNativeBuildInputs; do
if [ -d "$p/include" ]; then
extraLibDirs="$extraLibDirs --extra-include-dir=$p/include"
fi
@ -104,7 +114,7 @@
done
done
./Setup configure --verbose --prefix="$out" $libraryProfiling $extraLibDirs $configureFlags
./Setup configure --verbose --prefix="$out" $libraryProfiling $splitObjects $extraLibDirs $configureFlags
eval "$postConfigure"
'';
@ -145,8 +155,8 @@
'';
postFixup = ''
if test -f $out/nix-support/propagated-build-native-inputs; then
ln -s $out/nix-support/propagated-build-native-inputs $out/nix-support/propagated-user-env-packages
if test -f $out/nix-support/propagated-native-build-inputs; then
ln -s $out/nix-support/propagated-native-build-inputs $out/nix-support/propagated-user-env-packages
fi
'';

View File

@ -8,14 +8,14 @@ with lib;
let
findInList = p: list: default:
if (list == []) then default else
if list == [] then default else
if (p (head list)) then (head list) else
findInList p (tail list) default;
checkAttrInclusion = s: a: b:
(
if (! isAttrs b) then s else
if ! isAttrs b then s else
if (lib.attrByPath ["_type"] "" b) == "option" then "" else
findInList (x : x != "")
( map (x: if (x == "servicesProposal") # this attr will be checked at another place ( -> upstart-jobs/default.nix )

View File

@ -47,11 +47,11 @@ stdenv.mkDerivation {
else shell;
crossAttrs = {
shell = shell.hostDrv + shell.hostDrv.shellPath;
libc = libc.hostDrv;
coreutils = coreutils.hostDrv;
binutils = binutils.hostDrv;
clang = clang.hostDrv;
shell = shell.crossDrv + shell.crossDrv.shellPath;
libc = libc.crossDrv;
coreutils = coreutils.crossDrv;
binutils = binutils.crossDrv;
clang = clang.crossDrv;
#
# This is not the best way to do this. I think the reference should be
# the style in the gcc-cross-wrapper, but to keep a stable stdenv now I

View File

@ -17,6 +17,7 @@ badPath() {
# Otherwise, the path should refer to the store or some temporary
# directory (including the build directory).
test \
"$p" != "/dev/null" -a \
"${p:0:${#NIX_STORE}}" != "$NIX_STORE" -a \
"${p:0:4}" != "/tmp" -a \
"${p:0:${#NIX_BUILD_TOP}}" != "$NIX_BUILD_TOP"

View File

@ -2,16 +2,16 @@
# TODO: statically check if mercurial as the https support if the url starts woth https.
stdenv.mkDerivation {
name = "hg-archive" + (if (name != null) then "-${name}" else "");
name = "hg-archive" + (if name != null then "-${name}" else "");
builder = ./builder.sh;
buildInputs = [mercurial];
# Nix <= 0.7 compatibility.
id = md5;
outputHashAlgo = if (md5 != null) then "md5" else "sha256";
outputHashAlgo = if md5 != null then "md5" else "sha256";
outputHashMode = "recursive";
outputHash = if (md5 != null) then md5 else sha256;
outputHash = if md5 != null then md5 else sha256;
inherit url tag;
preferLocalBuild = true;

View File

@ -10,7 +10,7 @@
stdenv.mkDerivation {
builder = ./builder.sh;
buildNativeInputs = [monotone];
nativeBuildInputs = [monotone];
outputHashAlgo = "sha256";
outputHashMode = "recursive";

View File

@ -118,7 +118,6 @@ rec {
];
savannah = [
ftp://ftp.twaren.net/Unix/NonGNU/
ftp://mirror.csclub.uwaterloo.ca/nongnu/
ftp://mirror.publicns.net/pub/nongnu/
ftp://savannah.c3sl.ufpr.br/

View File

@ -28,7 +28,7 @@ if test -z "$nativeLibc"; then
echo "$cflagsCompile -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
echo "-L$libc/lib -rpath $libc/lib -rpath-link $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

View File

@ -45,7 +45,7 @@ stdenv.mkDerivation {
utils = ./utils.sh;
addFlags = ./add-flags;
inherit nativeTools nativeLibc nativePrefix gcc libc binutils;
crossConfig = if (cross != null) then cross.config else null;
crossConfig = if cross != null then cross.config else null;
gccLibs = if gcc != null then gccLibs else null;
name = chosenName;
langC = if nativeTools then true else gcc.langC;

View File

@ -17,6 +17,7 @@ badPath() {
# Otherwise, the path should refer to the store or some temporary
# directory (including the build directory).
test \
"$p" != "/dev/null" -a \
"${p:0:${#NIX_STORE}}" != "$NIX_STORE" -a \
"${p:0:4}" != "/tmp" -a \
"${p:0:${#NIX_BUILD_TOP}}" != "$NIX_BUILD_TOP"

View File

@ -1,24 +0,0 @@
# `-B@out@/bin' forces gcc to use ld-wrapper.sh when calling ld.
export NIX_CFLAGS_COMPILE="-B@out@/bin/ $NIX_CFLAGS_COMPILE"
if test -e @out@/nix-support/libc-cflags; then
export NIX_CFLAGS_COMPILE="$(cat @out@/nix-support/libc-cflags) $NIX_CFLAGS_COMPILE"
fi
if test -e @out@/nix-support/libc-ldflags; then
export NIX_LDFLAGS="$(cat @out@/nix-support/libc-ldflags) $NIX_LDFLAGS"
fi
if test -e @out@/nix-support/gcc-cflags; then
export NIX_CFLAGS_COMPILE="$(cat @out@/nix-support/gcc-cflags) $NIX_CFLAGS_COMPILE"
fi
if test -e @out@/nix-support/gcc-ldflags; then
export NIX_LDFLAGS="$(cat @out@/nix-support/gcc-ldflags) $NIX_LDFLAGS"
fi
if test -e @out@/nix-support/libc-ldflags-before; then
export NIX_LDFLAGS_BEFORE="$(cat @out@/nix-support/libc-ldflags-before) $NIX_LDFLAGS_BEFORE"
fi
export NIX_GCC_WRAPPER_FLAGS_SET=1

View File

@ -1,114 +0,0 @@
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
# 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.)
echo "-B$libc/lib/ -isystem $libc/include" > $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"
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
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^@binutils@^$binutils^g" \
-e "s^@libc@^$libc^g" \
-e "s^@ld@^$ldPath/ld^g" \
< "$src" > "$dst"
}
# Make wrapper scripts around gcc, g++, and g77. 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
fi
gccProg="$src"
doSubstitute "$gccWrapper" "$dst"
chmod +x "$dst"
}
mkGccWrapper $out/bin/upc $gccPath/upc
# 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

View File

@ -1,43 +0,0 @@
# The Nix `gcc' stdenv.mkDerivation is not directly usable, since it doesn't
# know where the C library and standard header files are. Therefore
# the compiler produced by that package cannot be installed directly
# in a user environment and used from the command line. This
# stdenv.mkDerivation provides a wrapper that sets up the right environment
# variables so that the compiler and the linker just "work".
{ name ? "", stdenv, nativeTools, nativeLibc, nativePrefix ? ""
, gcc ? null, libc ? null, binutils ? null, shell ? ""
}:
assert nativeTools -> nativePrefix != "";
assert !nativeTools -> gcc != null && binutils != null;
assert !nativeLibc -> libc != null;
stdenv.mkDerivation {
builder = ./builder.sh;
setupHook = ./setup-hook.sh;
gccWrapper = ./gcc-wrapper.sh;
ldWrapper = ./ld-wrapper.sh;
utils = ./utils.sh;
addFlags = ./add-flags;
inherit nativeTools nativeLibc nativePrefix gcc libc binutils;
name = if name == "" then gcc.name else name;
langC = if nativeTools then true else gcc.langC;
langCC = if nativeTools then true else gcc.langCC;
langF77 = if nativeTools then false else gcc.langF77;
shell = if shell == "" then stdenv.shell else shell;
meta = if gcc != null && (gcc ? meta) then removeAttrs gcc.meta ["priority"] else
{ description = "System C compiler wrapper";
};
# The dynamic linker has different names on different Linux platforms.
dynamicLinker =
if !nativeLibc then
(if stdenv.system == "i686-linux" then "ld-linux.so.2" else
if stdenv.system == "x86_64-linux" then "ld-linux-x86-64.so.2" else
if stdenv.system == "powerpc-linux" then "ld.so.1" else
abort "don't know the name of the dynamic linker for this platform")
else "";
}

View File

@ -1,139 +0,0 @@
#! @shell@ -e
if test -n "$NIX_GCC_WRAPPER_START_HOOK"; then
source "$NIX_GCC_WRAPPER_START_HOOK"
fi
if test -z "$NIX_GCC_WRAPPER_FLAGS_SET"; then
source @out@/nix-support/add-flags.sh
fi
source @out@/nix-support/utils.sh
# Figure out if linker flags should be passed. GCC prints annoying
# warnings when they are not needed.
dontLink=0
getVersion=0
nonFlagArgs=0
for i in "$@"; do
if test "$i" = "-c"; then
dontLink=1
elif test "$i" = "-S"; then
dontLink=1
elif test "$i" = "-E"; then
dontLink=1
elif test "$i" = "-E"; then
dontLink=1
elif test "$i" = "-M"; then
dontLink=1
elif test "$i" = "-MM"; then
dontLink=1
elif test "${i:0:1}" != "-"; then
nonFlagArgs=1
fi
done
# If we pass a flag like -Wl, then gcc will call the linker unless it
# can figure out that it has to do something else (e.g., because of a
# "-c" flag). So if no non-flag arguments are given, don't pass any
# linker flags. This catches cases like "gcc" (should just print
# "gcc: no input files") and "gcc -v" (should print the version).
if test "$nonFlagArgs" = "0"; then
dontLink=1
fi
# Optionally filter out paths not refering to the store.
params=("$@")
if test "$NIX_ENFORCE_PURITY" = "1" -a -n "$NIX_STORE"; then
rest=()
n=0
while test $n -lt ${#params[*]}; do
p=${params[n]}
p2=${params[$((n+1))]}
if test "${p:0:3}" = "-L/" && badPath "${p:2}"; then
skip $p
elif test "$p" = "-L" && badPath "$p2"; then
n=$((n + 1)); skip $p2
elif test "${p:0:3}" = "-I/" && badPath "${p:2}"; then
skip $p
elif test "$p" = "-I" && badPath "$p2"; then
n=$((n + 1)); skip $p2
elif test "$p" = "-isystem" && badPath "$p2"; then
n=$((n + 1)); skip $p2
else
rest=("${rest[@]}" "$p")
fi
n=$((n + 1))
done
params=("${rest[@]}")
fi
# Add the flags for the C compiler proper.
extraAfter=($NIX_CFLAGS_COMPILE)
extraBefore=()
if test "$dontLink" != "1"; then
# Add the flags that should only be passed to the compiler when
# linking.
extraAfter=(${extraAfter[@]} $NIX_CFLAGS_LINK)
# Add the flags that should be passed to the linker (and prevent
# `ld-wrapper' from adding NIX_LDFLAGS again).
for i in $NIX_LDFLAGS_BEFORE; do
extraBefore=(${extraBefore[@]} "-Wl,$i")
done
for i in $NIX_LDFLAGS; do
if test "${i:0:3}" = "-L/"; then
extraAfter=(${extraAfter[@]} "$i")
else
extraAfter=(${extraAfter[@]} "-Wl,$i")
fi
done
export NIX_LDFLAGS_SET=1
fi
# As a very special hack, if the arguments are just `-v', then don't
# add anything. This is to prevent `gcc -v' (which normally prints
# out the version number and returns exit code 0) from printing out
# `No input files specified' and returning exit code 1.
if test "$*" = "-v"; then
extraAfter=()
extraBefore=()
fi
# Optionally print debug info.
if test "$NIX_DEBUG" = "1"; then
echo "original flags to @gccProg@:" >&2
for i in "${params[@]}"; do
echo " $i" >&2
done
echo "extraBefore flags to @gccProg@:" >&2
for i in ${extraBefore[@]}; do
echo " $i" >&2
done
echo "extraAfter flags to @gccProg@:" >&2
for i in ${extraAfter[@]}; do
echo " $i" >&2
done
fi
if test -n "$NIX_GCC_WRAPPER_EXEC_HOOK"; then
source "$NIX_GCC_WRAPPER_EXEC_HOOK"
fi
# Call the real `gcc'. Filter out warnings from stderr about unused
# `-B' flags, since they confuse some programs. Deep bash magic to
# apply grep to stderr (by swapping stdin/stderr twice).
if test -z "$NIX_GCC_NEEDS_GREP"; then
@gccProg@ ${extraBefore[@]} "${params[@]}" ${extraAfter[@]}
else
(@gccProg@ ${extraBefore[@]} "${params[@]}" ${extraAfter[@]} 3>&2 2>&1 1>&3- \
| (grep -v 'file path prefix' || true); exit ${PIPESTATUS[0]}) 3>&2 2>&1 1>&3-
exit $?
fi

View File

@ -1,145 +0,0 @@
#! @shell@ -e
if test -n "$NIX_LD_WRAPPER_START_HOOK"; then
source "$NIX_LD_WRAPPER_START_HOOK"
fi
if test -z "$NIX_GCC_WRAPPER_FLAGS_SET"; then
source @out@/nix-support/add-flags.sh
fi
source @out@/nix-support/utils.sh
# Optionally filter out paths not refering to the store.
params=("$@")
if test "$NIX_ENFORCE_PURITY" = "1" -a -n "$NIX_STORE" \
-a \( -z "$NIX_IGNORE_LD_THROUGH_GCC" -o -z "$NIX_LDFLAGS_SET" \); then
rest=()
n=0
while test $n -lt ${#params[*]}; do
p=${params[n]}
p2=${params[$((n+1))]}
if test "${p:0:3}" = "-L/" && badPath "${p:2}"; then
skip $p
elif test "$p" = "-L" && badPath "$p2"; then
n=$((n + 1)); skip $p2
elif test "$p" = "-rpath" && badPath "$p2"; then
n=$((n + 1)); skip $p2
elif test "$p" = "-dynamic-linker" && badPath "$p2"; then
n=$((n + 1)); skip $p2
elif test "${p:0:1}" = "/" && badPath "$p"; then
# We cannot skip this; barf.
echo "impure path \`$p' used in link" >&2
exit 1
else
rest=("${rest[@]}" "$p")
fi
n=$((n + 1))
done
params=("${rest[@]}")
fi
extra=()
extraBefore=()
if test -z "$NIX_LDFLAGS_SET"; then
extra=(${extra[@]} $NIX_LDFLAGS)
extraBefore=(${extraBefore[@]} $NIX_LDFLAGS_BEFORE)
fi
# Add all used dynamic libraries to the rpath.
if test "$NIX_DONT_SET_RPATH" != "1"; then
# First, find all -L... switches.
allParams=("${params[@]}" ${extra[@]})
libPath=""
addToLibPath() {
local path="$1"
if test "${path:0:1}" != "/"; then return 0; fi
case "$path" in
*..*|*./*|*/.*|*//*)
local path2
if path2=$(readlink -f "$path"); then
path="$path2"
fi
;;
esac
case $libPath in
*\ $path\ *) return 0 ;;
esac
libPath="$libPath $path "
}
n=0
while test $n -lt ${#allParams[*]}; do
p=${allParams[n]}
p2=${allParams[$((n+1))]}
if test "${p:0:3}" = "-L/"; then
addToLibPath ${p:2}
elif test "$p" = "-L"; then
addToLibPath ${p2}
n=$((n + 1))
fi
n=$((n + 1))
done
# Second, for each -l... switch, find the directory containing the
# library and add it to the rpath.
rpath=""
addToRPath() {
# If the path is not in the store, don't add it to the rpath.
# This typically happens for libraries in /tmp that are later
# copied to $out/lib. If not, we're screwed.
if test "${1:0:${#NIX_STORE}}" != "$NIX_STORE"; then return 0; fi
case $rpath in
*\ $1\ *) return 0 ;;
esac
rpath="$rpath $1 "
}
findLib() {
for i in $libPath; do
if test -f $i/lib$1.so; then
addToRPath $i
fi
done
}
n=0
while test $n -lt ${#allParams[*]}; do
p=${allParams[n]}
p2=${allParams[$((n+1))]}
if test "${p:0:2}" = "-l"; then
findLib ${p:2}
elif test "$p" = "-l"; then
# I haven't seen `-l foo', but you never know...
findLib ${p2}
n=$((n + 1))
fi
n=$((n + 1))
done
# Finally, add `-rpath' switches.
for i in $rpath; do
extra=(${extra[@]} -rpath $i)
done
fi
# Optionally print debug info.
if test "$NIX_DEBUG" = "1"; then
echo "original flags to @ld@:" >&2
for i in "${params[@]}"; do
echo " $i" >&2
done
echo "extra flags to @ld@:" >&2
for i in ${extra[@]}; do
echo " $i" >&2
done
fi
if test -n "$NIX_LD_WRAPPER_EXEC_HOOK"; then
source "$NIX_LD_WRAPPER_EXEC_HOOK"
fi
exec @ld@ ${extraBefore[@]} "${params[@]}" ${extra[@]}

View File

@ -1,29 +0,0 @@
addCVars () {
if test -d $1/include; then
export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I$1/include"
fi
if test -d $1/lib64; then
export NIX_LDFLAGS="$NIX_LDFLAGS -L$1/lib64"
fi
if test -d $1/lib; then
export NIX_LDFLAGS="$NIX_LDFLAGS -L$1/lib"
fi
}
envHooks=(${envHooks[@]} addCVars)
# Note: these come *after* $out in the PATH (see setup.sh).
if test -n "@gcc@"; then
PATH=$PATH:@gcc@/bin
fi
if test -n "@binutils@"; then
PATH=$PATH:@binutils@/bin
fi
if test -n "@libc@"; then
PATH=$PATH:@libc@/bin
fi

View File

@ -1,23 +0,0 @@
skip () {
if test "$NIX_DEBUG" = "1"; then
echo "skipping impure path $1" >&2
fi
}
# Checks whether a path is impure. E.g., `/lib/foo.so' is impure, but
# `/nix/store/.../lib/foo.so' isn't.
badPath() {
local p=$1
# Relative paths are okay (since they're presumably relative to
# the temporary build directory).
if test "${p:0:1}" != "/"; then return 1; fi
# Otherwise, the path should refer to the store or some temporary
# directory (including the build directory).
test \
"${p:0:${#NIX_STORE}}" != "$NIX_STORE" -a \
"${p:0:4}" != "/tmp" -a \
"${p:0:${#NIX_BUILD_TOP}}" != "$NIX_BUILD_TOP"
}

Some files were not shown because too many files have changed in this diff Show More