Merge remote-tracking branch 'dezgeg/shuffle-outputs' into staging

https://github.com/NixOS/nixpkgs/pull/14766
This commit is contained in:
Tuomas Tynkkynen 2016-08-30 12:43:37 +03:00
commit d3dc3d4130
239 changed files with 339 additions and 309 deletions

View File

@ -29,15 +29,15 @@
<section><title>Using a split package</title>
<para>In the Nix language the individual outputs can be reached explicitly as attributes, e.g. <varname>coreutils.info</varname>, but the typical case is just using packages as build inputs.</para>
<para>When a multiple-output derivation gets into a build input of another derivation, the first output is added (<varname>.dev</varname> by convention) and also <varname>propagatedBuildOutputs</varname> of that package which by default contain <varname>$outputBin</varname> and <varname>$outputLib</varname>. (See <xref linkend="multiple-output-file-type-groups" />.)</para>
<para>When a multiple-output derivation gets into a build input of another derivation, the <varname>dev</varname> output is added if it exists, otherwise the first output is added. In addition to that, <varname>propagatedBuildOutputs</varname> of that package which by default contain <varname>$outputBin</varname> and <varname>$outputLib</varname> are also added. (See <xref linkend="multiple-output-file-type-groups" />.)</para>
</section>
<section><title>Writing a split derivation</title>
<para>Here you find how to write a derivation that produces multiple outputs.</para>
<para>In nixpkgs there is a framework supporting multiple-output derivations. It tries to cover most cases by default behavior. You can find the source separated in &lt;<filename>nixpkgs/pkgs/build-support/setup-hooks/multiple-outputs.sh</filename>&gt;; it's relatively well-readable. The whole machinery is triggered by defining the <varname>outputs</varname> attribute to contain the list of desired output names (strings).</para>
<programlisting>outputs = [ "dev" "out" "bin" "doc" ];</programlisting>
<para>Often such a single line is enough. For each output an equally named environment variable is passed to the builder and contains the path in nix store for that output. By convention, the first output should usually be <varname>dev</varname>; typically you also want to have the main <varname>out</varname> output, as it catches any files that didn't get elsewhere.</para>
<programlisting>outputs = [ "bin" "dev" "out" "doc" ];</programlisting>
<para>Often such a single line is enough. For each output an equally named environment variable is passed to the builder and contains the path in nix store for that output. By convention, the first output should contain the executable programs provided by the package as that output is used by Nix in string conversions, allowing references to binaries like <literal>${pkgs.perl}/bin/perl</literal> to always work. Typically you also want to have the main <varname>out</varname> output, as it catches any files that didn't get elsewhere.</para>
<note><para>There is a special handling of the <varname>debug</varname> output, described at <xref linkend="stdenv-separateDebugInfo" />.</para></note>

View File

@ -454,6 +454,8 @@ rec {
getLib = getOutput "lib";
getDev = getOutput "dev";
/* Pick the outputs of packages to place in buildInputs */
chooseDevOutputs = drvs: builtins.map (drv: if drv.outputUnspecified or false then drv.dev or drv else drv) drvs;
/*** deprecated stuff ***/

View File

@ -34,6 +34,17 @@ following incompatible changes:</para>
<itemizedlist>
<listitem>
<para>A large number of packages have been converted to use the multiple outputs feature
of Nix to greatly reduce the amount of required disk space. This may require changes
to any custom packages to make them build again; see the relevant chapter in the
Nixpkgs manual for more information. (Additional caveat to packagers: some packaging conventions
related to multiple-output packages
<link xlink:href="https://github.com/NixOS/nixpkgs/pull/14766">were changed</link>
late (August 2016) in the release cycle and differ from the initial introduction of multiple outputs.)
</para>
</listitem>
<listitem>
<para>Shell aliases for systemd sub-commands
<link xlink:href="https://github.com/NixOS/nixpkgs/pull/15598">were dropped</link>:

View File

@ -48,7 +48,7 @@ stdenv.mkDerivation rec {
patchPhase = ''
printf '#include "libs/ardour/ardour/revision.h"\nnamespace ARDOUR { const char* revision = \"${revision}\"; }\n' > libs/ardour/revision.cc
sed 's|/usr/include/libintl.h|${glibc}/include/libintl.h|' -i wscript
sed 's|/usr/include/libintl.h|${glibc.dev}/include/libintl.h|' -i wscript
patchShebangs ./tools/
'';

View File

@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
#doCheck = true; # takes lots of time
outputs = [ "dev" "out" "bin" "doc" ];
outputs = [ "bin" "dev" "out" "doc" ];
meta = with stdenv.lib; {
homepage = http://xiph.org/flac/;

View File

@ -43,7 +43,7 @@ stdenv.mkDerivation rec {
patches = [ ./imagetragick.patch ] ++ cfg.patches;
outputs = [ "dev" "out" "doc" ]; # bin/ isn't really big
outputs = [ "out" "dev" "doc" ]; # bin/ isn't really big
outputMan = "out"; # it's tiny
enableParallelBuilding = true;

View File

@ -8,7 +8,7 @@ stdenv.mkDerivation rec {
sha256 = "0psh3zl9dj4n4r3lx25390nx34xz0bg0ql48zdskhq354ljni5p6";
};
outputs = [ "dev" "out" "bin" ];
outputs = [ "bin" "dev" "out" ];
buildInputs = [ libjpeg libtiff librsvg ] ++ libintlOrEmpty;

View File

@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
makeFlags = [ "prefix=$(out)" ];
nativeBuildInputs = [ pkgconfig ];
buildInputs = [ zlib libX11 libXcursor libXext harfbuzz mesa libXrandr libXinerama freetype libjpeg jbig2dec openjpeg ];
outputs = [ "out" "bin" "doc" ];
outputs = [ "bin" "out" "doc" ];
preConfigure = ''
# Don't remove mujs because upstream version is incompatible

View File

@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
'';
configureFlags = [
"--with-libxml2=${libxml2}"
"--with-libxml2=${libxml2.dev}"
"--with-libxslt=${libxslt.dev}"
];

View File

@ -46,8 +46,8 @@ stdenv.mkDerivation rec {
configureFlags = "
--without-arts --disable-docs
--x-includes=${libX11}/include
--x-libraries=${libX11}/lib
--x-includes=${libX11.dev}/include
--x-libraries=${libX11.out}/lib
--with-qt-dir=${qt3}
";

View File

@ -17,8 +17,8 @@ stdenv.mkDerivation rec {
patchPhase = ''
sed -i config.h \
-e 's|.*#define.*TKGATE_TCLTK_VERSIONS.*|#define TKGATE_TCLTK_VERSIONS "${tcl.release}"|' \
-e 's|.*#define.*TKGATE_INCDIRS.*|#define TKGATE_INCDIRS "${tcl}/include ${tk}/include ${libiconvInc} ${libX11}/include"|' \
-e 's|.*#define.*TKGATE_LIBDIRS.*|#define TKGATE_LIBDIRS "${tcl}/lib ${tk}/lib ${libiconvLib} ${libX11}/lib"|' \
-e 's|.*#define.*TKGATE_INCDIRS.*|#define TKGATE_INCDIRS "${tcl}/include ${tk}/include ${libiconvInc} ${libX11.dev}/include"|' \
-e 's|.*#define.*TKGATE_LIBDIRS.*|#define TKGATE_LIBDIRS "${tcl}/lib ${tk}/lib ${libiconvLib} ${libX11.out}/lib"|' \
\
-e '20 i #define TCL_LIBRARY "${tcl}/lib"' \
-e '20 i #define TK_LIBRARY "${tk}/lib/${tk.libPrefix}"' \

View File

@ -3,7 +3,7 @@
with stdenv.lib;
let
makeFlags = ''
INCDIR=${glibc}/include \
INCDIR=${glibc.dev}/include \
BINDIR=$out/bin LIBDIR=$out/lib CALC_INCDIR=$out/include/calc CALC_SHAREDIR=$out/share/calc MANDIR=$out/share/man/man1 \
USE_READLINE=-DUSE_READLINE READLINE_LIB=-lreadline READLINE_EXTRAS='-lhistory -lncurses' \
TERMCONTROL=-DUSE_TERMIOS \

View File

@ -48,7 +48,7 @@ in stdenv.mkDerivation rec {
mkdir -p vendor/cache
${stdenv.lib.concatStrings (map (gem: "ln -s ${gem} vendor/cache/${gem.name};") gemspec)}
bundle config build.nokogiri --use-system-libraries --with-iconv-dir="${libiconv}" --with-xslt-dir="${libxslt.dev}" --with-xml2-dir="${libxml2}"
bundle config build.nokogiri --use-system-libraries --with-iconv-dir="${libiconv}" --with-xslt-dir="${libxslt.dev}" --with-xml2-dir="${libxml2.dev}"
bundle install --verbose --local --deployment

View File

@ -27,7 +27,7 @@ let
};
# Can't do separate $lib and $bin, as libs reference bins
outputs = [ "dev" "out" "man" ];
outputs = [ "out" "dev" "man" ];
buildInputs = [ zlib apr aprutil sqlite ]
++ stdenv.lib.optional httpSupport serf

View File

@ -160,8 +160,7 @@ _multioutDevs() {
done
}
# Make the first output (typically "dev") propagate other outputs needed for development.
# Take the first, because that's what one gets when putting the package into buildInputs.
# Make the "dev" propagate other outputs needed for development.
# Note: with current cross-building setup, all packages are "native" if not cross-building;
# however, if cross-building, the outputs are non-native. We have to choose the right file.
_multioutPropagateDev() {
@ -171,13 +170,17 @@ _multioutPropagateDev() {
for outputFirst in $outputs; do
break
done
local propagaterOutput="$outputDev"
if [ -z "$propagaterOutput" ]; then
propagaterOutput="$outputFirst"
fi
# Default value: propagate binaries, includes and libraries
if [ -z "${propagatedBuildOutputs+1}" ]; then
local po_dirty="$outputBin $outputInclude $outputLib"
set +o pipefail
propagatedBuildOutputs=`echo "$po_dirty" \
| tr -s ' ' '\n' | grep -v -F "$outputFirst" \
| tr -s ' ' '\n' | grep -v -F "$propagaterOutput" \
| sort -u | tr '\n' ' ' `
set -o pipefail
fi
@ -187,7 +190,6 @@ _multioutPropagateDev() {
return
fi
mkdir -p "${!outputFirst}"/nix-support
local propagatedBuildInputsFile
if [ -z "$crossConfig" ]; then
propagatedBuildInputsFile=propagated-native-build-inputs
@ -195,8 +197,9 @@ _multioutPropagateDev() {
propagatedBuildInputsFile=propagated-build-inputs
fi
mkdir -p "${!propagaterOutput}"/nix-support
for output in $propagatedBuildOutputs; do
echo -n " ${!output}" >> "${!outputFirst}"/nix-support/$propagatedBuildInputsFile
echo -n " ${!output}" >> "${!propagaterOutput}"/nix-support/$propagatedBuildInputsFile
done
}

View File

@ -11,7 +11,7 @@ stdenv.mkDerivation {
sha256 = "09ch709cb9fniwc4221xgkq0jf0x0lxs814sqig8p2dcll0llvzk";
};
outputs = [ "dev" "out" "doc" ];
outputs = [ "out" "dev" "doc" ];
buildInputs = [ ORBit2 dbus_libs dbus_glib libxml2 ]
# polkit requires pam, which requires shadow.h, which is not available on

View File

@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ pkgconfig ];
propagatedBuildInputs = [ glib libIDL ] ++ libintlOrEmpty;
outputs = [ "dev" "out" ];
outputs = [ "out" "dev" ];
preBuild = ''
sed 's/-DG_DISABLE_DEPRECATED//' -i linc2/src/Makefile

View File

@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
sha256 = "1ajg8jb8k3snxc7rrgczlh8daxkjidmcv3zr9w809sq4p2sn9pk2";
};
outputs = [ "dev" "out" ];
outputs = [ "out" "dev" ];
buildInputs =
[ pkgconfig libxml2 bzip2 openssl samba dbus_glib fam cdparanoia

View File

@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
sha256 = "0swp4kk6x7hy1rvd1f9jba31lvfc6qvafkvbpg9h0r34fzrd8q4i";
};
outputs = [ "dev" "out" ];
outputs = [ "out" "dev" ];
preConfigure = # still using stuff deprecated in new glib versions
"sed 's/-DG_DISABLE_DEPRECATED//g' -i configure activation-server/Makefile.in";

View File

@ -8,7 +8,7 @@ stdenv.mkDerivation {
sha256 = "1v2x2s04jry4gpabws92i0wq2ghd47yr5n9nhgnkd7c38xv1wdk4";
};
outputs = [ "dev" "out" ];
outputs = [ "out" "dev" ];
buildInputs = [ pkgconfig gtk python gettext ];

View File

@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
sha256 = "197pnq8y0knqjhm2fg4j6hbqqm3qfzfnd0irhwxpk1b4hqb3kimj";
};
outputs = [ "dev" "out" ];
outputs = [ "out" "dev" ];
patches = [ ./new-glib.patch ];

View File

@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
sha256 = "0h6xvswbqspdifnyh5pm2pqq55yp3kn6yrswq7ay9z49hkh7i6w5";
};
outputs = [ "dev" "out" ];
outputs = [ "out" "dev" ];
buildInputs = [ libglade ];
nativeBuildInputs = [ pkgconfig intltool ];

View File

@ -27,7 +27,7 @@ in stdenv.mkDerivation rec {
configureFlags = [ "--disable-spamassassin" "--disable-pst-import" "--disable-autoar"
"--disable-libcryptui" ];
NIX_CFLAGS_COMPILE = "-I${nspr.dev}/include/nspr -I${nss}/include/nss -I${glib.dev}/include/gio-unix-2.0";
NIX_CFLAGS_COMPILE = "-I${nspr.dev}/include/nspr -I${nss.dev}/include/nss -I${glib.dev}/include/gio-unix-2.0";
enableParallelBuilding = true;

View File

@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
gdk_pixbuf gnome3.defaultIconTheme librsvg which gnome_common
gcr avahi gnome3.gsettings_desktop_schemas gnome3.dconf ];
NIX_CFLAGS_COMPILE = "-I${nspr.dev}/include/nspr -I${nss}/include/nss -I${glib.dev}/include/gio-unix-2.0";
NIX_CFLAGS_COMPILE = "-I${nspr.dev}/include/nspr -I${nss.dev}/include/nss -I${glib.dev}/include/gio-unix-2.0";
enableParallelBuilding = true;

View File

@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
configureFlags = "--disable-fatal-warnings";
NIX_CFLAGS_COMPILE = ["-I${nspr.dev}/include/nspr" "-I${nss}/include/nss"
NIX_CFLAGS_COMPILE = ["-I${nspr.dev}/include/nspr" "-I${nss.dev}/include/nss"
"-I${dbus_glib.dev}/include/dbus-1.0" "-I${dbus_libs.dev}/include/dbus-1.0"];
enableParallelBuilding = true;

View File

@ -8,7 +8,7 @@ stdenv.mkDerivation rec {
sha256 = "0mm0wldbi40am5qn0nv7psisbg01k42rwzjxl3gv11l5jj554aqk";
};
outputs = [ "dev" "out" ];
outputs = [ "out" "dev" ];
outputBin = "dev";
configureFlags = stdenv.lib.optional stdenv.isDarwin "--disable-Bsymbolic";

View File

@ -36,6 +36,6 @@ plasmaPackage rec {
NIX_CFLAGS_COMPILE = [ "-I${xorgserver.dev}/include/xorg" ];
cmakeFlags = [
"-DEvdev_INCLUDE_DIRS=${xf86inputevdev.dev}/include/xorg"
"-DSynaptics_INCLUDE_DIRS=${xf86inputsynaptics}/include/xorg"
"-DSynaptics_INCLUDE_DIRS=${xf86inputsynaptics.dev}/include/xorg"
];
}

View File

@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
};
name = "${p_name}-${ver_maj}.${ver_min}";
outputs = [ "dev" "out" "docdev" ];
outputs = [ "out" "dev" "docdev" ];
# lib/xfce4/exo-1/exo-compose-mail-1 is a perl script :-/
nativeBuildInputs = [ pkgconfig intltool ];

View File

@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
sha256 = "0wm9pjbwq53s3n3nwvsyf0q8lbmhiy2ln3bn5ncihr9vf5cwhzbq";
};
outputs = [ "dev" "out" ];
outputs = [ "out" "dev" ];
buildInputs = [ pkgconfig intltool glib libxfce4util gtk libxfce4ui ];

View File

@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
sha256 = "3d619811bfbe7478bb984c16543d980cadd08586365a7bc25e59e3ca6384ff43";
};
outputs = [ "dev" "out" "docdev" ];
outputs = [ "out" "dev" "docdev" ];
nativeBuildInputs = [ pkgconfig intltool ];

View File

@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
sha256 = "07c8r3xwx5is298zk77m3r784gmr5y4mh8bbca5zdjqk5vxdwsw7";
};
outputs = [ "dev" "out" "docdev" ];
outputs = [ "out" "dev" "docdev" ];
buildInputs = [ pkgconfig glib intltool ];

View File

@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
sha256 = "0cs5im0ib0cmr1lhr5765yliqjfyxvk4kwy8h1l8bn3mj6bzk0ib";
};
outputs = [ "dev" "out" "docdev" ];
outputs = [ "out" "dev" "docdev" ];
#TODO: gladeui
# By default, libxfcegui4 tries to install into libglade's prefix.

View File

@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
sha256 = "0wvip28gm2w061hn84zp2q4dv947ihylrppahn4cjspzff935zfh";
};
outputs = [ "dev" "out" "docdev" ];
outputs = [ "out" "dev" "docdev" ];
buildInputs = [
pkgconfig intltool dbus_glib gdk_pixbuf curl freetype

View File

@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
patches = [ ./xfce4-panel-datadir.patch ];
patchFlags = "-p1";
outputs = [ "dev" "out" "docdev" ];
outputs = [ "out" "dev" "docdev" ];
buildInputs =
[ pkgconfig intltool gtk libxfce4util exo libwnck

View File

@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
sha256 = "0mmi0g30aln3x98y5p507g17pipq0dj0bwypshan8cq5hkmfl44r";
};
outputs = [ "dev" "out" "docdev" ];
outputs = [ "out" "dev" "docdev" ];
#TODO: no perl bingings yet (ExtUtils::Depends, ExtUtils::PkgConfig, Glib)
buildInputs = [ pkgconfig intltool glib libxfce4util ];

View File

@ -8,7 +8,7 @@ stdenv.mkDerivation rec {
sha256 = "1lak3hyvvb0w9avzmf0a8vayb7vqhj4m709q1czlhvgjb15dbcf1";
};
outputs = [ "dev" "out" ];
outputs = [ "out" "dev" ];
outputBin = "dev"; # compilation tools
postInstall = ''

View File

@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
sha256 = "1c2i9ih331304bh31c5gh94fx0qa49rsn70pvczvdfhi8pmcms6g";
};
outputs = [ "dev" "out" "bin" "static" ];
outputs = [ "bin" "dev" "out" "static" ];
postPatch = ''
substituteInPlace Makefile --replace \

View File

@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
inherit sha256;
};
outputs = [ "dev" "out" "bin" ];
outputs = [ "bin" "dev" "out" ];
nativeBuildInputs = [ perl texinfo ];

View File

@ -824,10 +824,10 @@ self: super: {
# https://github.com/ivanperez-keera/hcwiid/pull/4
hcwiid = overrideCabal super.hcwiid (drv: {
configureFlags = (drv.configureFlags or []) ++ [
"--extra-lib-dirs=${pkgs.bluez}/lib"
"--extra-lib-dirs=${pkgs.bluez.out}/lib"
"--extra-lib-dirs=${pkgs.cwiid}/lib"
"--extra-include-dirs=${pkgs.cwiid}/include"
"--extra-include-dirs=${pkgs.bluez}/include"
"--extra-include-dirs=${pkgs.bluez.dev}/include"
];
prePatch = '' sed -i -e "/Extra-Lib-Dirs/d" -e "/Include-Dirs/d" "hcwiid.cabal" '';
});

View File

@ -20,7 +20,7 @@ stdenv.mkDerivation {
sed -e s@/bin/pwd@pwd@g -i otp_build
'';
configureFlags = "--with-ssl=${openssl}";
configureFlags = "--with-ssl=${openssl.dev}";
hardeningDisable = [ "format" ];

View File

@ -108,12 +108,12 @@ let
mysql = {
configureFlags = ["--with-mysql"];
buildInputs = [ mysql.lib ];
buildInputs = [ mysql.lib.dev ];
};
mysqli = {
configureFlags = ["--with-mysqli=${mysql.lib}/bin/mysql_config"];
buildInputs = [ mysql.lib ];
configureFlags = ["--with-mysqli=${mysql.lib.dev}/bin/mysql_config"];
buildInputs = [ mysql.lib.dev ];
};
mysqli_embedded = {
@ -123,8 +123,8 @@ let
};
pdo_mysql = {
configureFlags = ["--with-pdo-mysql=${mysql.lib}"];
buildInputs = [ mysql.lib ];
configureFlags = ["--with-pdo-mysql=${mysql.lib.dev}"];
buildInputs = [ mysql.lib.dev ];
};
bcmath = {

View File

@ -79,7 +79,7 @@ stdenv.mkDerivation {
export MACOSX_DEPLOYMENT_TARGET=10.6
''}
substituteInPlace ./Lib/plat-generic/regen --replace "/usr/include" ${glibc}/include
substituteInPlace ./Lib/plat-generic/regen --replace "/usr/include" ${glibc.dev}/include
configureFlagsArray=( --enable-shared --with-threads
CPPFLAGS="${concatStringsSep " " (map (p: "-I${getDev p}/include") buildInputs)}"

View File

@ -156,7 +156,7 @@ let
baseRuby = baseruby;
libPath = "lib/${rubyEngine}/${versionNoPatch}";
gemPath = "lib/${rubyEngine}/gems/${versionNoPatch}";
dev = import ./dev.nix {
devEnv = import ./dev.nix {
inherit buildEnv bundler bundix;
ruby = self;
};

View File

@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
sha256 = "1fig2wf4f10v43mqx67y68z6h77sy900d1w0pz9qarrqx57rc7ij";
};
outputs = [ "dev" "out" "lib" ];
outputs = [ "out" "dev" "lib" ];
propagatedBuildInputs = [ nspr ];

View File

@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
sha256 = "1n1phk8r3l8icqrrap4czplnylawa0ddc2cc4cgdz46x3lrkybz6";
};
outputs = [ "dev" "out" "lib" ];
outputs = [ "out" "dev" "lib" ];
propagatedBuildInputs = [ nspr ];

View File

@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
sha256 = "005d993xcac8236fpvd1iawkz4wqjybkpn8dbwaliqz5jfkidlyn";
};
outputs = [ "dev" "out" ];
outputs = [ "out" "dev" ];
outputBin = "dev"; # sdl-config
nativeBuildInputs = [ pkgconfig ];

View File

@ -8,7 +8,7 @@ stdenv.mkDerivation {
sha256 = "1vkh19gb76agvh4h87ysbrgy82hrw88lnsvhynjf4vng629dmpgv";
};
outputs = [ "dev" "out" "bin" "doc" ];
outputs = [ "bin" "dev" "out" "doc" ];
setOutputFlags = false; # Doesn't support all the flags
patches = stdenv.lib.optionals stdenv.isDarwin [ ./darwin.patch ];

View File

@ -8,7 +8,7 @@ stdenv.mkDerivation rec {
sha256 = "08qd9s3wfhv0ajswsylnfwr5h0d7j9d4rgip855nrh400nxp940p";
};
outputs = [ "dev" "out" "bin" "doc" ];
outputs = [ "bin" "dev" "out" "doc" ];
nativeBuildInputs = [ gettext ];
buildInputs = [ attr ];

View File

@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
sh autogen.sh
'';
configureFlags = "--x-includes=${libX11}/include --x-libraries=${libX11}/lib";
configureFlags = "--x-includes=${libX11.dev}/include --x-libraries=${libX11.out}/lib";
meta = {
description = "High quality rendering engine for C++";

View File

@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
patches = optional stdenv.isFreeBSD ./include-static-dependencies.patch;
outputs = [ "dev" "out" ];
outputs = [ "out" "dev" ];
outputBin = "dev";
buildInputs = optional stdenv.isFreeBSD autoreconfHook;

View File

@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
patches = stdenv.lib.optionals stdenv.isDarwin [ ./is-this-a-compiler-bug.patch ];
outputs = [ "dev" "out" ];
outputs = [ "out" "dev" ];
outputBin = "dev";
preConfigure =

View File

@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
sha256 = "88a4de9d43139f13cca531b47b901bc1b56e0ab06ba899126644abd4ac16a143";
};
outputs = [ "dev" "out" ];
outputs = [ "out" "dev" ];
buildInputs = [
python pkgconfig popt intltool dbus_glib

View File

@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
enableParallelBuilding = true;
outputs = [ "dev" "out" ];
outputs = [ "out" "dev" ];
buildInputs = libintlOrEmpty;

View File

@ -8,7 +8,7 @@ stdenv.mkDerivation rec {
sha256 = "0nd8y0m6awc9ahv0ciiwf8gy54c8d3j51pw9xg7f7cn579jjyxr5";
};
outputs = [ "dev" "out" "bin" "doc" ];
outputs = [ "bin" "dev" "out" "doc" ];
nativeBuildInputs = [ gettext ];

View File

@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
};
patches = if stdenv.isCygwin then [ ./cygwin.patch ] else null;
outputs = [ "dev" "out" "doc" ];
outputs = [ "out" "dev" "doc" ];
configureFlags =
[ "--enable-cplusplus" ]

View File

@ -162,7 +162,7 @@ stdenv.mkDerivation {
postFixup = fixup;
outputs = [ "dev" "out" ];
outputs = [ "out" "dev" ];
setOutputFlags = false;
crossAttrs = rec {

View File

@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
patches="$patches $(echo $infinality/*_cairo-iu/*.patch)"
'';
outputs = [ "dev" "out" "docdev" ];
outputs = [ "out" "dev" "docdev" ];
outputBin = "dev"; # very small
nativeBuildInputs = [

View File

@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
sha256 = "1hvvbcsg21nlncbgs0cgn3iwlnb3vannzwsp6rwvnn9ba4v53g4g";
};
outputs = [ "dev" "bin" "out" "man" "docdev" ];
outputs = [ "bin" "dev" "out" "man" "docdev" ];
buildInputs =
[ openssl db gettext kerberos ]

View File

@ -8,7 +8,7 @@ stdenv.mkDerivation rec {
sha256 = "0in0i6v68ixcy0ip28i84hdczf10ykq9x682qgcvls6gdmq552dk";
};
outputs = [ "dev" "out" "docdev" ];
outputs = [ "out" "dev" "docdev" ];
outputBin = "dev";
nativeBuildInputs = [ pkgconfig gettext ];

View File

@ -32,7 +32,7 @@ self = stdenv.mkDerivation {
--replace 'DBUS_DAEMONDIR"/dbus-daemon"' '"/run/current-system/sw/bin/dbus-daemon"'
'';
outputs = [ "dev" "out" "lib" "doc" ];
outputs = [ "out" "dev" "lib" "doc" ];
nativeBuildInputs = [ pkgconfig ];
propagatedBuildInputs = [ expat ];

View File

@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
sha256 = "0dfkd4xbp7v5gwsf6qwaraz54yzizf3lj5ymyc0msjn0adq3j5yl";
};
outputs = [ "dev" "out" ];
outputs = [ "out" "dev" ];
nativeBuildInputs = [ autoreconfHook pkgconfig utilmacros python ];
buildInputs = [ mesa libX11 ];

View File

@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
};
postPatch = "patchShebangs ./src/svn_version.sh";
outputs = [ "dev" "out" ];
outputs = [ "out" "dev" ];
nativeBuildInputs = [ gettext ];
propagatedBuildInputs = [ zlib expat ];

View File

@ -8,7 +8,7 @@ stdenv.mkDerivation rec {
sha256 = "1zq4lnwjlw8s9mmachwfvfjf2x3lk24jm41746ykhdcvs7r0zrfr";
};
outputs = [ "dev" "out" ]; # TODO: fix referrers
outputs = [ "out" "dev" ]; # TODO: fix referrers
outputBin = "dev";
configureFlags = stdenv.lib.optional stdenv.isFreeBSD "--with-pic";

View File

@ -72,7 +72,7 @@ stdenv.mkDerivation rec {
postPatch = ''patchShebangs .'';
inherit patches;
outputs = [ "dev" "out" "bin" ]
outputs = [ "bin" "dev" "out" ]
++ optional (reqMin "1.0") "doc" ; # just dev-doc
setOutputFlags = false; # doesn't accept all and stores configureFlags in libs!

View File

@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
sha256 = "1kwbx92ps0r7s2mqy7lxbxanslxdzj7dp7r7gmdkzv1j8yqf3kwf";
};
outputs = [ "dev" "out" "doc" ]; # it's dev-doc only
outputs = [ "out" "dev" "doc" ]; # it's dev-doc only
outputBin = "dev"; # fftw-wisdom
configureFlags =

View File

@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
}
;
outputs = [ "dev" "lib" "bin" "out" ]; # $out contains all the config
outputs = [ "bin" "dev" "lib" "out" ]; # $out contains all the config
propagatedBuildInputs = [ freetype ];
buildInputs = [ pkgconfig expat ];

View File

@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
})
];
outputs = [ "dev" "lib" "bin" "out" ]; # $out contains all the config
outputs = [ "bin" "dev" "lib" "out" ]; # $out contains all the config
propagatedBuildInputs = [ freetype ];
buildInputs = [ pkgconfig expat ];

View File

@ -51,7 +51,7 @@ stdenv.mkDerivation rec {
patches="$patches $(ls ${infinality}/*_freetype2-iu/*-infinality-*.patch)"
'';
outputs = [ "dev" "out" ];
outputs = [ "out" "dev" ];
propagatedBuildInputs = [ zlib bzip2 libpng ]; # needed when linking against freetype
# dependence on harfbuzz is looser than the reverse dependence

View File

@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
buildInputs = [ zlib fontconfig freetype ];
propagatedBuildInputs = [ libpng libjpeg libwebp libtiff libXpm ];
outputs = [ "dev" "out" "bin" ];
outputs = [ "bin" "dev" "out" ];
postFixup = ''moveToOutput "bin/gdlib-config" $dev'';

View File

@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
sha256 = "0yc8indbl3hf18z6x6kjg59xp9sngm1d8vmz4c7bs6g27qw5npnm";
};
outputs = [ "dev" "out" "docdev" ];
outputs = [ "out" "dev" "docdev" ];
outputBin = "dev";
setupHook = ./setup-hook.sh;

View File

@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
sha256 = "1cchmi08jpjypgmm9i7xzh5qfg2q5k61kry9ns8mhw3z44a440ym";
};
outputs = [ "dev" "out" ]; # to deal with propagatedBuildInputs
outputs = [ "out" "dev" ]; # to deal with propagatedBuildInputs
configureFlags = "--with-ca-certificates=/etc/ssl/certs/ca-certificates.crt";

View File

@ -53,7 +53,7 @@ stdenv.mkDerivation rec {
patches = optional stdenv.isDarwin ./darwin-compilation.patch ++ optional doCheck ./skip-timer-test.patch;
outputs = [ "dev" "out" "docdev" ];
outputs = [ "out" "dev" "docdev" ];
outputBin = "dev";
setupHook = ./setup-hook.sh;

View File

@ -110,7 +110,7 @@ stdenv.mkDerivation ({
installFlags = [ "sysconfdir=$(out)/etc" ];
outputs = [ "dev" "out" "bin" "static" ];
outputs = [ "out" "bin" "dev" "static" ];
buildInputs = lib.optionals (cross != null) [ gccCross ]
++ lib.optionals withGd [ gd libpng ];

View File

@ -6,7 +6,7 @@ let
glibc64 = glibc;
in
runCommand "${nameVersion.name}-multi-${nameVersion.version}"
{ outputs = [ "dev" "out" "bin" ]; } # TODO: no static version here (yet)
{ outputs = [ "bin" "dev" "out"]; } # TODO: no static version here (yet)
''
mkdir -p "$out/lib"
ln -s '${glibc64.out}'/lib/* "$out/lib"

View File

@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
sha256 = "1pvw2mrm03p51p03179rb6fk9p42iykkwj1jcdv7jr265xymy8nw";
};
outputs = [ "dev" "out" ];
outputs = [ "out" "dev" ];
nativeBuildInputs = [ pkgconfig gnum4 ];
propagatedBuildInputs = [ glib libsigcxx ];

View File

@ -8,7 +8,7 @@ stdenv.mkDerivation rec {
sha256 = "0rfzbgsh8ira5p76kdghygl5i3fvmmx4wbw5rp7f8ajc4vxp18g0";
};
outputs = [ "dev" "out" ];
outputs = [ "out" "dev" ];
nativeBuildInputs = [ pkgconfig ];
propagatedBuildInputs = [ glib zlib libgpgerror ];

View File

@ -1,6 +1,6 @@
{ stdenv, fetchurl, m4, cxx ? true }:
stdenv.mkDerivation rec {
let self = stdenv.mkDerivation rec {
name = "gmp-4.3.2";
src = fetchurl {
@ -8,6 +8,12 @@ stdenv.mkDerivation rec {
sha256 = "0x8prpqi9amfcmi7r4zrza609ai9529pjaq0h4aw51i867064qck";
};
#outputs TODO: split $cxx due to libstdc++ dependency
# maybe let ghc use a version with *.so shared with rest of nixpkgs and *.a added
# - see #5855 for related discussion
outputs = [ "out" "dev" "info" ];
passthru.static = self.out;
nativeBuildInputs = [ m4 ];
# Prevent the build system from using sub-architecture-specific
@ -60,4 +66,5 @@ stdenv.mkDerivation rec {
maintainers = [ ];
platforms = stdenv.lib.platforms.all;
};
}
};
in self

View File

@ -2,7 +2,7 @@
with { inherit (stdenv.lib) optional optionalString; };
stdenv.mkDerivation rec {
let self = stdenv.mkDerivation rec {
name = "gmp-5.1.3";
src = fetchurl { # we need to use bz2, others aren't in bootstrapping stdenv
@ -10,7 +10,11 @@ stdenv.mkDerivation rec {
sha256 = "0q5i39pxrasgn9qdxzpfbwhh11ph80p57x6hf48m74261d97j83m";
};
outputs = [ "out" "info" ];
#outputs TODO: split $cxx due to libstdc++ dependency
# maybe let ghc use a version with *.so shared with rest of nixpkgs and *.a added
# - see #5855 for related discussion
outputs = [ "out" "dev" "info" ];
passthru.static = self.out;
nativeBuildInputs = [ m4 ];
@ -76,4 +80,5 @@ stdenv.mkDerivation rec {
platforms = platforms.all;
maintainers = [ maintainers.peti ];
};
}
};
in self

View File

@ -10,10 +10,10 @@ let self = stdenv.mkDerivation rec {
sha256 = "1mpzprdzkgfpdc1v2lf4dxlxps4x8bvmzvd8n1ri6gw9y9jrh458";
};
#outputs TODO: split $cxx due to libstdc++ dependency; maybe port to gmp5;
#outputs TODO: split $cxx due to libstdc++ dependency
# maybe let ghc use a version with *.so shared with rest of nixpkgs and *.a added
# - see #5855 for related discussion
outputs = [ "dev" "out" "info" ];
outputs = [ "out" "dev" "info" ];
passthru.static = self.out;
nativeBuildInputs = [ m4 ];

View File

@ -17,7 +17,7 @@ stdenv.mkDerivation {
inherit src patches;
outputs = [ "dev" "out" "bin" "man" "docdev" ];
outputs = [ "bin" "dev" "out" "man" "docdev" ];
outputInfo = "docdev";
postPatch = lib.optionalString (lib.versionAtLeast version "3.4") ''

View File

@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
sha256 = "0xsqwxhfqzr79av89mg766kxpb2i41bd0vwspk01xjdzrnn5l9zs";
};
outputs = [ "dev" "out" ];
outputs = [ "out" "dev" ];
outputBin = "dev";
outputMan = "dev"; # tiny pages

View File

@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
sha256 = "17892sclz3yg45wbyqqrzzpq3l0icbnfl28f101b3062g8cy97dh";
};
outputs = [ "dev" "out" "info" ];
outputs = [ "out" "dev" "info" ];
outputBin = "dev"; # gpgme-config; not so sure about gpgme-tool
propagatedBuildInputs = [ libgpgerror glib libassuan pth ];

View File

@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
sha256 = "d7995317530c8773ec088f94d9320909d41da61996b801ebacce9a56af493f97";
};
outputs = [ "dev" "out" ];
outputs = [ "out" "dev" ];
nativeBuildInputs = [ pkgconfig python ];

View File

@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
sha256 = "9d7109c8fb0a5dec8edb17b0053c59a46aba7ddf48dc48ea822ebbbd4339d38d";
};
outputs = [ "dev" "out" ];
outputs = [ "out" "dev" ];
nativeBuildInputs = [
pkgconfig python gobjectIntrospection

View File

@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
sha256 = "9dbebe079c2ab2004ef7f2649fa317cabea1feb4fb5605c24d40744b90918341";
};
outputs = [ "dev" "out" ];
outputs = [ "out" "dev" ];
outputBin = "dev";
nativeBuildInputs = [

View File

@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
sha256 = "a1d57ff9461407cca1f6e7a9f31a5bdb73f73f33c488a3e3318b27e10a4332ae";
};
outputs = [ "dev" "out" ];
outputs = [ "out" "dev" ];
nativeBuildInputs = [ pkgconfig python gobjectIntrospection flex perl ];

View File

@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
sha256 = "0zv60rq2h736a6fivd3a3wp59dj1jar7b2vwzykahvl168b7wrid";
};
outputs = [ "dev" "out" ];
outputs = [ "out" "dev" ];
nativeBuildInputs = [ pkgconfig ];

View File

@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
sha256 = "8d7549118a3b7a009ece6bb38a05b66709c551d32d2adfd89eded4d1d7a23944";
};
outputs = [ "dev" "out" ];
outputs = [ "out" "dev" ];
nativeBuildInputs = [ pkgconfig python ];

View File

@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
sha256 = "0bj6and9b26d32bq90l8nx5wqh2ikkh8dm7qwxyxfdvmrzhixhgi";
};
outputs = [ "dev" "out" ];
outputs = [ "out" "dev" ];
nativeBuildInputs = [ pkgconfig file ];

View File

@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
sha256 = "b5f3c7a27b39b5f5c2f0bfd546b0c655020faf6b38d27b64b346c43e5ebf687a";
};
outputs = [ "dev" "out" ];
outputs = [ "out" "dev" ];
configureFlags = stdenv.lib.optionalString withSystemLibav
"--with-system-libav";

View File

@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
patches = [ ./different-path-with-pygobject.patch ];
outputs = [ "dev" "out" ];
outputs = [ "out" "dev" ];
nativeBuildInputs = [ pkgconfig python ];

View File

@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
})
];
outputs = [ "dev" "out" ];
outputs = [ "out" "dev" ];
buildInputs = [ gst_all_1.gstreamer gst_all_1.gst-plugins-base glib qt4 ];
propagatedBuildInputs = [ boost ];

View File

@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
sha256 = "9c5b33a2a98fc1d6d6c99a1b536b1fb2de45f53cc8bf8ab85a8b8141fed1a8ac";
};
outputs = [ "dev" "out" ];
outputs = [ "out" "dev" ];
nativeBuildInputs = [ pkgconfig python ];

View File

@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
sha256 = "14jal2g5mf8r59w8420ixl3kg50vcmy56446ncwd0xrizd6yms5b";
};
outputs = [ "dev" "out" ];
outputs = [ "out" "dev" ];
nativeBuildInputs = with stdenv.lib; [ pkgconfig bzip2 ];

View File

@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
sha256 = "33c5b585c5ca1659fe6c09fdf02e45d8132c0d386b405bf527b14ab481a0bafe";
};
outputs = [ "dev" "out" ];
outputs = [ "out" "dev" ];
nativeBuildInputs = [
pkgconfig gobjectIntrospection

View File

@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
sha256 = "0d15cec3b6d55c60eac205b1f3ba81a1ed4eadd9d0f8e7c508bc7065d0c4ca50";
};
outputs = [ "dev" "out" "docdev" ];
outputs = [ "out" "dev" "docdev" ];
outputBin = "dev";
enableParallelBuilding = true;

View File

@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
sha256 = "05xcwvy68p7f4hdhi4bgdm3aycvqqr4pr5kkkr8ba91l5yx0k9l3";
};
outputs = [ "dev" "out" ];
outputs = [ "out" "dev" ];
outputBin = "dev";
nativeBuildInputs = [ pkgconfig gettext gobjectIntrospection perl ];

View File

@ -17,7 +17,7 @@ stdenv.mkDerivation {
sha256 = "09lh8x6qj0cd950whgaqqi3c4pqbl6z7aw9ddm73i14bw056185v";
};
outputs = [ "dev" "out" ];
outputs = [ "out" "dev" ];
outputBin = "dev";
configureFlags = [

View File

@ -8,7 +8,7 @@ stdenv.mkDerivation rec {
sha256 = "0v14ff9s37vkh45diaddndcrj0hmn67arh8xh8k79q9c1vgc1cm7";
};
outputs = [ "dev" "out" "bin" "man" ];
outputs = [ "bin" "dev" "out" "man" ];
buildInputs = [ ncurses readline ];
configureFlags = [ "--with-ui" "--with-readline" ];

View File

@ -13,7 +13,7 @@ stdenv.mkDerivation ({
sha256 = "10cmkqigxh9f73y7q3p991q6j8pph0mrydgj11w1x6wlcp5ng37z";
};
outputs = [ "dev" "out" ];
outputs = [ "out" "dev" ];
outputBin = "dev";
makeFlags = stdenv.lib.optionalString stdenv.isDarwin

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