Merge remote-tracking branch 'upstream/staging' into compiler-rt
This commit is contained in:
@@ -25,7 +25,8 @@
|
||||
, libcCross ? null
|
||||
, crossStageStatic ? false
|
||||
, libpthread ? null, libpthreadCross ? null # required for GNU/Hurd
|
||||
, stripped ? true
|
||||
, # Strip kills static libs of other archs (hence no cross)
|
||||
stripped ? hostPlatform == buildPlatform && targetPlatform == hostPlatform
|
||||
, gnused ? null
|
||||
, darwin ? null
|
||||
, buildPlatform, hostPlatform, targetPlatform
|
||||
@@ -154,7 +155,7 @@ let version = "4.8.5";
|
||||
"--disable-decimal-float" # No final libdecnumber (it may work only in 386)
|
||||
]));
|
||||
stageNameAddon = if crossStageStatic then "-stage-static" else "-stage-final";
|
||||
crossNameAddon = if targetPlatform != hostPlatform then "-${targetPlatform.config}" + stageNameAddon else "";
|
||||
crossNameAddon = if targetPlatform != hostPlatform then "${targetPlatform.config}${stageNameAddon}-" else "";
|
||||
|
||||
bootstrap = targetPlatform == hostPlatform;
|
||||
|
||||
@@ -164,7 +165,7 @@ in
|
||||
assert x11Support -> (filter (x: x == null) ([ gtk2 libart_lgpl ] ++ xlibs)) == [];
|
||||
|
||||
stdenv.mkDerivation ({
|
||||
name = "${name}${if stripped then "" else "-debug"}-${version}" + crossNameAddon;
|
||||
name = crossNameAddon + "${name}${if stripped then "" else "-debug"}-${version}";
|
||||
|
||||
builder = ../builder.sh;
|
||||
|
||||
@@ -267,11 +268,7 @@ stdenv.mkDerivation ({
|
||||
dontDisableStatic = true;
|
||||
|
||||
# TODO(@Ericson2314): Always pass "--target" and always prefix.
|
||||
configurePlatforms =
|
||||
# TODO(@Ericson2314): Figure out what's going wrong with Arm
|
||||
if buildPlatform == hostPlatform && hostPlatform == targetPlatform && targetPlatform.isAarch32
|
||||
then []
|
||||
else [ "build" "host" ] ++ stdenv.lib.optional (targetPlatform != hostPlatform) "target";
|
||||
configurePlatforms = [ "build" "host" ] ++ stdenv.lib.optional (targetPlatform != hostPlatform) "target";
|
||||
|
||||
configureFlags =
|
||||
# Basic dependencies
|
||||
@@ -351,21 +348,19 @@ stdenv.mkDerivation ({
|
||||
|
||||
targetConfig = if targetPlatform != hostPlatform then targetPlatform.config else null;
|
||||
|
||||
buildFlags = if bootstrap then
|
||||
(if profiledCompiler then "profiledbootstrap" else "bootstrap")
|
||||
else "";
|
||||
buildFlags = optional
|
||||
(bootstrap && hostPlatform == buildPlatform)
|
||||
(if profiledCompiler then "profiledbootstrap" else "bootstrap");
|
||||
|
||||
dontStrip = !stripped;
|
||||
|
||||
doCheck = false; # requires a lot of tools, causes a dependency cycle for stdenv
|
||||
|
||||
installTargets =
|
||||
if stripped
|
||||
then "install-strip"
|
||||
else "install";
|
||||
|
||||
/* For cross-built gcc (build != host == target) */
|
||||
crossAttrs = {
|
||||
dontStrip = true;
|
||||
buildFlags = "";
|
||||
};
|
||||
|
||||
# http://gcc.gnu.org/install/specific.html#x86-64-x-solaris210
|
||||
${if hostPlatform.system == "x86_64-solaris" then "CC" else null} = "gcc -m64";
|
||||
|
||||
@@ -467,8 +462,5 @@ stdenv.mkDerivation ({
|
||||
installTargets = "install-gcc install-target-libgcc";
|
||||
}
|
||||
|
||||
# Strip kills static libs of other archs (hence targetPlatform != hostPlatform)
|
||||
// optionalAttrs (!stripped || targetPlatform != hostPlatform) { dontStrip = true; }
|
||||
|
||||
// optionalAttrs (enableMultilib) { dontMoveLib64 = true; }
|
||||
)
|
||||
|
||||
@@ -25,7 +25,8 @@
|
||||
, libcCross ? null
|
||||
, crossStageStatic ? false
|
||||
, libpthread ? null, libpthreadCross ? null # required for GNU/Hurd
|
||||
, stripped ? true
|
||||
, # Strip kills static libs of other archs (hence no cross)
|
||||
stripped ? hostPlatform == buildPlatform && targetPlatform == hostPlatform
|
||||
, gnused ? null
|
||||
, darwin ? null
|
||||
, buildPlatform, hostPlatform, targetPlatform
|
||||
@@ -162,7 +163,7 @@ let version = "4.9.4";
|
||||
"--disable-decimal-float" # No final libdecnumber (it may work only in 386)
|
||||
]));
|
||||
stageNameAddon = if crossStageStatic then "-stage-static" else "-stage-final";
|
||||
crossNameAddon = if targetPlatform != hostPlatform then "-${targetPlatform.config}" + stageNameAddon else "";
|
||||
crossNameAddon = if targetPlatform != hostPlatform then "${targetPlatform.config}${stageNameAddon}-" else "";
|
||||
|
||||
bootstrap = targetPlatform == hostPlatform;
|
||||
|
||||
@@ -172,7 +173,7 @@ in
|
||||
assert x11Support -> (filter (x: x == null) ([ gtk2 libart_lgpl ] ++ xlibs)) == [];
|
||||
|
||||
stdenv.mkDerivation ({
|
||||
name = "${name}${if stripped then "" else "-debug"}-${version}" + crossNameAddon;
|
||||
name = crossNameAddon + "${name}${if stripped then "" else "-debug"}-${version}";
|
||||
|
||||
builder = ../builder.sh;
|
||||
|
||||
@@ -290,11 +291,7 @@ stdenv.mkDerivation ({
|
||||
dontDisableStatic = true;
|
||||
|
||||
# TODO(@Ericson2314): Always pass "--target" and always prefix.
|
||||
configurePlatforms =
|
||||
# TODO(@Ericson2314): Figure out what's going wrong with Arm
|
||||
if buildPlatform == hostPlatform && hostPlatform == targetPlatform && targetPlatform.isAarch32
|
||||
then []
|
||||
else [ "build" "host" ] ++ stdenv.lib.optional (targetPlatform != hostPlatform) "target";
|
||||
configurePlatforms = [ "build" "host" ] ++ stdenv.lib.optional (targetPlatform != hostPlatform) "target";
|
||||
|
||||
configureFlags =
|
||||
# Basic dependencies
|
||||
@@ -373,21 +370,19 @@ stdenv.mkDerivation ({
|
||||
|
||||
targetConfig = if targetPlatform != hostPlatform then targetPlatform.config else null;
|
||||
|
||||
buildFlags = if bootstrap then
|
||||
(if profiledCompiler then "profiledbootstrap" else "bootstrap")
|
||||
else "";
|
||||
buildFlags = optional
|
||||
(bootstrap && hostPlatform == buildPlatform)
|
||||
(if profiledCompiler then "profiledbootstrap" else "bootstrap");
|
||||
|
||||
dontStrip = !stripped;
|
||||
|
||||
doCheck = false; # requires a lot of tools, causes a dependency cycle for stdenv
|
||||
|
||||
installTargets =
|
||||
if stripped
|
||||
then "install-strip"
|
||||
else "install";
|
||||
|
||||
/* For cross-built gcc (build != host == target) */
|
||||
crossAttrs = {
|
||||
dontStrip = true;
|
||||
buildFlags = "";
|
||||
};
|
||||
|
||||
# http://gcc.gnu.org/install/specific.html#x86-64-x-solaris210
|
||||
${if hostPlatform.system == "x86_64-solaris" then "CC" else null} = "gcc -m64";
|
||||
|
||||
@@ -485,9 +480,6 @@ stdenv.mkDerivation ({
|
||||
installTargets = "install-gcc install-target-libgcc";
|
||||
}
|
||||
|
||||
# Strip kills static libs of other archs (hence targetPlatform != hostPlatform)
|
||||
// optionalAttrs (!stripped || targetPlatform != hostPlatform) { dontStrip = true; }
|
||||
|
||||
// optionalAttrs (enableMultilib) { dontMoveLib64 = true; }
|
||||
|
||||
// optionalAttrs (langJava) {
|
||||
|
||||
@@ -25,7 +25,8 @@
|
||||
, libcCross ? null
|
||||
, crossStageStatic ? false
|
||||
, libpthread ? null, libpthreadCross ? null # required for GNU/Hurd
|
||||
, stripped ? true
|
||||
, # Strip kills static libs of other archs (hence no cross)
|
||||
stripped ? hostPlatform == buildPlatform && targetPlatform == hostPlatform
|
||||
, gnused ? null
|
||||
, cloog # unused; just for compat with gcc4, as we override the parameter on some places
|
||||
, darwin ? null
|
||||
@@ -148,7 +149,7 @@ let version = "5.5.0";
|
||||
"--disable-decimal-float" # No final libdecnumber (it may work only in 386)
|
||||
]));
|
||||
stageNameAddon = if crossStageStatic then "-stage-static" else "-stage-final";
|
||||
crossNameAddon = if targetPlatform != hostPlatform then "-${targetPlatform.config}" + stageNameAddon else "";
|
||||
crossNameAddon = if targetPlatform != hostPlatform then "${targetPlatform.config}${stageNameAddon}-" else "";
|
||||
|
||||
bootstrap = targetPlatform == hostPlatform;
|
||||
|
||||
@@ -158,7 +159,7 @@ in
|
||||
assert x11Support -> (filter (x: x == null) ([ gtk2 libart_lgpl ] ++ xlibs)) == [];
|
||||
|
||||
stdenv.mkDerivation ({
|
||||
name = "${name}${if stripped then "" else "-debug"}-${version}" + crossNameAddon;
|
||||
name = crossNameAddon + "${name}${if stripped then "" else "-debug"}-${version}";
|
||||
|
||||
builder = ../builder.sh;
|
||||
|
||||
@@ -292,11 +293,7 @@ stdenv.mkDerivation ({
|
||||
dontDisableStatic = true;
|
||||
|
||||
# TODO(@Ericson2314): Always pass "--target" and always prefix.
|
||||
configurePlatforms =
|
||||
# TODO(@Ericson2314): Figure out what's going wrong with Arm
|
||||
if buildPlatform == hostPlatform && hostPlatform == targetPlatform && targetPlatform.isAarch32
|
||||
then []
|
||||
else [ "build" "host" ] ++ stdenv.lib.optional (targetPlatform != hostPlatform) "target";
|
||||
configurePlatforms = [ "build" "host" ] ++ stdenv.lib.optional (targetPlatform != hostPlatform) "target";
|
||||
|
||||
configureFlags =
|
||||
# Basic dependencies
|
||||
@@ -372,21 +369,19 @@ stdenv.mkDerivation ({
|
||||
|
||||
targetConfig = if targetPlatform != hostPlatform then targetPlatform.config else null;
|
||||
|
||||
buildFlags = if bootstrap then
|
||||
(if profiledCompiler then "profiledbootstrap" else "bootstrap")
|
||||
else "";
|
||||
buildFlags = optional
|
||||
(bootstrap && hostPlatform == buildPlatform)
|
||||
(if profiledCompiler then "profiledbootstrap" else "bootstrap");
|
||||
|
||||
dontStrip = !stripped;
|
||||
|
||||
doCheck = false; # requires a lot of tools, causes a dependency cycle for stdenv
|
||||
|
||||
installTargets =
|
||||
if stripped
|
||||
then "install-strip"
|
||||
else "install";
|
||||
|
||||
/* For cross-built gcc (build != host == target) */
|
||||
crossAttrs = {
|
||||
dontStrip = true;
|
||||
buildFlags = "";
|
||||
};
|
||||
|
||||
# http://gcc.gnu.org/install/specific.html#x86-64-x-solaris210
|
||||
${if hostPlatform.system == "x86_64-solaris" then "CC" else null} = "gcc -m64";
|
||||
|
||||
@@ -484,8 +479,5 @@ stdenv.mkDerivation ({
|
||||
installTargets = "install-gcc install-target-libgcc";
|
||||
}
|
||||
|
||||
# Strip kills static libs of other archs (hence targetPlatform != hostPlatform)
|
||||
// optionalAttrs (!stripped || targetPlatform != hostPlatform) { dontStrip = true; }
|
||||
|
||||
// optionalAttrs (enableMultilib) { dontMoveLib64 = true; }
|
||||
)
|
||||
|
||||
@@ -25,7 +25,8 @@
|
||||
, libcCross ? null
|
||||
, crossStageStatic ? false
|
||||
, libpthread ? null, libpthreadCross ? null # required for GNU/Hurd
|
||||
, stripped ? true
|
||||
, # Strip kills static libs of other archs (hence no cross)
|
||||
stripped ? hostPlatform == buildPlatform && targetPlatform == hostPlatform
|
||||
, gnused ? null
|
||||
, cloog # unused; just for compat with gcc4, as we override the parameter on some places
|
||||
, darwin ? null
|
||||
@@ -151,7 +152,7 @@ let version = "6.4.0";
|
||||
"--disable-decimal-float" # No final libdecnumber (it may work only in 386)
|
||||
]));
|
||||
stageNameAddon = if crossStageStatic then "-stage-static" else "-stage-final";
|
||||
crossNameAddon = if targetPlatform != hostPlatform then "-${targetPlatform.config}" + stageNameAddon else "";
|
||||
crossNameAddon = if targetPlatform != hostPlatform then "${targetPlatform.config}${stageNameAddon}-" else "";
|
||||
|
||||
bootstrap = targetPlatform == hostPlatform;
|
||||
|
||||
@@ -161,7 +162,7 @@ in
|
||||
assert x11Support -> (filter (x: x == null) ([ gtk2 libart_lgpl ] ++ xlibs)) == [];
|
||||
|
||||
stdenv.mkDerivation ({
|
||||
name = "${name}${if stripped then "" else "-debug"}-${version}" + crossNameAddon;
|
||||
name = crossNameAddon + "${name}${if stripped then "" else "-debug"}-${version}";
|
||||
|
||||
builder = ../builder.sh;
|
||||
|
||||
@@ -300,11 +301,7 @@ stdenv.mkDerivation ({
|
||||
dontDisableStatic = true;
|
||||
|
||||
# TODO(@Ericson2314): Always pass "--target" and always prefix.
|
||||
configurePlatforms =
|
||||
# TODO(@Ericson2314): Figure out what's going wrong with Arm
|
||||
if buildPlatform == hostPlatform && hostPlatform == targetPlatform && targetPlatform.isAarch32
|
||||
then []
|
||||
else [ "build" "host" ] ++ stdenv.lib.optional (targetPlatform != hostPlatform) "target";
|
||||
configurePlatforms = [ "build" "host" ] ++ stdenv.lib.optional (targetPlatform != hostPlatform) "target";
|
||||
|
||||
configureFlags =
|
||||
# Basic dependencies
|
||||
@@ -380,20 +377,19 @@ stdenv.mkDerivation ({
|
||||
|
||||
targetConfig = if targetPlatform != hostPlatform then targetPlatform.config else null;
|
||||
|
||||
buildFlags =
|
||||
optional bootstrap (if profiledCompiler then "profiledbootstrap" else "bootstrap");
|
||||
buildFlags = optional
|
||||
(bootstrap && hostPlatform == buildPlatform)
|
||||
(if profiledCompiler then "profiledbootstrap" else "bootstrap");
|
||||
|
||||
dontStrip = !stripped;
|
||||
|
||||
doCheck = false; # requires a lot of tools, causes a dependency cycle for stdenv
|
||||
|
||||
installTargets =
|
||||
if stripped
|
||||
then "install-strip"
|
||||
else "install";
|
||||
|
||||
/* For cross-built gcc (build != host == target) */
|
||||
crossAttrs = {
|
||||
dontStrip = true;
|
||||
buildFlags = "";
|
||||
};
|
||||
|
||||
# http://gcc.gnu.org/install/specific.html#x86-64-x-solaris210
|
||||
${if hostPlatform.system == "x86_64-solaris" then "CC" else null} = "gcc -m64";
|
||||
|
||||
@@ -491,9 +487,6 @@ stdenv.mkDerivation ({
|
||||
installTargets = "install-gcc install-target-libgcc";
|
||||
}
|
||||
|
||||
# Strip kills static libs of other archs (hence targetPlatform != hostPlatform)
|
||||
// optionalAttrs (!stripped || targetPlatform != hostPlatform) { dontStrip = true; }
|
||||
|
||||
// optionalAttrs (enableMultilib) { dontMoveLib64 = true; }
|
||||
|
||||
// optionalAttrs (langJava) {
|
||||
|
||||
@@ -2,30 +2,24 @@
|
||||
, langC ? true, langCC ? true, langFortran ? false
|
||||
, langObjC ? targetPlatform.isDarwin
|
||||
, langObjCpp ? targetPlatform.isDarwin
|
||||
, langJava ? false
|
||||
, langGo ? false
|
||||
, profiledCompiler ? false
|
||||
, staticCompiler ? false
|
||||
, enableShared ? true
|
||||
, texinfo ? null
|
||||
, perl ? null # optional, for texi2pod (then pod2man); required for Java
|
||||
, perl ? null # optional, for texi2pod (then pod2man)
|
||||
, gmp, mpfr, libmpc, gettext, which
|
||||
, libelf # optional, for link-time optimizations (LTO)
|
||||
, isl ? null # optional, for the Graphite optimization framework.
|
||||
, zlib ? null, boehmgc ? null
|
||||
, zip ? null, unzip ? null, pkgconfig ? null
|
||||
, gtk2 ? null, libart_lgpl ? null
|
||||
, libX11 ? null, libXt ? null, libSM ? null, libICE ? null, libXtst ? null
|
||||
, libXrender ? null, xproto ? null, renderproto ? null, xextproto ? null
|
||||
, libXrandr ? null, libXi ? null, inputproto ? null, randrproto ? null
|
||||
, x11Support ? langJava
|
||||
, zlib ? null
|
||||
, enableMultilib ? false
|
||||
, enablePlugin ? hostPlatform == buildPlatform # Whether to support user-supplied plug-ins
|
||||
, name ? "gcc"
|
||||
, libcCross ? null
|
||||
, crossStageStatic ? false
|
||||
, libpthread ? null, libpthreadCross ? null # required for GNU/Hurd
|
||||
, stripped ? true
|
||||
, # Strip kills static libs of other archs (hence no cross)
|
||||
stripped ? hostPlatform == buildPlatform && targetPlatform == hostPlatform
|
||||
, gnused ? null
|
||||
, cloog # unused; just for compat with gcc4, as we override the parameter on some places
|
||||
, darwin ? null
|
||||
@@ -33,10 +27,6 @@
|
||||
, buildPackages
|
||||
}:
|
||||
|
||||
assert langJava -> zip != null && unzip != null
|
||||
&& zlib != null && boehmgc != null
|
||||
&& perl != null; # for `--enable-java-home'
|
||||
|
||||
# LTO needs libelf and zlib.
|
||||
assert libelf != null -> zlib != null;
|
||||
|
||||
@@ -70,29 +60,6 @@ let version = "7.3.0";
|
||||
})
|
||||
++ optional langFortran ../gfortran-driving.patch;
|
||||
|
||||
javaEcj = fetchurl {
|
||||
# The `$(top_srcdir)/ecj.jar' file is automatically picked up at
|
||||
# `configure' time.
|
||||
|
||||
# XXX: Eventually we might want to take it from upstream.
|
||||
url = "ftp://sourceware.org/pub/java/ecj-4.3.jar";
|
||||
sha256 = "0jz7hvc0s6iydmhgh5h2m15yza7p2rlss2vkif30vm9y77m97qcx";
|
||||
};
|
||||
|
||||
# Antlr (optional) allows the Java `gjdoc' tool to be built. We want a
|
||||
# binary distribution here to allow the whole chain to be bootstrapped.
|
||||
javaAntlr = fetchurl {
|
||||
url = http://www.antlr.org/download/antlr-4.4-complete.jar;
|
||||
sha256 = "02lda2imivsvsis8rnzmbrbp8rh1kb8vmq4i67pqhkwz7lf8y6dz";
|
||||
};
|
||||
|
||||
xlibs = [
|
||||
libX11 libXt libSM libICE libXtst libXrender libXrandr libXi
|
||||
xproto renderproto xextproto inputproto randrproto
|
||||
];
|
||||
|
||||
javaAwtGtk = langJava && x11Support;
|
||||
|
||||
/* Cross-gcc settings (build == host != target) */
|
||||
crossMingw = targetPlatform != hostPlatform && targetPlatform.libc == "msvcrt";
|
||||
crossDarwin = targetPlatform != hostPlatform && targetPlatform.libc == "libSystem";
|
||||
@@ -156,17 +123,14 @@ let version = "7.3.0";
|
||||
"--disable-decimal-float" # No final libdecnumber (it may work only in 386)
|
||||
]));
|
||||
stageNameAddon = if crossStageStatic then "-stage-static" else "-stage-final";
|
||||
crossNameAddon = if targetPlatform != hostPlatform then "-${targetPlatform.config}" + stageNameAddon else "";
|
||||
crossNameAddon = if targetPlatform != hostPlatform then "${targetPlatform.config}${stageNameAddon}-" else "";
|
||||
|
||||
bootstrap = targetPlatform == hostPlatform;
|
||||
|
||||
in
|
||||
|
||||
# We need all these X libraries when building AWT with GTK+.
|
||||
assert x11Support -> (filter (x: x == null) ([ gtk2 libart_lgpl ] ++ xlibs)) == [];
|
||||
|
||||
stdenv.mkDerivation ({
|
||||
name = "${name}${if stripped then "" else "-debug"}-${version}" + crossNameAddon;
|
||||
name = crossNameAddon + "${name}${if stripped then "" else "-debug"}-${version}";
|
||||
|
||||
builder = ../builder.sh;
|
||||
|
||||
@@ -262,13 +226,12 @@ stdenv.mkDerivation ({
|
||||
|
||||
# TODO(@Ericson2314): Make passthru instead. Weird to avoid mass rebuild,
|
||||
crossStageStatic = targetPlatform == hostPlatform || crossStageStatic;
|
||||
inherit noSysDirs staticCompiler langJava
|
||||
inherit noSysDirs staticCompiler
|
||||
libcCross crossMingw;
|
||||
|
||||
depsBuildBuild = [ buildPackages.stdenv.cc ];
|
||||
nativeBuildInputs = [ texinfo which gettext ]
|
||||
++ (optional (perl != null) perl)
|
||||
++ (optional javaAwtGtk pkgconfig);
|
||||
++ (optional (perl != null) perl);
|
||||
|
||||
# For building runtime libs
|
||||
depsBuildTarget =
|
||||
@@ -283,8 +246,6 @@ stdenv.mkDerivation ({
|
||||
targetPackages.stdenv.cc.bintools # For linking code at run-time
|
||||
] ++ (optional (isl != null) isl)
|
||||
++ (optional (zlib != null) zlib)
|
||||
++ (optionals langJava [ boehmgc zip unzip ])
|
||||
++ (optionals javaAwtGtk ([ gtk2 libart_lgpl ] ++ xlibs))
|
||||
++ (optionals (targetPlatform != hostPlatform) [targetPackages.stdenv.cc.bintools])
|
||||
|
||||
# The builder relies on GNU sed (for instance, Darwin's `sed' fails with
|
||||
@@ -305,11 +266,7 @@ stdenv.mkDerivation ({
|
||||
dontDisableStatic = true;
|
||||
|
||||
# TODO(@Ericson2314): Always pass "--target" and always prefix.
|
||||
configurePlatforms =
|
||||
# TODO(@Ericson2314): Figure out what's going wrong with Arm
|
||||
if buildPlatform == hostPlatform && hostPlatform == targetPlatform && targetPlatform.isAarch32
|
||||
then []
|
||||
else [ "build" "host" ] ++ stdenv.lib.optional (targetPlatform != hostPlatform) "target";
|
||||
configurePlatforms = [ "build" "host" ] ++ stdenv.lib.optional (targetPlatform != hostPlatform) "target";
|
||||
|
||||
configureFlags =
|
||||
# Basic dependencies
|
||||
@@ -336,7 +293,6 @@ stdenv.mkDerivation ({
|
||||
( optional langC "c"
|
||||
++ optional langCC "c++"
|
||||
++ optional langFortran "fortran"
|
||||
++ optional langJava "java"
|
||||
++ optional langGo "go"
|
||||
++ optional langObjC "objc"
|
||||
++ optional langObjCpp "obj-c++"
|
||||
@@ -357,18 +313,6 @@ stdenv.mkDerivation ({
|
||||
# Optional features
|
||||
optional (isl != null) "--with-isl=${isl}" ++
|
||||
|
||||
# Java options
|
||||
optionals langJava [
|
||||
"--with-ecj-jar=${javaEcj}"
|
||||
|
||||
# Follow Sun's layout for the convenience of IcedTea/OpenJDK. See
|
||||
# <http://mail.openjdk.java.net/pipermail/distro-pkg-dev/2010-April/008888.html>.
|
||||
"--enable-java-home"
|
||||
"--with-java-home=\${prefix}/lib/jvm/jre"
|
||||
] ++
|
||||
optional javaAwtGtk "--enable-java-awt=gtk" ++
|
||||
optional (langJava && javaAntlr != null) "--with-antlr-jar=${javaAntlr}" ++
|
||||
|
||||
(import ../common/platform-flags.nix { inherit (stdenv) lib targetPlatform; }) ++
|
||||
optional (targetPlatform != hostPlatform) crossConfigureFlags ++
|
||||
optional (!bootstrap) "--disable-bootstrap" ++
|
||||
@@ -386,31 +330,25 @@ stdenv.mkDerivation ({
|
||||
|
||||
targetConfig = if targetPlatform != hostPlatform then targetPlatform.config else null;
|
||||
|
||||
buildFlags =
|
||||
optional bootstrap (if profiledCompiler then "profiledbootstrap" else "bootstrap");
|
||||
buildFlags = optional
|
||||
(bootstrap && hostPlatform == buildPlatform)
|
||||
(if profiledCompiler then "profiledbootstrap" else "bootstrap");
|
||||
|
||||
dontStrip = !stripped;
|
||||
|
||||
doCheck = false; # requires a lot of tools, causes a dependency cycle for stdenv
|
||||
|
||||
installTargets =
|
||||
if stripped
|
||||
then "install-strip"
|
||||
else "install";
|
||||
|
||||
/* For cross-built gcc (build != host == target) */
|
||||
crossAttrs = {
|
||||
dontStrip = true;
|
||||
buildFlags = "";
|
||||
};
|
||||
|
||||
# http://gcc.gnu.org/install/specific.html#x86-64-x-solaris210
|
||||
${if hostPlatform.system == "x86_64-solaris" then "CC" else null} = "gcc -m64";
|
||||
|
||||
# Setting $CPATH and $LIBRARY_PATH to make sure both `gcc' and `xgcc' find the
|
||||
# library headers and binaries, regarless of the language being compiled.
|
||||
#
|
||||
# Note: When building the Java AWT GTK+ peer, the build system doesn't honor
|
||||
# `--with-gmp' et al., e.g., when building
|
||||
# `libjava/classpath/native/jni/java-math/gnu_java_math_GMP.c', so we just add
|
||||
# them to $CPATH and $LIBRARY_PATH in this case.
|
||||
#
|
||||
# Likewise, the LTO code doesn't find zlib.
|
||||
#
|
||||
# Cross-compiling, we need gcc not to read ./specs in order to build the g++
|
||||
@@ -419,9 +357,6 @@ stdenv.mkDerivation ({
|
||||
|
||||
CPATH = optionals (targetPlatform == hostPlatform) (makeSearchPathOutput "dev" "include" ([]
|
||||
++ optional (zlib != null) zlib
|
||||
++ optional langJava boehmgc
|
||||
++ optionals javaAwtGtk xlibs
|
||||
++ optionals javaAwtGtk [ gmp mpfr ]
|
||||
++ optional (libpthread != null) libpthread
|
||||
++ optional (libpthreadCross != null) libpthreadCross
|
||||
|
||||
@@ -433,9 +368,6 @@ stdenv.mkDerivation ({
|
||||
|
||||
LIBRARY_PATH = optionals (targetPlatform == hostPlatform) (makeLibraryPath ([]
|
||||
++ optional (zlib != null) zlib
|
||||
++ optional langJava boehmgc
|
||||
++ optionals javaAwtGtk xlibs
|
||||
++ optionals javaAwtGtk [ gmp mpfr ]
|
||||
++ optional (libpthread != null) libpthread)
|
||||
);
|
||||
|
||||
@@ -476,8 +408,8 @@ stdenv.mkDerivation ({
|
||||
|
||||
longDescription = ''
|
||||
The GNU Compiler Collection includes compiler front ends for C, C++,
|
||||
Objective-C, Fortran, OpenMP for C/C++/Fortran, Java, and Ada, as well
|
||||
as libraries for these languages (libstdc++, libgcj, libgomp,...).
|
||||
Objective-C, Fortran, OpenMP for C/C++/Fortran, and Ada, as well as
|
||||
libraries for these languages (libstdc++, libgomp,...).
|
||||
|
||||
GCC development is a part of the GNU Project, aiming to improve the
|
||||
compiler used in the GNU system including the GNU/Linux variant.
|
||||
@@ -497,8 +429,5 @@ stdenv.mkDerivation ({
|
||||
installTargets = "install-gcc install-target-libgcc";
|
||||
}
|
||||
|
||||
# Strip kills static libs of other archs (hence targetPlatform != hostPlatform)
|
||||
// optionalAttrs (!stripped || targetPlatform != hostPlatform) { dontStrip = true; }
|
||||
|
||||
// optionalAttrs (enableMultilib) { dontMoveLib64 = true; }
|
||||
)
|
||||
|
||||
@@ -18,7 +18,8 @@
|
||||
, libcCross ? null
|
||||
, crossStageStatic ? false
|
||||
, libpthread ? null, libpthreadCross ? null # required for GNU/Hurd
|
||||
, stripped ? true
|
||||
, # Strip kills static libs of other archs (hence no cross)
|
||||
stripped ? hostPlatform == buildPlatform && targetPlatform == hostPlatform
|
||||
, gnused ? null
|
||||
, cloog # unused; just for compat with gcc4, as we override the parameter on some places
|
||||
, darwin ? null
|
||||
@@ -260,11 +261,7 @@ stdenv.mkDerivation ({
|
||||
dontDisableStatic = true;
|
||||
|
||||
# TODO(@Ericson2314): Always pass "--target" and always prefix.
|
||||
configurePlatforms =
|
||||
# TODO(@Ericson2314): Figure out what's going wrong with Arm
|
||||
if buildPlatform == hostPlatform && hostPlatform == targetPlatform && targetPlatform.isAarch32
|
||||
then []
|
||||
else [ "build" "host" ] ++ stdenv.lib.optional (targetPlatform != hostPlatform) "target";
|
||||
configurePlatforms = [ "build" "host" ] ++ stdenv.lib.optional (targetPlatform != hostPlatform) "target";
|
||||
|
||||
configureFlags =
|
||||
# Basic dependencies
|
||||
@@ -327,20 +324,17 @@ stdenv.mkDerivation ({
|
||||
|
||||
targetConfig = if targetPlatform != hostPlatform then targetPlatform.config else null;
|
||||
|
||||
buildFlags =
|
||||
optional bootstrap (if profiledCompiler then "profiledbootstrap" else "bootstrap");
|
||||
buildFlags = optional
|
||||
(bootstrap && hostPlatform == buildPlatform)
|
||||
(if profiledCompiler then "profiledbootstrap" else "bootstrap");
|
||||
|
||||
dontStrip = !stripped;
|
||||
|
||||
installTargets =
|
||||
if stripped
|
||||
then "install-strip"
|
||||
else "install";
|
||||
|
||||
/* For cross-built gcc (build != host == target) */
|
||||
crossAttrs = {
|
||||
dontStrip = true;
|
||||
buildFlags = "";
|
||||
};
|
||||
|
||||
# http://gcc.gnu.org/install/specific.html#x86-64-x-solaris210
|
||||
${if hostPlatform.system == "x86_64-solaris" then "CC" else null} = "gcc -m64";
|
||||
|
||||
@@ -427,8 +421,5 @@ stdenv.mkDerivation ({
|
||||
installTargets = "install-gcc install-target-libgcc";
|
||||
}
|
||||
|
||||
# Strip kills static libs of other archs (hence targetPlatform != hostPlatform)
|
||||
// optionalAttrs (!stripped || targetPlatform != hostPlatform) { dontStrip = true; }
|
||||
|
||||
// optionalAttrs (enableMultilib) { dontMoveLib64 = true; }
|
||||
)
|
||||
|
||||
@@ -1,13 +1,5 @@
|
||||
# The `hostOffset` describes how the host platform of the dependencies are slid
|
||||
# relative to the depending package. It is brought into scope of the setup hook
|
||||
# defined as the role of the dependency whose hooks is being run.
|
||||
case $hostOffset in
|
||||
-1) local role='BUILD_' ;;
|
||||
0) local role='' ;;
|
||||
1) local role='TARGET_' ;;
|
||||
*) echo "cc-wrapper: Error: Cannot be used with $hostOffset-offset deps" >2;
|
||||
return 1 ;;
|
||||
esac
|
||||
# See pkgs/build-support/setup-hooks/role.bash
|
||||
getHostRole
|
||||
|
||||
export NIX_${role}CXXSTDLIB_COMPILE+=" -isystem $(echo -n @gcc@/include/c++/*) -isystem $(echo -n @gcc@/include/c++/*)/$(@gcc@/bin/gcc -dumpmachine)"
|
||||
export NIX_${role}CXXSTDLIB_LINK=" -stdlib=libstdc++"
|
||||
export NIX_${role_pre}CXXSTDLIB_COMPILE+=" -isystem $(echo -n @gcc@/include/c++/*) -isystem $(echo -n @gcc@/include/c++/*)/$(@gcc@/bin/gcc -dumpmachine)"
|
||||
export NIX_${role_pre}CXXSTDLIB_LINK=" -stdlib=libstdc++"
|
||||
|
||||
@@ -2,30 +2,24 @@
|
||||
, langC ? true, langCC ? true, langFortran ? false
|
||||
, langObjC ? targetPlatform.isDarwin
|
||||
, langObjCpp ? targetPlatform.isDarwin
|
||||
, langJava ? false
|
||||
, langGo ? false
|
||||
, profiledCompiler ? false
|
||||
, staticCompiler ? false
|
||||
, enableShared ? true
|
||||
, texinfo ? null
|
||||
, perl ? null # optional, for texi2pod (then pod2man); required for Java
|
||||
, perl ? null # optional, for texi2pod (then pod2man)
|
||||
, gmp, mpfr, libmpc, gettext, which
|
||||
, libelf # optional, for link-time optimizations (LTO)
|
||||
, isl ? null # optional, for the Graphite optimization framework.
|
||||
, zlib ? null, boehmgc ? null
|
||||
, zip ? null, unzip ? null, pkgconfig ? null
|
||||
, gtk2 ? null, libart_lgpl ? null
|
||||
, libX11 ? null, libXt ? null, libSM ? null, libICE ? null, libXtst ? null
|
||||
, libXrender ? null, xproto ? null, renderproto ? null, xextproto ? null
|
||||
, libXrandr ? null, libXi ? null, inputproto ? null, randrproto ? null
|
||||
, x11Support ? langJava
|
||||
, zlib ? null
|
||||
, enableMultilib ? false
|
||||
, enablePlugin ? hostPlatform == buildPlatform # Whether to support user-supplied plug-ins
|
||||
, name ? "gcc"
|
||||
, libcCross ? null
|
||||
, crossStageStatic ? false
|
||||
, libpthread ? null, libpthreadCross ? null # required for GNU/Hurd
|
||||
, stripped ? true
|
||||
, # Strip kills static libs of other archs (hence no cross)
|
||||
stripped ? hostPlatform == buildPlatform && targetPlatform == hostPlatform
|
||||
, gnused ? null
|
||||
, cloog # unused; just for compat with gcc4, as we override the parameter on some places
|
||||
, darwin ? null
|
||||
@@ -34,10 +28,6 @@
|
||||
, buildPackages
|
||||
}:
|
||||
|
||||
assert langJava -> zip != null && unzip != null
|
||||
&& zlib != null && boehmgc != null
|
||||
&& perl != null; # for `--enable-java-home'
|
||||
|
||||
# LTO needs libelf and zlib.
|
||||
assert libelf != null -> zlib != null;
|
||||
|
||||
@@ -63,29 +53,6 @@ let version = "7-20170409";
|
||||
++ optional noSysDirs ../no-sys-dirs.patch
|
||||
++ optional langFortran ../gfortran-driving.patch;
|
||||
|
||||
javaEcj = fetchurl {
|
||||
# The `$(top_srcdir)/ecj.jar' file is automatically picked up at
|
||||
# `configure' time.
|
||||
|
||||
# XXX: Eventually we might want to take it from upstream.
|
||||
url = "ftp://sourceware.org/pub/java/ecj-4.3.jar";
|
||||
sha256 = "0jz7hvc0s6iydmhgh5h2m15yza7p2rlss2vkif30vm9y77m97qcx";
|
||||
};
|
||||
|
||||
# Antlr (optional) allows the Java `gjdoc' tool to be built. We want a
|
||||
# binary distribution here to allow the whole chain to be bootstrapped.
|
||||
javaAntlr = fetchurl {
|
||||
url = http://www.antlr.org/download/antlr-4.4-complete.jar;
|
||||
sha256 = "02lda2imivsvsis8rnzmbrbp8rh1kb8vmq4i67pqhkwz7lf8y6dz";
|
||||
};
|
||||
|
||||
xlibs = [
|
||||
libX11 libXt libSM libICE libXtst libXrender libXrandr libXi
|
||||
xproto renderproto xextproto inputproto randrproto
|
||||
];
|
||||
|
||||
javaAwtGtk = langJava && x11Support;
|
||||
|
||||
/* Cross-gcc settings (build == host != target) */
|
||||
crossMingw = targetPlatform != hostPlatform && targetPlatform.libc == "msvcrt";
|
||||
crossDarwin = targetPlatform != hostPlatform && targetPlatform.libc == "libSystem";
|
||||
@@ -150,9 +117,6 @@ let version = "7-20170409";
|
||||
|
||||
in
|
||||
|
||||
# We need all these X libraries when building AWT with GTK+.
|
||||
assert x11Support -> (filter (x: x == null) ([ gtk2 libart_lgpl ] ++ xlibs)) == [];
|
||||
|
||||
stdenv.mkDerivation ({
|
||||
name = "${name}${if stripped then "" else "-debug"}-${version}" + crossNameAddon;
|
||||
|
||||
@@ -225,13 +189,12 @@ stdenv.mkDerivation ({
|
||||
|
||||
# TODO(@Ericson2314): Make passthru instead. Weird to avoid mass rebuild,
|
||||
crossStageStatic = targetPlatform == hostPlatform || crossStageStatic;
|
||||
inherit noSysDirs staticCompiler langJava
|
||||
inherit noSysDirs staticCompiler
|
||||
libcCross crossMingw;
|
||||
|
||||
depsBuildBuild = [ buildPackages.stdenv.cc ];
|
||||
nativeBuildInputs = [ texinfo which gettext ]
|
||||
++ (optional (perl != null) perl)
|
||||
++ (optional javaAwtGtk pkgconfig);
|
||||
++ (optional (perl != null) perl);
|
||||
|
||||
# For building runtime libs
|
||||
depsBuildTarget =
|
||||
@@ -246,8 +209,6 @@ stdenv.mkDerivation ({
|
||||
targetPackages.stdenv.cc.bintools # For linking code at run-time
|
||||
] ++ (optional (isl != null) isl)
|
||||
++ (optional (zlib != null) zlib)
|
||||
++ (optionals langJava [ boehmgc zip unzip ])
|
||||
++ (optionals javaAwtGtk ([ gtk2 libart_lgpl ] ++ xlibs))
|
||||
++ (optionals (targetPlatform != hostPlatform) [targetPackages.stdenv.cc.bintools])
|
||||
|
||||
# The builder relies on GNU sed (for instance, Darwin's `sed' fails with
|
||||
@@ -268,11 +229,7 @@ stdenv.mkDerivation ({
|
||||
dontDisableStatic = true;
|
||||
|
||||
# TODO(@Ericson2314): Always pass "--target" and always prefix.
|
||||
configurePlatforms =
|
||||
# TODO(@Ericson2314): Figure out what's going wrong with Arm
|
||||
if buildPlatform == hostPlatform && hostPlatform == targetPlatform && targetPlatform.isAarch32
|
||||
then []
|
||||
else [ "build" "host" ] ++ stdenv.lib.optional (targetPlatform != hostPlatform) "target";
|
||||
configurePlatforms = [ "build" "host" ] ++ stdenv.lib.optional (targetPlatform != hostPlatform) "target";
|
||||
|
||||
configureFlags =
|
||||
# Basic dependencies
|
||||
@@ -299,7 +256,6 @@ stdenv.mkDerivation ({
|
||||
( optional langC "c"
|
||||
++ optional langCC "c++"
|
||||
++ optional langFortran "fortran"
|
||||
++ optional langJava "java"
|
||||
++ optional langGo "go"
|
||||
++ optional langObjC "objc"
|
||||
++ optional langObjCpp "obj-c++"
|
||||
@@ -320,17 +276,6 @@ stdenv.mkDerivation ({
|
||||
# Optional features
|
||||
optional (isl != null) "--with-isl=${isl}" ++
|
||||
|
||||
# Java options
|
||||
optionals langJava [
|
||||
"--with-ecj-jar=${javaEcj}"
|
||||
|
||||
# Follow Sun's layout for the convenience of IcedTea/OpenJDK. See
|
||||
# <http://mail.openjdk.java.net/pipermail/distro-pkg-dev/2010-April/008888.html>.
|
||||
"--enable-java-home"
|
||||
"--with-java-home=\${prefix}/lib/jvm/jre"
|
||||
] ++
|
||||
optional javaAwtGtk "--enable-java-awt=gtk" ++
|
||||
optional (langJava && javaAntlr != null) "--with-antlr-jar=${javaAntlr}" ++
|
||||
|
||||
(import ../common/platform-flags.nix { inherit (stdenv) lib targetPlatform; }) ++
|
||||
optional (targetPlatform != hostPlatform) crossConfigureFlags ++
|
||||
@@ -351,28 +296,20 @@ stdenv.mkDerivation ({
|
||||
(if profiledCompiler then "profiledbootstrap" else "bootstrap")
|
||||
else "";
|
||||
|
||||
dontStrip = !stripped;
|
||||
NIX_STRIP_DEBUG = !stripped;
|
||||
|
||||
installTargets =
|
||||
if stripped
|
||||
then "install-strip"
|
||||
else "install";
|
||||
|
||||
/* For cross-built gcc (build != host == target) */
|
||||
crossAttrs = {
|
||||
dontStrip = true;
|
||||
buildFlags = "";
|
||||
};
|
||||
|
||||
# http://gcc.gnu.org/install/specific.html#x86-64-x-solaris210
|
||||
${if hostPlatform.system == "x86_64-solaris" then "CC" else null} = "gcc -m64";
|
||||
|
||||
# Setting $CPATH and $LIBRARY_PATH to make sure both `gcc' and `xgcc' find the
|
||||
# library headers and binaries, regarless of the language being compiled.
|
||||
#
|
||||
# Note: When building the Java AWT GTK+ peer, the build system doesn't honor
|
||||
# `--with-gmp' et al., e.g., when building
|
||||
# `libjava/classpath/native/jni/java-math/gnu_java_math_GMP.c', so we just add
|
||||
# them to $CPATH and $LIBRARY_PATH in this case.
|
||||
#
|
||||
# Likewise, the LTO code doesn't find zlib.
|
||||
#
|
||||
# Cross-compiling, we need gcc not to read ./specs in order to build the g++
|
||||
@@ -381,9 +318,6 @@ stdenv.mkDerivation ({
|
||||
|
||||
CPATH = optionals (targetPlatform == hostPlatform) (makeSearchPathOutput "dev" "include" ([]
|
||||
++ optional (zlib != null) zlib
|
||||
++ optional langJava boehmgc
|
||||
++ optionals javaAwtGtk xlibs
|
||||
++ optionals javaAwtGtk [ gmp mpfr ]
|
||||
++ optional (libpthread != null) libpthread
|
||||
++ optional (libpthreadCross != null) libpthreadCross
|
||||
|
||||
@@ -395,9 +329,6 @@ stdenv.mkDerivation ({
|
||||
|
||||
LIBRARY_PATH = optionals (targetPlatform == hostPlatform) (makeLibraryPath ([]
|
||||
++ optional (zlib != null) zlib
|
||||
++ optional langJava boehmgc
|
||||
++ optionals javaAwtGtk xlibs
|
||||
++ optionals javaAwtGtk [ gmp mpfr ]
|
||||
++ optional (libpthread != null) libpthread)
|
||||
);
|
||||
|
||||
@@ -438,8 +369,8 @@ stdenv.mkDerivation ({
|
||||
|
||||
longDescription = ''
|
||||
The GNU Compiler Collection includes compiler front ends for C, C++,
|
||||
Objective-C, Fortran, OpenMP for C/C++/Fortran, Java, and Ada, as well
|
||||
as libraries for these languages (libstdc++, libgcj, libgomp,...).
|
||||
Objective-C, Fortran, OpenMP for C/C++/Fortran, and Ada, as well as
|
||||
libraries for these languages (libstdc++, libgomp,...).
|
||||
|
||||
GCC development is a part of the GNU Project, aiming to improve the
|
||||
compiler used in the GNU system including the GNU/Linux variant.
|
||||
@@ -461,8 +392,5 @@ stdenv.mkDerivation ({
|
||||
installTargets = "install-gcc install-target-libgcc";
|
||||
}
|
||||
|
||||
# Strip kills static libs of other archs (hence targetPlatform != hostPlatform)
|
||||
// optionalAttrs (!stripped || targetPlatform != hostPlatform) { dontStrip = true; NIX_STRIP_DEBUG = 0; }
|
||||
|
||||
// optionalAttrs (enableMultilib) { dontMoveLib64 = true; }
|
||||
)
|
||||
|
||||
@@ -129,10 +129,8 @@ stdenv.mkDerivation rec {
|
||||
"--disable-large-address-space"
|
||||
];
|
||||
|
||||
# Hack to make sure we never to the relaxation `$PATH` and hooks support for
|
||||
# compatability. This will be replaced with something clearer in a future
|
||||
# masss-rebuild.
|
||||
crossConfig = true;
|
||||
# Make sure we never relax`$PATH` and hooks support for compatability.
|
||||
strictDeps = true;
|
||||
|
||||
nativeBuildInputs = [
|
||||
ghc perl libxml2 libxslt docbook_xsl docbook_xml_dtd_45 docbook_xml_dtd_42 hscolour
|
||||
|
||||
@@ -129,10 +129,8 @@ stdenv.mkDerivation rec {
|
||||
"--disable-large-address-space"
|
||||
];
|
||||
|
||||
# Hack to make sure we never to the relaxation `$PATH` and hooks support for
|
||||
# compatability. This will be replaced with something clearer in a future
|
||||
# masss-rebuild.
|
||||
crossConfig = true;
|
||||
# Make sure we never relax`$PATH` and hooks support for compatability.
|
||||
strictDeps = true;
|
||||
|
||||
nativeBuildInputs = [ ghc perl hscolour sphinx ];
|
||||
|
||||
|
||||
@@ -148,10 +148,8 @@ stdenv.mkDerivation rec {
|
||||
"--disable-large-address-space"
|
||||
];
|
||||
|
||||
# Hack to make sure we never to the relaxation `$PATH` and hooks support for
|
||||
# compatability. This will be replaced with something clearer in a future
|
||||
# masss-rebuild.
|
||||
crossConfig = true;
|
||||
# Make sure we never relax`$PATH` and hooks support for compatability.
|
||||
strictDeps = true;
|
||||
|
||||
nativeBuildInputs = [ alex autoconf autoreconfHook automake ghc happy hscolour perl python3 sphinx ];
|
||||
|
||||
@@ -171,6 +169,9 @@ stdenv.mkDerivation rec {
|
||||
stripDebugFlags = [ "-S" ] ++ stdenv.lib.optional (!targetPlatform.isDarwin) "--keep-file-symbols";
|
||||
|
||||
checkTarget = "test";
|
||||
doCheck = false; # fails with "testsuite/tests: No such file or directory. Stop."
|
||||
|
||||
hardeningDisable = [ "format" ];
|
||||
|
||||
# zsh and other shells are smart about `{ghc}` but bash isn't, and doesn't
|
||||
# treat that as a unary `{x,y,z,..}` repetition.
|
||||
|
||||
@@ -139,10 +139,8 @@ stdenv.mkDerivation rec {
|
||||
"--disable-large-address-space"
|
||||
];
|
||||
|
||||
# Hack to make sure we never to the relaxation `$PATH` and hooks support for
|
||||
# compatability. This will be replaced with something clearer in a future
|
||||
# masss-rebuild.
|
||||
crossConfig = true;
|
||||
# Make sure we never relax`$PATH` and hooks support for compatability.
|
||||
strictDeps = true;
|
||||
|
||||
nativeBuildInputs = [ ghc perl autoconf automake m4 happy alex python3 ];
|
||||
|
||||
|
||||
@@ -136,10 +136,8 @@ stdenv.mkDerivation rec {
|
||||
"--disable-large-address-space"
|
||||
];
|
||||
|
||||
# Hack to make sure we never to the relaxation `$PATH` and hooks support for
|
||||
# compatability. This will be replaced with something clearer in a future
|
||||
# masss-rebuild.
|
||||
crossConfig = true;
|
||||
# Make sure we never relax`$PATH` and hooks support for compatability.
|
||||
strictDeps = true;
|
||||
|
||||
nativeBuildInputs = [ ghc perl autoconf automake happy alex python3 ];
|
||||
|
||||
|
||||
@@ -25,13 +25,13 @@ in
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "go-${version}";
|
||||
version = "1.10.1";
|
||||
version = "1.10.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "golang";
|
||||
repo = "go";
|
||||
rev = "go${version}";
|
||||
sha256 = "1wqwy52ibb343a4v7b9q26xa6r5jk4khfxd90wbpcayws8cxly8m";
|
||||
sha256 = "1lbxnlj5l9i8k1dg33dh8ndx9vspk9dkpcbg06jbbswy6kadmx6f";
|
||||
};
|
||||
|
||||
# perl is used for testing go vet
|
||||
|
||||
@@ -39,7 +39,10 @@ stdenv.mkDerivation rec {
|
||||
|
||||
linkCxxAbi = stdenv.isLinux;
|
||||
|
||||
setupHook = ./setup-hook.sh;
|
||||
setupHooks = [
|
||||
../../../../../build-support/setup-hooks/role.bash
|
||||
./setup-hook.sh
|
||||
];
|
||||
|
||||
meta = {
|
||||
homepage = http://libcxx.llvm.org/;
|
||||
|
||||
@@ -1,14 +1,6 @@
|
||||
# The `hostOffset` describes how the host platform of the dependencies are slid
|
||||
# relative to the depending package. It is brought into scope of the setup hook
|
||||
# defined as the role of the dependency whose hooks is being run.
|
||||
case $hostOffset in
|
||||
-1) local role='BUILD_' ;;
|
||||
0) local role='' ;;
|
||||
1) local role='TARGET_' ;;
|
||||
*) echo "cc-wrapper: Error: Cannot be used with $hostOffset-offset deps" >2;
|
||||
return 1 ;;
|
||||
esac
|
||||
# See pkgs/build-support/setup-hooks/role.bash
|
||||
getHostRole
|
||||
|
||||
linkCxxAbi="@linkCxxAbi@"
|
||||
export NIX_${role}CXXSTDLIB_COMPILE+=" -isystem @out@/include/c++/v1"
|
||||
export NIX_${role}CXXSTDLIB_LINK=" -stdlib=libc++${linkCxxAbi:+" -lc++abi"}"
|
||||
export NIX_${role_pre}CXXSTDLIB_COMPILE+=" -isystem @out@/include/c++/v1"
|
||||
export NIX_${role_pre}CXXSTDLIB_LINK=" -stdlib=libc++${linkCxxAbi:+" -lc++abi"}"
|
||||
|
||||
@@ -33,7 +33,10 @@ stdenv.mkDerivation rec {
|
||||
|
||||
linkCxxAbi = stdenv.isLinux;
|
||||
|
||||
setupHook = ./setup-hook.sh;
|
||||
setupHooks = [
|
||||
../../../../../build-support/setup-hooks/role.bash
|
||||
./setup-hook.sh
|
||||
];
|
||||
|
||||
meta = {
|
||||
homepage = http://libcxx.llvm.org/;
|
||||
|
||||
@@ -1,14 +1,6 @@
|
||||
# The `hostOffset` describes how the host platform of the dependencies are slid
|
||||
# relative to the depending package. It is brought into scope of the setup hook
|
||||
# defined as the role of the dependency whose hooks is being run.
|
||||
case $hostOffset in
|
||||
-1) local role='BUILD_' ;;
|
||||
0) local role='' ;;
|
||||
1) local role='TARGET_' ;;
|
||||
*) echo "cc-wrapper: Error: Cannot be used with $hostOffset-offset deps" >2;
|
||||
return 1 ;;
|
||||
esac
|
||||
# See pkgs/build-support/setup-hooks/role.bash
|
||||
getHostRole
|
||||
|
||||
linkCxxAbi="@linkCxxAbi@"
|
||||
export NIX_${role}CXXSTDLIB_COMPILE+=" -isystem @out@/include/c++/v1"
|
||||
export NIX_${role}CXXSTDLIB_LINK=" -stdlib=libc++${linkCxxAbi:+" -lc++abi"}"
|
||||
export NIX_${role_pre}CXXSTDLIB_COMPILE+=" -isystem @out@/include/c++/v1"
|
||||
export NIX_${role_pre}CXXSTDLIB_LINK=" -stdlib=libc++${linkCxxAbi:+" -lc++abi"}"
|
||||
|
||||
@@ -31,7 +31,10 @@ stdenv.mkDerivation rec {
|
||||
|
||||
linkCxxAbi = stdenv.isLinux;
|
||||
|
||||
setupHook = ./setup-hook.sh;
|
||||
setupHooks = [
|
||||
../../../../../build-support/setup-hooks/role.bash
|
||||
./setup-hook.sh
|
||||
];
|
||||
|
||||
meta = {
|
||||
homepage = http://libcxx.llvm.org/;
|
||||
|
||||
@@ -1,14 +1,6 @@
|
||||
# The `hostOffset` describes how the host platform of the dependencies
|
||||
# relative to the depending package. It is brought into scope of the setup hook
|
||||
# defined as the role of the dependency whose hooks is being run.
|
||||
case $hostOffset in
|
||||
-1) local role='BUILD_' ;;
|
||||
0) local role='' ;;
|
||||
1) local role='TARGET_' ;;
|
||||
*) echo "cc-wrapper: Error: Cannot be used with $hostOffset-offset deps" >2;
|
||||
return 1 ;;
|
||||
esac
|
||||
# See pkgs/build-support/setup-hooks/role.bash
|
||||
getHostRole
|
||||
|
||||
linkCxxAbi="@linkCxxAbi@"
|
||||
export NIX_${role}CXXSTDLIB_COMPILE+=" -isystem @out@/include/c++/v1"
|
||||
export NIX_${role}CXXSTDLIB_LINK=" -stdlib=libc++${linkCxxAbi:+" -lc++abi"}"
|
||||
export NIX_${role_pre}CXXSTDLIB_COMPILE+=" -isystem @out@/include/c++/v1"
|
||||
export NIX_${role_pre}CXXSTDLIB_LINK=" -stdlib=libc++${linkCxxAbi:+" -lc++abi"}"
|
||||
|
||||
@@ -31,7 +31,10 @@ stdenv.mkDerivation rec {
|
||||
|
||||
linkCxxAbi = stdenv.isLinux;
|
||||
|
||||
setupHook = ./setup-hook.sh;
|
||||
setupHooks = [
|
||||
../../../../../build-support/setup-hooks/role.bash
|
||||
./setup-hook.sh
|
||||
];
|
||||
|
||||
meta = {
|
||||
homepage = http://libcxx.llvm.org/;
|
||||
|
||||
@@ -1,14 +1,6 @@
|
||||
# The `hostOffset` describes how the host platform of the dependencies
|
||||
# relative to the depending package. It is brought into scope of the setup hook
|
||||
# defined as the role of the dependency whose hooks is being run.
|
||||
case $hostOffset in
|
||||
-1) local role='BUILD_' ;;
|
||||
0) local role='' ;;
|
||||
1) local role='TARGET_' ;;
|
||||
*) echo "cc-wrapper: Error: Cannot be used with $hostOffset-offset deps" >2;
|
||||
return 1 ;;
|
||||
esac
|
||||
# See pkgs/build-support/setup-hooks/role.bash
|
||||
getHostRole
|
||||
|
||||
linkCxxAbi="@linkCxxAbi@"
|
||||
export NIX_${role}CXXSTDLIB_COMPILE+=" -isystem @out@/include/c++/v1"
|
||||
export NIX_${role}CXXSTDLIB_LINK=" -stdlib=libc++${linkCxxAbi:+" -lc++abi"}"
|
||||
export NIX_${role_pre}CXXSTDLIB_COMPILE+=" -isystem @out@/include/c++/v1"
|
||||
export NIX_${role_pre}CXXSTDLIB_LINK=" -stdlib=libc++${linkCxxAbi:+" -lc++abi"}"
|
||||
|
||||
@@ -44,7 +44,10 @@ stdenv.mkDerivation rec {
|
||||
|
||||
linkCxxAbi = stdenv.isLinux;
|
||||
|
||||
setupHook = ./setup-hook.sh;
|
||||
setupHooks = [
|
||||
../../../../../build-support/setup-hooks/role.bash
|
||||
./setup-hook.sh
|
||||
];
|
||||
|
||||
meta = {
|
||||
homepage = http://libcxx.llvm.org/;
|
||||
|
||||
@@ -1,14 +1,6 @@
|
||||
# The `hostOffset` describes how the host platform of the dependencies
|
||||
# relative to the depending package. It is brought into scope of the setup hook
|
||||
# defined as the role of the dependency whose hooks is being run.
|
||||
case $hostOffset in
|
||||
-1) local role='BUILD_' ;;
|
||||
0) local role='' ;;
|
||||
1) local role='TARGET_' ;;
|
||||
*) echo "cc-wrapper: Error: Cannot be used with $hostOffset-offset deps" >2;
|
||||
return 1 ;;
|
||||
esac
|
||||
# See pkgs/build-support/setup-hooks/role.bash
|
||||
getHostRole
|
||||
|
||||
linkCxxAbi="@linkCxxAbi@"
|
||||
export NIX_${role}CXXSTDLIB_COMPILE+=" -isystem @out@/include/c++/v1"
|
||||
export NIX_${role}CXXSTDLIB_LINK=" -stdlib=libc++${linkCxxAbi:+" -lc++abi"}"
|
||||
export NIX_${role_pre}CXXSTDLIB_COMPILE+=" -isystem @out@/include/c++/v1"
|
||||
export NIX_${role_pre}CXXSTDLIB_LINK=" -stdlib=libc++${linkCxxAbi:+" -lc++abi"}"
|
||||
|
||||
@@ -9,7 +9,7 @@ let
|
||||
name = "clang-${version}";
|
||||
|
||||
unpackPhase = ''
|
||||
unpackFile ${fetch "cfe" "1zyh4dggxd55lnfg73c8fybnkssqcaa6bq2h4bzimnnj1jdnqpqk"}
|
||||
unpackFile ${fetch "cfe" "0018520c4qxf5hgjdqgpz2dgl3faf4gsz87fdlb8zdmx99rfk77s"}
|
||||
mv cfe-${version}* clang
|
||||
sourceRoot=$PWD/clang
|
||||
unpackFile ${clang-tools-extra_src}
|
||||
@@ -50,10 +50,12 @@ let
|
||||
|
||||
outputs = [ "out" "lib" "python" ];
|
||||
|
||||
# Clang expects to find LLVMgold in its own prefix
|
||||
# Clang expects to find sanitizer libraries in its own prefix
|
||||
postInstall = ''
|
||||
ln -sv ${llvm}/lib/LLVMgold.so $out/lib
|
||||
# Clang expects to find LLVMgold in its own prefix
|
||||
if [ -e ${llvm}/lib/LLVMgold.so ]; then
|
||||
ln -sv ${llvm}/lib/LLVMgold.so $out/lib
|
||||
fi
|
||||
# Clang expects to find sanitizer libraries in its own prefix
|
||||
ln -sv ${llvm}/lib/clang/${release_version}/lib $out/lib/clang/${release_version}/
|
||||
ln -sv $out/bin/clang $out/bin/cpp
|
||||
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
}:
|
||||
|
||||
let
|
||||
release_version = "5.0.1";
|
||||
release_version = "5.0.2";
|
||||
version = release_version; # differentiating these is important for rc's
|
||||
|
||||
fetch = name: sha256: fetchurl {
|
||||
@@ -14,8 +14,8 @@ let
|
||||
inherit sha256;
|
||||
};
|
||||
|
||||
compiler-rt_src = fetch "compiler-rt" "1nlmm0b3wpdwxkldqp1klzv3rpqf94q2a248xgqb7aapyhbi9paf";
|
||||
clang-tools-extra_src = fetch "clang-tools-extra" "09fjii7w43kvxvsxxs6gig9vz95vnvx1779rqd36h8kksvws3bcs";
|
||||
compiler-rt_src = fetch "compiler-rt" "0ipd4jdxpczgr2w6lzrabymz6dhzj69ywmyybjjc1q397zgrvziy";
|
||||
clang-tools-extra_src = fetch "clang-tools-extra" "018b3fiwah8f8br5i26qmzh6sjvzchpn358sn8v079m49f2jldm3";
|
||||
|
||||
# Add man output without introducing extra dependencies.
|
||||
overrideManOutput = drv:
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
stdenv.mkDerivation rec {
|
||||
name = "libc++-${version}";
|
||||
|
||||
src = fetch "libcxx" "003wwniwlikgh38cbqbcshc5gkiv3a2jkmbn6am9s46y5gfrk3zs";
|
||||
src = fetch "libcxx" "1672aaf95fgy4xsfra8pw24f6r93zwzpan1033hkcm8p2glqipvf";
|
||||
|
||||
postUnpack = ''
|
||||
unpackFile ${libcxxabi.src}
|
||||
@@ -40,7 +40,10 @@ stdenv.mkDerivation rec {
|
||||
|
||||
linkCxxAbi = stdenv.isLinux;
|
||||
|
||||
setupHook = ./setup-hook.sh;
|
||||
setupHooks = [
|
||||
../../../../../build-support/setup-hooks/role.bash
|
||||
./setup-hook.sh
|
||||
];
|
||||
|
||||
meta = {
|
||||
homepage = http://libcxx.llvm.org/;
|
||||
|
||||
@@ -1,14 +1,6 @@
|
||||
# The `hostOffset` describes how the host platform of the dependencies
|
||||
# relative to the depending package. It is brought into scope of the setup hook
|
||||
# defined as the role of the dependency whose hooks is being run.
|
||||
case $hostOffset in
|
||||
-1) local role='BUILD_' ;;
|
||||
0) local role='' ;;
|
||||
1) local role='TARGET_' ;;
|
||||
*) echo "cc-wrapper: Error: Cannot be used with $hostOffset-offset deps" >2;
|
||||
return 1 ;;
|
||||
esac
|
||||
# See pkgs/build-support/setup-hooks/role.bash
|
||||
getHostRole
|
||||
|
||||
linkCxxAbi="@linkCxxAbi@"
|
||||
export NIX_${role}CXXSTDLIB_COMPILE+=" -isystem @out@/include/c++/v1"
|
||||
export NIX_${role}CXXSTDLIB_LINK=" -stdlib=libc++${linkCxxAbi:+" -lc++abi"}"
|
||||
export NIX_${role_pre}CXXSTDLIB_COMPILE+=" -isystem @out@/include/c++/v1"
|
||||
export NIX_${role_pre}CXXSTDLIB_LINK=" -stdlib=libc++${linkCxxAbi:+" -lc++abi"}"
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
stdenv.mkDerivation {
|
||||
name = "libc++abi-${version}";
|
||||
|
||||
src = fetch "libcxxabi" "0m78yr4arlz2b9m96xcygk15m2pbz8i10snk78i3q7pjnwn1a9as";
|
||||
src = fetch "libcxxabi" "12lp799rskr4fc2xr64qn4jfkjnfd8b1aymvsxyn4k9ar7r9pgqv";
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
buildInputs = stdenv.lib.optional (!stdenv.isDarwin && !stdenv.isFreeBSD) libunwind;
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
stdenv.mkDerivation {
|
||||
name = "lld-${version}";
|
||||
|
||||
src = fetch "lld" "15fq2zvkliyiw5qi7ig2r8bshgbz4kzvs5in16mhfkw20l06rcym";
|
||||
src = fetch "lld" "1ah75rjly6747jk1zbwca3z0svr9b09ylgxd4x9ns721xir6sia6";
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
buildInputs = [ llvm ];
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
stdenv.mkDerivation {
|
||||
name = "lldb-${version}";
|
||||
|
||||
src = fetch "lldb" "0sipv8k37ai44m7jcf6wsbm2q41dgk3sk9m3i6823jkmg7kckhdp";
|
||||
src = fetch "lldb" "05j2a63yzln43852nng8a7y47spzlyr1cvdmgmbxgd29c8r0bfkq";
|
||||
|
||||
postPatch = ''
|
||||
# Fix up various paths that assume llvm and clang are installed in the same place
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
}:
|
||||
|
||||
let
|
||||
src = fetch "llvm" "1c07i0b61j69m578lgjkyayg419sh7sn40xb3j112nr2q2gli9sz";
|
||||
src = fetch "llvm" "0g1bbj2n6xv4p1n6hh17vj3vpvg56wacipc81dgwga9mg2lys8nm";
|
||||
|
||||
# Used when creating a version-suffixed symlink of libLLVM.dylib
|
||||
shortVersion = with stdenv.lib;
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
stdenv.mkDerivation {
|
||||
name = "openmp-${version}";
|
||||
|
||||
src = fetch "openmp" "0lr6r87xzg87w1q9rrh04nqpyr8c929dh4qy3csjiy7rsb6kbdmd";
|
||||
src = fetch "openmp" "0p2n52676wlq6y9q99n5pivq6pvvda1p994r69fxj206ahn59jir";
|
||||
|
||||
nativeBuildInputs = [ cmake perl ];
|
||||
buildInputs = [ llvm ];
|
||||
|
||||
@@ -40,7 +40,10 @@ stdenv.mkDerivation rec {
|
||||
|
||||
linkCxxAbi = stdenv.isLinux;
|
||||
|
||||
setupHook = ./setup-hook.sh;
|
||||
setupHooks = [
|
||||
../../../../../build-support/setup-hooks/role.bash
|
||||
./setup-hook.sh
|
||||
];
|
||||
|
||||
meta = {
|
||||
homepage = http://libcxx.llvm.org/;
|
||||
|
||||
@@ -1,14 +1,6 @@
|
||||
# The `hostOffset` describes how the host platform of the dependencies
|
||||
# relative to the depending package. It is brought into scope of the setup hook
|
||||
# defined as the role of the dependency whose hooks is being run.
|
||||
case $hostOffset in
|
||||
-1) local role='BUILD_' ;;
|
||||
0) local role='' ;;
|
||||
1) local role='TARGET_' ;;
|
||||
*) echo "cc-wrapper: Error: Cannot be used with $hostOffset-offset deps" >2;
|
||||
return 1 ;;
|
||||
esac
|
||||
# See pkgs/build-support/setup-hooks/role.bash
|
||||
getHostRole
|
||||
|
||||
linkCxxAbi="@linkCxxAbi@"
|
||||
export NIX_${role}CXXSTDLIB_COMPILE+=" -isystem @out@/include/c++/v1"
|
||||
export NIX_${role}CXXSTDLIB_LINK=" -stdlib=libc++${linkCxxAbi:+" -lc++abi"}"
|
||||
export NIX_${role_pre}CXXSTDLIB_COMPILE+=" -isystem @out@/include/c++/v1"
|
||||
export NIX_${role_pre}CXXSTDLIB_LINK=" -stdlib=libc++${linkCxxAbi:+" -lc++abi"}"
|
||||
|
||||
@@ -133,6 +133,8 @@ let
|
||||
|
||||
buildFlags = [ "all" ];
|
||||
|
||||
doCheck = false; # fails with "No rule to make target 'y'."
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/lib/openjdk $out/share $jre/lib/openjdk
|
||||
|
||||
|
||||
@@ -314,6 +314,8 @@ stdenv.mkDerivation ({
|
||||
runHook postBuild
|
||||
'';
|
||||
|
||||
inherit doCheck;
|
||||
|
||||
checkPhase = ''
|
||||
runHook preCheck
|
||||
${setupCommand} test ${testTarget}
|
||||
@@ -428,7 +430,6 @@ stdenv.mkDerivation ({
|
||||
// optionalAttrs (postConfigure != "") { inherit postConfigure; }
|
||||
// optionalAttrs (preBuild != "") { inherit preBuild; }
|
||||
// optionalAttrs (postBuild != "") { inherit postBuild; }
|
||||
// optionalAttrs (doCheck) { inherit doCheck; }
|
||||
// optionalAttrs (doBenchmark) { inherit doBenchmark; }
|
||||
// optionalAttrs (checkPhase != "") { inherit checkPhase; }
|
||||
// optionalAttrs (preCheck != "") { inherit preCheck; }
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{ stdenv, fetchurl, unzip, version }:
|
||||
{ stdenv, fetchurl, unzip, version ? "1.24.3" }:
|
||||
|
||||
let
|
||||
|
||||
@@ -57,9 +57,9 @@ stdenv.mkDerivation {
|
||||
'';
|
||||
|
||||
libPath = stdenv.lib.makeLibraryPath [ stdenv.cc.cc ];
|
||||
|
||||
|
||||
dontStrip = true;
|
||||
|
||||
|
||||
meta = {
|
||||
platforms = [ "i686-linux" "x86_64-linux" ];
|
||||
homepage = https://www.dartlang.org/;
|
||||
|
||||
@@ -16,7 +16,11 @@ stdenv.mkDerivation rec {
|
||||
setOutputFlags = false; # $dev gets into the library otherwise
|
||||
|
||||
# GCC 4.6 raises a number of set-but-unused warnings.
|
||||
configureFlags = [ "--disable-error-on-warning" ];
|
||||
configureFlags = [ "--disable-error-on-warning" ]
|
||||
# Guile needs patching to preset results for the configure tests about
|
||||
# pthreads, which work only in native builds.
|
||||
++ stdenv.lib.optional (stdenv.hostPlatform != stdenv.buildPlatform)
|
||||
"--with-threads=no";
|
||||
|
||||
depsBuildBuild = [ buildPackages.stdenv.cc ]
|
||||
++ stdenv.lib.optional (hostPlatform != buildPlatform)
|
||||
@@ -34,17 +38,8 @@ stdenv.mkDerivation rec {
|
||||
libtool
|
||||
];
|
||||
|
||||
|
||||
patches = [ ./cpp-4.5.patch ];
|
||||
|
||||
# Guile needs patching to preset results for the configure tests
|
||||
# about pthreads, which work only in native builds.
|
||||
preConfigure = ''
|
||||
if test -n "$crossConfig"; then
|
||||
configureFlags="--with-threads=no $configureFlags"
|
||||
fi
|
||||
'';
|
||||
|
||||
preBuild = ''
|
||||
sed -e '/lt_dlinit/a lt_dladdsearchdir("'$out/lib'");' -i libguile/dynl.c
|
||||
'';
|
||||
@@ -66,6 +61,7 @@ stdenv.mkDerivation rec {
|
||||
# This is fixed here:
|
||||
# <http://git.savannah.gnu.org/cgit/guile.git/commit/?h=branch_release-1-8&id=a0aa1e5b69d6ef0311aeea8e4b9a94eae18a1aaf>.
|
||||
doCheck = false;
|
||||
doInstallCheck = doCheck;
|
||||
|
||||
setupHook = ./setup-hook.sh;
|
||||
|
||||
|
||||
@@ -89,6 +89,7 @@
|
||||
# make check doesn't work on darwin
|
||||
# On Linuxes+Hydra the tests are flaky; feel free to investigate deeper.
|
||||
doCheck = false;
|
||||
doInstallCheck = doCheck;
|
||||
|
||||
setupHook = ./setup-hook-2.0.sh;
|
||||
|
||||
|
||||
@@ -85,6 +85,7 @@
|
||||
# make check doesn't work on darwin
|
||||
# On Linuxes+Hydra the tests are flaky; feel free to investigate deeper.
|
||||
doCheck = false;
|
||||
doInstallCheck = doCheck;
|
||||
|
||||
setupHook = ./setup-hook-2.2.sh;
|
||||
|
||||
|
||||
@@ -105,6 +105,8 @@ let
|
||||
|
||||
passthru.libPrefix = "lib/perl5/site_perl";
|
||||
|
||||
doCheck = false; # some tests fail, expensive
|
||||
|
||||
# TODO: it seems like absolute paths to some coreutils is required.
|
||||
postInstall =
|
||||
''
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
# and can build packages that use distutils, setuptools or flit.
|
||||
|
||||
{ lib
|
||||
, config
|
||||
, python
|
||||
, wrapPython
|
||||
, setuptools
|
||||
@@ -19,7 +20,7 @@ let
|
||||
wheel-specific = import ./build-python-package-wheel.nix { };
|
||||
common = import ./build-python-package-common.nix { inherit python bootstrapped-pip; };
|
||||
mkPythonDerivation = import ./mk-python-derivation.nix {
|
||||
inherit lib python wrapPython setuptools unzip ensureNewerSourcesForZipFilesHook toPythonModule namePrefix;
|
||||
inherit lib config python wrapPython setuptools unzip ensureNewerSourcesForZipFilesHook toPythonModule namePrefix;
|
||||
};
|
||||
in
|
||||
|
||||
|
||||
@@ -31,7 +31,7 @@ with stdenv.lib;
|
||||
|
||||
let
|
||||
majorVersion = "2.7";
|
||||
minorVersion = "14";
|
||||
minorVersion = "15";
|
||||
minorVersionSuffix = "";
|
||||
pythonVersion = majorVersion;
|
||||
version = "${majorVersion}.${minorVersion}${minorVersionSuffix}";
|
||||
@@ -40,7 +40,7 @@ let
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://www.python.org/ftp/python/${majorVersion}.${minorVersion}/Python-${version}.tar.xz";
|
||||
sha256 = "0rka541ys16jwzcnnvjp2v12m4cwgd2jp6wj4kj511p715pb5zvi";
|
||||
sha256 = "0x2mvz9dp11wj7p5ccvmk9s0hzjk2fa1m462p395l4r6bfnb3n92";
|
||||
};
|
||||
|
||||
hasDistutilsCxxPatch = !(stdenv.cc.isGNU or false);
|
||||
@@ -58,8 +58,6 @@ let
|
||||
# if DETERMINISTIC_BUILD env var is set
|
||||
./deterministic-build.patch
|
||||
|
||||
./properly-detect-curses.patch
|
||||
|
||||
] ++ optionals (x11Support && stdenv.isDarwin) [
|
||||
./use-correct-tcl-tk-on-darwin.patch
|
||||
] ++ optionals stdenv.isLinux [
|
||||
@@ -140,7 +138,10 @@ let
|
||||
"ac_cv_computed_gotos=yes"
|
||||
"ac_cv_file__dev_ptmx=yes"
|
||||
"ac_cv_file__dev_ptc=yes"
|
||||
];
|
||||
]
|
||||
# Never even try to use lchmod on linux,
|
||||
# don't rely on detecting glibc-isms.
|
||||
++ optional hostPlatform.isLinux "ac_cv_func_lchmod=no";
|
||||
|
||||
postConfigure = if hostPlatform.isCygwin then ''
|
||||
sed -i Makefile -e 's,PYTHONPATH="$(srcdir),PYTHONPATH="$(abs_srcdir),'
|
||||
@@ -241,6 +242,8 @@ in stdenv.mkDerivation {
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
doCheck = false; # expensive, and fails
|
||||
|
||||
meta = {
|
||||
homepage = http://python.org;
|
||||
description = "A high-level dynamically-typed programming language";
|
||||
|
||||
@@ -1,116 +0,0 @@
|
||||
From 6dc83db69b5e29d25ba6d73646ea2e9a1097848a Mon Sep 17 00:00:00 2001
|
||||
From: Roumen Petrov <local@example.net>
|
||||
Date: Sun, 19 Feb 2012 16:13:24 +0200
|
||||
Subject: [PATCH] CROSS-properly detect WINDOW _flags for different ncurses versions
|
||||
|
||||
---
|
||||
Include/py_curses.h | 5 +++++
|
||||
configure.ac | 40 ++++++++++++++++++++++++++++++++++++++--
|
||||
pyconfig.h.in | 6 ++++++
|
||||
3 files changed, 49 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/Include/py_curses.h b/Include/py_curses.h
|
||||
index f2c08f6..a9b5260 100644
|
||||
--- a/Include/py_curses.h
|
||||
+++ b/Include/py_curses.h
|
||||
@@ -14,7 +14,9 @@
|
||||
/* the following define is necessary for OS X 10.6; without it, the
|
||||
Apple-supplied ncurses.h sets NCURSES_OPAQUE to 1, and then Python
|
||||
can't get at the WINDOW flags field. */
|
||||
+/* NOTE configure check if ncurses require such definition
|
||||
#define NCURSES_OPAQUE 0
|
||||
+*/
|
||||
#endif /* __APPLE__ */
|
||||
|
||||
#ifdef __FreeBSD__
|
||||
@@ -57,9 +59,12 @@
|
||||
#ifdef HAVE_NCURSES_H
|
||||
/* configure was checking <curses.h>, but we will
|
||||
use <ncurses.h>, which has all these features. */
|
||||
+/* NOTE configure check for existence of flags
|
||||
+ * Also flags are visible only if WINDOW structure is not opaque
|
||||
#ifndef WINDOW_HAS_FLAGS
|
||||
#define WINDOW_HAS_FLAGS 1
|
||||
#endif
|
||||
+*/
|
||||
#ifndef MVWDELCH_IS_EXPRESSION
|
||||
#define MVWDELCH_IS_EXPRESSION 1
|
||||
#endif
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 0a3a186..75f5142 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -4150,15 +4150,51 @@ then
|
||||
fi
|
||||
|
||||
AC_MSG_CHECKING(whether WINDOW has _flags)
|
||||
-AC_CACHE_VAL(ac_cv_window_has_flags,
|
||||
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <curses.h>]], [[
|
||||
WINDOW *w;
|
||||
w->_flags = 0;
|
||||
]])],
|
||||
[ac_cv_window_has_flags=yes],
|
||||
-[ac_cv_window_has_flags=no]))
|
||||
+[ac_cv_window_has_flags=no])
|
||||
AC_MSG_RESULT($ac_cv_window_has_flags)
|
||||
|
||||
+py_curses_window_is_opaque=no
|
||||
+if test no = $ac_cv_window_has_flags; then
|
||||
+ AC_MSG_CHECKING([whether WINDOW has _flags in non-opaque structure])
|
||||
+ AC_COMPILE_IFELSE([
|
||||
+ AC_LANG_PROGRAM([[
|
||||
+ #define NCURSES_OPAQUE 0
|
||||
+ #include <curses.h>
|
||||
+ ]],[[
|
||||
+ WINDOW *w;
|
||||
+ w->_flags = 0;
|
||||
+ ]])],
|
||||
+ [py_curses_window_is_opaque=yes])
|
||||
+ AC_MSG_RESULT([$py_curses_window_is_opaque])
|
||||
+fi
|
||||
+if test yes = $py_curses_window_is_opaque; then
|
||||
+ ac_cv_window_has_flags=yes
|
||||
+ AC_DEFINE([NCURSES_OPAQUE], [0], [Define to 0 if you have WINDOW _flags in non-opaque structure.])
|
||||
+fi
|
||||
+
|
||||
+py_curses_window_is_internal=no
|
||||
+if test no = $ac_cv_window_has_flags; then
|
||||
+ AC_MSG_CHECKING([whether WINDOW has _flags as internal structure])
|
||||
+ AC_COMPILE_IFELSE([
|
||||
+ AC_LANG_PROGRAM([[
|
||||
+ #define NCURSES_INTERNALS 1
|
||||
+ #include <curses.h>
|
||||
+ ]],[[
|
||||
+ WINDOW *w;
|
||||
+ w->_flags = 0;
|
||||
+ ]])],
|
||||
+ [py_curses_window_is_internal=yes])
|
||||
+ AC_MSG_RESULT([$py_curses_window_is_internal])
|
||||
+fi
|
||||
+if test yes = $py_curses_window_is_internal; then
|
||||
+ ac_cv_window_has_flags=yes
|
||||
+ AC_DEFINE([NCURSES_INTERNALS], [1], [Define to 1 if you have WINDOW _flags as internal structure.])
|
||||
+fi
|
||||
|
||||
if test "$ac_cv_window_has_flags" = yes
|
||||
then
|
||||
diff --git a/pyconfig.h.in b/pyconfig.h.in
|
||||
index 3ca3a4f..484c817 100644
|
||||
--- a/pyconfig.h.in
|
||||
+++ b/pyconfig.h.in
|
||||
@@ -1130,6 +1130,12 @@
|
||||
/* Define if mvwdelch in curses.h is an expression. */
|
||||
#undef MVWDELCH_IS_EXPRESSION
|
||||
|
||||
+/* Define to 1 if you have WINDOW _flags as internal structure. */
|
||||
+#undef NCURSES_INTERNALS
|
||||
+
|
||||
+/* Define to 0 if you have WINDOW _flags in non-opaque structure. */
|
||||
+#undef NCURSES_OPAQUE
|
||||
+
|
||||
/* Define to the address where bug reports for this package should be sent. */
|
||||
#undef PACKAGE_BUGREPORT
|
||||
|
||||
--
|
||||
1.6.4
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{ stdenv, fetchurl
|
||||
{ stdenv, fetchurl, fetchpatch
|
||||
, bzip2
|
||||
, expat
|
||||
, libffi
|
||||
@@ -39,6 +39,8 @@ let
|
||||
++ optionals x11Support [ tcl tk libX11 xproto ]
|
||||
++ optionals stdenv.isDarwin [ CF configd ];
|
||||
|
||||
hasDistutilsCxxPatch = !(stdenv.cc.isGNU or false);
|
||||
|
||||
in stdenv.mkDerivation {
|
||||
name = "python3-${version}";
|
||||
pythonVersion = majorVersion;
|
||||
@@ -69,6 +71,16 @@ in stdenv.mkDerivation {
|
||||
./ld_library_path.patch
|
||||
] ++ optionals (x11Support && stdenv.isDarwin) [
|
||||
./use-correct-tcl-tk-on-darwin.patch
|
||||
] ++ optionals hasDistutilsCxxPatch [
|
||||
# Fix for http://bugs.python.org/issue1222585
|
||||
# Upstream distutils is calling C compiler to compile C++ code, which
|
||||
# only works for GCC and Apple Clang. This makes distutils to call C++
|
||||
# compiler when needed.
|
||||
(fetchpatch {
|
||||
url = "https://bugs.python.org/file47046/python-3.x-distutils-C++.patch";
|
||||
sha256 = "0dgdn9k2kmw4wh90vdnjcrnn97ylxgx7mbn9l87fwz6j501jqvk8";
|
||||
extraPrefix = "";
|
||||
})
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
@@ -96,7 +108,10 @@ in stdenv.mkDerivation {
|
||||
"--without-ensurepip"
|
||||
"--with-system-expat"
|
||||
"--with-system-ffi"
|
||||
];
|
||||
]
|
||||
# Never even try to use lchmod on linux,
|
||||
# don't rely on detecting glibc-isms.
|
||||
++ optional stdenv.hostPlatform.isLinux "ac_cv_func_lchmod=no";
|
||||
|
||||
preConfigure = ''
|
||||
for i in /usr /sw /opt /pkg; do # improve purity
|
||||
@@ -163,7 +178,7 @@ in stdenv.mkDerivation {
|
||||
passthru = let
|
||||
pythonPackages = callPackage ../../../../../top-level/python-packages.nix {python=self; overrides=packageOverrides;};
|
||||
in rec {
|
||||
inherit libPrefix sitePackages x11Support;
|
||||
inherit libPrefix sitePackages x11Support hasDistutilsCxxPatch;
|
||||
executable = "${libPrefix}m";
|
||||
buildEnv = callPackage ../../wrapper.nix { python = self; inherit (pythonPackages) requiredPythonModules; };
|
||||
withPackages = import ../../with-packages.nix { inherit buildEnv pythonPackages;};
|
||||
@@ -176,6 +191,8 @@ in stdenv.mkDerivation {
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
doCheck = false; # expensive, and fails
|
||||
|
||||
meta = {
|
||||
homepage = http://python.org;
|
||||
description = "A high-level dynamically-typed programming language";
|
||||
|
||||
@@ -39,6 +39,8 @@ let
|
||||
++ optionals x11Support [ tcl tk libX11 xproto ]
|
||||
++ optionals stdenv.isDarwin [ CF configd ];
|
||||
|
||||
hasDistutilsCxxPatch = !(stdenv.cc.isGNU or false);
|
||||
|
||||
in stdenv.mkDerivation {
|
||||
name = "python3-${version}";
|
||||
pythonVersion = majorVersion;
|
||||
@@ -67,8 +69,24 @@ in stdenv.mkDerivation {
|
||||
patches = [
|
||||
./no-ldconfig.patch
|
||||
./ld_library_path.patch
|
||||
] ++ optionals stdenv.isDarwin [
|
||||
# Fix for https://bugs.python.org/issue24658
|
||||
(fetchpatch {
|
||||
url = "https://bugs.python.org/file45178/issue24658-3-3.6.diff";
|
||||
sha256 = "1x060hs80nl34mcl2ji2i7l4shxkmxwgq8h8lcmav8rjqqz1nb4a";
|
||||
})
|
||||
] ++ optionals (x11Support && stdenv.isDarwin) [
|
||||
./use-correct-tcl-tk-on-darwin.patch
|
||||
] ++ optionals hasDistutilsCxxPatch [
|
||||
# Fix for http://bugs.python.org/issue1222585
|
||||
# Upstream distutils is calling C compiler to compile C++ code, which
|
||||
# only works for GCC and Apple Clang. This makes distutils to call C++
|
||||
# compiler when needed.
|
||||
(fetchpatch {
|
||||
url = "https://bugs.python.org/file47046/python-3.x-distutils-C++.patch";
|
||||
sha256 = "0dgdn9k2kmw4wh90vdnjcrnn97ylxgx7mbn9l87fwz6j501jqvk8";
|
||||
extraPrefix = "";
|
||||
})
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
@@ -90,7 +108,10 @@ in stdenv.mkDerivation {
|
||||
"--without-ensurepip"
|
||||
"--with-system-expat"
|
||||
"--with-system-ffi"
|
||||
];
|
||||
]
|
||||
# Never even try to use lchmod on linux,
|
||||
# don't rely on detecting glibc-isms.
|
||||
++ optional stdenv.hostPlatform.isLinux "ac_cv_func_lchmod=no";
|
||||
|
||||
preConfigure = ''
|
||||
for i in /usr /sw /opt /pkg; do # improve purity
|
||||
@@ -157,7 +178,7 @@ in stdenv.mkDerivation {
|
||||
passthru = let
|
||||
pythonPackages = callPackage ../../../../../top-level/python-packages.nix {python=self; overrides=packageOverrides;};
|
||||
in rec {
|
||||
inherit libPrefix sitePackages x11Support;
|
||||
inherit libPrefix sitePackages x11Support hasDistutilsCxxPatch;
|
||||
executable = "${libPrefix}m";
|
||||
buildEnv = callPackage ../../wrapper.nix { python = self; inherit (pythonPackages) requiredPythonModules; };
|
||||
withPackages = import ../../with-packages.nix { inherit buildEnv pythonPackages;};
|
||||
@@ -169,6 +190,8 @@ in stdenv.mkDerivation {
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
doCheck = false; # expensive, and fails
|
||||
|
||||
meta = {
|
||||
homepage = http://python.org;
|
||||
description = "A high-level dynamically-typed programming language";
|
||||
|
||||
@@ -42,6 +42,8 @@ let
|
||||
nativeBuildInputs =
|
||||
optional (stdenv.hostPlatform != stdenv.buildPlatform) buildPackages.python3;
|
||||
|
||||
hasDistutilsCxxPatch = !(stdenv.cc.isGNU or false);
|
||||
|
||||
in stdenv.mkDerivation {
|
||||
name = "python3-${version}";
|
||||
pythonVersion = majorVersion;
|
||||
@@ -69,8 +71,24 @@ in stdenv.mkDerivation {
|
||||
|
||||
patches = [
|
||||
./no-ldconfig.patch
|
||||
] ++ optionals stdenv.isDarwin [
|
||||
# Fix for https://bugs.python.org/issue24658
|
||||
(fetchpatch {
|
||||
url = "https://bugs.python.org/file45178/issue24658-3-3.6.diff";
|
||||
sha256 = "1x060hs80nl34mcl2ji2i7l4shxkmxwgq8h8lcmav8rjqqz1nb4a";
|
||||
})
|
||||
] ++ optionals (x11Support && stdenv.isDarwin) [
|
||||
./use-correct-tcl-tk-on-darwin.patch
|
||||
] ++ optionals hasDistutilsCxxPatch [
|
||||
# Fix for http://bugs.python.org/issue1222585
|
||||
# Upstream distutils is calling C compiler to compile C++ code, which
|
||||
# only works for GCC and Apple Clang. This makes distutils to call C++
|
||||
# compiler when needed.
|
||||
(fetchpatch {
|
||||
url = "https://bugs.python.org/file47046/python-3.x-distutils-C++.patch";
|
||||
sha256 = "0dgdn9k2kmw4wh90vdnjcrnn97ylxgx7mbn9l87fwz6j501jqvk8";
|
||||
extraPrefix = "";
|
||||
})
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
@@ -113,7 +131,10 @@ in stdenv.mkDerivation {
|
||||
"ac_cv_computed_gotos=yes"
|
||||
"ac_cv_file__dev_ptmx=yes"
|
||||
"ac_cv_file__dev_ptc=yes"
|
||||
];
|
||||
]
|
||||
# Never even try to use lchmod on linux,
|
||||
# don't rely on detecting glibc-isms.
|
||||
++ optional stdenv.hostPlatform.isLinux "ac_cv_func_lchmod=no";
|
||||
|
||||
preConfigure = ''
|
||||
for i in /usr /sw /opt /pkg; do # improve purity
|
||||
@@ -180,7 +201,7 @@ in stdenv.mkDerivation {
|
||||
passthru = let
|
||||
pythonPackages = callPackage ../../../../../top-level/python-packages.nix {python=self; overrides=packageOverrides;};
|
||||
in rec {
|
||||
inherit libPrefix sitePackages x11Support;
|
||||
inherit libPrefix sitePackages x11Support hasDistutilsCxxPatch;
|
||||
executable = "${libPrefix}m";
|
||||
buildEnv = callPackage ../../wrapper.nix { python = self; inherit (pythonPackages) requiredPythonModules; };
|
||||
withPackages = import ../../with-packages.nix { inherit buildEnv pythonPackages;};
|
||||
@@ -193,6 +214,8 @@ in stdenv.mkDerivation {
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
doCheck = false; # expensive, and fails
|
||||
|
||||
meta = {
|
||||
homepage = http://python.org;
|
||||
description = "A high-level dynamically-typed programming language";
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
# Generic builder.
|
||||
|
||||
{ lib
|
||||
, config
|
||||
, python
|
||||
, wrapPython
|
||||
, setuptools
|
||||
@@ -53,7 +54,7 @@
|
||||
|
||||
, passthru ? {}
|
||||
|
||||
, doCheck ? false
|
||||
, doCheck ? config.doCheckByDefault or false
|
||||
|
||||
, ... } @ attrs:
|
||||
|
||||
@@ -74,7 +75,6 @@ toPythonModule (python.stdenv.mkDerivation (builtins.removeAttrs attrs [
|
||||
|
||||
buildInputs = [ wrapPython ]
|
||||
++ lib.optional (lib.hasSuffix "zip" (attrs.src.name or "")) unzip
|
||||
++ lib.optionals doCheck checkInputs
|
||||
++ lib.optional catchConflicts setuptools # If we no longer propagate setuptools
|
||||
++ buildInputs
|
||||
++ pythonPath;
|
||||
@@ -85,6 +85,7 @@ toPythonModule (python.stdenv.mkDerivation (builtins.removeAttrs attrs [
|
||||
# Python packages don't have a checkPhase, only an installCheckPhase
|
||||
doCheck = false;
|
||||
doInstallCheck = doCheck;
|
||||
installCheckInputs = checkInputs;
|
||||
|
||||
postFixup = lib.optionalString (!dontWrapPythonPrograms) ''
|
||||
wrapPythonPrograms
|
||||
|
||||
@@ -39,6 +39,8 @@ stdenv.mkDerivation rec {
|
||||
"-Ddep11=false"
|
||||
];
|
||||
|
||||
doCheck = false; # fails at least 1 test
|
||||
|
||||
postInstall = ''
|
||||
moveToOutput "share/installed-tests" "$installedTests"
|
||||
'';
|
||||
|
||||
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
|
||||
configureFlags = [ "--with-apr=${apr.dev}" "--with-expat=${expat.dev}" ]
|
||||
++ optional (!stdenv.isCygwin) "--with-crypto"
|
||||
++ optional sslSupport "--with-openssl=${openssl.dev}"
|
||||
++ optional bdbSupport "--with-berkeley-db=${db}"
|
||||
++ optional bdbSupport "--with-berkeley-db=${db.dev}"
|
||||
++ optional ldapSupport "--with-ldap=ldap"
|
||||
++ optionals stdenv.isCygwin
|
||||
[ "--without-pgsql" "--without-sqlite2" "--without-sqlite3"
|
||||
@@ -44,9 +44,10 @@ stdenv.mkDerivation rec {
|
||||
++ optional stdenv.isFreeBSD cyrus_sasl;
|
||||
|
||||
postInstall = ''
|
||||
for f in $out/lib/*.la $out/lib/apr-util-1/*.la; do
|
||||
for f in $out/lib/*.la $out/lib/apr-util-1/*.la $dev/bin/apu-1-config; do
|
||||
substituteInPlace $f \
|
||||
--replace "${expat.dev}/lib" "${expat.out}/lib" \
|
||||
--replace "${db.dev}/lib" "${db.out}/lib" \
|
||||
--replace "${openssl.dev}/lib" "${openssl.out}/lib"
|
||||
done
|
||||
|
||||
|
||||
@@ -16,6 +16,8 @@ stdenv.mkDerivation rec {
|
||||
buildInputs = [ python popt atk libX11 libICE xorg.libXtst libXi
|
||||
dbus-glib at-spi2-core libSM ];
|
||||
|
||||
doCheck = false; # needs dbus daemon
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
platforms = platforms.unix;
|
||||
};
|
||||
|
||||
@@ -23,6 +23,8 @@ stdenv.mkDerivation rec {
|
||||
# ToDo: on non-NixOS we create a symlink from there?
|
||||
configureFlags = "--with-dbus-daemondir=/run/current-system/sw/bin/";
|
||||
|
||||
doCheck = false; # needs dbus daemon
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
platforms = platforms.unix;
|
||||
};
|
||||
|
||||
@@ -20,13 +20,15 @@ stdenv.mkDerivation rec {
|
||||
buildInputs = [ libdaemon dbus perl perlXMLParser glib expat libiconv ]
|
||||
++ (stdenv.lib.optional qt4Support qt4);
|
||||
|
||||
nativeBuildInputs = [ pkgconfig gettext intltool ];
|
||||
nativeBuildInputs = [ pkgconfig gettext intltool glib ];
|
||||
|
||||
configureFlags =
|
||||
[ "--disable-qt3" "--disable-gdbm" "--disable-mono"
|
||||
"--disable-gtk" "--disable-gtk3"
|
||||
"--${if qt4Support then "enable" else "disable"}-qt4"
|
||||
"--disable-python" "--localstatedir=/var" "--with-distro=none" ]
|
||||
"--disable-python" "--localstatedir=/var" "--with-distro=none"
|
||||
# A systemd unit is provided by the avahi-daemon NixOS module
|
||||
"--with-systemdsystemunitdir=no" ]
|
||||
++ stdenv.lib.optional withLibdnssdCompat "--enable-compat-libdns_sd"
|
||||
# autoipd won't build on darwin
|
||||
++ stdenv.lib.optional stdenv.isDarwin "--disable-autoipd";
|
||||
|
||||
@@ -4,14 +4,14 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "boehm-gc-${version}";
|
||||
version = "7.6.4";
|
||||
version = "7.6.6";
|
||||
|
||||
src = fetchurl {
|
||||
urls = [
|
||||
"http://www.hboehm.info/gc/gc_source/gc-${version}.tar.gz"
|
||||
"https://github.com/ivmai/bdwgc/releases/download/v${version}/gc-${version}.tar.gz"
|
||||
];
|
||||
sha256 = "076dzsqqyxd3nlzs0z277vvhqjp8nv5dqi763s0m90zr6ljiyk5r";
|
||||
sha256 = "1p1r015a7jbpvkkbgzv1y8nxrbbp6dg0mq3ksi6ji0qdz3wfss79";
|
||||
};
|
||||
|
||||
buildInputs = [ libatomic_ops ];
|
||||
|
||||
@@ -55,11 +55,11 @@ let
|
||||
"--layout=${layout}"
|
||||
"variant=${variant}"
|
||||
"threading=${threading}"
|
||||
"runtime-link=${runtime-link}"
|
||||
"link=${link}"
|
||||
"-sEXPAT_INCLUDE=${expat.dev}/include"
|
||||
"-sEXPAT_LIBPATH=${expat.out}/lib"
|
||||
] ++ optional (variant == "release") "debug-symbols=off"
|
||||
] ++ optional (link != "static") "runtime-link=${runtime-link}"
|
||||
++ optional (variant == "release") "debug-symbols=off"
|
||||
++ optional (toolset != null) "toolset=${toolset}"
|
||||
++ optional (mpi != null || hostPlatform != buildPlatform) "--user-config=user-config.jam"
|
||||
++ optionals (hostPlatform.libc == "msvcrt") [
|
||||
|
||||
@@ -2,11 +2,11 @@
|
||||
|
||||
let self =
|
||||
stdenv.mkDerivation rec {
|
||||
name = "c-ares-1.13.0";
|
||||
name = "c-ares-1.14.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://c-ares.haxx.se/download/${name}.tar.gz";
|
||||
sha256 = "19qxhv9aiw903fr808y77r6l9js0fq9m3gcaqckan9jan7qhixq3";
|
||||
sha256 = "0vnwmbvymw677k780kpb6sb8i3szdp89rzy8mz1fwg1657yw3ls5";
|
||||
};
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
|
||||
@@ -9,25 +9,17 @@
|
||||
|
||||
assert glSupport -> libGL != null;
|
||||
|
||||
let inherit (stdenv.lib) optional optionals; in
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "cairo-1.14.10";
|
||||
let
|
||||
version = "1.15.10";
|
||||
inherit (stdenv.lib) optional optionals;
|
||||
in stdenv.mkDerivation rec {
|
||||
name = "cairo-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://cairographics.org/releases/${name}.tar.xz";
|
||||
sha256 = "02banr0wxckq62nbhc3mqidfdh2q956i2r7w2hd9bjgjb238g1vy";
|
||||
url = "http://cairographics.org/${if stdenv.lib.mod (builtins.fromJSON (stdenv.lib.versions.minor version)) 2 == 0 then "releases" else "snapshots"}/${name}.tar.xz";
|
||||
sha256 = "14l3jll98pjdlpm8f972v0spzcsf6y5nz85y2k8iybyg6ihj5jk2";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# from https://bugs.freedesktop.org/show_bug.cgi?id=98165
|
||||
(fetchpatch {
|
||||
name = "cairo-CVE-2016-9082.patch";
|
||||
url = "https://bugs.freedesktop.org/attachment.cgi?id=127421";
|
||||
sha256 = "03sfyaclzlglip4pvfjb4zj4dmm8mlphhxl30mb6giinkc74bfri";
|
||||
})
|
||||
];
|
||||
|
||||
outputs = [ "out" "dev" "devdoc" ];
|
||||
outputBin = "dev"; # very small
|
||||
|
||||
@@ -80,6 +72,8 @@ stdenv.mkDerivation rec {
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
doCheck = false; # fails
|
||||
|
||||
postInstall = stdenv.lib.optionalString stdenv.isDarwin glib.flattenInclude;
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
|
||||
@@ -16,6 +16,8 @@ stdenv.mkDerivation rec {
|
||||
buildInputs = []
|
||||
++ stdenv.lib.optional liboggSupport libogg;
|
||||
|
||||
doCheck = false; # fails
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Ultra-low delay audio codec";
|
||||
homepage = http://www.celt-codec.org/;
|
||||
|
||||
@@ -16,6 +16,8 @@ stdenv.mkDerivation rec {
|
||||
sed -ie 's/<stdlib.h>/<stdlib.h>\n#include <unistd.h>/' src/CTPP2FileSourceLoader.cpp
|
||||
'';
|
||||
|
||||
doCheck = false; # fails
|
||||
|
||||
meta = {
|
||||
description = "A high performance templating engine";
|
||||
homepage = http://ctpp.havoc.ru;
|
||||
|
||||
@@ -20,6 +20,8 @@ stdenv.mkDerivation (rec {
|
||||
|
||||
patches = extraPatches;
|
||||
|
||||
outputs = [ "bin" "out" "dev" ];
|
||||
|
||||
configureFlags =
|
||||
[
|
||||
(if cxxSupport then "--enable-cxx" else "--disable-cxx")
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
{ stdenv, fetchurl, pkgconfig, expat, gettext, libiconv, dbus, glib }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "dbus-glib-0.108";
|
||||
name = "dbus-glib-0.110";
|
||||
|
||||
src = fetchurl {
|
||||
url = "${meta.homepage}/releases/dbus-glib/${name}.tar.gz";
|
||||
sha256 = "0b307hw9j41npzr6niw1bs6ryp87m5yafg492gqwvsaj4dz0qd4z";
|
||||
sha256 = "09g8swvc95bk1z6j8sw463p2v0dqmgm2zjfndf7i8sbcyq67dr3w";
|
||||
};
|
||||
|
||||
outputs = [ "out" "dev" "devdoc" ];
|
||||
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
|
||||
configureFlagsArray+=("--exec-prefix=$dev")
|
||||
'';
|
||||
|
||||
doCheck = true;
|
||||
doCheck = false;
|
||||
|
||||
passthru = { inherit dbus glib; };
|
||||
|
||||
|
||||
@@ -6,8 +6,8 @@ assert x11Support -> libX11 != null
|
||||
&& libSM != null;
|
||||
|
||||
let
|
||||
version = "1.12.6";
|
||||
sha256 = "05picaq8j60wlwyi84qvw5liw3nd0cws9va3krnc3pms0wm906v2";
|
||||
version = "1.12.8";
|
||||
sha256 = "1cvfi7jiby12h0f5gbysphhk99m6mch87ab3cqxkj0w36gkrkp72";
|
||||
|
||||
self = stdenv.mkDerivation {
|
||||
name = "dbus-${version}";
|
||||
|
||||
@@ -5,19 +5,21 @@ let
|
||||
in
|
||||
stdenv.mkDerivation {
|
||||
name = "eigen-${version}";
|
||||
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://bitbucket.org/eigen/eigen/get/${version}.tar.gz";
|
||||
name = "eigen-${version}.tar.gz";
|
||||
sha256 = "00l52y7m276gh8wjkqqcxz6x687azrm7a70s3iraxnpy9bxa9y04";
|
||||
};
|
||||
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
|
||||
doCheck = false; # a couple of tests fail with "Child aborted"
|
||||
|
||||
postInstall = ''
|
||||
sed -e '/Cflags:/s@''${prefix}/@@' -i "$out"/share/pkgconfig/eigen3.pc
|
||||
'';
|
||||
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "C++ template library for linear algebra: vectors, matrices, and related algorithms";
|
||||
license = licenses.lgpl3Plus;
|
||||
|
||||
@@ -17,6 +17,8 @@ in stdenv.mkDerivation rec {
|
||||
buildInputs = [ glib hunspell ];
|
||||
propagatedBuildInputs = [ hspell aspell ]; # libtool puts it to la file
|
||||
|
||||
doCheck = false; # fails to compile with with "UnitTest++.h: No such file or directory"
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Generic spell checking library";
|
||||
homepage = https://abiword.github.io/enchant/;
|
||||
|
||||
@@ -6,13 +6,13 @@ with stdenv.lib;
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "epoxy-${version}";
|
||||
version = "1.5.0";
|
||||
version = "1.5.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "anholt";
|
||||
repo = "libepoxy";
|
||||
rev = "${version}";
|
||||
sha256 = "1ixpqb10pmdy3n9nxd5inflig9dal5502ggadcns5b58j6jr0yv0";
|
||||
sha256 = "1811agxr7g9wd832np8sw152j468kg3qydmfkc564v54ncfcgaci";
|
||||
};
|
||||
|
||||
outputs = [ "out" "dev" ];
|
||||
@@ -29,6 +29,8 @@ stdenv.mkDerivation rec {
|
||||
|
||||
NIX_CFLAGS_COMPILE = ''-DLIBGL_PATH="${getLib libGL}/lib"'';
|
||||
|
||||
doCheck = false; # needs X11
|
||||
|
||||
meta = {
|
||||
description = "A library for handling OpenGL function pointer management";
|
||||
homepage = https://github.com/anholt/libepoxy;
|
||||
|
||||
@@ -250,7 +250,10 @@ stdenv.mkDerivation rec {
|
||||
--replace /usr/local/lib/frei0r-1 ${frei0r}/lib/frei0r-1
|
||||
'';
|
||||
|
||||
configurePlatforms = [];
|
||||
configureFlags = [
|
||||
"--target_os=${hostPlatform.parsed.kernel.name}"
|
||||
"--arch=${hostPlatform.parsed.cpu.name}"
|
||||
/*
|
||||
* Licensing flags
|
||||
*/
|
||||
@@ -371,8 +374,6 @@ stdenv.mkDerivation rec {
|
||||
#(enableFeature quvi "libquvi")
|
||||
(enableFeature (rtmpdump != null) "librtmp")
|
||||
#(enableFeature (schroedinger != null) "libschroedinger")
|
||||
#(enableFeature (shine != null) "libshine")
|
||||
(enableFeature (samba != null && gplLicensing && version3Licensing) "libsmbclient")
|
||||
(enableFeature (SDL2 != null) "sdl2")
|
||||
(enableFeature (soxr != null) "libsoxr")
|
||||
(enableFeature (speex != null) "libspeex")
|
||||
@@ -396,6 +397,9 @@ stdenv.mkDerivation rec {
|
||||
(enableFeature optimizationsDeveloper "optimizations")
|
||||
(enableFeature extraWarningsDeveloper "extra-warnings")
|
||||
(enableFeature strippingDeveloper "stripping")
|
||||
] ++ optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
|
||||
"--cross-prefix=${stdenv.cc.targetPrefix}"
|
||||
"--enable-cross-compile"
|
||||
];
|
||||
|
||||
nativeBuildInputs = [ perl pkgconfig texinfo yasm ];
|
||||
@@ -432,21 +436,8 @@ stdenv.mkDerivation rec {
|
||||
done
|
||||
'';
|
||||
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
/* Cross-compilation is untested, consider this an outline, more work
|
||||
needs to be done to portions of the build to get it to work correctly */
|
||||
crossAttrs = {
|
||||
configurePlatforms = [];
|
||||
configureFlags = configureFlags ++ [
|
||||
"--cross-prefix=${stdenv.cc.targetPrefix}"
|
||||
"--enable-cross-compile"
|
||||
"--target_os=${hostPlatform.parsed.kernel.name}"
|
||||
"--arch=${hostPlatform.parsed.cpu.name}"
|
||||
];
|
||||
};
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "A complete, cross-platform solution to record, convert and stream audio and video";
|
||||
homepage = https://www.ffmpeg.org/;
|
||||
|
||||
@@ -79,7 +79,10 @@ stdenv.mkDerivation rec {
|
||||
++ optional (reqMin "1.0") "doc" ; # just dev-doc
|
||||
setOutputFlags = false; # doesn't accept all and stores configureFlags in libs!
|
||||
|
||||
configurePlatforms = [];
|
||||
configureFlags = [
|
||||
"--arch=${hostPlatform.parsed.cpu.name}"
|
||||
"--target_os=${hostPlatform.parsed.kernel.name}"
|
||||
# License
|
||||
"--enable-gpl"
|
||||
"--enable-version3"
|
||||
@@ -145,6 +148,9 @@ stdenv.mkDerivation rec {
|
||||
"--disable-stripping"
|
||||
# Disable mmx support for 0.6.90
|
||||
(verFix null "0.6.90" "--disable-mmx")
|
||||
] ++ optionals (stdenv.hostPlatform == stdenv.buildPlatform) [
|
||||
"--cross-prefix=${stdenv.cc.targetPrefix}"
|
||||
"--enable-cross-compile"
|
||||
] ++ optional stdenv.cc.isClang "--cc=clang";
|
||||
|
||||
nativeBuildInputs = [ perl pkgconfig texinfo yasm ];
|
||||
@@ -160,26 +166,15 @@ stdenv.mkDerivation rec {
|
||||
++ optional vdpauSupport libvdpau
|
||||
++ optional sdlSupport (if reqMin "3.2" then SDL2 else SDL);
|
||||
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
doCheck = false; # fails
|
||||
|
||||
postFixup = ''
|
||||
moveToOutput bin "$bin"
|
||||
moveToOutput share/ffmpeg/examples "$doc"
|
||||
'';
|
||||
|
||||
/* Cross-compilation is untested, consider this an outline, more work
|
||||
needs to be done to portions of the build to get it to work correctly */
|
||||
crossAttrs = {
|
||||
configurePlatforms = [];
|
||||
configureFlags = configureFlags ++ [
|
||||
"--cross-prefix=${stdenv.cc.targetPrefix}"
|
||||
"--enable-cross-compile"
|
||||
"--target_os=${hostPlatform.parsed.kernel.name}"
|
||||
"--arch=${hostPlatform.parsed.cpu.name}"
|
||||
];
|
||||
};
|
||||
|
||||
installFlags = [ "install-man" ];
|
||||
|
||||
passthru = {
|
||||
|
||||
@@ -17,23 +17,15 @@ stdenv.mkDerivation rec {
|
||||
buildInputs = [ expat ];
|
||||
|
||||
configureFlags = [
|
||||
"--with-arch=${hostPlatform.parsed.cpu.name}"
|
||||
"--sysconfdir=/etc"
|
||||
"--with-cache-dir=/var/cache/fontconfig"
|
||||
"--disable-docs"
|
||||
"--with-default-fonts="
|
||||
] ++ stdenv.lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
|
||||
"--with-arch=${hostPlatform.parsed.cpu.name}"
|
||||
];
|
||||
|
||||
# We should find a better way to access the arch reliably.
|
||||
crossArch = if stdenv.hostPlatform != stdenv.buildPlatform
|
||||
then hostPlatform.parsed.cpu.name
|
||||
else null;
|
||||
|
||||
preConfigure = ''
|
||||
if test -n "$crossConfig"; then
|
||||
configureFlags="$configureFlags --with-arch=$crossArch";
|
||||
fi
|
||||
'';
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
doCheck = true;
|
||||
|
||||
@@ -40,23 +40,15 @@ stdenv.mkDerivation rec {
|
||||
buildInputs = [ expat ];
|
||||
|
||||
configureFlags = [
|
||||
"--with-arch=${hostPlatform.parsed.cpu.name}"
|
||||
"--with-cache-dir=/var/cache/fontconfig" # otherwise the fallback is in $out/
|
||||
"--disable-docs"
|
||||
# just <1MB; this is what you get when loading config fails for some reason
|
||||
"--with-default-fonts=${dejavu_fonts.minimal}"
|
||||
] ++ stdenv.lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
|
||||
"--with-arch=${hostPlatform.parsed.cpu.name}"
|
||||
];
|
||||
|
||||
# We should find a better way to access the arch reliably.
|
||||
crossArch = if stdenv.hostPlatform != stdenv.buildPlatform
|
||||
then hostPlatform.parsed.cpu.name
|
||||
else null;
|
||||
|
||||
preConfigure = ''
|
||||
if test -n "$crossConfig"; then
|
||||
configureFlags="$configureFlags --with-arch=$crossArch";
|
||||
fi
|
||||
'';
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
doCheck = true;
|
||||
|
||||
@@ -1,40 +1,74 @@
|
||||
{ stdenv, fetchurl, pkgconfig, glib, libtiff, libjpeg, libpng, libX11, gnome3
|
||||
, jasper, gobjectIntrospection, doCheck ? false }:
|
||||
{ stdenv, fetchurl, fetchgit, fetchpatch, meson, ninja, pkgconfig, gettext, python3, libxml2, libxslt, docbook_xsl
|
||||
, docbook_xml_dtd_43, gtk-doc, glib, libtiff, libjpeg, libpng, libX11, gnome3
|
||||
, jasper, gobjectIntrospection, doCheck ? false, makeWrapper }:
|
||||
|
||||
let
|
||||
pname = "gdk-pixbuf";
|
||||
version = "2.36.7";
|
||||
# TODO: since 2.36.8 gdk-pixbuf gets configured to use mime-type sniffing,
|
||||
# which apparently requires access to shared-mime-info files during runtime.
|
||||
version = "2.36.12";
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
name = "${pname}-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnome/sources/${pname}/${gnome3.versionBranch version}/${name}.tar.xz";
|
||||
sha256 = "1b6e5eef09d98f05f383014ecd3503e25dfb03d7e5b5f5904e5a65b049a6a4d8";
|
||||
# TODO: Change back once tests/bug753605-atsize.jpg is part of the dist tarball
|
||||
# src = fetchurl {
|
||||
# url = "mirror://gnome/sources/${pname}/${gnome3.versionBranch version}/${name}.tar.xz";
|
||||
# sha256 = "0d534ysa6n9prd17wwzisq7mj6qkhwh8wcf8qgin1ar3hbs5ry7z";
|
||||
# };
|
||||
src = fetchgit {
|
||||
url = https://git.gnome.org/browse/gdk-pixbuf;
|
||||
rev = version;
|
||||
sha256 = "18lwqg63vyap2m1mw049rnb8fm869429xbf7636a2n21gs3d3jwv";
|
||||
};
|
||||
|
||||
outputs = [ "out" "dev" "devdoc" ];
|
||||
patches = [
|
||||
# TODO: since 2.36.8 gdk-pixbuf gets configured to use mime-type sniffing,
|
||||
# which requires access to shared-mime-info files during runtime.
|
||||
# For now, we are patching the build script to avoid the dependency.
|
||||
./no-mime-sniffing.patch
|
||||
|
||||
# Fix installed tests with meson
|
||||
# https://bugzilla.gnome.org/show_bug.cgi?id=795527
|
||||
(fetchurl {
|
||||
url = https://bugzilla.gnome.org/attachment.cgi?id=371381;
|
||||
sha256 = "0nl1cixkjfa5kcfh0laz8h6hdsrpdkxqn7a1k35jrb6zwc9hbydn";
|
||||
})
|
||||
|
||||
# Add missing test file bug753605-atsize.jpg
|
||||
(fetchpatch {
|
||||
url = https://git.gnome.org/browse/gdk-pixbuf/patch/?id=87f8f4bf01dfb9982c1ef991e4060a5e19fdb7a7;
|
||||
sha256 = "1slzywwnrzfx3zjzdsxrvp4g2q4skmv50pdfmyccp41j7bfyb2j0";
|
||||
})
|
||||
|
||||
# Move installed tests to a separate output
|
||||
./installed-tests-path.patch
|
||||
];
|
||||
|
||||
outputs = [ "out" "dev" "man" "devdoc" "installedTests" ];
|
||||
|
||||
setupHook = ./setup-hook.sh;
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
# !!! We might want to factor out the gdk-pixbuf-xlib subpackage.
|
||||
buildInputs = [ libX11 gobjectIntrospection ];
|
||||
buildInputs = [ libX11 ];
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
nativeBuildInputs = [
|
||||
meson ninja pkgconfig gettext python3 libxml2 libxslt docbook_xsl docbook_xml_dtd_43
|
||||
gtk-doc gobjectIntrospection makeWrapper
|
||||
];
|
||||
|
||||
propagatedBuildInputs = [ glib libtiff libjpeg libpng jasper ];
|
||||
|
||||
configureFlags = "--with-libjasper --with-x11"
|
||||
+ stdenv.lib.optionalString (gobjectIntrospection != null) " --enable-introspection=yes"
|
||||
;
|
||||
mesonFlags = [
|
||||
"-Ddocs=true"
|
||||
"-Djasper=true"
|
||||
"-Dx11=true"
|
||||
"-Dgir=${if gobjectIntrospection != null then "true" else "false"}"
|
||||
];
|
||||
|
||||
# on darwin, tests don't link
|
||||
preBuild = stdenv.lib.optionalString (stdenv.isDarwin && !doCheck) ''
|
||||
substituteInPlace Makefile --replace "docs tests" "docs"
|
||||
postPatch = ''
|
||||
chmod +x build-aux/* # patchShebangs only applies to executables
|
||||
patchShebangs build-aux
|
||||
|
||||
substituteInPlace tests/meson.build --subst-var-by installedtestsprefix "$installedTests"
|
||||
'';
|
||||
|
||||
postInstall =
|
||||
@@ -42,10 +76,13 @@ stdenv.mkDerivation rec {
|
||||
''
|
||||
moveToOutput "bin" "$dev"
|
||||
moveToOutput "bin/gdk-pixbuf-thumbnailer" "$out"
|
||||
|
||||
# We need to install 'loaders.cache' in lib/gdk-pixbuf-2.0/2.10.0/
|
||||
$dev/bin/gdk-pixbuf-query-loaders --update-cache
|
||||
'';
|
||||
|
||||
# The tests take an excessive amount of time (> 1.5 hours) and memory (> 6 GB).
|
||||
inherit (doCheck);
|
||||
inherit doCheck;
|
||||
|
||||
passthru = {
|
||||
updateScript = gnome3.updateScript {
|
||||
|
||||
@@ -0,0 +1,13 @@
|
||||
--- a/tests/meson.build
|
||||
+++ b/tests/meson.build
|
||||
@@ -85,8 +85,8 @@
|
||||
'aero.gif',
|
||||
]
|
||||
|
||||
-installed_test_bindir = join_paths(gdk_pixbuf_libexecdir, 'installed-tests', meson.project_name())
|
||||
-installed_test_datadir = join_paths(gdk_pixbuf_datadir, 'installed-tests', meson.project_name())
|
||||
+installed_test_bindir = join_paths('@installedtestsprefix@', 'libexec', 'installed-tests', meson.project_name())
|
||||
+installed_test_datadir = join_paths('@installedtestsprefix@', 'share', 'installed-tests', meson.project_name())
|
||||
|
||||
install_data(test_data, install_dir: installed_test_bindir)
|
||||
install_subdir('test-images', install_dir: installed_test_bindir)
|
||||
18
pkgs/development/libraries/gdk-pixbuf/no-mime-sniffing.patch
Normal file
18
pkgs/development/libraries/gdk-pixbuf/no-mime-sniffing.patch
Normal file
@@ -0,0 +1,18 @@
|
||||
--- a/meson.build
|
||||
+++ b/meson.build
|
||||
@@ -186,13 +186,8 @@
|
||||
gmodule_dep = dependency('gmodule-no-export-2.0')
|
||||
gio_dep = dependency('gio-2.0')
|
||||
|
||||
-# On non-Windows/macOS systems we always required shared-mime-info and GIO
|
||||
-if host_system != 'windows' and host_system != 'darwin'
|
||||
- shared_mime_dep = dependency('shared-mime-info')
|
||||
- gdk_pixbuf_conf.set('GDK_PIXBUF_USE_GIO_MIME', 1)
|
||||
-else
|
||||
- shared_mime_dep = []
|
||||
-endif
|
||||
+# No MIME sniffing for now
|
||||
+shared_mime_dep = []
|
||||
|
||||
gdk_pixbuf_deps = [ mathlib_dep, gobject_dep, gmodule_dep, gio_dep, shared_mime_dep ]
|
||||
|
||||
@@ -25,6 +25,8 @@ stdenv.mkDerivation rec {
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
|
||||
doCheck = false; # fails 3 out of 19 tests
|
||||
|
||||
meta = {
|
||||
description = "Graph-based image processing framework";
|
||||
homepage = http://www.gegl.org;
|
||||
|
||||
@@ -5,11 +5,11 @@
|
||||
with stdenv.lib;
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "geoclue-2.4.7";
|
||||
name = "geoclue-2.4.8";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://www.freedesktop.org/software/geoclue/releases/2.4/${name}.tar.xz";
|
||||
sha256 = "19hfmr8fa1js8ynazdyjxlyrqpjn6m1719ay70ilga4rayxrcyyi";
|
||||
sha256 = "08yg1r7m0n9hwyvcy769qkmkf8lslqwv69cjfffwnc3zm5km25qj";
|
||||
};
|
||||
|
||||
outputs = [ "out" "dev" ];
|
||||
|
||||
@@ -16,12 +16,19 @@ stdenv.mkDerivation rec {
|
||||
|
||||
LDFLAGS = if stdenv.isSunOS then "-lm -lmd -lmp -luutil -lnvpair -lnsl -lidmap -lavl -lsec" else "";
|
||||
|
||||
configureFlags = [ "--disable-csharp" "--with-xz" ]
|
||||
configureFlags = [
|
||||
"--disable-csharp" "--with-xz"
|
||||
# avoid retaining reference to CF during stdenv bootstrap
|
||||
++ lib.optionals stdenv.isDarwin [
|
||||
"gt_cv_func_CFPreferencesCopyAppValue=no"
|
||||
"gt_cv_func_CFLocaleCopyCurrent=no"
|
||||
];
|
||||
] ++ lib.optionals stdenv.isDarwin [
|
||||
"gt_cv_func_CFPreferencesCopyAppValue=no"
|
||||
"gt_cv_func_CFLocaleCopyCurrent=no"
|
||||
] ++ stdenv.lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
|
||||
# On cross building, gettext supposes that the wchar.h from libc
|
||||
# does not fulfill gettext needs, so it tries to work with its
|
||||
# own wchar.h file, which does not cope well with the system's
|
||||
# wchar.h and stddef.h (gcc-4.3 - glibc-2.9)
|
||||
"gl_cv_func_wcwidth_works=yes"
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
substituteAllInPlace gettext-runtime/src/gettext.sh.in
|
||||
@@ -33,22 +40,14 @@ stdenv.mkDerivation rec {
|
||||
sed -i -e "s/\(libgettextsrc_la_LDFLAGS = \)/\\1..\/gnulib-lib\/libxml_rpl.la /" gettext-tools/src/Makefile.in
|
||||
'';
|
||||
|
||||
# On cross building, gettext supposes that the wchar.h from libc
|
||||
# does not fulfill gettext needs, so it tries to work with its
|
||||
# own wchar.h file, which does not cope well with the system's
|
||||
# wchar.h and stddef.h (gcc-4.3 - glibc-2.9)
|
||||
preConfigure = ''
|
||||
if test -n "$crossConfig"; then
|
||||
echo gl_cv_func_wcwidth_works=yes > cachefile
|
||||
configureFlags="$configureFlags --cache-file=`pwd`/cachefile"
|
||||
fi
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [ xz xz.bin ];
|
||||
# HACK, see #10874 (and 14664)
|
||||
buildInputs = stdenv.lib.optional (!stdenv.isLinux && !hostPlatform.isCygwin) libiconv;
|
||||
|
||||
setupHook = ./gettext-setup-hook.sh;
|
||||
setupHooks = [
|
||||
../../../build-support/setup-hooks/role.bash
|
||||
./gettext-setup-hook.sh
|
||||
];
|
||||
gettextNeedsLdflags = hostPlatform.libc != "glibc" && !hostPlatform.isMusl;
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
gettextDataDirsHook() {
|
||||
# See pkgs/build-support/setup-hooks/role.bash
|
||||
getHostRoleEnvHook
|
||||
if [ -d "$1/share/gettext" ]; then
|
||||
addToSearchPath GETTEXTDATADIRS "$1/share/gettext"
|
||||
addToSearchPath "GETTEXTDATADIRS${role_post}" "$1/share/gettext"
|
||||
fi
|
||||
}
|
||||
|
||||
@@ -8,21 +10,8 @@ addEnvHooks "$hostOffset" gettextDataDirsHook
|
||||
|
||||
# libintl must be listed in load flags on non-Glibc
|
||||
# it doesn't hurt to have it in Glibc either though
|
||||
gettextLdflags() {
|
||||
# The `depHostOffset` describes how the host platform of the dependencies
|
||||
# are slid relative to the depending package. It is brought into scope of
|
||||
# the environment hook defined as the role of the dependency being applied.
|
||||
case $depHostOffset in
|
||||
-1) local role='BUILD_' ;;
|
||||
0) local role='' ;;
|
||||
1) local role='TARGET_' ;;
|
||||
*) echo "cc-wrapper: Error: Cannot be used with $depHostOffset-offset deps" >2;
|
||||
return 1 ;;
|
||||
esac
|
||||
|
||||
export NIX_${role}LDFLAGS+=" -lintl"
|
||||
}
|
||||
|
||||
if [ ! -z "@gettextNeedsLdflags@" ]; then
|
||||
addEnvHooks "$hostOffset" gettextLdflags
|
||||
# See pkgs/build-support/setup-hooks/role.bash
|
||||
getHostRole
|
||||
export NIX_${role_pre}LDFLAGS+=" -lintl"
|
||||
fi
|
||||
|
||||
@@ -25,6 +25,8 @@ stdenv.mkDerivation rec {
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
doCheck = false; # hangs. or very expensive?
|
||||
|
||||
meta = {
|
||||
description = "The Git linkable library";
|
||||
homepage = https://libgit2.github.com/;
|
||||
|
||||
@@ -26,6 +26,8 @@ stdenv.mkDerivation (rec {
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
doCheck = false; # hangs. or very expensive?
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "The Git linkable library";
|
||||
homepage = https://libgit2.github.com/;
|
||||
|
||||
@@ -65,7 +65,7 @@ stdenv.mkDerivation rec {
|
||||
++ optionals stdenv.isLinux [ utillinuxMinimal ] # for libmount
|
||||
++ optionals doCheck [ tzdata libxml2 desktop-file-utils shared-mime-info ];
|
||||
|
||||
nativeBuildInputs = [ pkgconfig perl python ];
|
||||
nativeBuildInputs = [ pkgconfig perl python gettext ];
|
||||
|
||||
propagatedBuildInputs = [ zlib libffi gettext libiconv ];
|
||||
|
||||
|
||||
@@ -188,6 +188,8 @@ stdenv.mkDerivation ({
|
||||
|
||||
preBuild = lib.optionalString withGd "unset NIX_DONT_SET_RPATH";
|
||||
|
||||
doCheck = false; # fails
|
||||
|
||||
meta = {
|
||||
homepage = http://www.gnu.org/software/libc/;
|
||||
description = "The GNU C Library";
|
||||
|
||||
@@ -71,14 +71,15 @@ callPackage ./common.nix { inherit stdenv; } {
|
||||
|
||||
# Get rid of more unnecessary stuff.
|
||||
rm -rf $out/var $bin/bin/sln
|
||||
|
||||
''
|
||||
# For some reason these aren't stripped otherwise and retain reference
|
||||
# to bootstrap-tools; on cross-arm this stripping would break objects.
|
||||
if [ -z "$crossConfig" ]; then
|
||||
for i in "$out"/lib/*.a; do
|
||||
[ "$i" = "$out/lib/libm.a" ] || strip -S "$i"
|
||||
done
|
||||
fi
|
||||
+ stdenv.lib.optionalString (stdenv.hostPlatform == stdenv.buildPlatform) ''
|
||||
|
||||
for i in "$out"/lib/*.a; do
|
||||
[ "$i" = "$out/lib/libm.a" ] || $STRIP -S "$i"
|
||||
done
|
||||
'' + ''
|
||||
|
||||
# Put libraries for static linking in a separate output. Note
|
||||
# that libc_nonshared.a and libpthread_nonshared.a are required
|
||||
|
||||
@@ -1,16 +1,16 @@
|
||||
{ stdenv, fetchurl }:
|
||||
|
||||
let
|
||||
rev = "6a82322dd05cdc57b4cd9f7effdf1e2fd6f7482b";
|
||||
rev = "b75cdc942a6172f63b34faf642b8c797239f6776";
|
||||
|
||||
# Don't use fetchgit as this is needed during Aarch64 bootstrapping
|
||||
configGuess = fetchurl {
|
||||
url = "http://git.savannah.gnu.org/cgit/config.git/plain/config.guess?id=${rev}";
|
||||
sha256 = "1yj9yi94h7z4z6jzickddv64ksz1aq5kj0c7krgzjn8xf8p3avmh";
|
||||
sha256 = "1bb8z1wzjs81p9qrvji4bc2a8zyxjinz90k8xq7sxxdp6zrmq1sv";
|
||||
};
|
||||
configSub = fetchurl {
|
||||
url = "http://git.savannah.gnu.org/cgit/config.git/plain/config.sub?id=${rev}";
|
||||
sha256 = "1qsqdpla6icbzskkk7v3zxrpzlpqlc94ny9hyy5wh5lm5rwwfvb7";
|
||||
sha256 = "00dn5i2cp4iqap5vr368r5ifrgcjfq5pr97i4dkkdbha1han5hsc";
|
||||
};
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
|
||||
@@ -49,6 +49,8 @@ stdenv.mkDerivation rec {
|
||||
cairoLib = "${getLib cairo}/lib";
|
||||
});
|
||||
|
||||
doCheck = false; # fails
|
||||
|
||||
passthru = {
|
||||
updateScript = gnome3.updateScript {
|
||||
packageName = pname;
|
||||
|
||||
@@ -31,6 +31,8 @@ mkDerivation rec {
|
||||
|
||||
setupHook = ./setup-hook.sh;
|
||||
|
||||
doCheck = false; # fails all the tests (ctest)
|
||||
|
||||
meta = with lib; {
|
||||
description = "Qt5 port of Django template system";
|
||||
longDescription = ''
|
||||
|
||||
@@ -70,4 +70,9 @@ stdenv.mkDerivation rec {
|
||||
++ optional (!stdenv.isDarwin) wildmidi
|
||||
# TODO: mjpegtools uint64_t is not compatible with guint64 on Darwin
|
||||
++ optional (!stdenv.isDarwin) mjpegtools;
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
doCheck = false; # fails 20 out of 58 tests, expensive
|
||||
|
||||
}
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{ stdenv, fetchurl, fetchpatch, lib
|
||||
, pkgconfig, meson, ninja, gettext, gobjectIntrospection
|
||||
, python, gstreamer, orc, pango, libtheora, libvisual
|
||||
, libintl
|
||||
, libintl, libopus
|
||||
, enableX11 ? stdenv.isLinux, libXv
|
||||
, enableWayland ? stdenv.isLinux, wayland
|
||||
, enableAlsa ? stdenv.isLinux, alsaLib
|
||||
@@ -42,7 +42,7 @@ stdenv.mkDerivation rec {
|
||||
# Introspection fails on my MacBook currently
|
||||
++ lib.optional stdenv.isDarwin "--disable-introspection";
|
||||
|
||||
buildInputs = [ orc libtheora libintl ]
|
||||
buildInputs = [ orc libtheora libintl libopus ]
|
||||
++ lib.optional enableAlsa alsaLib
|
||||
++ lib.optionals enableX11 [ libXv pango ]
|
||||
++ lib.optional enableWayland wayland
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
, cupsSupport ? true, cups ? null
|
||||
, gdktarget ? "x11"
|
||||
, AppKit, Cocoa
|
||||
, fetchpatch
|
||||
}:
|
||||
|
||||
assert xineramaSupport -> xorg.libXinerama != null;
|
||||
@@ -28,7 +29,13 @@ stdenv.mkDerivation rec {
|
||||
|
||||
nativeBuildInputs = [ setupHook perl pkgconfig gettext gobjectIntrospection ];
|
||||
|
||||
patches = [ ./2.0-immodules.cache.patch ./gtk2-theme-paths.patch ];
|
||||
patches = [
|
||||
./2.0-immodules.cache.patch
|
||||
./gtk2-theme-paths.patch
|
||||
] ++ optional stdenv.isDarwin (fetchpatch {
|
||||
url = https://bug557780.bugzilla-attachments.gnome.org/attachment.cgi?id=306776;
|
||||
sha256 = "0sp8f1r5c4j2nlnbqgv7s7nxa4cfwigvm033hvhb1ld652pjag4r";
|
||||
});
|
||||
|
||||
propagatedBuildInputs = with xorg;
|
||||
[ glib cairo pango gdk_pixbuf atk ]
|
||||
@@ -49,6 +56,8 @@ stdenv.mkDerivation rec {
|
||||
"--disable-visibility"
|
||||
];
|
||||
|
||||
doCheck = false; # needs X11
|
||||
|
||||
postInstall = ''
|
||||
moveToOutput share/gtk-2.0/demo "$devdoc"
|
||||
# The updater is needed for nixos env and it's tiny.
|
||||
|
||||
@@ -63,6 +63,8 @@ stdenv.mkDerivation rec {
|
||||
"--enable-wayland-backend"
|
||||
];
|
||||
|
||||
doCheck = false; # needs X11
|
||||
|
||||
postInstall = optionalString (!stdenv.isDarwin) ''
|
||||
substituteInPlace "$out/lib/gtk-3.0/3.0.0/printbackends/libprintbackend-cups.la" \
|
||||
--replace '-L${gmp.dev}/lib' '-L${gmp.out}/lib'
|
||||
|
||||
@@ -13,6 +13,8 @@ stdenv.mkDerivation rec {
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
buildInputs = [ glib gettext ];
|
||||
|
||||
doCheck = false; # fails with "permission denied"
|
||||
|
||||
meta = {
|
||||
homepage = http://gts.sourceforge.net/;
|
||||
license = stdenv.lib.licenses.lgpl2Plus;
|
||||
|
||||
@@ -9,12 +9,14 @@ stdenv.mkDerivation {
|
||||
];
|
||||
|
||||
buildInputs = [ zlib ];
|
||||
|
||||
|
||||
src = fetchurl {
|
||||
url = mirror://sourceforge/id3lib/id3lib-3.8.3.tar.gz;
|
||||
sha256 = "0yfhqwk0w8q2hyv1jib1008jvzmwlpsxvc8qjllhna6p1hycqj97";
|
||||
};
|
||||
|
||||
doCheck = false; # fails to compile
|
||||
|
||||
meta = {
|
||||
platforms = stdenv.lib.platforms.unix;
|
||||
};
|
||||
|
||||
@@ -30,6 +30,8 @@ stdenv.mkDerivation rec {
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
doCheck = false; # fails
|
||||
|
||||
postInstall = ''
|
||||
moveToOutput bin "$bin"
|
||||
'';
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{ stdenv, fetchFromGitHub, autoreconfHook, pkgconfig, python2, perl, yacc, flex
|
||||
, texinfo, perlPackages
|
||||
, openldap, libcap_ng, sqlite, openssl, db, libedit, pam
|
||||
|
||||
, CoreFoundation, Security, SystemConfiguration
|
||||
# Extra Args
|
||||
, type ? ""
|
||||
}:
|
||||
@@ -26,8 +26,9 @@ stdenv.mkDerivation rec {
|
||||
nativeBuildInputs = [ autoreconfHook pkgconfig python2 perl yacc flex ]
|
||||
++ (with perlPackages; [ JSON ])
|
||||
++ optional (!libOnly) texinfo;
|
||||
buildInputs = optionals (!stdenv.isFreeBSD) [ libcap_ng db ]
|
||||
++ [ sqlite openssl libedit ]
|
||||
buildInputs = optionals (stdenv.isLinux) [ libcap_ng ]
|
||||
++ [ db sqlite openssl libedit ]
|
||||
++ optionals (stdenv.isDarwin) [ CoreFoundation Security SystemConfiguration ]
|
||||
++ optionals (!libOnly) [ openldap pam ];
|
||||
|
||||
## ugly, X should be made an option
|
||||
@@ -39,10 +40,11 @@ stdenv.mkDerivation rec {
|
||||
"--with-libedit=${libedit}"
|
||||
"--with-openssl=${openssl.dev}"
|
||||
"--without-x"
|
||||
"--with-berkeley-db=${db}"
|
||||
"--with-berkeley-db"
|
||||
"--with-berkeley-db-include=${db.dev}/include"
|
||||
] ++ optionals (!libOnly) [
|
||||
"--with-openldap=${openldap.dev}"
|
||||
] ++ optionals (!stdenv.isFreeBSD) [
|
||||
] ++ optionals (stdenv.isLinux) [
|
||||
"--with-capng"
|
||||
];
|
||||
|
||||
@@ -92,7 +94,7 @@ stdenv.mkDerivation rec {
|
||||
meta = {
|
||||
description = "An implementation of Kerberos 5 (and some more stuff)";
|
||||
license = licenses.bsd3;
|
||||
platforms = platforms.linux ++ platforms.freebsd;
|
||||
platforms = platforms.unix;
|
||||
maintainers = with maintainers; [ wkennington ];
|
||||
};
|
||||
|
||||
|
||||
@@ -62,6 +62,7 @@ stdenv.mkDerivation rec {
|
||||
'';
|
||||
|
||||
enableParallelBuilding = true;
|
||||
doCheck = false; # fails with "No suitable file for testing purposes"
|
||||
|
||||
meta = {
|
||||
description = "MIT Kerberos 5";
|
||||
|
||||
@@ -12,6 +12,8 @@ stdenv.mkDerivation {
|
||||
|
||||
outputs = [ "bin" "dev" "out" "man" ];
|
||||
|
||||
doCheck = false; # fails with "Error in Linear interpolation (2p): Must be i=8000, But is n=8001"
|
||||
|
||||
meta = {
|
||||
description = "Color management engine";
|
||||
homepage = http://www.littlecms.com/;
|
||||
|
||||
@@ -40,6 +40,9 @@ stdenv.mkDerivation rec {
|
||||
"--with-trust-anchor=${dns-root-data}/root.key"
|
||||
"--with-drill"
|
||||
"--disable-gost"
|
||||
] ++ stdenv.lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
|
||||
"ac_cv_func_malloc_0_nonnull=yes"
|
||||
"ac_cv_func_realloc_0_nonnull=yes"
|
||||
];
|
||||
|
||||
postInstall = ''
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
{ stdenv, fetchurl, lib, file
|
||||
, pkgconfig, autoconf
|
||||
, glib, dbus-glib, gtkVersion
|
||||
, glib, dbus-glib, gtkVersion ? "3"
|
||||
, gtk2 ? null, libindicator-gtk2 ? null, libdbusmenu-gtk2 ? null
|
||||
, gtk3 ? null, libindicator-gtk3 ? null, libdbusmenu-gtk3 ? null
|
||||
, python2Packages, gobjectIntrospection, vala
|
||||
|
||||
@@ -38,6 +38,8 @@ stdenv.mkDerivation rec {
|
||||
echo "#include <windows.h>" >> config.h
|
||||
'' else null;
|
||||
|
||||
doCheck = false; # fails
|
||||
|
||||
preFixup = ''
|
||||
sed -i $lib/lib/libarchive.la \
|
||||
-e 's|-lcrypto|-L${openssl.out}/lib -lcrypto|' \
|
||||
|
||||
@@ -18,7 +18,7 @@
|
||||
|
||||
assert faacSupport -> enableUnfree;
|
||||
|
||||
let inherit (stdenv.lib) optional optionals hasPrefix; in
|
||||
let inherit (stdenv.lib) optional optionals hasPrefix enableFeature; in
|
||||
|
||||
/* ToDo:
|
||||
- more deps, inspiration: http://packages.ubuntu.com/raring/libav-tools
|
||||
@@ -51,29 +51,35 @@ let
|
||||
substituteInPlace ./configure --replace "#! /bin/sh" "#!${bash}/bin/sh"
|
||||
'';
|
||||
|
||||
configureFlags =
|
||||
assert stdenv.lib.all (x: x!=null) buildInputs;
|
||||
[
|
||||
configurePlatforms = [];
|
||||
configureFlags = assert stdenv.lib.all (x: x!=null) buildInputs; [
|
||||
"--arch=${hostPlatform.parsed.cpu.name}"
|
||||
"--target_os=${hostPlatform.parsed.kernel.name}"
|
||||
#"--enable-postproc" # it's now a separate package in upstream
|
||||
"--disable-avserver" # upstream says it's in a bad state
|
||||
"--enable-avplay"
|
||||
"--enable-shared"
|
||||
"--enable-runtime-cpudetect"
|
||||
"--cc=cc"
|
||||
]
|
||||
++ optionals enableGPL [ "--enable-gpl" "--enable-swscale" ]
|
||||
++ optional mp3Support "--enable-libmp3lame"
|
||||
++ optional speexSupport "--enable-libspeex"
|
||||
++ optional theoraSupport "--enable-libtheora"
|
||||
++ optional vorbisSupport "--enable-libvorbis"
|
||||
++ optional vpxSupport "--enable-libvpx"
|
||||
++ optional x264Support "--enable-libx264"
|
||||
++ optional xvidSupport "--enable-libxvid"
|
||||
++ optional faacSupport "--enable-libfaac --enable-nonfree"
|
||||
++ optional vaapiSupport "--enable-vaapi"
|
||||
++ optional vdpauSupport "--enable-vdpau"
|
||||
++ optional freetypeSupport "--enable-libfreetype"
|
||||
;
|
||||
(enableFeature enableGPL "gpl")
|
||||
(enableFeature enableGPL "swscale")
|
||||
(enableFeature mp3Support "libmp3lame")
|
||||
(enableFeature mp3Support "libmp3lame")
|
||||
(enableFeature speexSupport "libspeex")
|
||||
(enableFeature theoraSupport "libtheora")
|
||||
(enableFeature vorbisSupport "libvorbis")
|
||||
(enableFeature vpxSupport "libvpx")
|
||||
(enableFeature x264Support "libx264")
|
||||
(enableFeature xvidSupport "libxvid")
|
||||
(enableFeature faacSupport "libfaac")
|
||||
(enableFeature faacSupport "nonfree")
|
||||
(enableFeature vaapiSupport "vaapi")
|
||||
(enableFeature vdpauSupport "vdpau")
|
||||
(enableFeature freetypeSupport "libfreetype")
|
||||
] ++ optional (stdenv.hostPlatform != stdenv.buildPlatform) [
|
||||
"--cross-prefix=${stdenv.cc.targetPrefix}"
|
||||
"--enable-cross-compile"
|
||||
];
|
||||
|
||||
nativeBuildInputs = [ pkgconfig perl ];
|
||||
buildInputs = [ lame yasm zlib bzip2 SDL bash ]
|
||||
@@ -112,16 +118,6 @@ let
|
||||
doInstallCheck = false; # fails randomly
|
||||
installCheckTarget = "check"; # tests need to be run *after* installation
|
||||
|
||||
crossAttrs = {
|
||||
configurePlatforms = [];
|
||||
configureFlags = configureFlags ++ [
|
||||
"--cross-prefix=${stdenv.cc.targetPrefix}"
|
||||
"--enable-cross-compile"
|
||||
"--target_os=linux"
|
||||
"--arch=${hostPlatform.parsed.cpu.name}"
|
||||
];
|
||||
};
|
||||
|
||||
passthru = { inherit vdpauSupport; };
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
|
||||
@@ -10,6 +10,8 @@ stdenv.mkDerivation rec {
|
||||
|
||||
buildInputs = stdenv.lib.optional stdenv.isDarwin libiconv;
|
||||
|
||||
doCheck = false; # fails 3 of 5 tests with locale errors
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "C library to access data on a CDDB server (freedb.org)";
|
||||
homepage = http://libcddb.sourceforge.net/;
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user