Commit graph

9 commits

Author SHA1 Message Date
bunnie
d0dc2e2a9f add renode as a target to utralib 2022-09-27 18:09:33 +08:00
bunnie
fad43a1e0f add target routing to build.rs 2022-09-27 16:30:45 +08:00
bunnie
895957e53a pass the SVD config back to xtask
this is necessary because we need the full SVD path to generate
the whitelist of physical pages that can be addressed. Since the
SVD path is now domiciled in utralib, a file called "SVD_PATH"
is created in the target/ directory which contains the resolved
path to the SVD file given the abstract target/rev feature pair.
2022-09-27 15:12:28 +08:00
bunnie
2f016c3876 handle case of a "clean" build without failure 2022-09-27 03:12:08 +08:00
bunnie
3a6f69a4ad fix SVD spec toggle trigger
this fix makes it so that

1) you always get a correct build when the SVD spec is toggled
2) you don't always rebuild when nothing has changed

(2) is with the caveat that the no-change flag is only clean
after your second build (i.e. your third run will be fast).
I'm not quite sure why but I think it's because the "changes"
to the config file tracker are computed throughout the first
build and the second build still sees that file as recently
changed, so, it'll trigger a rebuild (could also just be
a race condition because the timestamp of the rebuild is
at the same second that the file was regenerated, so conservatively
you'd rebuild the next time).
2022-09-27 03:06:42 +08:00
bunnie
17248fdbf1 revise utralib to use features to select the SVD file 2022-09-26 23:24:22 +08:00
Sean Cross
c36615d014 utralib: use canonicalized path for svd in rebuilding
Use the full path to the .svd file to ensure it is rebuilt when the file
changes.

Signed-off-by: Sean Cross <sean@xobs.io>
2020-11-23 17:18:44 +08:00
Sean Cross
a2ede7adf6 utralib: fix build dependency on svd file
Previously, the svd file was treated as an environment variable to
watch. Naturally this never changed, so an updated svd file never
triggered a rebuild.

Signed-off-by: Sean Cross <sean@xobs.io>
2020-10-13 14:18:00 +08:00
bunnie
9a50de8b4e refactor: utra -> utralib naming
this cleans up some namespace issues when including
the utra crate which also refers to utra::generated::utra,
and there are CONST at the crate-level, and also functions
at the module-level which need disambiguation. By naming
the crate utra-lib this saves a bit of syntatic wrangling
at the top of every file.
2020-10-12 03:56:10 +08:00
Renamed from utra/build.rs (Browse further)