Merge remote-tracking branch 'origin/staging'

Darwin and haskell fixes.
This commit is contained in:
Shea Levy 2015-02-17 13:52:37 -05:00
commit 2f061ff16b
42 changed files with 130 additions and 137 deletions

View File

@ -1,5 +1,5 @@
{ stdenv, fetchurl, boost, mpd_clientlib, ncurses, pkgconfig, readline
, libiconvOrEmpty
, libiconv
, outputsSupport ? false # outputs screen
, visualizerSupport ? false, fftw ? null # visualizer screen
, clockSupport ? false # clock screen
@ -30,11 +30,10 @@ stdenv.mkDerivation rec {
++ optional curlSupport "--with-curl"
++ optional taglibSupport "--with-taglib";
buildInputs = [ boost mpd_clientlib ncurses pkgconfig readline ]
buildInputs = [ boost mpd_clientlib ncurses pkgconfig readline libiconv ]
++ optional curlSupport curl
++ optional visualizerSupport fftw
++ optional taglibSupport taglib
++ libiconvOrEmpty;
++ optional taglibSupport taglib;
meta = {
description = "A featureful ncurses based MPD client inspired by ncmpc";

View File

@ -1,5 +1,5 @@
{ stdenv, fetchurl, python, pkgconfig, cmake, bluez, libusb1, curl
, libiconvOrEmpty, gettext, sqlite }:
, libiconv, gettext, sqlite }:
with stdenv.lib;
@ -14,8 +14,7 @@ stdenv.mkDerivation rec {
patches = [ ./bashcomp-dir.patch ];
buildInputs = [ python pkgconfig cmake bluez libusb1 curl gettext sqlite ]
++ libiconvOrEmpty;
buildInputs = [ python pkgconfig cmake bluez libusb1 curl gettext sqlite libiconv ];
enableParallelBuilding = true;

View File

@ -1,5 +1,5 @@
{ stdenv, fetchurl, sqlite, curl, pkgconfig, libxml2, stfl, json-c-0-11, ncurses
, gettext, libiconvOrEmpty, makeWrapper, perl }:
, gettext, libiconv, makeWrapper, perl }:
stdenv.mkDerivation rec {
name = "newsbeuter-2.8";
@ -13,8 +13,7 @@ stdenv.mkDerivation rec {
buildInputs
# use gettext instead of libintlOrEmpty so we have access to the msgfmt
# command
= [ pkgconfig sqlite curl libxml2 stfl json-c-0-11 ncurses gettext perl ]
++ libiconvOrEmpty
= [ pkgconfig sqlite curl libxml2 stfl json-c-0-11 ncurses gettext perl libiconv ]
++ stdenv.lib.optional stdenv.isDarwin makeWrapper;
preBuild = ''

View File

@ -1,5 +1,5 @@
{ stdenv, fetchgit, sqlite, curl, pkgconfig, libxml2, stfl, json-c-0-11, ncurses
, gettext, libiconvOrEmpty, makeWrapper, perl }:
, gettext, libiconv, makeWrapper, perl }:
stdenv.mkDerivation rec {
name = "newsbeuter-dev-20140309";
@ -13,8 +13,7 @@ stdenv.mkDerivation rec {
buildInputs
# use gettext instead of libintlOrEmpty so we have access to the msgfmt
# command
= [ pkgconfig sqlite curl libxml2 stfl json-c-0-11 ncurses gettext perl ]
++ libiconvOrEmpty
= [ pkgconfig sqlite curl libxml2 stfl json-c-0-11 ncurses gettext perl libiconv ]
++ stdenv.lib.optional stdenv.isDarwin makeWrapper;
preBuild = ''

View File

@ -1,5 +1,5 @@
{ stdenv, fetchurl, autoconf, automake, libtool, pkgconfig, python
, boost, db, openssl, geoip, libiconvOrEmpty, miniupnpc
, boost, db, openssl, geoip, libiconv, miniupnpc
, srcOnly, fetchgit
}:
@ -33,8 +33,8 @@ in stdenv.mkDerivation rec {
buildInputs = [
autoconf automake libtool pkgconfig python
boost db openssl geoip miniupnpc
] ++ libiconvOrEmpty;
boost db openssl geoip miniupnpc libiconv
];
postPatch = ''
sed -i -e '/-htmldir/s|(default: [^)]*)|(default: ${twisterHTML})|' \

View File

@ -1,5 +1,5 @@
{ stdenv, fetchurl, cmake, freetype, libpng, mesa, gettext, openssl, qt5, perl
, libiconvOrEmpty }:
, libiconv }:
stdenv.mkDerivation rec {
name = "stellarium-0.13.2";
@ -9,8 +9,7 @@ stdenv.mkDerivation rec {
sha256 = "1asrq1v6vjzxd2zz92brdfs5f5b1qf8zwd7k2dpg3dl4shl8wwg5";
};
buildInputs = [ cmake freetype libpng mesa gettext openssl qt5 perl ]
++ libiconvOrEmpty;
buildInputs = [ cmake freetype libpng mesa gettext openssl qt5 perl libiconv ];
enableParallelBuilding = true;

View File

@ -1,7 +1,7 @@
{ stdenv, fetchurl
, qt4, xapian, file, python
, djvulibre, groff, libxslt, unzip, xpdf, antiword, catdoc, lyx
, ghostscript, gawk, gnugrep, gnused, gnutar, gzip, libiconvOrLibc }:
, ghostscript, gawk, gnugrep, gnused, gnutar, gzip, libiconv }:
assert stdenv.system != "powerpc-linux";
@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
substituteInPlace $f --replace grep ${gnugrep}/bin/grep
substituteInPlace $f --replace groff ${groff}/bin/groff
substituteInPlace $f --replace gunzip ${gzip}/bin/gunzip
substituteInPlace $f --replace iconv ${libiconvOrLibc}/bin/iconv
substituteInPlace $f --replace iconv ${libiconv}/bin/iconv
substituteInPlace $f --replace lyx ${lyx}/bin/lyx
substituteInPlace $f --replace pdftotext ${xpdf}/bin/pdftotext
substituteInPlace $f --replace pstotext ${ghostscript}/bin/ps2ascii

View File

@ -1,4 +1,4 @@
{ stdenv, fetchurl, ruby, bundler, libiconv, libiconvOrNull, libiconvOrLibc, libxslt, libxml2, pkgconfig, libffi, glibc, imagemagickBig, postgresql }:
{ stdenv, fetchurl, ruby, bundler, libiconv, libxslt, libxml2, pkgconfig, libffi, glibc, imagemagickBig, postgresql }:
let
gemspec = map (gem: fetchurl { url=gem.url; sha256=gem.hash; }) (import ./Gemfile.nix);
@ -25,8 +25,7 @@ in stdenv.mkDerivation rec {
'';
buildInputs = [
ruby bundler
] ++ (if (libiconvOrNull != null) then [libiconv] else []) ++ [
ruby bundler libiconv
libxslt libxml2 pkgconfig libffi
imagemagickBig postgresql
];
@ -48,7 +47,7 @@ in stdenv.mkDerivation rec {
bundle config build.nokogiri \
--use-system-libraries \
--with-iconv-dir=${libiconvOrLibc} \
--with-iconv-dir=${libiconv} \
--with-xslt-dir=${libxslt} \
--with-xml2-dir=${libxml2} \
--with-pkg-config \

View File

@ -1,6 +1,6 @@
{ stdenv, fetchurl
, libX11, wxGTK
, libiconvOrEmpty, fontconfig, freetype
, libiconv, fontconfig, freetype
, mesa
, libass, fftw, ffms
, ffmpeg, pkgconfig, zlib # Undocumented (?) dependencies
@ -30,9 +30,8 @@ stdenv.mkDerivation rec {
buildInputs = with stdenv.lib;
[ pkgconfig intltool libX11 wxGTK fontconfig freetype mesa
libass fftw ffms ffmpeg zlib icu boost boost.lib
libass fftw ffms ffmpeg zlib icu boost boost.lib libiconv
]
++ libiconvOrEmpty
++ optional spellChecking hunspell
++ optional automationSupport lua
++ optional openalSupport openal

View File

@ -79,6 +79,13 @@ if [ "$NIX_ENFORCE_PURITY" = 1 -a -n "$NIX_STORE" ]; then
params=("${rest[@]}")
fi
if [[ "@prog@" = *++ ]]; then
if echo "$@" | grep -qvw -- -nostdlib; then
NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE $NIX_CXXSTDLIB_COMPILE"
NIX_CFLAGS_LINK="$NIX_CFLAGS_LINK $NIX_CXXSTDLIB_LINK"
fi
fi
# Add the flags for the C compiler proper.
extraAfter=($NIX_CFLAGS_COMPILE)
extraBefore=()

View File

@ -8,6 +8,7 @@
{ name ? "", stdenv, nativeTools, nativeLibc, nativePrefix ? ""
, cc ? null, libc ? null, binutils ? null, coreutils ? null, shell ? stdenv.shell
, zlib ? null, extraPackages ? []
, dyld ? null # TODO: should this be a setup-hook on dyld?
, setupHook ? ./setup-hook.sh
}:
@ -55,7 +56,7 @@ stdenv.mkDerivation {
}
''
+ optionalString (!nativeLibc) ''
+ optionalString (!nativeLibc) (if (!stdenv.isDarwin) then ''
dynamicLinker="$libc/lib/$dynamicLinker"
echo $dynamicLinker > $out/nix-support/dynamic-linker
@ -63,6 +64,17 @@ stdenv.mkDerivation {
echo $libc/lib/32/ld-linux.so.2 > $out/nix-support/dynamic-linker-m32
fi
# 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
'' else ''
echo $dynamicLinker > $out/nix-support/dynamic-linker
echo "export LD_DYLD_PATH=\"$dynamicLinker\"" >> $out/nix-support/setup-hook
'')
+ optionalString (!nativeLibc) ''
# 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'
@ -78,11 +90,6 @@ stdenv.mkDerivation {
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
echo $libc > $out/nix-support/orig-libc
''
@ -213,7 +220,10 @@ stdenv.mkDerivation {
''
+ ''
substituteAll ${setupHook} $out/nix-support/setup-hook
substituteAll ${setupHook} $out/nix-support/setup-hook.tmp
cat $out/nix-support/setup-hook.tmp >> $out/nix-support/setup-hook
rm $out/nix-support/setup-hook.tmp
substituteAll ${./add-flags} $out/nix-support/add-flags.sh
cp -p ${./utils.sh} $out/nix-support/utils.sh
'';
@ -227,6 +237,7 @@ stdenv.mkDerivation {
if stdenv.isArm then "ld-linux*.so.3" else
if stdenv.system == "powerpc-linux" then "ld.so.1" else
if stdenv.system == "mips64el-linux" then "ld.so.1" else
if stdenv.system == "x86_64-darwin" then "${dyld}/lib/dyld" else
abort "Don't know the name of the dynamic linker for this platform.")
else "";

View File

@ -12,6 +12,10 @@ addCVars () {
if [ -d $1/lib ]; then
export NIX_LDFLAGS+=" -L$1/lib"
fi
if test -d $1/Library/Frameworks; then
export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -F$1/Library/Frameworks"
fi
}
envHooks+=(addCVars)

View File

@ -1,5 +1,5 @@
{ stdenv, fetchurl, pkgconfig, flex, bison, libxslt
, glib, libiconvOrEmpty, libintlOrEmpty
, glib, libiconv, libintlOrEmpty
}:
let
@ -25,7 +25,6 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ pkgconfig flex bison libxslt ];
buildInputs = [ glib ]
++ libiconvOrEmpty
buildInputs = [ glib libiconv ]
++ libintlOrEmpty;
}

View File

@ -1,5 +1,5 @@
{ stdenv, fetchurl, pkgconfig, flex, bison, libxslt
, glib, libiconvOrEmpty, libintlOrEmpty
, glib, libiconv, libintlOrEmpty
}:
let
@ -25,7 +25,6 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ pkgconfig flex bison libxslt ];
buildInputs = [ glib ]
++ libiconvOrEmpty
buildInputs = [ glib libiconv ]
++ libintlOrEmpty;
}

View File

@ -1,5 +1,5 @@
{ fetchurl, writeScript, ruby, ncurses, sqlite, libxml2, libxslt, libffi
, zlib, libuuid, gems, jdk, python, stdenv, libiconvOrEmpty, imagemagick
, zlib, libuuid, gems, jdk, python, stdenv, libiconv, imagemagick
, pkgconfig }:
let
@ -33,7 +33,7 @@ in
NIX_POST_EXTRACT_FILES_HOOK = patchUsrBinEnv;
};
iconv = { buildInputs = [ libiconvOrEmpty ]; };
iconv = { buildInputs = [ libiconv ]; };
libv8 = {
# This fix is needed to fool scons, which clears the environment by default.

View File

@ -2,7 +2,7 @@
, sslSupport ? true, openssl
, bdbSupport ? false, db
, ldapSupport ? true, openldap
, libiconvOrNull
, libiconv
}:
assert sslSupport -> openssl != null;
@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
${stdenv.lib.optionalString ldapSupport "--with-ldap"}
'';
propagatedBuildInputs = [ makeWrapper apr expat libiconvOrNull ]
propagatedBuildInputs = [ makeWrapper apr expat libiconv ]
++ optional sslSupport openssl
++ optional bdbSupport db
++ optional ldapSupport openldap;

View File

@ -1,5 +1,5 @@
{ fetchurl, stdenv, pkgconfig, libdaemon, dbus, perl, perlXMLParser
, expat, gettext, intltool, glib, libiconvOrEmpty
, expat, gettext, intltool, glib, libiconv
, qt4 ? null
, qt4Support ? false
, withLibdnssdCompat ? false }:
@ -16,9 +16,8 @@ stdenv.mkDerivation rec {
patches = [ ./no-mkdir-localstatedir.patch ];
buildInputs = [ libdaemon dbus perl perlXMLParser glib expat ]
++ (stdenv.lib.optional qt4Support qt4)
++ libiconvOrEmpty;
buildInputs = [ libdaemon dbus perl perlXMLParser glib expat libiconv ]
++ (stdenv.lib.optional qt4Support qt4);
nativeBuildInputs = [ pkgconfig gettext intltool ];

View File

@ -1,4 +1,4 @@
{ stdenv, fetchurl, fetchpatch, pkgconfig, libiconvOrEmpty, libintlOrEmpty
{ stdenv, fetchurl, fetchpatch, pkgconfig, libiconv, libintlOrEmpty
, expat, zlib, libpng, pixman, fontconfig, freetype, xlibs
, gobjectSupport ? true, glib
, xcbSupport ? true # no longer experimental since 1.12
@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
sha256 = "0mk2fd9fwxqzravlmnbbrzwak15wqspn7609y0yn6qh87va5i0x4";
})];
nativeBuildInputs = [ pkgconfig ] ++ libintlOrEmpty ++ libiconvOrEmpty;
nativeBuildInputs = [ pkgconfig libiconv ] ++ libintlOrEmpty;
propagatedBuildInputs =
with xlibs; [ xlibs.xlibs fontconfig expat freetype pixman zlib libpng ]

View File

@ -1,4 +1,4 @@
{ stdenv, fetchurl, pkgconfig, expat, gettext, libiconvOrEmpty, dbus, glib }:
{ stdenv, fetchurl, pkgconfig, expat, gettext, libiconv, dbus, glib }:
stdenv.mkDerivation rec {
name = "dbus-glib-0.102";
@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ pkgconfig gettext ];
buildInputs = [ expat ] ++ libiconvOrEmpty;
buildInputs = [ expat libiconv ];
propagatedBuildInputs = [ dbus.libs glib ];

View File

@ -1,5 +1,5 @@
{ stdenv, fetchurl, pkgconfig, gettext, perl, python
, libiconvOrEmpty, libintlOrEmpty, zlib, libffi, pcre, libelf
, libiconv, libintlOrEmpty, zlib, libffi, pcre, libelf
# this is just for tests (not in closure of any regular package)
, coreutils, dbus_daemon, libxml2, tzdata, desktop_file_utils, shared_mime_info, doCheck ? false
@ -60,8 +60,7 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ pkgconfig gettext perl python ];
propagatedBuildInputs = [ pcre zlib libffi ]
++ optional (!stdenv.isDarwin) libiconvOrEmpty
propagatedBuildInputs = [ pcre zlib libffi libiconv ]
++ libintlOrEmpty;
configureFlags =

View File

@ -1,8 +1,8 @@
{ stdenv, fetchurl, m4, cxx ? true, withStatic ? false }:
{ stdenv, fetchurl, m4, cxx ? true, withStatic ? true }:
with { inherit (stdenv.lib) optional; };
stdenv.mkDerivation (rec {
stdenv.mkDerivation rec {
name = "gmp-5.1.3";
src = fetchurl { # we need to use bz2, others aren't in bootstrapping stdenv
@ -30,6 +30,8 @@ stdenv.mkDerivation (rec {
doCheck = true;
dontDisableStatic = withStatic;
enableParallelBuilding = true;
meta = with stdenv.lib; {
@ -63,6 +65,3 @@ stdenv.mkDerivation (rec {
maintainers = [ maintainers.simons ];
};
}
// stdenv.lib.optionalAttrs withStatic { dontDisableStatic = true; }
)

View File

@ -1,5 +1,5 @@
{ fetchurl, stdenv, pkgconfig, intltool, gettext, glib, libxml2, zlib, bzip2
, python, gdk_pixbuf, libiconvOrEmpty, libintlOrEmpty }:
, python, gdk_pixbuf, libiconv, libintlOrEmpty }:
with { inherit (stdenv.lib) optionals; };
@ -15,8 +15,7 @@ stdenv.mkDerivation rec {
buildInputs = [ gettext bzip2 zlib python ];
propagatedBuildInputs = [ libxml2 glib gdk_pixbuf ]
++ libiconvOrEmpty
propagatedBuildInputs = [ libxml2 glib gdk_pixbuf libiconv ]
++ libintlOrEmpty;
doCheck = true;

View File

@ -1,4 +1,4 @@
{ stdenv, fetchurl, boost, openssl, pkgconfig, zlib, python, libiconvOrNull, geoip
{ stdenv, fetchurl, boost, openssl, pkgconfig, zlib, python, libiconv, geoip
# Version specific options
, version, sha256
, ... }:
@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
inherit sha256;
};
buildInputs = [ boost pkgconfig openssl zlib python libiconvOrNull geoip ];
buildInputs = [ boost pkgconfig openssl zlib python libiconv geoip ];
configureFlags = [
"--enable-python-binding"
@ -19,7 +19,8 @@ stdenv.mkDerivation rec {
"--with-libiconv=yes"
"--with-boost=${boost.dev}"
"--with-boost-libdir=${boost.lib}/lib"
] ++ stdenv.lib.optional (libiconvOrNull != null) "--with-libiconv=yes";
"--with-libiconv=yes"
];
meta = with stdenv.lib; {
homepage = http://www.rasterbar.com/products/libtorrent/;

View File

@ -1,4 +1,4 @@
{ stdenv, fetchurl, libiconvOrEmpty, pkgconfig, libffi, libtasn1 }:
{ stdenv, fetchurl, libiconv, pkgconfig, libffi, libtasn1 }:
stdenv.mkDerivation rec {
name = "p11-kit-0.20.2";
@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
configureFlags = "--without-libtasn1";
buildInputs = [ pkgconfig libffi libtasn1 ] ++ libiconvOrEmpty;
buildInputs = [ pkgconfig libffi libtasn1 libiconv ];
meta = {
homepage = http://p11-glue.freedesktop.org/;

View File

@ -1,4 +1,4 @@
{ stdenv, fetchurl, fetchpatch, pkgconfig, cmake, libiconvOrEmpty, libintlOrEmpty
{ stdenv, fetchurl, fetchpatch, pkgconfig, cmake, libiconv, libintlOrEmpty
, zlib, curl, cairo, freetype, fontconfig, lcms, libjpeg, openjpeg
, qt4Support ? false, qt4 ? null, qt5
}:
@ -26,7 +26,7 @@ let
propagatedBuildInputs = [ zlib cairo freetype fontconfig libjpeg lcms curl openjpeg ];
nativeBuildInputs = [ pkgconfig cmake ] ++ libiconvOrEmpty ++ libintlOrEmpty;
nativeBuildInputs = [ pkgconfig cmake libiconv ] ++ libintlOrEmpty;
cmakeFlags = "-DENABLE_XPDF_HEADERS=ON -DENABLE_LIBCURL=ON -DENABLE_ZLIB=ON";

View File

@ -1,4 +1,4 @@
{ stdenv, fetchurl, ncurses, libiconvOrEmpty }:
{ stdenv, fetchurl, ncurses, libiconv }:
stdenv.mkDerivation rec {
name = "stfl-0.22";
@ -8,7 +8,7 @@ stdenv.mkDerivation rec {
sha256 = "062lqlf3qhp8bcapbpc0k3wym7x6ngncql8jmx5x06p6679szp9d";
};
buildInputs = [ ncurses ] ++ libiconvOrEmpty;
buildInputs = [ ncurses libiconv ];
buildPhase = ''
sed -i s%ncursesw/ncurses.h%ncurses.h% stfl_internals.h

View File

@ -1,4 +1,4 @@
{stdenv, fetchurl, libiconvOrNull, ocaml, findlib, ncurses}:
{stdenv, fetchurl, libiconv, ocaml, findlib, ncurses}:
stdenv.mkDerivation {
name = "ocaml-text-0.6";
@ -8,12 +8,9 @@ stdenv.mkDerivation {
sha256 = "0j8gaak0ajnlmn8knvfygqwwzs7awjv5rfn5cbj6qxqbxhjd5m6g";
};
buildInputs = [ocaml findlib ncurses]
++ stdenv.lib.optional (libiconvOrNull != null) libiconvOrNull;
buildInputs = [ocaml findlib ncurses libiconv];
configurePhase =
(stdenv.lib.optionalString (libiconvOrNull != null) "iconv_prefix=${libiconvOrNull} ")
+ "ocaml setup.ml -configure";
configurePhase = "iconv_prefix=${libiconv} ocaml setup.ml -configure";
createFindlibDestdir = true;

View File

@ -1,4 +1,4 @@
{ stdenv, fetchurl, dpkg, curl, libarchive, openssl, ruby, buildRubyGem, libiconvOrLibc
{ stdenv, fetchurl, dpkg, curl, libarchive, openssl, ruby, buildRubyGem, libiconv
, libxml2, libxslt }:
assert stdenv.system == "x86_64-linux" || stdenv.system == "i686-linux";
@ -73,7 +73,7 @@ stdenv.mkDerivation rec {
# libiconv: iconv
rm opt/vagrant/embedded/bin/iconv
ln -s ${libiconvOrLibc}/bin/iconv opt/vagrant/embedded/bin
ln -s ${libiconv}/bin/iconv opt/vagrant/embedded/bin
# libxml: xml2-config, xmlcatalog, xmllint
rm opt/vagrant/embedded/bin/{xml2-config,xmlcatalog,xmllint}

View File

@ -1,6 +1,6 @@
{ stdenv, fetchurl, pkgconfig, zlib, expat, openssl
, libjpeg, libpng, libtiff, freetype, fontconfig, lcms2, libpaper, jbig2dec
, libiconvOrEmpty
, libiconv
, x11Support ? false, x11 ? null
, cupsSupport ? false, cups ? null
}:
@ -33,10 +33,10 @@ stdenv.mkDerivation rec {
buildInputs =
[ pkgconfig zlib expat openssl
libjpeg libpng libtiff freetype fontconfig lcms2 libpaper jbig2dec
libiconv
]
++ stdenv.lib.optional x11Support x11
++ stdenv.lib.optional cupsSupport cups
++ libiconvOrEmpty
# [] # maybe sometimes jpeg2000 support
;

View File

@ -1,4 +1,4 @@
{ stdenv, fetchurl, zlib, openssl, pam, libiconvOrNull }:
{ stdenv, fetchurl, zlib, openssl, pam, libiconv }:
stdenv.mkDerivation rec {
name = "ngircd-21";
@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
"--with-iconv"
];
buildInputs = [ zlib pam openssl libiconvOrNull ];
buildInputs = [ zlib pam openssl libiconv ];
meta = {
description = "Next Generation IRC Daemon";

View File

@ -1,4 +1,4 @@
{ fetchurl, stdenv, pkgconfig, db, libgcrypt, avahi, libiconvOrEmpty, pam, openssl }:
{ fetchurl, stdenv, pkgconfig, db, libgcrypt, avahi, libiconv, pam, openssl }:
stdenv.mkDerivation rec {
name = "netatalk-3.1.0";
@ -8,7 +8,7 @@ stdenv.mkDerivation rec {
sha256 = "1d8dc8ysslkis4yl1xab1w9p0pz7a1kg0i6fds4wxsp4fhb6wqhq";
};
buildInputs = [ pkgconfig db libgcrypt avahi pam openssl ] ++ libiconvOrEmpty;
buildInputs = [ pkgconfig db libgcrypt avahi pam openssl libiconv ];
configureFlags = [
"--with-bdb=${db}"

View File

@ -1,4 +1,4 @@
{ stdenv, fetchurl, libiconvOrEmpty }:
{ stdenv, fetchurl, libiconv }:
stdenv.mkDerivation rec {
version = "3.0.9";
@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
cp aescrypt_keygen $out/bin
'';
buildInputs = [ libiconvOrEmpty ];
buildInputs = [ libiconv ];
NIX_LDFLAGS = stdenv.lib.optionalString stdenv.isDarwin "-liconv";

View File

@ -1,5 +1,5 @@
{ stdenv, fetchurl, fetchgit, glib, readline, bison, flex, pkgconfig,
libiconvOrEmpty, autoconf, automake, libtool, which, txt2man, gnome_doc_utils,
libiconv, autoconf, automake, libtool, which, txt2man, gnome_doc_utils,
scrollkeeper}:
stdenv.mkDerivation {
@ -13,8 +13,8 @@ stdenv.mkDerivation {
buildInputs = [
glib readline bison flex pkgconfig autoconf automake
libtool which txt2man gnome_doc_utils scrollkeeper
] ++ libiconvOrEmpty;
libtool which txt2man gnome_doc_utils scrollkeeper libiconv
];
preConfigure = ''
sed -e 's@static \(GHashTable [*]mdb_backends;\)@\1@' -i src/libmdb/backend.c

View File

@ -1,4 +1,4 @@
{ stdenv, fetchurl, pkgconfig, dbus_glib, libxml2, libxslt, getopt, nixUnstable, dysnomia, libintlOrEmpty, libiconvOrEmpty }:
{ stdenv, fetchurl, pkgconfig, dbus_glib, libxml2, libxslt, getopt, nixUnstable, dysnomia, libintlOrEmpty, libiconv }:
stdenv.mkDerivation {
name = "disnix-0.3prea0484a2c19d1947c21f11b4fc7c3f6049bd11efa";
@ -8,7 +8,7 @@ stdenv.mkDerivation {
sha256 = "06qjaxysnkm31rgjlqy9n7p59q5v3jl57jm9jya7zf2g90syhdn7";
};
buildInputs = [ pkgconfig dbus_glib libxml2 libxslt getopt nixUnstable libintlOrEmpty libiconvOrEmpty dysnomia ];
buildInputs = [ pkgconfig dbus_glib libxml2 libxslt getopt nixUnstable libintlOrEmpty libiconv dysnomia ];
dontStrip = true;

View File

@ -1,4 +1,4 @@
{ stdenv, fetchurl, zlib, bzip2, libiconvOrNull, libxml2, openssl, ncurses, curl }:
{ stdenv, fetchurl, zlib, bzip2, libiconv, libxml2, openssl, ncurses, curl }:
stdenv.mkDerivation rec {
name = "clamav-${version}";
version = "0.98.6";
@ -8,20 +8,18 @@ stdenv.mkDerivation rec {
sha256 = "0l99a0shgzpl8rvrrgbm1ki2zxlb7g1n82bhq7f2snj4amfj94b5";
};
buildInputs = [ zlib bzip2 libxml2 openssl ncurses curl ]
++ stdenv.lib.optional (libiconvOrNull != null) libiconvOrNull;
buildInputs = [ zlib bzip2 libxml2 openssl ncurses curl libiconv ];
configureFlags = [
"--with-zlib=${zlib}"
"--with-libbz2-prefix=${bzip2}"
] ++ (stdenv.lib.optional (libiconvOrNull != null)
"--with-iconv-dir=${libiconvOrNull}")
++ [
"--with-iconv-dir=${libiconv}"
"--with-xml=${libxml2}"
"--with-openssl=${openssl}"
"--with-libncurses-prefix=${ncurses}"
"--with-libcurl=${curl}"
"--disable-clamav" ];
"--disable-clamav"
];
meta = with stdenv.lib; {
homepage = http://www.clamav.net;

View File

@ -1,5 +1,5 @@
{ fetchurl, stdenv, readline, zlib, libgpgerror, pth, libgcrypt, libassuan
, libksba, coreutils, libiconvOrEmpty
, libksba, coreutils, libiconv
# Each of the dependencies below are optional.
# Gnupg can be built without them at the cost of reduced functionality.
, pinentry ? null, openldap ? null, bzip2 ? null, libusb ? null, curl ? null
@ -15,8 +15,7 @@ stdenv.mkDerivation rec {
buildInputs
= [ readline zlib libgpgerror libgcrypt libassuan libksba pth
openldap bzip2 libusb curl ]
++ libiconvOrEmpty;
openldap bzip2 libusb curl libiconv ];
patchPhase = ''
find tests -type f | xargs sed -e 's@/bin/pwd@${coreutils}&@g' -i

View File

@ -1,4 +1,4 @@
{ stdenv, fetchurl, libtool, readline, zlib, openssl, libiconvOrNull, pcsclite
{ stdenv, fetchurl, libtool, readline, zlib, openssl, libiconv, pcsclite
, libassuan1, pkgconfig, libXt, docbook_xsl, libxslt, docbook_xml_dtd_412
}:
@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
};
buildInputs = [ libtool readline zlib openssl pcsclite libassuan1 pkgconfig
libXt libxslt libiconvOrNull docbook_xml_dtd_412
libXt libxslt libiconv docbook_xml_dtd_412
];
configureFlags = [

View File

@ -1,4 +1,4 @@
{ stdenv, fetchurl, libiconvOrNull, recode }:
{ stdenv, fetchurl, libiconv, recode }:
stdenv.mkDerivation rec {
name = "enca-1.16";
@ -8,7 +8,7 @@ stdenv.mkDerivation rec {
sha256 = "0hg7ggldam66l9j53nlrvi2lv1k99r2qfk6dh23vg6mi05cph7bw";
};
buildInputs = [ recode libiconvOrNull ];
buildInputs = [ recode libiconv ];
meta = {
homepage = http://freecode.com/projects/enca;

View File

@ -1,4 +1,4 @@
{ stdenv, fetchurl, pcre, libiconvOrNull }:
{ stdenv, fetchurl, pcre, libiconv }:
let version = "2.20"; in
@ -10,9 +10,7 @@ stdenv.mkDerivation {
sha256 = "0rcs0spsxdmh6yz8y4frkqp6f5iw19mdbdl9s2v6956hq0mlbbzh";
};
buildInputs = [ pcre libiconvOrNull ];
NIX_LDFLAGS = stdenv.lib.optionalString (libiconvOrNull != null) "-L${libiconvOrNull}/lib -liconv";
buildInputs = [ pcre libiconv ];
doCheck = !stdenv.isDarwin;

View File

@ -1,6 +1,6 @@
{ fetchurl, stdenv, texinfo, perl
, XMLSAX, XMLParser, XMLNamespaceSupport
, groff, libxml2, libxslt, gnused, libiconvOrEmpty, opensp
, groff, libxml2, libxslt, gnused, libiconv, opensp
, docbook_xml_dtd_43
, makeWrapper }:
@ -17,8 +17,8 @@ stdenv.mkDerivation rec {
patches = [ ./db2x_texixml-to-stdout.patch ];
buildInputs = [ perl texinfo groff libxml2 libxslt makeWrapper
XMLSAX XMLParser XMLNamespaceSupport opensp
] ++ libiconvOrEmpty;
XMLSAX XMLParser XMLNamespaceSupport opensp libiconv
];
postConfigure = ''
# Broken substitution is used for `perl/config.pl', which leaves literal

View File

@ -3494,7 +3494,7 @@ let
# Import Haskell infrastructure.
haskell = let pkgs_ = pkgs // { gmp = gmp.override { withStatic = true; }; };
haskell = let pkgs_ = pkgs // { /* add necessary overrides here */ };
callPackage = newScope pkgs_;
newScope = extra: lib.callPackageWith (pkgs_ // pkgs_.xorg // extra);
in callPackage ./haskell-defaults.nix { pkgs = pkgs_; inherit callPackage newScope; };
@ -6285,19 +6285,10 @@ let
libgsf = callPackage ../development/libraries/libgsf { };
libiconv = callPackage ../development/libraries/libiconv { };
libiconvOrEmpty = if libiconvOrNull == null then [] else [libiconv];
libiconvOrNull =
if stdenv.cc.libc or null != null || stdenv.isGlibc
then null
else libiconv;
# The logic behind this attribute is broken: libiconvOrNull==null does
# NOT imply libiconv=glibc! On Darwin, for example, we have a native
# libiconv library which is not glibc.
libiconvOrLibc = if libiconvOrNull == null then stdenv.cc.libc else libiconv;
libiconv =
if stdenv.isGlibc
then stdenv.cc.libc
else callPackage ../development/libraries/libiconv { };
# On non-GNU systems we need GNU Gettext for libintl.
libintlOrEmpty = stdenv.lib.optional (!stdenv.isLinux) gettext;

View File

@ -14,24 +14,24 @@ rec {
libiconv = pkgs.darwin.libiconv;
});
ghc6104 = callPackage ../development/compilers/ghc/6.10.4.nix { ghc = compiler.ghc6102Binary; gmp = pkgs.gmp.override { withStatic = true; }; };
ghc6123 = callPackage ../development/compilers/ghc/6.12.3.nix { ghc = compiler.ghc6102Binary; gmp = pkgs.gmp.override { withStatic = true; }; };
ghc704 = callPackage ../development/compilers/ghc/7.0.4.nix ({ ghc = compiler.ghc704Binary; gmp = pkgs.gmp.override { withStatic = true; }; } // stdenv.lib.optionalAttrs stdenv.isDarwin {
ghc6104 = callPackage ../development/compilers/ghc/6.10.4.nix { ghc = compiler.ghc6102Binary; };
ghc6123 = callPackage ../development/compilers/ghc/6.12.3.nix { ghc = compiler.ghc6102Binary; };
ghc704 = callPackage ../development/compilers/ghc/7.0.4.nix ({ ghc = compiler.ghc704Binary; } // stdenv.lib.optionalAttrs stdenv.isDarwin {
libiconv = pkgs.darwin.libiconv;
});
ghc722 = callPackage ../development/compilers/ghc/7.2.2.nix ({ ghc = compiler.ghc704Binary; gmp = pkgs.gmp.override { withStatic = true; }; } // stdenv.lib.optionalAttrs stdenv.isDarwin {
ghc722 = callPackage ../development/compilers/ghc/7.2.2.nix ({ ghc = compiler.ghc704Binary; } // stdenv.lib.optionalAttrs stdenv.isDarwin {
libiconv = pkgs.darwin.libiconv;
});
ghc742 = callPackage ../development/compilers/ghc/7.4.2.nix ({ ghc = compiler.ghc704Binary; gmp = pkgs.gmp.override { withStatic = true; }; } // stdenv.lib.optionalAttrs stdenv.isDarwin {
ghc742 = callPackage ../development/compilers/ghc/7.4.2.nix ({ ghc = compiler.ghc704Binary; } // stdenv.lib.optionalAttrs stdenv.isDarwin {
libiconv = pkgs.darwin.libiconv;
});
ghc763 = callPackage ../development/compilers/ghc/7.6.3.nix ({ ghc = compiler.ghc704Binary; gmp = pkgs.gmp.override { withStatic = true; }; } // stdenv.lib.optionalAttrs stdenv.isDarwin {
ghc763 = callPackage ../development/compilers/ghc/7.6.3.nix ({ ghc = compiler.ghc704Binary; } // stdenv.lib.optionalAttrs stdenv.isDarwin {
libiconv = pkgs.darwin.libiconv;
});
ghc784 = callPackage ../development/compilers/ghc/7.8.4.nix ({ ghc = compiler.ghc742Binary; gmp = pkgs.gmp.override { withStatic = true; }; } // stdenv.lib.optionalAttrs stdenv.isDarwin {
ghc784 = callPackage ../development/compilers/ghc/7.8.4.nix ({ ghc = compiler.ghc742Binary; } // stdenv.lib.optionalAttrs stdenv.isDarwin {
libiconv = pkgs.darwin.libiconv;
});
ghc7101 = callPackage ../development/compilers/ghc/7.10.1.nix ({ ghc = compiler.ghc784; gmp = pkgs.gmp.override { withStatic = true; }; } // stdenv.lib.optionalAttrs stdenv.isDarwin {
ghc7101 = callPackage ../development/compilers/ghc/7.10.1.nix ({ ghc = compiler.ghc784; } // stdenv.lib.optionalAttrs stdenv.isDarwin {
libiconv = pkgs.darwin.libiconv;
});
ghcHEAD = callPackage ../development/compilers/ghc/head.nix ({ inherit (packages.ghc784) ghc alex happy; } // stdenv.lib.optionalAttrs stdenv.isDarwin {