-
Notifications
You must be signed in to change notification settings - Fork 181
Description
Currently we have a git-subtree of the SameBoy repository in bsnes/gb/, including SameBoy's carefully-maintained Makefile build system.
bsnes doesn't actually use that, though. bsnes' build system depends on all the platform detection and abstraction provided by nall, so bsnes adds its own bsnes/gb/GNUmakefile which just hard-codes the specific files bsnes needs. That file gets included by bsnes/GNUmakefile, so SameBoy's source files get compiled the same way as all bsnes' other source files, and linked with the same linker settings.
That's great for consistency with the rest of bsnes, but it does mean some messing around and reverse-engineering SameBoy's build system every time it updates. That's not often, but it's not zero, either.
SameBoy provides a target that builds libsameboy.a with SameBoy's complier and linker settings, and SameBoy will keep that build system up-to-date so we don't have to. It might be nice to just build that and have bsnes link against it, rather than re-implement SameBoy's build-system. On the other hand, bsnes' build system does not currently build or link against any static libraries, and teaching it to do so on all supported platforms might be more trouble than it's worth.
To resolve this issue, we need an estimate of how much effort it would take to make bsnes use libsameboy.a, and then (if the effort is low and the payoff is high) we can make a new issue to actually do the work.
Alternatively, a lab report of the form "I tried making this change and I couldn't figure out how to do it" or "it was really easy, let me show you how" would be helpful.