Add build scripts and CI/CD for unbricked #138
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
As discussed in issue #17, simple CI/CD for the unbricked portion of the tutorial would be beneficial. This would also help maintain the target RGBDS and hardware.inc versions (see #125 and #131). This PR implements simple bash scripts for each "snapshot" of the unbricked project. A top-level build script is also provided to build all and report the success or failure of each build. The latter can be easily integrated into a GitHub workflow to make sure that the code in this portion of the tutorial is build-able.
Feedback on my approach would be much appreciated. The individual bash scripts are simple so that they can be consulted by someone just learning game boy assembly (easier than make). They are all identical scripts so we could restructure, but at the risk of the scripts being harder to find for those following the tutorial. hardware.inc is unfortunately harder to maintain with this file structure since it is copied into each sub-folder. Maybe we could make this into a symlink to the version we wish to target? I think it was decided submodules aren't a good idea for this project.
I have not implemented the
.yamlfile yet for the GitHub workflow. I will tackle that once I get some feedback, should be trivial with the script(s) already in place.This PR has the same content as #133 but cleans up the commit history (needed to fork the repository again).