summaryrefslogtreecommitdiffstats
path: root/pkgs/test
diff options
context:
space:
mode:
authorMatthew Bauer <mjbauer95@gmail.com>2019-02-14 01:17:10 -0500
committerMatthew Bauer <mjbauer95@gmail.com>2019-02-26 19:45:35 -0500
commitb86e62d30d4635ef3294d9c1c308f9c8b0061045 (patch)
treef1a687409945a48f6ae42d41dc2af41886186501 /pkgs/test
parent77d7d60d8c6b4f2a163f1f9575dce1860cbb293b (diff)
llvm: support cross compilation with useLLVM flag
You can build (partially) with LLVM toolchain using the useLLVM flag. This works like so: nix-build -A hello --arg crossSystem '{ system = "aarch64-unknown-linux-musl"; useLLVM = true }' also don’t separate debug info in lldClang It doesn’t work currently with that setup hook. Missing build-id?
Diffstat (limited to 'pkgs/test')
-rw-r--r--pkgs/test/cross/default.nix6
1 files changed, 6 insertions, 0 deletions
diff --git a/pkgs/test/cross/default.nix b/pkgs/test/cross/default.nix
index 622799106cd2..a907b9e2d45b 100644
--- a/pkgs/test/cross/default.nix
+++ b/pkgs/test/cross/default.nix
@@ -26,14 +26,20 @@ let
# We need to remove whitespace, unfortunately
# Windows programs use \r but Unix programs use \n
+ echo Running native-built program natively
+
# find expected value natively
${getExecutable hostPkgs pkgFun exec} ${args'} \
| dos2unix > $out/expected
+ echo Running cross-built program in emulator
+
# run emulator to get actual value
${emulator} ${getExecutable crossPkgs pkgFun exec} ${args'} \
| dos2unix > $out/actual
+ echo Comparing results...
+
if [ "$(cat $out/actual)" != "$(cat $out/expected)" ]; then
echo "${pkgName} did not output expected value:"
cat $out/expected