nixpkgs/pkgs/development/tools/wasm-pack/default.nix
2023-05-15 15:01:22 -07:00

46 lines
1.2 KiB
Nix

{ lib, stdenv
, fetchFromGitHub
, rustPlatform
, pkg-config
, libressl
, curl
, Security
}:
rustPlatform.buildRustPackage rec {
pname = "wasm-pack";
version = "0.11.1";
src = fetchFromGitHub {
owner = "rustwasm";
repo = "wasm-pack";
rev = "v${version}";
sha256 = "sha256-oIMS0kln+HCW9kFfLU+Vi0/4EYKYzzlA1BQHZNQkJMI=";
};
cargoHash = "sha256-l6zn714DMQ+frU9Mppz4LuGY6Zf9qmxZ9MuwIvYvQMU=";
nativeBuildInputs = [ pkg-config ];
buildInputs = [
# LibreSSL works around segfault issues caused by OpenSSL being unable to
# gracefully exit while doing work.
# See: https://github.com/rustwasm/wasm-pack/issues/650
libressl
] ++ lib.optionals stdenv.isDarwin [ curl Security ];
# Needed to get openssl-sys to use pkg-config.
OPENSSL_NO_VENDOR = 1;
# Most tests rely on external resources and build artifacts.
# Disabling check here to work with build sandboxing.
doCheck = false;
meta = with lib; {
description = "A utility that builds rust-generated WebAssembly package";
homepage = "https://github.com/rustwasm/wasm-pack";
license = with licenses; [ asl20 /* or */ mit ];
maintainers = [ maintainers.dhkl ];
};
}