From 8e25da0beb7d5c1af2d8de053044ab7b2588a0bd Mon Sep 17 00:00:00 2001 From: Matthew Bauer Date: Mon, 25 Feb 2019 22:54:40 -0500 Subject: cross/tests: add llvm-based tests --- pkgs/test/cross/default.nix | 46 ++++++++++++++++++++++++--------------------- 1 file changed, 25 insertions(+), 21 deletions(-) (limited to 'pkgs/test/cross') diff --git a/pkgs/test/cross/default.nix b/pkgs/test/cross/default.nix index a907b9e2d45ba..5d9c120c501af 100644 --- a/pkgs/test/cross/default.nix +++ b/pkgs/test/cross/default.nix @@ -53,10 +53,10 @@ let fi ''; - mapMultiPlatformTest = test: lib.mapAttrs (name: system: test rec { + mapMultiPlatformTest = crossSystemFun: test: lib.mapAttrs (name: system: test rec { crossPkgs = import pkgs.path { localSystem = { inherit (pkgs.hostPlatform) config; }; - crossSystem = system; + crossSystem = crossSystemFun system; }; emulator = crossPkgs.hostPlatform.emulator pkgs; @@ -71,26 +71,30 @@ let } else pkg; }) testedSystems; -in - -lib.mapAttrs (_: mapMultiPlatformTest) { + tests = { + + file = {platformFun, crossPkgs, emulator}: compareTest { + inherit emulator crossPkgs; + hostPkgs = pkgs; + exec = "/bin/file"; + args = [ + "${pkgs.file}/share/man/man1/file.1.gz" + "${pkgs.dejavu_fonts}/share/fonts/truetype/DejaVuMathTeXGyre.ttf" + ]; + pkgFun = pkgs: platformFun pkgs.file; + }; - file = {platformFun, crossPkgs, emulator}: compareTest { - inherit emulator crossPkgs; - hostPkgs = pkgs; - exec = "/bin/file"; - args = [ - "${pkgs.file}/share/man/man1/file.1.gz" - "${pkgs.dejavu_fonts}/share/fonts/truetype/DejaVuMathTeXGyre.ttf" - ]; - pkgFun = pkgs: platformFun pkgs.file; - }; + hello = {platformFun, crossPkgs, emulator}: compareTest { + inherit emulator crossPkgs; + hostPkgs = pkgs; + exec = "/bin/hello"; + pkgFun = pkgs: pkgs.hello; + }; - hello = {platformFun, crossPkgs, emulator}: compareTest { - inherit emulator crossPkgs; - hostPkgs = pkgs; - exec = "/bin/hello"; - pkgFun = pkgs: pkgs.hello; }; -} +in (lib.mapAttrs (_: mapMultiPlatformTest builtins.id) tests) +// (lib.mapAttrs' (name: test: { + name = "${name}-llvm"; + value = mapMultiPlatformTest (system: system // {useLLVM = true;}) test; + }) tests) -- cgit 1.4.1