mirror of
https://github.com/NixOS/nixpkgs.git
synced 2025-01-18 19:03:28 +00:00
* selectMaintained (renamed): don't use meta.maintainer, just use
meta.platforms. * Valgrind *should* work on Darwin now, except that our GCC doesn't recognise the -arch flag. svn path=/nixpkgs/trunk/; revision=17372
This commit is contained in:
parent
880e6ba1f7
commit
b7a90c11d3
@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
# Perl is needed for `cg_annotate'.
|
||||
# GDB is needed to provide a sane default for `--db-command'.
|
||||
buildInputs = [ perl gdb ];
|
||||
buildInputs = [ perl ] ++ stdenv.lib.optional (!stdenv.isDarwin) gdb;
|
||||
|
||||
configureFlags =
|
||||
if stdenv.system == "x86_64-linux" then ["--enable-only64bit"] else [];
|
||||
@ -37,5 +37,9 @@ stdenv.mkDerivation rec {
|
||||
'';
|
||||
|
||||
license = "GPLv2+";
|
||||
|
||||
maintainers = [ stdenv.lib.maintainers.eelco ];
|
||||
|
||||
platforms = stdenv.lib.platforms.linux ++ stdenv.lib.platforms.cygwin;
|
||||
};
|
||||
}
|
||||
|
@ -29,5 +29,7 @@ stdenv.mkDerivation rec {
|
||||
homepage = http://www.gnu.org/software/gdb/;
|
||||
|
||||
license = "GPLv3+";
|
||||
|
||||
platforms = stdenv.lib.platforms.linux ++ stdenv.lib.platforms.cygwin;
|
||||
};
|
||||
}
|
||||
|
@ -1,12 +1,12 @@
|
||||
let
|
||||
lists = import ./lists.nix;
|
||||
in
|
||||
let lists = import ./lists.nix; in
|
||||
|
||||
rec {
|
||||
gnu = linux; /* ++ hurd ++ kfreebsd ++ ... */
|
||||
gnu = linux; /* ++ hurd ++ kfreebsd ++ ... */
|
||||
linux = ["i686-linux" "x86_64-linux" "powerpc-linux"];
|
||||
darwin = ["i686-darwin" "powerpc-darwin"];
|
||||
freebsd = ["i686-freebsd" "x86_64-freebsd" "powerpc-freebsd"];
|
||||
cygwin = ["i686-cygwin"];
|
||||
unix = linux ++ darwin ++ freebsd;
|
||||
all = linux ++ darwin ++ cygwin ++ freebsd;
|
||||
allBut = platform: lists.filter (x: platform != x) all;
|
||||
mesaPlatforms = linux ++ darwin ++ freebsd;
|
||||
|
@ -33,8 +33,10 @@ let
|
||||
(pkgs.lib.getAttrFromPath path pkgs);
|
||||
in testOn job.systems getPkg);
|
||||
|
||||
selectMaintained = attrSet:
|
||||
if builtins ? tryEval then
|
||||
/* Find all packages that have a meta.platforms field listing the
|
||||
supported platforms. */
|
||||
packagesWithMetaPlatform = attrSet:
|
||||
if builtins ? tryEval then
|
||||
let pairs = pkgs.lib.concatMap
|
||||
(x: let val = builtins.tryEval (processPackage (builtins.getAttr x attrSet)); in
|
||||
if val.success && val.value != [] then [{name=x; value=val.value;}] else [])
|
||||
@ -42,17 +44,15 @@ let
|
||||
in
|
||||
builtins.listToAttrs pairs
|
||||
else {};
|
||||
# May fail as much as it wishes, we will catch the error
|
||||
|
||||
# May fail as much as it wishes, we will catch the error.
|
||||
processPackage = attrSet:
|
||||
if attrSet ? recurseForDerivations && attrSet.recurseForDerivations then
|
||||
selectMaintained attrSet
|
||||
packagesWithMetaPlatform attrSet
|
||||
else
|
||||
if attrSet.meta.maintainers != [] then
|
||||
(if builtins.hasAttr "platforms" attrSet.meta
|
||||
then builtins.getAttr "platforms" attrSet.meta
|
||||
else pkgs.lib.platforms.all)
|
||||
else
|
||||
[];
|
||||
if builtins.hasAttr "platforms" attrSet.meta
|
||||
then builtins.getAttr "platforms" attrSet.meta
|
||||
else [];
|
||||
|
||||
/* Common platform groups on which to test packages. */
|
||||
inherit (pkgs.lib.platforms) linux darwin cygwin allBut all;
|
||||
@ -66,7 +66,7 @@ in {
|
||||
|
||||
tarball = import ./make-tarball.nix;
|
||||
|
||||
} // (mapTestOn ((selectMaintained pkgs) // rec {
|
||||
} // (mapTestOn ((packagesWithMetaPlatform pkgs) // rec {
|
||||
|
||||
MPlayer = linux;
|
||||
abcde = linux;
|
||||
@ -161,7 +161,6 @@ in {
|
||||
gcc43_multi = ["x86_64-linux"];
|
||||
gcc44 = linux;
|
||||
gcj44 = linux;
|
||||
gdb = all;
|
||||
ghostscript = linux;
|
||||
ghostscriptX = linux;
|
||||
gimp = linux;
|
||||
@ -375,7 +374,6 @@ in {
|
||||
utillinux = linux;
|
||||
utillinuxCurses = linux;
|
||||
uzbl = linux;
|
||||
valgrind = linux;
|
||||
viking = linux;
|
||||
vice = linux;
|
||||
vim = linux;
|
||||
|
Loading…
Reference in New Issue
Block a user