diff options
author | Matthew Bauer <mjbauer95@gmail.com> | 2019-04-23 22:44:33 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-04-23 22:44:33 -0400 |
commit | 7488a367af199dc61992bdd3451a4016bb0f0f5f (patch) | |
tree | d93c0db58acb5c29c8cf6b73998e8cdcfb2e1396 /pkgs/stdenv | |
parent | 84d00355e8b288a0700ea1590897b75297ec3877 (diff) | |
parent | 008c9a70a57f0448b275179bfbc10c8750f29069 (diff) |
Merge pull request #56555 from matthewbauer/wasm
Initial WebAssembly/WASI cross-compilation support
Diffstat (limited to 'pkgs/stdenv')
-rw-r--r-- | pkgs/stdenv/cross/default.nix | 5 | ||||
-rw-r--r-- | pkgs/stdenv/generic/default.nix | 2 |
2 files changed, 4 insertions, 3 deletions
diff --git a/pkgs/stdenv/cross/default.nix b/pkgs/stdenv/cross/default.nix index fc9a585cf4d..201c9378682 100644 --- a/pkgs/stdenv/cross/default.nix +++ b/pkgs/stdenv/cross/default.nix @@ -37,7 +37,8 @@ in lib.init bootStages ++ [ # Run Packages (buildPackages: { inherit config; - overlays = overlays ++ crossOverlays; + overlays = overlays ++ crossOverlays + ++ (if crossSystem.isWasm then [(import ../../top-level/static.nix)] else []); selfBuild = false; stdenv = buildPackages.stdenv.override (old: rec { buildPlatform = localSystem; @@ -63,7 +64,7 @@ in lib.init bootStages ++ [ (hostPlatform.isLinux && !buildPlatform.isLinux) [ buildPackages.patchelf ] ++ lib.optional - (let f = p: !p.isx86 || p.libc == "musl"; in f hostPlatform && !(f buildPlatform)) + (let f = p: !p.isx86 || p.libc == "musl" || p.libc == "wasilibc"; in f hostPlatform && !(f buildPlatform)) buildPackages.updateAutotoolsGnuConfigScriptsHook # without proper `file` command, libtool sometimes fails # to recognize 64-bit DLLs diff --git a/pkgs/stdenv/generic/default.nix b/pkgs/stdenv/generic/default.nix index 04117de3269..1ef2ab52029 100644 --- a/pkgs/stdenv/generic/default.nix +++ b/pkgs/stdenv/generic/default.nix @@ -88,7 +88,7 @@ let # there (yet?) so it goes here until then. preHook = preHook+ lib.optionalString buildPlatform.isDarwin '' export NIX_BUILD_DONT_SET_RPATH=1 - '' + lib.optionalString hostPlatform.isDarwin '' + '' + lib.optionalString (hostPlatform.isDarwin || (hostPlatform.parsed.kernel.execFormat != lib.systems.parse.execFormats.elf && hostPlatform.parsed.kernel.execFormat != lib.systems.parse.execFormats.macho)) '' export NIX_DONT_SET_RPATH=1 export NIX_NO_SELF_RPATH=1 '' |