Merge branch 'staging'

This commit is contained in:
Vladimír Čunát 2017-02-04 21:02:46 +01:00
commit a2c867fd39
No known key found for this signature in database
GPG Key ID: E747DF1F9575A3AA
65 changed files with 642 additions and 221 deletions

View File

@ -793,6 +793,64 @@ It's important to realize, however, that most system libraries in Nix are built
as shared libraries only, i.e. there is just no static library available that as shared libraries only, i.e. there is just no static library available that
Cabal could link! Cabal could link!
### Building GHC with integer-simple
By default GHC implements the Integer type using the
[GNU Multiple Precision Arithmetic (GMP) library](https://gmplib.org/).
The implementation can be found in the
[integer-gmp](http://hackage.haskell.org/package/integer-gmp) package.
A potential problem with this is that GMP is licensed under the
[GNU Lesser General Public License (LGPL)](http://www.gnu.org/copyleft/lesser.html),
a kind of "copyleft" license. According to the terms of the LGPL, paragraph 5,
you may distribute a program that is designed to be compiled and dynamically
linked with the library under the terms of your choice (i.e., commercially) but
if your program incorporates portions of the library, if it is linked
statically, then your program is a "derivative"--a "work based on the
library"--and according to paragraph 2, section c, you "must cause the whole of
the work to be licensed" under the terms of the LGPL (including for free).
The LGPL licensing for GMP is a problem for the overall licensing of binary
programs compiled with GHC because most distributions (and builds) of GHC use
static libraries. (Dynamic libraries are currently distributed only for OS X.)
The LGPL licensing situation may be worse: even though
[The Glasgow Haskell Compiler License](https://www.haskell.org/ghc/license)
is essentially a "free software" license (BSD3), according to
paragraph 2 of the LGPL, GHC must be distributed under the terms of the LGPL!
To work around these problems GHC can be build with a slower but LGPL-free
alternative implemention for Integer called
[integer-simple](http://hackage.haskell.org/package/integer-simple).
To get a GHC compiler build with `integer-simple` instead of `integer-gmp` use
the attribute: `pkgs.haskell.compiler.integer-simple."${ghcVersion}"`.
For example:
$ nix-build -E '(import <nixpkgs> {}).pkgs.haskell.compiler.integer-simple.ghc802'
...
$ result/bin/ghc-pkg list | grep integer
integer-simple-0.1.1.1
The following command displays the complete list of GHC compilers build with `integer-simple`:
$ nix-env -f "<nixpkgs>" -qaP -A haskell.compiler.integer-simple
haskell.compiler.integer-simple.ghc7102 ghc-7.10.2
haskell.compiler.integer-simple.ghc7103 ghc-7.10.3
haskell.compiler.integer-simple.ghc722 ghc-7.2.2
haskell.compiler.integer-simple.ghc742 ghc-7.4.2
haskell.compiler.integer-simple.ghc763 ghc-7.6.3
haskell.compiler.integer-simple.ghc783 ghc-7.8.3
haskell.compiler.integer-simple.ghc784 ghc-7.8.4
haskell.compiler.integer-simple.ghc801 ghc-8.0.1
haskell.compiler.integer-simple.ghc802 ghc-8.0.2
haskell.compiler.integer-simple.ghcHEAD ghc-8.1.20170106
To get a package set supporting `integer-simple` use the attribute:
`pkgs.haskell.packages.integer-simple."${ghcVersion}"`. For example
use the following to get the `scientific` package build with `integer-simple`:
$ nix-build -A pkgs.haskell.packages.integer-simple.ghc802.scientific
## Other resources ## Other resources

View File

@ -667,8 +667,10 @@ in
config = mkIf config.systemd.network.enable { config = mkIf config.systemd.network.enable {
systemd.additionalUpstreamSystemUnits = systemd.additionalUpstreamSystemUnits = [
[ "systemd-networkd.service" "systemd-networkd-wait-online.service" ]; "systemd-networkd.service" "systemd-networkd-wait-online.service"
"org.freedesktop.network1.busname"
];
systemd.network.units = mapAttrs' (n: v: nameValuePair "${n}.link" (linkToUnit n v)) cfg.links systemd.network.units = mapAttrs' (n: v: nameValuePair "${n}.link" (linkToUnit n v)) cfg.links
// mapAttrs' (n: v: nameValuePair "${n}.netdev" (netdevToUnit n v)) cfg.netdevs // mapAttrs' (n: v: nameValuePair "${n}.netdev" (netdevToUnit n v)) cfg.netdevs

View File

@ -71,7 +71,9 @@ in
config = mkIf cfg.enable { config = mkIf cfg.enable {
systemd.additionalUpstreamSystemUnits = [ "systemd-resolved.service" ]; systemd.additionalUpstreamSystemUnits = [
"systemd-resolved.service" "org.freedesktop.resolve1.busname"
];
systemd.services.systemd-resolved = { systemd.services.systemd-resolved = {
wantedBy = [ "multi-user.target" ]; wantedBy = [ "multi-user.target" ];

View File

@ -17,6 +17,7 @@ let
"busnames.target" "busnames.target"
"sysinit.target" "sysinit.target"
"sockets.target" "sockets.target"
"exit.target"
"graphical.target" "graphical.target"
"multi-user.target" "multi-user.target"
"network.target" "network.target"
@ -41,11 +42,13 @@ let
"systemd-udevd.service" "systemd-udevd.service"
"systemd-udev-settle.service" "systemd-udev-settle.service"
"systemd-udev-trigger.service" "systemd-udev-trigger.service"
"systemd-hwdb-update.service"
# Consoles. # Consoles.
"getty.target" "getty.target"
"getty@.service" "getty@.service"
"serial-getty@.service" "serial-getty@.service"
"console-getty.service"
"container-getty@.service" "container-getty@.service"
"systemd-vconsole-setup.service" "systemd-vconsole-setup.service"
@ -72,6 +75,7 @@ let
"systemd-journal-flush.service" "systemd-journal-flush.service"
"systemd-journal-gatewayd.socket" "systemd-journal-gatewayd.socket"
"systemd-journal-gatewayd.service" "systemd-journal-gatewayd.service"
"systemd-journal-catalog-update.service"
"systemd-journald-audit.socket" "systemd-journald-audit.socket"
"systemd-journald-dev-log.socket" "systemd-journald-dev-log.socket"
"syslog.socket" "syslog.socket"
@ -104,6 +108,7 @@ let
"systemd-random-seed.service" "systemd-random-seed.service"
"systemd-backlight@.service" "systemd-backlight@.service"
"systemd-rfkill.service" "systemd-rfkill.service"
"systemd-rfkill.socket"
# Hibernate / suspend. # Hibernate / suspend.
"hibernate.target" "hibernate.target"
@ -111,8 +116,8 @@ let
"sleep.target" "sleep.target"
"hybrid-sleep.target" "hybrid-sleep.target"
"systemd-hibernate.service" "systemd-hibernate.service"
"systemd-suspend.service"
"systemd-hybrid-sleep.service" "systemd-hybrid-sleep.service"
"systemd-suspend.service"
# Reboot stuff. # Reboot stuff.
"reboot.target" "reboot.target"
@ -136,10 +141,10 @@ let
# Slices / containers. # Slices / containers.
"slices.target" "slices.target"
"-.slice"
"system.slice" "system.slice"
"user.slice" "user.slice"
"machine.slice" "machine.slice"
"machines.target"
"systemd-machined.service" "systemd-machined.service"
"systemd-nspawn@.service" "systemd-nspawn@.service"
@ -162,12 +167,12 @@ let
"systemd-localed.service" "systemd-localed.service"
"systemd-hostnamed.service" "systemd-hostnamed.service"
"systemd-binfmt.service" "systemd-binfmt.service"
"systemd-exit.service"
] ]
++ cfg.additionalUpstreamSystemUnits; ++ cfg.additionalUpstreamSystemUnits;
upstreamSystemWants = upstreamSystemWants =
[ #"basic.target.wants" [ "sysinit.target.wants"
"sysinit.target.wants"
"sockets.target.wants" "sockets.target.wants"
"local-fs.target.wants" "local-fs.target.wants"
"multi-user.target.wants" "multi-user.target.wants"
@ -176,11 +181,18 @@ let
upstreamUserUnits = upstreamUserUnits =
[ "basic.target" [ "basic.target"
"bluetooth.target"
"busnames.target"
"default.target" "default.target"
"exit.target" "exit.target"
"graphical-session-pre.target"
"graphical-session.target"
"paths.target" "paths.target"
"printer.target"
"shutdown.target" "shutdown.target"
"smartcard.target"
"sockets.target" "sockets.target"
"sound.target"
"systemd-exit.service" "systemd-exit.service"
"timers.target" "timers.target"
]; ];

View File

@ -1,12 +1,14 @@
{ stdenv, fetchurl, cairo, fftw, gtkmm2, lv2, lvtk, pkgconfig, python }: { stdenv, fetchFromGitHub, cairo, fftw, gtkmm2, lv2, lvtk, pkgconfig, python }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "ams-lv2-${version}"; name = "ams-lv2-${version}";
version = "1.1.0"; version = "1.2.1";
src = fetchurl { src = fetchFromGitHub {
url = "https://github.com/blablack/ams-lv2/archive/v${version}.tar.gz"; owner = "blablack";
sha256 = "1kqbl7rc3zrs27c5ga0frw3mlpx15sbxzhf04sfbrd9l60535fd5"; repo = "ams-lv2";
rev = version;
sha256 = "1n1dnqnj24xhiy9323lj52nswr5120cj56fpckg802miss05sr6x";
}; };
buildInputs = [ cairo fftw gtkmm2 lv2 lvtk pkgconfig python ]; buildInputs = [ cairo fftw gtkmm2 lv2 lvtk pkgconfig python ];

View File

@ -13,12 +13,20 @@ stdenv.mkDerivation rec {
url = "https://github.com/audacity/audacity/archive/Audacity-${version}.tar.gz"; url = "https://github.com/audacity/audacity/archive/Audacity-${version}.tar.gz";
sha256 = "1ggr6g0mk36rqj7ahsg8b0b1r9kphwajzvxgn43md263rm87n04h"; sha256 = "1ggr6g0mk36rqj7ahsg8b0b1r9kphwajzvxgn43md263rm87n04h";
}; };
patches = [(fetchpatch { patches = [
(fetchpatch {
name = "new-ffmpeg.patch"; name = "new-ffmpeg.patch";
url = "https://projects.archlinux.org/svntogit/packages.git/plain/trunk" url = "https://projects.archlinux.org/svntogit/packages.git/plain/trunk"
+ "/audacity-ffmpeg.patch?h=packages/audacity&id=0c1e35798d4d70692"; + "/audacity-ffmpeg.patch?h=packages/audacity&id=0c1e35798d4d70692";
sha256 = "19fr674mw844zmkp1476yigkcnmb6zyn78av64ccdwi3p68i00rf"; sha256 = "19fr674mw844zmkp1476yigkcnmb6zyn78av64ccdwi3p68i00rf";
})]; })
]
++ optional (hasPrefix "gcc-6" stdenv.cc.cc.name)
(fetchpatch {
name = "gcc6.patch";
url = "https://github.com/audacity/audacity/commit/60f2322055756e8cacfe96530a12c63e9694482c.patch";
sha256 = "07jlxr8y7ap3nsblx3zh8v9rcx7ajbcfnvwzhwykmbwbsyirgqf2";
});
preConfigure = /* we prefer system-wide libs */ '' preConfigure = /* we prefer system-wide libs */ ''
mv lib-src lib-src-rm mv lib-src lib-src-rm
@ -57,6 +65,8 @@ stdenv.mkDerivation rec {
ffmpeg libmad lame libvorbis flac soundtouch ffmpeg libmad lame libvorbis flac soundtouch
]; #ToDo: detach sbsms ]; #ToDo: detach sbsms
enableParallelBuilding = true;
dontDisableStatic = true; dontDisableStatic = true;
doCheck = false; # Test fails doCheck = false; # Test fails

View File

@ -1,10 +1,11 @@
{ stdenv, fetchurl, spidermonkey_24, unzip, curl, pcre, readline, openssl, perl, html-tidy }: { stdenv, fetchurl, spidermonkey, unzip, curl, pcre, readline, openssl, perl, html-tidy }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "edbrowse-${version}"; name = "edbrowse-${version}";
version = "3.6.1"; version = "3.6.1";
nativeBuildInputs = [ unzip ]; nativeBuildInputs = [ unzip ];
buildInputs = [ curl pcre readline openssl spidermonkey_24 perl html-tidy ]; buildInputs = [ curl pcre readline openssl spidermonkey perl html-tidy ];
patchPhase = '' patchPhase = ''
substituteInPlace src/ebjs.c --replace \"edbrowse-js\" \"$out/bin/edbrowse-js\" substituteInPlace src/ebjs.c --replace \"edbrowse-js\" \"$out/bin/edbrowse-js\"
@ -14,7 +15,7 @@ stdenv.mkDerivation rec {
done done
''; '';
NIX_CFLAGS_COMPILE = "-I${spidermonkey_24.dev}/include/mozjs-24"; NIX_CFLAGS_COMPILE = "-I${spidermonkey}/include/mozjs-31";
makeFlags = "-C src prefix=$(out)"; makeFlags = "-C src prefix=$(out)";
src = fetchurl { src = fetchurl {
@ -34,5 +35,6 @@ stdenv.mkDerivation rec {
homepage = http://edbrowse.org/; homepage = http://edbrowse.org/;
maintainers = [ maintainers.schmitthenner maintainers.vrthra ]; maintainers = [ maintainers.schmitthenner maintainers.vrthra ];
platforms = platforms.linux; platforms = platforms.linux;
broken = true; # no compatible spidermonkey
}; };
} }

View File

@ -1,27 +1,38 @@
{ stdenv, fetchurl, cmake, pkgconfig, { stdenv, fetchFromGitHub, fetchpatch, cmake, pkgconfig, pcre, libxkbcommon, epoxy
gtk2 , poppler, freetype, libpthreadstubs, libXdmcp, libxshmfence , gtk3, poppler, freetype, libpthreadstubs, libXdmcp, libxshmfence
}: }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
version = "0.1.f7f7b9c"; version = "0.1.5";
name = "apvlv-${version}"; name = "apvlv-${version}";
src = fetchurl { src = fetchFromGitHub {
url = "https://github.com/downloads/naihe2010/apvlv/${name}-Source.tar.gz"; owner = "naihe2010";
sha256 = "125nlcfjdhgzi9jjxh9l2yc9g39l6jahf8qh2555q20xkxf4rl0w"; repo = "apvlv";
rev = "v${version}";
sha256 = "1n4xiic8lqnv3mqi7wpdv866gyyakax71gffv3n9427rmcld465i";
}; };
preConfigure = '' NIX_CFLAGS_COMPILE = "-I${poppler.dev}/include/poppler";
export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I${poppler.dev}/include/poppler"
'';
buildInputs = [ buildInputs = [
pkgconfig cmake pkgconfig cmake
poppler poppler pcre libxkbcommon epoxy
freetype gtk2 freetype gtk3
libpthreadstubs libXdmcp libxshmfence # otherwise warnings in compilation libpthreadstubs libXdmcp libxshmfence # otherwise warnings in compilation
]; ];
patches = [
(fetchpatch {
url = "https://github.com/naihe2010/apvlv/commit/d432635b9c5ea6c052a2ae1fb71aedec5c4ad57a.patch";
sha256 = "1am8dgv2kkpqmm2vaysa61czx8ppdx94zb3c59sx88np50jpy70w";
})
(fetchpatch {
url = "https://github.com/naihe2010/apvlv/commit/4c7a583e8431964def482e5471f02e6de8e62a7b.patch";
sha256 = "1dszm120lwm90hcg5zmd4vr6pjyaxc84qmb7k0fr59mmb3qif62j";
})
];
installPhase = '' installPhase = ''
# binary # binary
mkdir -p $out/bin mkdir -p $out/bin

View File

@ -25,6 +25,8 @@ stdenv.mkDerivation rec {
sha512 = "99cea54b553158c1e08cf19157ac2bb6822fd1fef0501d36f983e6b8d4f2143a2e6124d61297446944033d3fed9326fe0f12ca45db0b5815be71a0777e73ffb0"; sha512 = "99cea54b553158c1e08cf19157ac2bb6822fd1fef0501d36f983e6b8d4f2143a2e6124d61297446944033d3fed9326fe0f12ca45db0b5815be71a0777e73ffb0";
}; };
patches = [ ./gcc6.patch ];
# New sed no longer tolerates this mistake. # New sed no longer tolerates this mistake.
postPatch = '' postPatch = ''
for f in mozilla/{js/src,}/configure; do for f in mozilla/{js/src,}/configure; do

View File

@ -0,0 +1,75 @@
# HG changeset patch
# User Mike Hommey <mh+mozilla@glandium.org>
# Date 1457596445 -32400
# Node ID 55212130f19da3079167a6b0a5a0ed6689c9a71d
# Parent 27c94617d7064d566c24a42e11cd4c7ef725923d
Bug 1245076 - Don't include mozalloc.h from the cstdlib wrapper. r=froydnj
Our STL wrappers do various different things, one of which is including
mozalloc.h for infallible operator new. mozalloc.h includes stdlib.h,
which, in libstdc++ >= 6 is now itself a wrapper around cstdlib, which
circles back to our STL wrapper.
But of the things our STL wrappers do, including mozalloc.h is not one
that is necessary for cstdlib. So skip including mozalloc.h in our
cstdlib wrapper.
Additionally, some C++ sources (in media/mtransport) are including
headers in an extern "C" block, which end up including stdlib.h, which
ends up including cstdlib because really, this is all C++, and our
wrapper pre-includes <new> for mozalloc.h, which fails because templates
don't work inside extern "C". So, don't pre-include <new> when we're not
including mozalloc.h.
diff --git a/mozilla/config/gcc-stl-wrapper.template.h b/mozilla/config/gcc-stl-wrapper.template.h
--- a/mozilla/config/gcc-stl-wrapper.template.h
+++ b/mozilla/config/gcc-stl-wrapper.template.h
@@ -12,33 +12,40 @@
// compiling ObjC.
#if defined(__EXCEPTIONS) && __EXCEPTIONS && !(__OBJC__ && __GNUC__ && XP_IOS)
# error "STL code can only be used with -fno-exceptions"
#endif
// Silence "warning: #include_next is a GCC extension"
#pragma GCC system_header
+// Don't include mozalloc for cstdlib. See bug 1245076.
+#ifndef moz_dont_include_mozalloc_for_cstdlib
+# define moz_dont_include_mozalloc_for_cstdlib
+#endif
+#ifndef moz_dont_include_mozalloc_for_${HEADER}
// mozalloc.h wants <new>; break the cycle by always explicitly
// including <new> here. NB: this is a tad sneaky. Sez the gcc docs:
//
// `#include_next' does not distinguish between <file> and "file"
// inclusion, nor does it check that the file you specify has the
// same name as the current file. It simply looks for the file
// named, starting with the directory in the search path after the
// one where the current file was found.
-#include_next <new>
+# include_next <new>
// See if we're in code that can use mozalloc. NB: this duplicates
// code in nscore.h because nscore.h pulls in prtypes.h, and chromium
// can't build with that being included before base/basictypes.h.
-#if !defined(XPCOM_GLUE) && !defined(NS_NO_XPCOM) && !defined(MOZ_NO_MOZALLOC)
-# include "mozilla/mozalloc.h"
-#else
-# error "STL code can only be used with infallible ::operator new()"
+# if !defined(XPCOM_GLUE) && !defined(NS_NO_XPCOM) && !defined(MOZ_NO_MOZALLOC)
+# include "mozilla/mozalloc.h"
+# else
+# error "STL code can only be used with infallible ::operator new()"
+# endif
+
#endif
#if defined(DEBUG) && !defined(_GLIBCXX_DEBUG)
// Enable checked iterators and other goodies
//
// FIXME/bug 551254: gcc's debug STL implementation requires -frtti.
// Figure out how to resolve this with -fno-rtti. Maybe build with
// -frtti in DEBUG builds?

View File

@ -1,20 +1,27 @@
{ stdenv, fetchurl, fetchpatch, bootPkgs, perl, gmp, ncurses, libiconv, binutils, coreutils { stdenv, fetchurl, fetchpatch, bootPkgs, perl, ncurses, libiconv, binutils, coreutils
, libxml2, libxslt, docbook_xsl, docbook_xml_dtd_45, docbook_xml_dtd_42, hscolour , libxml2, libxslt, docbook_xsl, docbook_xml_dtd_45, docbook_xml_dtd_42, hscolour
# If enabled GHC will be build with the GPL-free but slower integer-simple
# library instead of the faster but GPLed integer-gmp library.
, enableIntegerSimple ? false, gmp
}: }:
let let
inherit (bootPkgs) ghc; inherit (bootPkgs) ghc;
buildMK = '' buildMK = ''
libraries/integer-gmp_CONFIGURE_OPTS += --configure-option=--with-gmp-libraries="${gmp.out}/lib"
libraries/integer-gmp_CONFIGURE_OPTS += --configure-option=--with-gmp-includes="${gmp.dev}/include"
libraries/terminfo_CONFIGURE_OPTS += --configure-option=--with-curses-includes="${ncurses.dev}/include" libraries/terminfo_CONFIGURE_OPTS += --configure-option=--with-curses-includes="${ncurses.dev}/include"
libraries/terminfo_CONFIGURE_OPTS += --configure-option=--with-curses-libraries="${ncurses.out}/lib" libraries/terminfo_CONFIGURE_OPTS += --configure-option=--with-curses-libraries="${ncurses.out}/lib"
${stdenv.lib.optionalString stdenv.isDarwin '' ${stdenv.lib.optionalString stdenv.isDarwin ''
libraries/base_CONFIGURE_OPTS += --configure-option=--with-iconv-includes="${libiconv}/include" libraries/base_CONFIGURE_OPTS += --configure-option=--with-iconv-includes="${libiconv}/include"
libraries/base_CONFIGURE_OPTS += --configure-option=--with-iconv-libraries="${libiconv}/lib" libraries/base_CONFIGURE_OPTS += --configure-option=--with-iconv-libraries="${libiconv}/lib"
''} ''}
''; '' + (if enableIntegerSimple then ''
INTEGER_LIBRARY=integer-simple
'' else ''
libraries/integer-gmp_CONFIGURE_OPTS += --configure-option=--with-gmp-libraries="${gmp.out}/lib"
libraries/integer-gmp_CONFIGURE_OPTS += --configure-option=--with-gmp-includes="${gmp.dev}/include"
'');
in in
@ -46,8 +53,9 @@ stdenv.mkDerivation rec {
configureFlags = [ configureFlags = [
"--with-gcc=${stdenv.cc}/bin/cc" "--with-gcc=${stdenv.cc}/bin/cc"
"--with-gmp-includes=${gmp.dev}/include" "--with-gmp-libraries=${gmp.out}/lib"
"--datadir=$doc/share/doc/ghc" "--datadir=$doc/share/doc/ghc"
] ++ stdenv.lib.optional (! enableIntegerSimple) [
"--with-gmp-includes=${gmp.dev}/include" "--with-gmp-libraries=${gmp.out}/lib"
]; ];
# required, because otherwise all symbols from HSffi.o are stripped, and # required, because otherwise all symbols from HSffi.o are stripped, and

View File

@ -1,5 +1,9 @@
{ stdenv, fetchurl, fetchpatch, bootPkgs, perl, gmp, ncurses, libiconv, binutils, coreutils { stdenv, fetchurl, fetchpatch, bootPkgs, perl, ncurses, libiconv, binutils, coreutils
, libxml2, libxslt, docbook_xsl, docbook_xml_dtd_45, docbook_xml_dtd_42, hscolour , libxml2, libxslt, docbook_xsl, docbook_xml_dtd_45, docbook_xml_dtd_42, hscolour
# If enabled GHC will be build with the GPL-free but slower integer-simple
# library instead of the faster but GPLed integer-gmp library.
, enableIntegerSimple ? false, gmp
}: }:
let let
@ -38,13 +42,16 @@ stdenv.mkDerivation rec {
export NIX_LDFLAGS="$NIX_LDFLAGS -rpath $out/lib/ghc-${version}" export NIX_LDFLAGS="$NIX_LDFLAGS -rpath $out/lib/ghc-${version}"
'' + stdenv.lib.optionalString stdenv.isDarwin '' '' + stdenv.lib.optionalString stdenv.isDarwin ''
export NIX_LDFLAGS+=" -no_dtrace_dof" export NIX_LDFLAGS+=" -no_dtrace_dof"
'' + stdenv.lib.optionalString enableIntegerSimple ''
echo "INTEGER_LIBRARY=integer-simple" > mk/build.mk
''; '';
configureFlags = [ configureFlags = [
"--with-gcc=${stdenv.cc}/bin/cc" "--with-gcc=${stdenv.cc}/bin/cc"
"--with-gmp-includes=${gmp.dev}/include" "--with-gmp-libraries=${gmp.out}/lib"
"--with-curses-includes=${ncurses.dev}/include" "--with-curses-libraries=${ncurses.out}/lib" "--with-curses-includes=${ncurses.dev}/include" "--with-curses-libraries=${ncurses.out}/lib"
"--datadir=$doc/share/doc/ghc" "--datadir=$doc/share/doc/ghc"
] ++ stdenv.lib.optional (! enableIntegerSimple) [
"--with-gmp-includes=${gmp.dev}/include" "--with-gmp-libraries=${gmp.out}/lib"
] ++ stdenv.lib.optional stdenv.isDarwin [ ] ++ stdenv.lib.optional stdenv.isDarwin [
"--with-iconv-includes=${libiconv}/include" "--with-iconv-libraries=${libiconv}/lib" "--with-iconv-includes=${libiconv}/include" "--with-iconv-libraries=${libiconv}/lib"
]; ];

View File

@ -1,4 +1,9 @@
{ stdenv, fetchurl, ghc, perl, gmp, ncurses, libiconv }: { stdenv, fetchurl, ghc, perl, ncurses, libiconv
# If enabled GHC will be build with the GPL-free but slower integer-simple
# library instead of the faster but GPLed integer-gmp library.
, enableIntegerSimple ? false, gmp
}:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
version = "7.2.2"; version = "7.2.2";
@ -11,18 +16,22 @@ stdenv.mkDerivation rec {
patches = [ ./fix-7.2.2-clang.patch ./relocation.patch ]; patches = [ ./fix-7.2.2-clang.patch ./relocation.patch ];
buildInputs = [ ghc perl gmp ncurses ]; buildInputs = [ ghc perl ncurses ]
++ stdenv.lib.optional (!enableIntegerSimple) gmp;
buildMK = '' buildMK = ''
libraries/integer-gmp_CONFIGURE_OPTS += --configure-option=--with-gmp-libraries="${gmp.out}/lib"
libraries/integer-gmp_CONFIGURE_OPTS += --configure-option=--with-gmp-includes="${gmp.dev}/include"
libraries/terminfo_CONFIGURE_OPTS += --configure-option=--with-curses-includes="${ncurses.dev}/include" libraries/terminfo_CONFIGURE_OPTS += --configure-option=--with-curses-includes="${ncurses.dev}/include"
libraries/terminfo_CONFIGURE_OPTS += --configure-option=--with-curses-libraries="${ncurses.out}/lib" libraries/terminfo_CONFIGURE_OPTS += --configure-option=--with-curses-libraries="${ncurses.out}/lib"
${stdenv.lib.optionalString stdenv.isDarwin '' ${stdenv.lib.optionalString stdenv.isDarwin ''
libraries/base_CONFIGURE_OPTS += --configure-option=--with-iconv-includes="${libiconv}/include" libraries/base_CONFIGURE_OPTS += --configure-option=--with-iconv-includes="${libiconv}/include"
libraries/base_CONFIGURE_OPTS += --configure-option=--with-iconv-libraries="${libiconv}/lib" libraries/base_CONFIGURE_OPTS += --configure-option=--with-iconv-libraries="${libiconv}/lib"
''} ''}
''; '' + (if enableIntegerSimple then ''
INTEGER_LIBRARY=integer-simple
'' else ''
libraries/integer-gmp_CONFIGURE_OPTS += --configure-option=--with-gmp-libraries="${gmp.out}/lib"
libraries/integer-gmp_CONFIGURE_OPTS += --configure-option=--with-gmp-includes="${gmp.dev}/include"
'');
preConfigure = '' preConfigure = ''
echo "${buildMK}" > mk/build.mk echo "${buildMK}" > mk/build.mk

View File

@ -1,4 +1,9 @@
{ stdenv, fetchurl, ghc, perl, gmp, ncurses, libiconv }: { stdenv, fetchurl, ghc, perl, ncurses, libiconv
# If enabled GHC will be build with the GPL-free but slower integer-simple
# library instead of the faster but GPLed integer-gmp library.
, enableIntegerSimple ? false, gmp
}:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
version = "7.4.2"; version = "7.4.2";
@ -12,18 +17,22 @@ stdenv.mkDerivation rec {
patches = [ ./fix-7.4.2-clang.patch ./relocation.patch ]; patches = [ ./fix-7.4.2-clang.patch ./relocation.patch ];
buildInputs = [ ghc perl gmp ncurses ]; buildInputs = [ ghc perl ncurses ]
++ stdenv.lib.optional (!enableIntegerSimple) gmp;
buildMK = '' buildMK = ''
libraries/integer-gmp_CONFIGURE_OPTS += --configure-option=--with-gmp-libraries="${gmp.out}/lib"
libraries/integer-gmp_CONFIGURE_OPTS += --configure-option=--with-gmp-includes="${gmp.dev}/include"
libraries/terminfo_CONFIGURE_OPTS += --configure-option=--with-curses-includes="${ncurses.dev}/include" libraries/terminfo_CONFIGURE_OPTS += --configure-option=--with-curses-includes="${ncurses.dev}/include"
libraries/terminfo_CONFIGURE_OPTS += --configure-option=--with-curses-libraries="${ncurses.out}/lib" libraries/terminfo_CONFIGURE_OPTS += --configure-option=--with-curses-libraries="${ncurses.out}/lib"
${stdenv.lib.optionalString stdenv.isDarwin '' ${stdenv.lib.optionalString stdenv.isDarwin ''
libraries/base_CONFIGURE_OPTS += --configure-option=--with-iconv-includes="${libiconv}/include" libraries/base_CONFIGURE_OPTS += --configure-option=--with-iconv-includes="${libiconv}/include"
libraries/base_CONFIGURE_OPTS += --configure-option=--with-iconv-libraries="${libiconv}/lib" libraries/base_CONFIGURE_OPTS += --configure-option=--with-iconv-libraries="${libiconv}/lib"
''} ''}
''; '' + (if enableIntegerSimple then ''
INTEGER_LIBRARY=integer-simple
'' else ''
libraries/integer-gmp_CONFIGURE_OPTS += --configure-option=--with-gmp-libraries="${gmp.out}/lib"
libraries/integer-gmp_CONFIGURE_OPTS += --configure-option=--with-gmp-includes="${gmp.dev}/include"
'');
preConfigure = '' preConfigure = ''
echo "${buildMK}" > mk/build.mk echo "${buildMK}" > mk/build.mk

View File

@ -1,4 +1,9 @@
{ stdenv, fetchurl, ghc, perl, gmp, ncurses, binutils, libiconv }: { stdenv, fetchurl, ghc, perl, ncurses, binutils, libiconv
# If enabled GHC will be build with the GPL-free but slower integer-simple
# library instead of the faster but GPLed integer-gmp library.
, enableIntegerSimple ? false, gmp
}:
let let
# The "-Wa,--noexecstack" options might be needed only with GNU ld (as opposed # The "-Wa,--noexecstack" options might be needed only with GNU ld (as opposed
@ -19,11 +24,10 @@ in stdenv.mkDerivation rec {
patches = [ ./fix-7.6.3-clang.patch ./relocation.patch ]; patches = [ ./fix-7.6.3-clang.patch ./relocation.patch ];
buildInputs = [ ghc perl gmp ncurses ]; buildInputs = [ ghc perl ncurses ]
++ stdenv.lib.optional (!enableIntegerSimple) gmp;
buildMK = '' buildMK = ''
libraries/integer-gmp_CONFIGURE_OPTS += --configure-option=--with-gmp-libraries="${gmp.out}/lib"
libraries/integer-gmp_CONFIGURE_OPTS += --configure-option=--with-gmp-includes="${gmp.dev}/include"
libraries/terminfo_CONFIGURE_OPTS += --configure-option=--with-curses-includes="${ncurses.dev}/include" libraries/terminfo_CONFIGURE_OPTS += --configure-option=--with-curses-includes="${ncurses.dev}/include"
libraries/terminfo_CONFIGURE_OPTS += --configure-option=--with-curses-libraries="${ncurses.out}/lib" libraries/terminfo_CONFIGURE_OPTS += --configure-option=--with-curses-libraries="${ncurses.out}/lib"
${stdenv.lib.optionalString stdenv.isDarwin '' ${stdenv.lib.optionalString stdenv.isDarwin ''
@ -34,7 +38,12 @@ in stdenv.mkDerivation rec {
# Set ghcFlags for building ghc itself # Set ghcFlags for building ghc itself
SRC_HC_OPTS += ${ghcFlags} SRC_HC_OPTS += ${ghcFlags}
SRC_CC_OPTS += ${cFlags} SRC_CC_OPTS += ${cFlags}
''; '' + (if enableIntegerSimple then ''
INTEGER_LIBRARY=integer-simple
'' else ''
libraries/integer-gmp_CONFIGURE_OPTS += --configure-option=--with-gmp-libraries="${gmp.out}/lib"
libraries/integer-gmp_CONFIGURE_OPTS += --configure-option=--with-gmp-includes="${gmp.dev}/include"
'');
preConfigure = '' preConfigure = ''
echo "${buildMK}" > mk/build.mk echo "${buildMK}" > mk/build.mk

View File

@ -1,4 +1,9 @@
{ stdenv, fetchurl, ghc, perl, gmp, ncurses, libiconv }: { stdenv, fetchurl, ghc, perl, ncurses, libiconv
# If enabled GHC will be build with the GPL-free but slower integer-simple
# library instead of the faster but GPLed integer-gmp library.
, enableIntegerSimple ? false, gmp
}:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
version = "7.8.3"; version = "7.8.3";
@ -11,13 +16,12 @@ stdenv.mkDerivation rec {
patches = [ ./relocation.patch ]; patches = [ ./relocation.patch ];
buildInputs = [ ghc perl gmp ncurses ]; buildInputs = [ ghc perl ncurses ]
++ stdenv.lib.optional (!enableIntegerSimple) gmp;
enableParallelBuilding = true; enableParallelBuilding = true;
buildMK = '' buildMK = ''
libraries/integer-gmp_CONFIGURE_OPTS += --configure-option=--with-gmp-libraries="${gmp.out}/lib"
libraries/integer-gmp_CONFIGURE_OPTS += --configure-option=--with-gmp-includes="${gmp.dev}/include"
libraries/terminfo_CONFIGURE_OPTS += --configure-option=--with-curses-includes="${ncurses.dev}/include" libraries/terminfo_CONFIGURE_OPTS += --configure-option=--with-curses-includes="${ncurses.dev}/include"
libraries/terminfo_CONFIGURE_OPTS += --configure-option=--with-curses-libraries="${ncurses.out}/lib" libraries/terminfo_CONFIGURE_OPTS += --configure-option=--with-curses-libraries="${ncurses.out}/lib"
DYNAMIC_BY_DEFAULT = NO DYNAMIC_BY_DEFAULT = NO
@ -25,7 +29,12 @@ stdenv.mkDerivation rec {
libraries/base_CONFIGURE_OPTS += --configure-option=--with-iconv-includes="${libiconv}/include" libraries/base_CONFIGURE_OPTS += --configure-option=--with-iconv-includes="${libiconv}/include"
libraries/base_CONFIGURE_OPTS += --configure-option=--with-iconv-libraries="${libiconv}/lib" libraries/base_CONFIGURE_OPTS += --configure-option=--with-iconv-libraries="${libiconv}/lib"
''} ''}
''; '' + (if enableIntegerSimple then ''
INTEGER_LIBRARY=integer-simple
'' else ''
libraries/integer-gmp_CONFIGURE_OPTS += --configure-option=--with-gmp-libraries="${gmp.out}/lib"
libraries/integer-gmp_CONFIGURE_OPTS += --configure-option=--with-gmp-includes="${gmp.dev}/include"
'');
preConfigure = '' preConfigure = ''
echo "${buildMK}" > mk/build.mk echo "${buildMK}" > mk/build.mk

View File

@ -1,4 +1,9 @@
{ stdenv, fetchurl, ghc, perl, gmp, ncurses, libiconv }: { stdenv, fetchurl, ghc, perl, ncurses, libiconv
# If enabled GHC will be build with the GPL-free but slower integer-simple
# library instead of the faster but GPLed integer-gmp library.
, enableIntegerSimple ? false, gmp
}:
stdenv.mkDerivation (rec { stdenv.mkDerivation (rec {
version = "7.8.4"; version = "7.8.4";
@ -11,13 +16,12 @@ stdenv.mkDerivation (rec {
patches = [ ./relocation.patch ]; patches = [ ./relocation.patch ];
buildInputs = [ ghc perl gmp ncurses ]; buildInputs = [ ghc perl ncurses ]
++ stdenv.lib.optional (!enableIntegerSimple) gmp;
enableParallelBuilding = true; enableParallelBuilding = true;
buildMK = '' buildMK = ''
libraries/integer-gmp_CONFIGURE_OPTS += --configure-option=--with-gmp-libraries="${gmp.out}/lib"
libraries/integer-gmp_CONFIGURE_OPTS += --configure-option=--with-gmp-includes="${gmp.dev}/include"
libraries/terminfo_CONFIGURE_OPTS += --configure-option=--with-curses-includes="${ncurses.dev}/include" libraries/terminfo_CONFIGURE_OPTS += --configure-option=--with-curses-includes="${ncurses.dev}/include"
libraries/terminfo_CONFIGURE_OPTS += --configure-option=--with-curses-libraries="${ncurses.out}/lib" libraries/terminfo_CONFIGURE_OPTS += --configure-option=--with-curses-libraries="${ncurses.out}/lib"
DYNAMIC_BY_DEFAULT = NO DYNAMIC_BY_DEFAULT = NO
@ -25,7 +29,12 @@ stdenv.mkDerivation (rec {
libraries/base_CONFIGURE_OPTS += --configure-option=--with-iconv-includes="${libiconv}/include" libraries/base_CONFIGURE_OPTS += --configure-option=--with-iconv-includes="${libiconv}/include"
libraries/base_CONFIGURE_OPTS += --configure-option=--with-iconv-libraries="${libiconv}/lib" libraries/base_CONFIGURE_OPTS += --configure-option=--with-iconv-libraries="${libiconv}/lib"
''} ''}
''; '' + (if enableIntegerSimple then ''
INTEGER_LIBRARY=integer-simple
'' else ''
libraries/integer-gmp_CONFIGURE_OPTS += --configure-option=--with-gmp-libraries="${gmp.out}/lib"
libraries/integer-gmp_CONFIGURE_OPTS += --configure-option=--with-gmp-includes="${gmp.dev}/include"
'');
preConfigure = '' preConfigure = ''
echo "${buildMK}" > mk/build.mk echo "${buildMK}" > mk/build.mk

View File

@ -1,5 +1,9 @@
{ stdenv, fetchurl, fetchpatch, bootPkgs, perl, gmp, ncurses, libiconv, binutils, coreutils { stdenv, fetchurl, fetchpatch, bootPkgs, perl, ncurses, libiconv, binutils, coreutils
, hscolour, patchutils, sphinx , hscolour, patchutils, sphinx
# If enabled GHC will be build with the GPL-free but slower integer-simple
# library instead of the faster but GPLed integer-gmp library.
, enableIntegerSimple ? false, gmp
}: }:
let let
@ -41,13 +45,16 @@ stdenv.mkDerivation rec {
export NIX_LDFLAGS="$NIX_LDFLAGS -rpath $out/lib/ghc-${version}" export NIX_LDFLAGS="$NIX_LDFLAGS -rpath $out/lib/ghc-${version}"
'' + stdenv.lib.optionalString stdenv.isDarwin '' '' + stdenv.lib.optionalString stdenv.isDarwin ''
export NIX_LDFLAGS+=" -no_dtrace_dof" export NIX_LDFLAGS+=" -no_dtrace_dof"
'' + stdenv.lib.optionalString enableIntegerSimple ''
echo "INTEGER_LIBRARY=integer-simple" > mk/build.mk
''; '';
configureFlags = [ configureFlags = [
"--with-gcc=${stdenv.cc}/bin/cc" "--with-gcc=${stdenv.cc}/bin/cc"
"--with-gmp-includes=${gmp.dev}/include" "--with-gmp-libraries=${gmp.out}/lib"
"--with-curses-includes=${ncurses.dev}/include" "--with-curses-libraries=${ncurses.out}/lib" "--with-curses-includes=${ncurses.dev}/include" "--with-curses-libraries=${ncurses.out}/lib"
"--datadir=$doc/share/doc/ghc" "--datadir=$doc/share/doc/ghc"
] ++ stdenv.lib.optional (! enableIntegerSimple) [
"--with-gmp-includes=${gmp.dev}/include" "--with-gmp-libraries=${gmp.out}/lib"
] ++ stdenv.lib.optional stdenv.isDarwin [ ] ++ stdenv.lib.optional stdenv.isDarwin [
"--with-iconv-includes=${libiconv}/include" "--with-iconv-libraries=${libiconv}/lib" "--with-iconv-includes=${libiconv}/include" "--with-iconv-libraries=${libiconv}/lib"
]; ];

View File

@ -1,5 +1,9 @@
{ stdenv, fetchurl, fetchpatch, bootPkgs, perl, gmp, ncurses, libiconv, binutils, coreutils { stdenv, fetchurl, fetchpatch, bootPkgs, perl, ncurses, libiconv, binutils, coreutils
, hscolour, patchutils, sphinx , hscolour, patchutils, sphinx
# If enabled GHC will be build with the GPL-free but slower integer-simple
# library instead of the faster but GPLed integer-gmp library.
, enableIntegerSimple ? false, gmp
}: }:
let let
@ -28,13 +32,16 @@ stdenv.mkDerivation rec {
export NIX_LDFLAGS="$NIX_LDFLAGS -rpath $out/lib/ghc-${version}" export NIX_LDFLAGS="$NIX_LDFLAGS -rpath $out/lib/ghc-${version}"
'' + stdenv.lib.optionalString stdenv.isDarwin '' '' + stdenv.lib.optionalString stdenv.isDarwin ''
export NIX_LDFLAGS+=" -no_dtrace_dof" export NIX_LDFLAGS+=" -no_dtrace_dof"
'' + stdenv.lib.optionalString enableIntegerSimple ''
echo "INTEGER_LIBRARY=integer-simple" > mk/build.mk
''; '';
configureFlags = [ configureFlags = [
"--with-gcc=${stdenv.cc}/bin/cc" "--with-gcc=${stdenv.cc}/bin/cc"
"--with-gmp-includes=${gmp.dev}/include" "--with-gmp-libraries=${gmp.out}/lib"
"--with-curses-includes=${ncurses.dev}/include" "--with-curses-libraries=${ncurses.out}/lib" "--with-curses-includes=${ncurses.dev}/include" "--with-curses-libraries=${ncurses.out}/lib"
"--datadir=$doc/share/doc/ghc" "--datadir=$doc/share/doc/ghc"
] ++ stdenv.lib.optional (! enableIntegerSimple) [
"--with-gmp-includes=${gmp.dev}/include" "--with-gmp-libraries=${gmp.out}/lib"
] ++ stdenv.lib.optional stdenv.isDarwin [ ] ++ stdenv.lib.optional stdenv.isDarwin [
"--with-iconv-includes=${libiconv}/include" "--with-iconv-libraries=${libiconv}/lib" "--with-iconv-includes=${libiconv}/include" "--with-iconv-libraries=${libiconv}/lib"
]; ];

View File

@ -1,6 +1,10 @@
{ stdenv, fetchgit, bootPkgs, perl, gmp, ncurses, libiconv, binutils, coreutils { stdenv, fetchgit, bootPkgs, perl, ncurses, libiconv, binutils, coreutils
, autoconf, automake, happy, alex, python3, buildPlatform, targetPlatform , autoconf, automake, happy, alex, python3, buildPlatform, targetPlatform
, selfPkgs, cross ? null , selfPkgs, cross ? null
# If enabled GHC will be build with the GPL-free but slower integer-simple
# library instead of the faster but GPLed integer-gmp library.
, enableIntegerSimple ? false, gmp
}: }:
let let
@ -20,6 +24,8 @@ let
export NIX_LDFLAGS="$NIX_LDFLAGS -rpath $out/lib/ghc-${version}" export NIX_LDFLAGS="$NIX_LDFLAGS -rpath $out/lib/ghc-${version}"
'' + stdenv.lib.optionalString stdenv.isDarwin '' '' + stdenv.lib.optionalString stdenv.isDarwin ''
export NIX_LDFLAGS+=" -no_dtrace_dof" export NIX_LDFLAGS+=" -no_dtrace_dof"
'' + stdenv.lib.optionalString enableIntegerSimple ''
echo "INTEGER_LIBRARY=integer-simple" > mk/build.mk
''; '';
in stdenv.mkDerivation (rec { in stdenv.mkDerivation (rec {
inherit version rev; inherit version rev;
@ -41,8 +47,9 @@ in stdenv.mkDerivation (rec {
configureFlags = [ configureFlags = [
"CC=${stdenv.cc}/bin/cc" "CC=${stdenv.cc}/bin/cc"
"--with-gmp-includes=${gmp.dev}/include" "--with-gmp-libraries=${gmp.out}/lib"
"--with-curses-includes=${ncurses.dev}/include" "--with-curses-libraries=${ncurses.out}/lib" "--with-curses-includes=${ncurses.dev}/include" "--with-curses-libraries=${ncurses.out}/lib"
] ++ stdenv.lib.optional (! enableIntegerSimple) [
"--with-gmp-includes=${gmp.dev}/include" "--with-gmp-libraries=${gmp.out}/lib"
] ++ stdenv.lib.optional stdenv.isDarwin [ ] ++ stdenv.lib.optional stdenv.isDarwin [
"--with-iconv-includes=${libiconv}/include" "--with-iconv-libraries=${libiconv}/lib" "--with-iconv-includes=${libiconv}/include" "--with-iconv-libraries=${libiconv}/lib"
]; ];

View File

@ -49,7 +49,7 @@ in attrs // {
export PATH="$tmp_path/bin:$PATH" export PATH="$tmp_path/bin:$PATH"
export PYTHONPATH="$tmp_path/${python.sitePackages}:$PYTHONPATH" export PYTHONPATH="$tmp_path/${python.sitePackages}:$PYTHONPATH"
mkdir -p $tmp_path/${python.sitePackages} mkdir -p $tmp_path/${python.sitePackages}
${bootstrapped-pip}/bin/pip install -e . --prefix $tmp_path ${bootstrapped-pip}/bin/pip install -e . --prefix $tmp_path >&2
fi fi
${postShellHook} ${postShellHook}
''; '';

View File

@ -1,4 +1,4 @@
{ stdenv, lib, autoconf213, fetchurl, pkgconfig, nspr, perl, python2, zip }: { stdenv, lib, autoconf213, fetchurl, fetchpatch, pkgconfig, nspr, perl, python2, zip }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "spidermonkey-${version}"; name = "spidermonkey-${version}";
@ -22,7 +22,13 @@ stdenv.mkDerivation rec {
${lib.optionalString stdenv.isArm "autoreconf --verbose --force"} ${lib.optionalString stdenv.isArm "autoreconf --verbose --force"}
''; '';
patches = stdenv.lib.optionals stdenv.isArm [ patches = [
(fetchpatch {
name = "gcc6.patch";
url = "https://anonscm.debian.org/cgit/collab-maint/mozjs.git/plain/debian/patches/fix-811665.patch?id=00b15c7841968ab4f7fec409a6b93fa5e1e1d32e";
sha256 = "1q8477xqxiy5d8376k5902l45gd0qkd4nxmhl8vr6rr1pxfcny99";
})
] ++ stdenv.lib.optionals stdenv.isArm [
# Explained below in configureFlags for ARM # Explained below in configureFlags for ARM
./1.8.5-findvanilla.patch ./1.8.5-findvanilla.patch
# Fix for hard float flags. # Fix for hard float flags.

View File

@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
sha256 = "0rb927zknk9kmhprd8rdr4azql4gn2dp75a36iazx2xhkbqhvind"; sha256 = "0rb927zknk9kmhprd8rdr4azql4gn2dp75a36iazx2xhkbqhvind";
}; };
patches = [ ./CVE-2015-7747.patch ]; patches = [ ./CVE-2015-7747.patch ./gcc-6.patch ];
meta = with stdenv.lib; { meta = with stdenv.lib; {
description = "Library for reading and writing audio files in various formats"; description = "Library for reading and writing audio files in various formats";

View File

@ -0,0 +1,30 @@
http://patchwork.ozlabs.org/patch/630200/
From 28cfdbbcb96a69087c3d21faf69b5eae7bcf6d69 Mon Sep 17 00:00:00 2001
From: Hodorgasm <nsane457@gmail.com>
Date: Wed, 11 May 2016 21:42:07 -0400
Subject: [PATCH] Cast to unsigned while left bit-shifting
GCC-6 now treats the left bitwise-shift of a negative integer as nonconformant so explicitly cast to an unsigned int while bit-shifting.
Downloaded from upstream PR:
https://github.com/mpruett/audiofile/pull/28
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
---
libaudiofile/modules/SimpleModule.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/libaudiofile/modules/SimpleModule.h b/libaudiofile/modules/SimpleModule.h
index 03c6c69..4014fb2 100644
--- a/libaudiofile/modules/SimpleModule.h
+++ b/libaudiofile/modules/SimpleModule.h
@@ -123,7 +123,7 @@ struct signConverter
typedef typename IntTypes<Format>::UnsignedType UnsignedType;
static const int kScaleBits = (Format + 1) * CHAR_BIT - 1;
- static const int kMinSignedValue = -1 << kScaleBits;
+ static const int kMinSignedValue = static_cast<signed>(static_cast<unsigned>(-1) << kScaleBits);;
struct signedToUnsigned : public std::unary_function<SignedType, UnsignedType>
{

View File

@ -38,19 +38,6 @@ index 0034dcc..160c8ea 100644
#else #else
#define atomic_inc(env, p) __atomic_inc(env, p) #define atomic_inc(env, p) __atomic_inc(env, p)
#define atomic_dec(env, p) __atomic_dec(env, p) #define atomic_dec(env, p) __atomic_dec(env, p)
diff --git a/dbinc/db.in b/dbinc/db.in
index 9fc6712..7428e0a 100644
--- a/dbinc/db.in
+++ b/dbinc/db.in
@@ -2413,7 +2413,7 @@ typedef struct {
#define fetch(a) __db_dbm_fetch@DB_VERSION_UNIQUE_NAME@(a)
#define firstkey __db_dbm_firstkey@DB_VERSION_UNIQUE_NAME@
#define nextkey(a) __db_dbm_nextkey@DB_VERSION_UNIQUE_NAME@(a)
-#define store(a, b) __db_dbm_store@DB_VERSION_UNIQUE_NAME@(a, b)
+#define store_db(a, b) __db_dbm_store@DB_VERSION_UNIQUE_NAME@(a, b)
/*******************************************************
* Hsearch historic interface.
diff --git a/mp/mp_fget.c b/mp/mp_fget.c diff --git a/mp/mp_fget.c b/mp/mp_fget.c
index 5fdee5a..0b75f57 100644 index 5fdee5a..0b75f57 100644
--- a/mp/mp_fget.c --- a/mp/mp_fget.c

View File

@ -38,19 +38,6 @@ index 6a858f7..9f338dc 100644
#else #else
#define atomic_inc(env, p) __atomic_inc(env, p) #define atomic_inc(env, p) __atomic_inc(env, p)
#define atomic_dec(env, p) __atomic_dec(env, p) #define atomic_dec(env, p) __atomic_dec(env, p)
diff --git a/src/dbinc/db.in b/src/dbinc/db.in
index 92ac822..f80428e 100644
--- a/src/dbinc/db.in
+++ b/src/dbinc/db.in
@@ -2782,7 +2782,7 @@ typedef struct {
#define fetch(a) __db_dbm_fetch@DB_VERSION_UNIQUE_NAME@(a)
#define firstkey __db_dbm_firstkey@DB_VERSION_UNIQUE_NAME@
#define nextkey(a) __db_dbm_nextkey@DB_VERSION_UNIQUE_NAME@(a)
-#define store(a, b) __db_dbm_store@DB_VERSION_UNIQUE_NAME@(a, b)
+#define store_db(a, b) __db_dbm_store@DB_VERSION_UNIQUE_NAME@(a, b)
/*******************************************************
* Hsearch historic interface.
diff --git a/src/mp/mp_fget.c b/src/mp/mp_fget.c diff --git a/src/mp/mp_fget.c b/src/mp/mp_fget.c
index 16de695..d0dcc29 100644 index 16de695..d0dcc29 100644
--- a/src/mp/mp_fget.c --- a/src/mp/mp_fget.c

View File

@ -20,19 +20,6 @@ index e4420aa..4799b5f 100644
#else #else
#define atomic_inc(env, p) __atomic_inc_int(env, p) #define atomic_inc(env, p) __atomic_inc_int(env, p)
#define atomic_dec(env, p) __atomic_dec_int(env, p) #define atomic_dec(env, p) __atomic_dec_int(env, p)
diff --git a/src/dbinc/db.in b/src/dbinc/db.in
index 3c2ad9b..3e46f02 100644
--- a/src/dbinc/db.in
+++ b/src/dbinc/db.in
@@ -2999,7 +2999,7 @@ typedef struct {
#define fetch(a) __db_dbm_fetch@DB_VERSION_UNIQUE_NAME@(a)
#define firstkey __db_dbm_firstkey@DB_VERSION_UNIQUE_NAME@
#define nextkey(a) __db_dbm_nextkey@DB_VERSION_UNIQUE_NAME@(a)
-#define store(a, b) __db_dbm_store@DB_VERSION_UNIQUE_NAME@(a, b)
+#define store_db(a, b) __db_dbm_store@DB_VERSION_UNIQUE_NAME@(a, b)
/*******************************************************
* Hsearch historic interface.
diff --git a/src/mp/mp_fget.c b/src/mp/mp_fget.c diff --git a/src/mp/mp_fget.c b/src/mp/mp_fget.c
index 59fe9fe..fa4ced7 100644 index 59fe9fe..fa4ced7 100644
--- a/src/mp/mp_fget.c --- a/src/mp/mp_fget.c

View File

@ -1,6 +1,7 @@
{ stdenv, fetchurl { stdenv, fetchurl
, cxxSupport ? true , cxxSupport ? true
, compat185 ? true , compat185 ? true
, dbmSupport ? false
# Options from inherited versions # Options from inherited versions
, version, sha256 , version, sha256
@ -19,12 +20,13 @@ stdenv.mkDerivation (rec {
patches = extraPatches; patches = extraPatches;
configureFlags = [ configureFlags =
[
(if cxxSupport then "--enable-cxx" else "--disable-cxx") (if cxxSupport then "--enable-cxx" else "--disable-cxx")
(if compat185 then "--enable-compat185" else "--disable-compat185") (if compat185 then "--enable-compat185" else "--disable-compat185")
"--enable-dbm" ]
(stdenv.lib.optionalString stdenv.isFreeBSD "--with-pic") ++ stdenv.lib.optional dbmSupport "--enable-dbm"
]; ++ stdenv.lib.optional stdenv.isFreeBSD "--with-pic";
preConfigure = '' preConfigure = ''
cd build_unix cd build_unix

View File

@ -14,6 +14,8 @@ stdenv.mkDerivation rec {
patches = [ ./dirac-1.0.2.patch ]; patches = [ ./dirac-1.0.2.patch ];
NIX_CFLAGS_COMPILE = "-Wno-error=deprecated-declarations";
postInstall = '' postInstall = ''
# keep only necessary binaries # keep only necessary binaries
find $out/bin \( -name '*RGB*' -or -name '*YUV*' -or -name create_dirac_testfile.pl \) -delete find $out/bin \( -name '*RGB*' -or -name '*YUV*' -or -name create_dirac_testfile.pl \) -delete

View File

@ -1,11 +1,15 @@
{stdenv, fetchurl, unzip, darwin}: { stdenv, fetchurl, unzip, darwin }:
stdenv.mkDerivation { stdenv.mkDerivation {
name = "freeimage-3.17.0"; name = "freeimage-3.17.0";
src = fetchurl { src = fetchurl {
url = mirror://sourceforge/freeimage/FreeImage3170.zip; url = mirror://sourceforge/freeimage/FreeImage3170.zip;
sha256 = "12bz57asdcfsz3zr9i9nska0fb6h3z2aizy412qjqkixkginbz7v"; sha256 = "12bz57asdcfsz3zr9i9nska0fb6h3z2aizy412qjqkixkginbz7v";
}; };
buildInputs = [ unzip ] ++ stdenv.lib.optional stdenv.isDarwin darwin.cctools; buildInputs = [ unzip ] ++ stdenv.lib.optional stdenv.isDarwin darwin.cctools;
prePatch = if stdenv.isDarwin prePatch = if stdenv.isDarwin
then '' then ''
sed -e 's/gcc-4.0/clang/g' \ sed -e 's/gcc-4.0/clang/g' \
@ -38,6 +42,8 @@ stdenv.mkDerivation {
preInstall = "mkdir -p $out/include $out/lib"; preInstall = "mkdir -p $out/include $out/lib";
postInstall = stdenv.lib.optionalString (!stdenv.isDarwin) "make -f Makefile.fip install"; postInstall = stdenv.lib.optionalString (!stdenv.isDarwin) "make -f Makefile.fip install";
NIX_CFLAGS_COMPILE = "-Wno-narrowing";
meta = { meta = {
description = "Open Source library for accessing popular graphics image file formats"; description = "Open Source library for accessing popular graphics image file formats";
homepage = http://freeimage.sourceforge.net/; homepage = http://freeimage.sourceforge.net/;

View File

@ -1,24 +1,17 @@
{ composableDerivation, fetchurl, python }: { stdenv, fetchurl, fetchpatch, python }:
let inherit (composableDerivation) edf; in stdenv.mkDerivation rec {
name = "geos-3.6.1";
composableDerivation.composableDerivation {} rec {
flags =
# python and ruby untested
edf { name = "python"; enable = { buildInputs = [ python ]; }; };
# (if args.use_svn then ["libtool" "autoconf" "automake" "swig"] else [])
# // edf { name = "ruby"; enable = { buildInputs = [ ruby ]; };}
name = "geos-3.5.0";
src = fetchurl { src = fetchurl {
url = "http://download.osgeo.org/geos/${name}.tar.bz2"; url = "http://download.osgeo.org/geos/${name}.tar.bz2";
sha256 = "49982b23bcfa64a53333dab136b82e25354edeb806e5a2e2f5b8aa98b1d0ae02"; sha256 = "1icz31kd5sml2kdxhjznvmv33zfr6nig9l0i6bdcz9q9g8x4wbja";
}; };
enableParallelBuilding = true; enableParallelBuilding = true;
buildInputs = [ python ];
meta = { meta = {
description = "C++ port of the Java Topology Suite (JTS)"; description = "C++ port of the Java Topology Suite (JTS)";
homepage = http://geos.refractions.net/; homepage = http://geos.refractions.net/;

View File

@ -1,11 +1,11 @@
{ stdenv, fetchurl, pkgconfig, glib, zlib, libgpgerror, gobjectIntrospection }: { stdenv, fetchurl, pkgconfig, glib, zlib, libgpgerror, gobjectIntrospection }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "gmime-2.6.20"; name = "gmime-2.6.23";
src = fetchurl { src = fetchurl {
url = "mirror://gnome/sources/gmime/2.6/${name}.tar.xz"; url = "mirror://gnome/sources/gmime/2.6/${name}.tar.xz";
sha256 = "0rfzbgsh8ira5p76kdghygl5i3fvmmx4wbw5rp7f8ajc4vxp18g0"; sha256 = "0slzlzcr3h8jikpz5a5amqd0csqh2m40gdk910ws2hnaf5m6hjbi";
}; };
outputs = [ "out" "dev" ]; outputs = [ "out" "dev" ];

View File

@ -2,11 +2,11 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "gnu-efi-${version}"; name = "gnu-efi-${version}";
version = "3.0.4"; version = "3.0.5";
src = fetchurl { src = fetchurl {
url = "mirror://sourceforge/gnu-efi/${name}.tar.bz2"; url = "mirror://sourceforge/gnu-efi/${name}.tar.bz2";
sha256 = "1bzq5czw5dxlvpgs9ij2iz7q6krwhja87vc982r6vffcqcl0982i"; sha256 = "08hb2gpzcj5p743wcagm0j2m4gh100xv12llpbjc13zi2icwv3xx";
}; };
patches = optional stdenv.isAarch64 ./aarch64-fix-discarded-qualifier.patch; patches = optional stdenv.isAarch64 ./aarch64-fix-discarded-qualifier.patch;

View File

@ -9,11 +9,11 @@ let
gpgProgram = if useGnupg1 then "gpg" else "gpg2"; gpgProgram = if useGnupg1 then "gpg" else "gpg2";
in in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "gpgme-1.7.0"; name = "gpgme-1.8.0";
src = fetchurl { src = fetchurl {
url = "mirror://gnupg/gpgme/${name}.tar.bz2"; url = "mirror://gnupg/gpgme/${name}.tar.bz2";
sha256 = "0j6capvv6lcr6p763lr2ygzkzkj5lqm7fnbfc1xaygib1znmzxbi"; sha256 = "0csx3qnycwm0n90ql6gs65if5xi4gqyzzy21fxs2xqicghjrfq2r";
}; };
outputs = [ "out" "dev" "info" ]; outputs = [ "out" "dev" "info" ];
@ -24,7 +24,6 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ pkgconfig gnupg ]; nativeBuildInputs = [ pkgconfig gnupg ];
configureFlags = [ configureFlags = [
"--with-gpg=${gpgStorePath}/bin/${gpgProgram}"
"--enable-fixed-path=${gpgStorePath}/bin" "--enable-fixed-path=${gpgStorePath}/bin"
]; ];

View File

@ -28,6 +28,7 @@ stdenv.mkDerivation {
src = fetchurl { src = fetchurl {
inherit (s) url sha256; inherit (s) url sha256;
}; };
NIX_CFLAGS_COMPILE = "-Wno-error=unused-function";
meta = { meta = {
inherit (s) version; inherit (s) version;
description = ''Library for import of reflowable e-book formats''; description = ''Library for import of reflowable e-book formats'';

View File

@ -16,6 +16,9 @@ stdenv.mkDerivation rec {
makeFlagsArray+=(PREFIX="$out" LIBDIRNAME=/lib) makeFlagsArray+=(PREFIX="$out" LIBDIRNAME=/lib)
''; '';
# Work around "libfaketime.c:513:7: error: nonnull argument 'buf' compared to NULL [-Werror=nonnull-compare]".
NIX_CFLAGS_COMPILE = "-Wno-nonnull-compare";
meta = with stdenv.lib; { meta = with stdenv.lib; {
description = "Report faked system time to programs without having to change the system-wide time"; description = "Report faked system time to programs without having to change the system-wide time";
homepage = http://www.code-wizards.com/projects/libfaketime/; homepage = http://www.code-wizards.com/projects/libfaketime/;

View File

@ -4,11 +4,11 @@ assert enableCapabilities -> stdenv.isLinux;
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "libgcrypt-${version}"; name = "libgcrypt-${version}";
version = "1.7.5"; version = "1.7.6";
src = fetchurl { src = fetchurl {
url = "mirror://gnupg/libgcrypt/${name}.tar.bz2"; url = "mirror://gnupg/libgcrypt/${name}.tar.bz2";
sha256 = "0078pbzm6nlgvnwlylshsg707ifcmfpnpbvhlhqbpwpfic9a9zni"; sha256 = "1g05prhgqw4ryd0w433q8nhds0h93kf47hfjagi2r7dghkpaysk2";
}; };
outputs = [ "out" "dev" "info" ]; outputs = [ "out" "dev" "info" ];

View File

@ -2,11 +2,11 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "libgpg-error-${version}"; name = "libgpg-error-${version}";
version = "1.24"; version = "1.26";
src = fetchurl { src = fetchurl {
url = "mirror://gnupg/libgpg-error/${name}.tar.bz2"; url = "mirror://gnupg/libgpg-error/${name}.tar.bz2";
sha256 = "0h75sf1ngr750c3fjfn4583q7wz40qm63jhg8vjfdrbx936f2s4j"; sha256 = "0sgfia0syq78k1c9h10rkhc1nfv5v097icrprlx2x4qn074wnjsc";
}; };
postPatch = "sed '/BUILD_TIMESTAMP=/s/=.*/=1970-01-01T00:01+0000/' -i ./configure"; postPatch = "sed '/BUILD_TIMESTAMP=/s/=.*/=1970-01-01T00:01+0000/' -i ./configure";

View File

@ -2,13 +2,20 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "libraw-${version}"; name = "libraw-${version}";
version = "0.17.1"; version = "0.17.2";
src = fetchurl { src = fetchurl {
url = "http://www.libraw.org/data/LibRaw-${version}.tar.gz"; url = "http://www.libraw.org/data/LibRaw-${version}.tar.gz";
sha256 = "18fygk896gxbx47nh2rn5jp4skisgkl6pdfjqb7h0zn39hd6b6g5"; sha256 = "0p6imxpsfn82i0i9w27fnzq6q6gwzvb9f7sygqqakv36fqnc9c4j";
}; };
patches =
[ (fetchurl {
url = https://anonscm.debian.org/cgit/pkg-phototools/libraw.git/plain/debian/patches/0001-Fix_gcc6_narrowing_conversion.patch?id=d890937aaca6359df45a66b35e547c94ca564823;
sha256 = "1lcg5l0wmwiyzhhm67c1c7hy8py6ihxfmicnhrwpi3i6f16vq29w";
})
];
outputs = [ "out" "lib" "dev" "doc" ]; outputs = [ "out" "lib" "dev" "doc" ];
buildInputs = [ jasper ]; buildInputs = [ jasper ];

View File

@ -5,16 +5,12 @@ stdenv.mkDerivation rec {
src = fetchurl { src = fetchurl {
url = "mirror://gnu/libtasn1/${name}.tar.gz"; url = "mirror://gnu/libtasn1/${name}.tar.gz";
sha256 = "681a4d9a0d259f2125713f2e5766c5809f151b3a1392fd91390f780b4b8f5a02"; sha256 = "00jsix5hny0g768zv4hk78dib7w0qmk5fbizf4jj37r51nd4s6k8";
}; };
outputs = [ "out" "dev" "devdoc" ]; outputs = [ "out" "dev" "devdoc" ];
outputBin = "dev"; outputBin = "dev";
# Warning causes build to fail on darwin since 4.9,
# check if this can be removed in the next release.
CFLAGS = "-Wno-sign-compare";
buildInputs = [ perl texinfo ]; buildInputs = [ perl texinfo ];
doCheck = true; doCheck = true;

View File

@ -5,11 +5,11 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "libva-${version}"; name = "libva-${version}";
version = "1.7.2"; version = "1.7.3";
src = fetchurl { src = fetchurl {
url = "http://www.freedesktop.org/software/vaapi/releases/libva/${name}.tar.bz2"; url = "http://www.freedesktop.org/software/vaapi/releases/libva/${name}.tar.bz2";
sha256 = "04rczbnbi70y1ziy9ab59szi3glk9q35hshlws0bcj2ndbqirmjx"; sha256 = "1ndrf136rlw03xag7j1xpmf9015d1h0dpnv6v587jnh6k2a17g12";
}; };
outputs = [ "bin" "dev" "out" ]; outputs = [ "bin" "dev" "out" ];

View File

@ -1,13 +1,15 @@
{ stdenv, fetchzip }: { stdenv, fetchFromGitHub }:
let optional = stdenv.lib.optional; let optional = stdenv.lib.optional;
in stdenv.mkDerivation rec { in stdenv.mkDerivation rec {
name = "lmdb-${version}"; name = "lmdb-${version}";
version = "0.9.18"; version = "0.9.19";
src = fetchzip { src = fetchFromGitHub {
url = "https://github.com/LMDB/lmdb/archive/LMDB_${version}.tar.gz"; owner = "LMDB";
sha256 = "01j384kxg36kym060pybr5p6mjw0xv33bqbb8arncdkdq57xk8wg"; repo = "lmdb";
rev = "LMDB_${version}";
sha256 = "04qx803jdmhkcam748fn0az3cyzvj91lw28kcvwfyq0al7pmjkfs";
}; };
postUnpack = "sourceRoot=\${sourceRoot}/libraries/liblmdb"; postUnpack = "sourceRoot=\${sourceRoot}/libraries/liblmdb";

View File

@ -1,11 +1,11 @@
{ stdenv, fetchurl }: { stdenv, fetchurl }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "npth-1.2"; name = "npth-1.3";
src = fetchurl { src = fetchurl {
url = "ftp://ftp.gnupg.org/gcrypt/npth/${name}.tar.bz2"; url = "ftp://ftp.gnupg.org/gcrypt/npth/${name}.tar.bz2";
sha256 = "12n0nvhw4fzwp0k7gjv3rc6pdml0qiinbbfiz4ilg6pl5kdxvnvd"; sha256 = "0am86vblapwz84254qpmhz0chk70g6qzh3wdxcs0gvba8d01ka5w";
}; };
meta = with stdenv.lib; { meta = with stdenv.lib; {

View File

@ -1,16 +1,16 @@
{ stdenv, fetchurl, cmake, zlib, freetype, libjpeg, libtiff, fontconfig { stdenv, fetchurl, cmake, zlib, freetype, libjpeg, libtiff, fontconfig
, openssl, libpng, lua5 }: , gcc5, openssl, libpng, lua5 }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "podofo-0.9.3"; name = "podofo-0.9.4";
src = fetchurl { src = fetchurl {
url = "mirror://sourceforge/podofo/${name}.tar.gz"; url = "mirror://sourceforge/podofo/${name}.tar.gz";
sha256 = "1n12lbq9x15vqn7dc0hsccp56l5jdff1xrhvlfqlbklxx0qiw9pc"; sha256 = "0ngqgwl38afmzcj2zpf18a2g63vhm2fp45cbf9z62129rdgm1pyc";
}; };
propagatedBuildInputs = [ zlib freetype libjpeg libtiff fontconfig openssl libpng ]; propagatedBuildInputs = [ zlib freetype libjpeg libtiff fontconfig openssl libpng ];
nativeBuildInputs = [ cmake ]; nativeBuildInputs = [ cmake gcc5 ];
buildInputs = [ lua5 stdenv.cc.libc ]; buildInputs = [ lua5 stdenv.cc.libc ];
crossAttrs = { crossAttrs = {

View File

@ -1,6 +1,6 @@
{ callPackage, ... }: { callPackage, ... }:
callPackage ./generic-v3.nix { callPackage ./generic-v3.nix {
version = "3.0.0"; version = "3.0.2";
sha256 = "05qkcl96lkdama848m7q3nzzzdckjc158iiyvgmln0zi232xx7g7"; sha256 = "16wmr1fgdqpf84fkq90cxvccfsxx7h0q0wzqkbg8vdjmka412g09";
} }

View File

@ -34,6 +34,10 @@ stdenv.mkDerivation rec {
doCheck = true; doCheck = true;
NIX_CFLAGS_COMPILE = with stdenv.lib;
# gcc before 6 doesn't know this option
optionalString (hasPrefix "gcc-6" stdenv.cc.cc.name) "-Wno-error=misleading-indentation";
meta = { meta = {
description = "Google's data interchange format"; description = "Google's data interchange format";
longDescription = longDescription =

View File

@ -80,12 +80,19 @@ stdenv.mkDerivation rec {
gtk = gtk2.out; gtk = gtk2.out;
gdk_pixbuf = gdk_pixbuf.out; gdk_pixbuf = gdk_pixbuf.out;
}) })
++ [(fetchpatch { ++ [
(fetchpatch {
name = "fix-medium-font.patch"; name = "fix-medium-font.patch";
url = "http://anonscm.debian.org/cgit/pkg-kde/qt/qt4-x11.git/plain/debian/patches/" url = "http://anonscm.debian.org/cgit/pkg-kde/qt/qt4-x11.git/plain/debian/patches/"
+ "kubuntu_39_fix_medium_font.diff?id=21b342d71c19e6d68b649947f913410fe6129ea4"; + "kubuntu_39_fix_medium_font.diff?id=21b342d71c19e6d68b649947f913410fe6129ea4";
sha256 = "0bli44chn03c2y70w1n8l7ss4ya0b40jqqav8yxrykayi01yf95j"; sha256 = "0bli44chn03c2y70w1n8l7ss4ya0b40jqqav8yxrykayi01yf95j";
})]; })
(fetchpatch {
name = "qt4-gcc6.patch";
url = "https://git.archlinux.org/svntogit/packages.git/plain/trunk/qt4-gcc6.patch?h=packages/qt4&id=ca773a144f5abb244ac4f2749eeee9333cac001f";
sha256 = "07lrva7bjh6i40p7b3ml26a2jlznri8bh7y7iyx5zmvb1gfxmj34";
})
];
preConfigure = '' preConfigure = ''
export LD_LIBRARY_PATH="`pwd`/lib:$LD_LIBRARY_PATH" export LD_LIBRARY_PATH="`pwd`/lib:$LD_LIBRARY_PATH"
@ -145,8 +152,10 @@ stdenv.mkDerivation rec {
enableParallelBuilding = false; enableParallelBuilding = false;
NIX_CFLAGS_COMPILE = optionalString (stdenv.isFreeBSD || stdenv.isDarwin) NIX_CFLAGS_COMPILE =
"-I${glib.dev}/include/glib-2.0 -I${glib.out}/lib/glib-2.0/include" optionalString stdenv.isLinux "-std=gnu++98" # gnu++ in (Obj)C flags is no good on Darwin
+ optionalString (stdenv.isFreeBSD || stdenv.isDarwin)
" -I${glib.dev}/include/glib-2.0 -I${glib.out}/lib/glib-2.0/include"
+ optionalString stdenv.isDarwin " -I${libcxx}/include/c++/v1"; + optionalString stdenv.isDarwin " -I${libcxx}/include/c++/v1";
NIX_LDFLAGS = optionalString (stdenv.isFreeBSD || stdenv.isDarwin) NIX_LDFLAGS = optionalString (stdenv.isFreeBSD || stdenv.isDarwin)

View File

@ -10,9 +10,12 @@ stdenv.mkDerivation rec {
sha256 = "0ynwn7ih5l2b1kpzpibns9bb9wzfjak7mgrb1ji0dkn2q5pv6lr0"; sha256 = "0ynwn7ih5l2b1kpzpibns9bb9wzfjak7mgrb1ji0dkn2q5pv6lr0";
}; };
enableParallelBuilding = true; patches = [
./format.patch
./gcc6.patch
];
hardeningDisable = [ "format" ]; enableParallelBuilding = true;
buildInputs = [ SDL gtk2 mesa ]; buildInputs = [ SDL gtk2 mesa ];

View File

@ -0,0 +1,11 @@
--- a/plaympeg.c 2014-09-04 08:55:10.646132150 +0200
+++ b/plaympeg.c 2014-09-04 08:56:57.465210820 +0200
@@ -262,7 +262,7 @@
answer[i] = c;
}
answer[i] = 0;
- fprintf(stderr, answer + 4);
+ fprintf(stderr, "%s", answer + 4);
}
while(answer[3] == '-');

View File

@ -0,0 +1,33 @@
--- a/audio/hufftable.cpp
+++ b/audio/hufftable.cpp
@@ -9,6 +9,7 @@
#include "config.h"
#endif
+#include <climits>
#include "MPEGaudio.h"
static const unsigned int
@@ -550,11 +551,11 @@ htd33[ 31][2]={{ 16, 1},{ 8, 1},{ 4,
const HUFFMANCODETABLE MPEGaudio::ht[HTN]=
{
- { 0, 0-1, 0-1, 0, 0, htd33},
+ { 0, UINT_MAX, UINT_MAX, 0, 0, htd33},
{ 1, 2-1, 2-1, 0, 7,htd01},
{ 2, 3-1, 3-1, 0, 17,htd02},
{ 3, 3-1, 3-1, 0, 17,htd03},
- { 4, 0-1, 0-1, 0, 0, htd33},
+ { 4, UINT_MAX, UINT_MAX, 0, 0, htd33},
{ 5, 4-1, 4-1, 0, 31,htd05},
{ 6, 4-1, 4-1, 0, 31,htd06},
{ 7, 6-1, 6-1, 0, 71,htd07},
@@ -564,7 +565,7 @@ const HUFFMANCODETABLE MPEGaudio::ht[HTN
{11, 8-1, 8-1, 0,127,htd11},
{12, 8-1, 8-1, 0,127,htd12},
{13,16-1,16-1, 0,511,htd13},
- {14, 0-1, 0-1, 0, 0, htd33},
+ {14, UINT_MAX, UINT_MAX, 0, 0, htd33},
{15,16-1,16-1, 0,511,htd15},
{16,16-1,16-1, 1,511,htd16},
{17,16-1,16-1, 2,511,htd16},

View File

@ -3,11 +3,11 @@
}: }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "libva-intel-driver-1.7.2"; name = "libva-intel-driver-1.7.3";
src = fetchurl { src = fetchurl {
url = "http://www.freedesktop.org/software/vaapi/releases/libva-intel-driver/${name}.tar.bz2"; url = "http://www.freedesktop.org/software/vaapi/releases/libva-intel-driver/${name}.tar.bz2";
sha256 = "1g371q9p31i57fkidjp2akvrbaadpyx3bwmg5kn72sc2mbv7p7h9"; sha256 = "0dzryi9x873p9gikzcb9wzwqv2j3wssm0b85ws63vqjszpckgbbn";
}; };
patchPhase = '' patchPhase = ''

View File

@ -41,7 +41,7 @@ stdenv.mkDerivation rec {
+ optionalString withMesa "${mesa.out}/lib "; + optionalString withMesa "${mesa.out}/lib ";
# Work around a bug in configure. # Work around a bug in configure.
NIX_CFLAGS_COMPILE = [ "-DHAVE_X11_XLIB_H=1" "-lX11" "-lcairo" ]; NIX_CFLAGS_COMPILE = [ "-DHAVE_X11_XLIB_H=1" "-lX11" "-lcairo" "-Wno-narrowing" ];
preConfigure = " preConfigure = "
substituteInPlace configure --replace 'SEARCH_INCLUDE=' 'DUMMY_SEARCH_INCLUDE=' substituteInPlace configure --replace 'SEARCH_INCLUDE=' 'DUMMY_SEARCH_INCLUDE='

View File

@ -1,5 +1,5 @@
{ stdenv, fetchurl, pkgconfig, gtk2, libXinerama, libSM, libXxf86vm, xf86vidmodeproto { stdenv, fetchurl, fetchpatch, pkgconfig, gtk2, libXinerama, libSM, libXxf86vm
, gstreamer, gst_plugins_base, GConf, setfile , xf86vidmodeproto , gstreamer, gst_plugins_base, GConf, setfile
, withMesa ? true, mesa ? null, compat24 ? false, compat26 ? true, unicode ? true , withMesa ? true, mesa ? null, compat24 ? false, compat26 ? true, unicode ? true
, withWebKit ? false, webkitgtk2 ? null , withWebKit ? false, webkitgtk2 ? null
, AGL ? null, Carbon ? null, Cocoa ? null, Kernel ? null, QTKit ? null , AGL ? null, Carbon ? null, Cocoa ? null, Kernel ? null, QTKit ? null
@ -33,6 +33,11 @@ stdenv.mkDerivation {
propagatedBuildInputs = optional stdenv.isDarwin AGL; propagatedBuildInputs = optional stdenv.isDarwin AGL;
patches = [ (fetchpatch {
url = "https://raw.githubusercontent.com/jessehager/MINGW-packages/af6ece963d8157dd3fbc710bcc190647c4924c63/mingw-w64-wxwidgets/wxWidgets-3.0.2-gcc6-abs.patch";
sha256 = "0100pg0z7i6cjyysf2k3330pmqmdaxgc9hz6kxnfvc31dynjcq3h";
}) ];
configureFlags = configureFlags =
[ "--enable-gtk2" "--disable-precomp-headers" "--enable-mediactrl" [ "--enable-gtk2" "--disable-precomp-headers" "--enable-mediactrl"
(if compat24 then "--enable-compat24" else "--disable-compat24") (if compat24 then "--enable-compat24" else "--disable-compat24")

View File

@ -32,9 +32,18 @@ stdenv.mkDerivation rec {
# This is needed, for instance, so that running "ldd" on a binary that is # This is needed, for instance, so that running "ldd" on a binary that is
# PaX-marked to disable mprotect doesn't fail with permission denied. # PaX-marked to disable mprotect doesn't fail with permission denied.
./pt-pax-flags.patch ./pt-pax-flags.patch
# Bfd looks in BINDIR/../lib for some plugins that don't
# exist. This is pointless (since users can't install plugins
# there) and causes a cycle between the lib and bin outputs, so
# get rid of it.
./no-plugins.patch
]; ];
outputs = [ "out" "info" ] ++ (optional (cross == null) "dev"); outputs = [ "out" ]
++ optional (!stdenv.isDarwin) "lib" # problems in Darwin stdenv
++ [ "info" ]
++ optional (cross == null) "dev";
nativeBuildInputs = [ bison ]; nativeBuildInputs = [ bison ];
buildInputs = [ zlib ]; buildInputs = [ zlib ];

View File

@ -0,0 +1,19 @@
diff -ru binutils-2.27-orig/bfd/plugin.c binutils-2.27/bfd/plugin.c
--- binutils-2.27-orig/bfd/plugin.c 2016-10-14 17:46:30.791315555 +0200
+++ binutils-2.27/bfd/plugin.c 2016-10-14 17:46:38.583298765 +0200
@@ -333,6 +333,7 @@
if (plugin_program_name == NULL)
return found;
+#if 0
plugin_dir = concat (BINDIR, "/../lib/bfd-plugins", NULL);
p = make_relative_prefix (plugin_program_name,
BINDIR,
@@ -364,6 +365,7 @@
free (p);
if (d)
closedir (d);
+#endif
return found;
}

View File

@ -20,6 +20,8 @@ let
configureFlags = [ "--with-colm=${colm}" ]; configureFlags = [ "--with-colm=${colm}" ];
NIX_CFLAGS_COMPILE = "-std=gnu++98";
doCheck = true; doCheck = true;
meta = with stdenv.lib; { meta = with stdenv.lib; {

View File

@ -1,4 +1,4 @@
{stdenv, fetchurl, cmake, mesa, zlib, openssl, libyamlcpp, boost {stdenv, fetchurl, fetchpatch, cmake, mesa, zlib, openssl, libyamlcpp, boost
, SDL, SDL_image, SDL_mixer, SDL_gfx }: , SDL, SDL_image, SDL_mixer, SDL_gfx }:
let version = "1.0.0"; in let version = "1.0.0"; in
@ -13,6 +13,11 @@ stdenv.mkDerivation {
buildInputs = [ cmake mesa zlib openssl libyamlcpp boost buildInputs = [ cmake mesa zlib openssl libyamlcpp boost
SDL SDL_image SDL_mixer SDL_gfx ]; SDL SDL_image SDL_mixer SDL_gfx ];
patches = [ (fetchpatch {
url = "https://github.com/SupSuper/OpenXcom/commit/49bec0851fc6e5365cac0f71b2c40a80ddf95e77.patch";
sha256 = "156fk8wz4qc0nmqq3zjb6kw84qirabads2azr6xvlgb3lcn327v2";
}) ];
meta = { meta = {
description = "Open source clone of UFO: Enemy Unknown"; description = "Open source clone of UFO: Enemy Unknown";
homepage = http://openxcom.org; homepage = http://openxcom.org;

View File

@ -34,3 +34,18 @@ Author: Felix Geyer <debfx-pkg@fobos.de>
#include <WARMUX_types.h> #include <WARMUX_types.h>
#include <WARMUX_network.h> #include <WARMUX_network.h>
#include <WARMUX_index_server.h> #include <WARMUX_index_server.h>
Description: Fix conversion error in gcc 6.
Author: Robin Gloster <mail@glob.in>
--- warmux-11.04.1.orig/src/interface/weapon_menu.cpp 2017-01-19 23:06:32.401035923 +0100
+++ warmux-11.04.1/src/interface/weapon_menu.cpp 2017-01-19 23:07:14.245866593 +0100
@@ -391,7 +391,7 @@
Weapon * WeaponsMenu::UpdateCurrentOverflyItem(const Polygon * poly)
{
if (!show)
- return false;
+ return nullptr;
const std::vector<PolygonItem *>& items = poly->GetItem();
WeaponMenuItem * tmp;
Interface::GetInstance()->SetCurrentOverflyWeapon(NULL);

View File

@ -1,5 +1,5 @@
{ stdenv, fetchFromGitHub, pkgconfig, python2Packages, makeWrapper { stdenv, fetchFromGitHub, fetchpatch, pkgconfig, python2Packages, makeWrapper
, bash, libsamplerate, libsndfile, readline, gcc , bash, libsamplerate, libsndfile, readline
# Optional Dependencies # Optional Dependencies
, dbus ? null, libffado ? null, alsaLib ? null , dbus ? null, libffado ? null, alsaLib ? null
@ -34,11 +34,7 @@ stdenv.mkDerivation rec {
}; };
nativeBuildInputs = [ pkgconfig python makeWrapper ]; nativeBuildInputs = [ pkgconfig python makeWrapper ];
buildInputs = [ gcc buildInputs = [ python libsamplerate libsndfile readline
python
libsamplerate libsndfile readline
optDbus optPythonDBus optLibffado optAlsaLib optLibopus optDbus optPythonDBus optLibffado optAlsaLib optLibopus
]; ];
@ -46,7 +42,13 @@ stdenv.mkDerivation rec {
substituteInPlace svnversion_regenerate.sh --replace /bin/bash ${bash}/bin/bash substituteInPlace svnversion_regenerate.sh --replace /bin/bash ${bash}/bin/bash
''; '';
patches = [ ./jack-gcc5.patch ]; patches = [
./jack-gcc5.patch
(fetchpatch {
url = "https://github.com/jackaudio/jack2/commit/ff1ed2c4524095055140370c1008a2d9cccc5645.patch";
sha256 = "0vywakbmlskvs9ginij9ilk39wjyzg7w6cf1qxp11hb0hj69fir5";
})
];
configurePhase = '' configurePhase = ''
python waf configure --prefix=$out \ python waf configure --prefix=$out \

View File

@ -30,7 +30,13 @@ stdenv.mkDerivation {
# Note: we don't add elfutils to buildInputs, since it provides a # Note: we don't add elfutils to buildInputs, since it provides a
# bad `ld' and other stuff. # bad `ld' and other stuff.
NIX_CFLAGS_COMPILE = "-Wno-error=cpp -Wno-error=bool-compare -Wno-error=deprecated-declarations"; NIX_CFLAGS_COMPILE = [
"-Wno-error=cpp" "-Wno-error=bool-compare" "-Wno-error=deprecated-declarations"
]
# gcc before 6 doesn't know these options
++ stdenv.lib.optionals (hasPrefix "gcc-6" stdenv.cc.cc.name) [
"-Wno-error=unused-const-variable" "-Wno-error=misleading-indentation"
];
installFlags = "install install-man ASCIIDOC8=1"; installFlags = "install install-man ASCIIDOC8=1";

View File

@ -4,30 +4,21 @@
, kexectools, libmicrohttpd, linuxHeaders ? stdenv.cc.libc.linuxHeaders, libseccomp , kexectools, libmicrohttpd, linuxHeaders ? stdenv.cc.libc.linuxHeaders, libseccomp
, iptables, gnu-efi , iptables, gnu-efi
, autoreconfHook, gettext, docbook_xsl, docbook_xml_dtd_42, docbook_xml_dtd_45 , autoreconfHook, gettext, docbook_xsl, docbook_xml_dtd_42, docbook_xml_dtd_45
, enableKDbus ? false
}: }:
assert stdenv.isLinux; assert stdenv.isLinux;
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
version = "231"; version = "232";
name = "systemd-${version}"; name = "systemd-${version}";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "NixOS"; owner = "nixos";
repo = "systemd"; repo = "systemd";
rev = "3b11791d323cf2d0e00a156967021e1ae9119de2"; rev = "9a35924a4f15dab2a84b3104b1cd125a3c36f77d";
sha256 = "1xzldwd6407jdg6z36smd49d961nmqykpay969i4xfdldcgyjdv0"; sha256 = "1z3rishvjlr5d4qgd262r13z04vzvlrlgwm7kpsf4hk7w0gmz4i5";
}; };
patches = [
# Fixes tty issues, see #18158. Remove when upgrading to systemd 232.
(fetchpatch {
url = "https://github.com/systemd/systemd/commit/bd64d82c1c0e3fe2a5f9b3dd9132d62834f50b2d.patch";
sha256 = "1gc9fxdlnfmjhbi77xfwcb5mkhryjsdi0rmbh2lq2qq737iyqqwm";
})
];
outputs = [ "out" "lib" "man" "dev" ]; outputs = [ "out" "lib" "man" "dev" ];
buildInputs = buildInputs =
@ -53,7 +44,6 @@ stdenv.mkDerivation rec {
"--with-dbussystemservicedir=$(out)/share/dbus-1/system-services" "--with-dbussystemservicedir=$(out)/share/dbus-1/system-services"
"--with-dbussessionservicedir=$(out)/share/dbus-1/services" "--with-dbussessionservicedir=$(out)/share/dbus-1/services"
"--with-tty-gid=3" # tty in NixOS has gid 3 "--with-tty-gid=3" # tty in NixOS has gid 3
"--enable-compat-libs" # get rid of this eventually
"--disable-tests" "--disable-tests"
"--enable-lz4" "--enable-lz4"
@ -80,7 +70,7 @@ stdenv.mkDerivation rec {
"--with-sysvinit-path=" "--with-sysvinit-path="
"--with-sysvrcnd-path=" "--with-sysvrcnd-path="
"--with-rc-local-script-path-stop=/etc/halt.local" "--with-rc-local-script-path-stop=/etc/halt.local"
] ++ (if enableKDbus then [ "--enable-kdbus" ] else [ "--disable-kdbus" ]); ];
hardeningDisable = [ "stackprotector" ]; hardeningDisable = [ "stackprotector" ];

View File

@ -1,4 +1,4 @@
{ stdenv, fetchurl, cmake, pkgconfig, qt4, taglib, chromaprint, ffmpeg }: { stdenv, fetchurl, fetchpatch, cmake, pkgconfig, qt4, taglib, chromaprint, ffmpeg }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "acoustid-fingerprinter-${version}"; name = "acoustid-fingerprinter-${version}";
@ -14,6 +14,11 @@ stdenv.mkDerivation rec {
cmakeFlags = [ "-DTAGLIB_MIN_VERSION=${(builtins.parseDrvName taglib.name).version}" ]; cmakeFlags = [ "-DTAGLIB_MIN_VERSION=${(builtins.parseDrvName taglib.name).version}" ];
patches = [ (fetchpatch {
url = "https://bitbucket.org/acoustid/acoustid-fingerprinter/commits/632e87969c3a5562a5d4842b03613267ba6236b2/raw";
sha256 = "15hm9knrpqn3yqrwyjz4zh2aypwbcycd0c5svrsy1fb2h2rh05jk";
}) ];
meta = with stdenv.lib; { meta = with stdenv.lib; {
homepage = "http://acoustid.org/fingerprinter"; homepage = "http://acoustid.org/fingerprinter";
description = "Audio fingerprinting tool using chromaprint"; description = "Audio fingerprinting tool using chromaprint";

View File

@ -1,14 +1,14 @@
{ stdenv, fetchurl, cmake, libxslt }: { stdenv, fetchFromGitHub, cmake, libxslt }:
let
version = "5.0.0";
in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "html-tidy-${version}"; name = "html-tidy-${version}";
version = "5.2.0";
src = fetchurl { src = fetchFromGitHub {
url = "https://github.com/htacg/tidy-html5/archive/${version}.tar.gz"; owner = "htacg";
sha256 = "1qz7hgk482496agngp9grz4jqkyxrp29r2ywbccc9i5198yspca4"; repo = "tidy-html5";
rev = version;
sha256 = "1yxp3kjsxd5zwwn4r5rpyq5ndyylbcnb9pisdyf7dxjqd47z64bc";
}; };
nativeBuildInputs = [ cmake libxslt/*manpage*/ ]; nativeBuildInputs = [ cmake libxslt/*manpage*/ ];

View File

@ -2787,7 +2787,9 @@ with pkgs;
memtest86 = callPackage ../tools/misc/memtest86 { }; memtest86 = callPackage ../tools/misc/memtest86 { };
memtest86plus = callPackage ../tools/misc/memtest86+ { }; memtest86plus = callPackage ../tools/misc/memtest86+ {
stdenv = overrideCC stdenv gcc5;
};
meo = callPackage ../tools/security/meo { meo = callPackage ../tools/security/meo {
boost = boost155; boost = boost155;
@ -11563,9 +11565,7 @@ with pkgs;
mingetty = callPackage ../os-specific/linux/mingetty { }; mingetty = callPackage ../os-specific/linux/mingetty { };
miraclecast = callPackage ../os-specific/linux/miraclecast { miraclecast = callPackage ../os-specific/linux/miraclecast { };
systemd = systemd.override { enableKDbus = true; };
};
mkinitcpio-nfs-utils = callPackage ../os-specific/linux/mkinitcpio-nfs-utils { }; mkinitcpio-nfs-utils = callPackage ../os-specific/linux/mkinitcpio-nfs-utils { };
@ -15742,9 +15742,7 @@ with pkgs;
inherit (gnome2) libgnomeprint libgnomeprintui libgnomecanvas; inherit (gnome2) libgnomeprint libgnomeprintui libgnomecanvas;
}; };
apvlv = callPackage ../applications/misc/apvlv { apvlv = callPackage ../applications/misc/apvlv { };
gtk2 = gtk2-x11;
};
xpdf = callPackage ../applications/misc/xpdf { xpdf = callPackage ../applications/misc/xpdf {
base14Fonts = "${ghostscript}/share/ghostscript/fonts"; base14Fonts = "${ghostscript}/share/ghostscript/fonts";

View File

@ -1,6 +1,21 @@
{ pkgs, callPackage, stdenv, buildPlatform, targetPlatform }: { pkgs, callPackage, stdenv, buildPlatform, targetPlatform }:
rec { let # These are attributes in compiler and packages that don't support integer-simple.
integerSimpleExcludes = [
"ghc6102Binary"
"ghc704Binary"
"ghc742Binary"
"ghc6104"
"ghc6123"
"ghc704"
"ghcjs"
"ghcjsHEAD"
"ghcCross"
"jhc"
"uhc"
"integer-simple"
];
in rec {
lib = import ../development/haskell-modules/lib.nix { inherit pkgs; }; lib = import ../development/haskell-modules/lib.nix { inherit pkgs; };
@ -74,6 +89,17 @@ rec {
inherit (pkgs.haskellPackages) ghcWithPackages; inherit (pkgs.haskellPackages) ghcWithPackages;
}); });
# The integer-simple attribute set contains all the GHC compilers
# build with integer-simple instead of integer-gmp.
integer-simple =
let integerSimpleGhcNames =
pkgs.lib.filter (name: ! builtins.elem name integerSimpleExcludes)
(pkgs.lib.attrNames compiler);
integerSimpleGhcs = pkgs.lib.genAttrs integerSimpleGhcNames
(name: compiler."${name}".override { enableIntegerSimple = true; });
in pkgs.recurseIntoAttrs (integerSimpleGhcs // {
ghcHEAD = integerSimpleGhcs.ghcHEAD.override { selfPkgs = packages.integer-simple.ghcHEAD; };
});
}; };
packages = { packages = {
@ -142,6 +168,20 @@ rec {
compilerConfig = callPackage ../development/haskell-modules/configuration-ghcjs.nix { }; compilerConfig = callPackage ../development/haskell-modules/configuration-ghcjs.nix { };
}; };
# The integer-simple attribute set contains package sets for all the GHC compilers
# using integer-simple instead of integer-gmp.
integer-simple =
let integerSimpleGhcNames =
pkgs.lib.filter (name: ! builtins.elem name integerSimpleExcludes)
(pkgs.lib.attrNames packages);
in pkgs.lib.genAttrs integerSimpleGhcNames (name: packages."${name}".override {
ghc = compiler.integer-simple."${name}";
overrides = _self : _super : {
integer-simple = null;
integer-gmp = null;
};
});
# These attributes exist only for backwards-compatibility so that we don't break # These attributes exist only for backwards-compatibility so that we don't break
# stack's --nix support. These attributes will disappear in the foreseeable # stack's --nix support. These attributes will disappear in the foreseeable
# future: https://github.com/commercialhaskell/stack/issues/2259. # future: https://github.com/commercialhaskell/stack/issues/2259.