1 { lib, stdenv, rustPlatform, fetchFromGitHub, libiconv }:
3 rustPlatform.buildRustPackage rec {
7 src = fetchFromGitHub {
11 hash = "sha256-bwNtIuAALSOSUkbx2UbOEzHv064BVAHTBdJGPZVyEis=";
14 cargoHash = "sha256-pY1/p3TMt/DCTadU0Ki0yMgmS7RwO9siZLvNNXSLrfg=";
16 buildInputs = lib.optional stdenv.isDarwin libiconv;
19 # requires embedded toolchains
20 "--skip should_link_example_firmware::case_1_normal"
21 "--skip should_link_example_firmware::case_2_custom_linkerscript"
22 "--skip should_verify_memory_layout"
26 description = "Adds zero-cost stack overflow protection to your embedded programs";
27 homepage = "https://github.com/knurling-rs/flip-link";
28 changelog = "https://github.com/knurling-rs/flip-link/blob/v${version}/CHANGELOG.md";
29 license = with licenses; [ asl20 /* or */ mit ];
30 maintainers = with maintainers; [ FlorianFranzen newam ];