diff options
Diffstat (limited to 'nixpkgs/pkgs/development/libraries/rustc-demangle')
-rw-r--r-- | nixpkgs/pkgs/development/libraries/rustc-demangle/Cargo.lock | 67 | ||||
-rw-r--r-- | nixpkgs/pkgs/development/libraries/rustc-demangle/default.nix | 39 |
2 files changed, 106 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/libraries/rustc-demangle/Cargo.lock b/nixpkgs/pkgs/development/libraries/rustc-demangle/Cargo.lock new file mode 100644 index 000000000000..0268b3bdd463 --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/rustc-demangle/Cargo.lock @@ -0,0 +1,67 @@ +# This file is automatically @generated by Cargo. +# It is not intended for manual editing. +version = 3 + +[[package]] +name = "arbitrary" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "237430fd6ed3740afe94eefcc278ae21e050285be882804e0d6e8695f0c94691" + +[[package]] +name = "cc" +version = "1.0.69" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e70cc2f62c6ce1868963827bd677764c62d07c3d9a3e1fb1177ee1a9ab199eb2" + +[[package]] +name = "compiler_builtins" +version = "0.1.49" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "20b1438ef42c655665a8ab2c1c6d605a305f031d38d9be689ddfef41a20f3aa2" + +[[package]] +name = "libfuzzer-sys" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "36a9a84a6e8b55dfefb04235e55edb2b9a2a18488fcae777a6bdaa6f06f1deb3" +dependencies = [ + "arbitrary", + "cc", + "once_cell", +] + +[[package]] +name = "once_cell" +version = "1.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "692fcb63b64b1758029e0a96ee63e049ce8c5948587f2f7208df04625e5f6b56" + +[[package]] +name = "rustc-demangle" +version = "0.1.20" +dependencies = [ + "compiler_builtins", + "rustc-std-workspace-core", +] + +[[package]] +name = "rustc-demangle-capi" +version = "0.1.0" +dependencies = [ + "rustc-demangle", +] + +[[package]] +name = "rustc-demangle-fuzz" +version = "0.0.0" +dependencies = [ + "libfuzzer-sys", + "rustc-demangle", +] + +[[package]] +name = "rustc-std-workspace-core" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1956f5517128a2b6f23ab2dadf1a976f4f5b27962e7724c2bf3d45e539ec098c" diff --git a/nixpkgs/pkgs/development/libraries/rustc-demangle/default.nix b/nixpkgs/pkgs/development/libraries/rustc-demangle/default.nix new file mode 100644 index 000000000000..4e142c584529 --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/rustc-demangle/default.nix @@ -0,0 +1,39 @@ +{ rustPlatform, fetchFromGitHub, lib, stdenv }: + +rustPlatform.buildRustPackage rec { + pname = "rustc-demangle"; + version = "0.1.20"; + + src = fetchFromGitHub { + owner = "alexcrichton"; + repo = pname; + rev = version; + sha256 = "sha256-elxclyuLmr3N66s+pR4/6OU98k1oXI2wKVJtzWPY8FI="; + }; + + cargoLock = { + # generated using `cargo generate-lockfile` since repo is missing lockfile + lockFile = ./Cargo.lock; + }; + + cargoBuildFlags = [ "-p" "rustc-demangle-capi" ]; + + postPatch = '' + ln -s ${./Cargo.lock} Cargo.lock + ''; + + postInstall = '' + mkdir -p $out/lib + cp target/${stdenv.hostPlatform.rust.rustcTargetSpec}/release/librustc_demangle.so $out/lib + cp -R crates/capi/include $out + ''; + + meta = with lib; { + description = "Rust symbol demangling"; + homepage = "https://github.com/alexcrichton/rustc-demangle"; + license = with licenses; [ asl20 mit ]; + # upstream supports other platforms, but maintainer can only test on linux + platforms = platforms.linux; + maintainers = with maintainers; [ _1000teslas ]; + }; +} |