-
Notifications
You must be signed in to change notification settings - Fork 5
Description
Sleigh definitions are large and unwieldy, so this library took the opinionated stance that a user should install ghidra and point this library at it.
It might be nice thought to allow for bundling architectures in builds of jingle (as a library or a binary).
The main challenge here is that sleigh is written around the assumption of a sla file existing at a path. I think this can be mitigated though as sleigh's decoder and encoder classes operate on C++ streams, so it may be possible to give it an in-memory stream for data compiled into the binary.
We would likely want to gate each architecture, really each specific SLA file, behind a feature flag for its sleigh architecture ID. This would make jingle still pretty "light" by default, though it would greatly expand the size of the rust-library itself as it would involve including lots of giant zipped files in the source distribution, which isn't great.
Maybe as an alternative, there could be a build option where a user can statically include a sleigh architecture from their machine so that it still doesn't have to be distriburted with jingle. IDK.