@@ -48,28 +48,30 @@ pub fn init(dep: *std.Build.Dependency) Self {
4848}
4949
5050pub fn build (b : * std.Build ) ! void {
51- const update = b .step ( "update " , "Update chip definitions from embassy-rs/stm32-data-generated" );
51+ const generate = b .option ( bool , "generate " , "Generate chip definitions from embassy-rs/stm32-data-generated" ) orelse false ;
5252
53- const stm32_data_generated = b .lazyDependency ("stm32-data-generated" , .{}) orelse return ;
53+ if (generate ) {
54+ const stm32_data_generated = b .lazyDependency ("stm32-data-generated" , .{}) orelse return ;
5455
55- const generate_optimize = .ReleaseSafe ;
56- const regz_dep = b .dependency ("microzig/tools/regz" , .{
57- .optimize = generate_optimize ,
58- });
59- const regz = regz_dep .module ("regz" );
56+ const generate_optimize = .ReleaseSafe ;
57+ const regz_dep = b .dependency ("microzig/tools/regz" , .{
58+ .optimize = generate_optimize ,
59+ });
60+ const regz = regz_dep .module ("regz" );
6061
61- const generate = b .addExecutable (.{
62- .name = "generate" ,
63- .root_source_file = b .path ("src/generate.zig" ),
64- .target = b .host ,
65- .optimize = generate_optimize ,
66- });
67- generate .root_module .addImport ("regz" , regz );
62+ const generate_exe = b .addExecutable (.{
63+ .name = "generate" ,
64+ .root_source_file = b .path ("src/generate.zig" ),
65+ .target = b .host ,
66+ .optimize = generate_optimize ,
67+ });
68+ generate_exe .root_module .addImport ("regz" , regz );
6869
69- const generate_run = b .addRunArtifact (generate );
70- generate_run .max_stdio_size = std .math .maxInt (usize );
71- generate_run .addFileArg (stm32_data_generated .path ("." ));
72- update .dependOn (& generate_run .step );
73-
74- _ = b .step ("test" , "Run platform agnostic unit tests" );
70+ const generate_run = b .addRunArtifact (generate_exe );
71+ generate_run .max_stdio_size = std .math .maxInt (usize );
72+ generate_run .addFileArg (stm32_data_generated .path ("." ));
73+ b .getInstallStep ().dependOn (& generate_run .step );
74+ } else {
75+ _ = b .step ("test" , "Run platform agnostic unit tests" );
76+ }
7577}
0 commit comments