Skip to content

Makefile: make sure coreboot forks do the right thing when there is no .canary file but coreboot fork directory exists #1968

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Conversation

tlaurion
Copy link
Collaborator

@tlaurion tlaurion commented May 5, 2025

Improves collaboration with Makefile real.remove_canary_files-extract_patch_rebuild_what_changed helper:

  • if canary is not found but coreboot fork directory exists: do not attempt to git clone; git reset instead and reuse previous logic (try to apply patches since .patched got wipe, if fails, revert patches and reapply, and build clean while reusing past built artifacts to reduced build time). Typically builds everything from source while reusing reusable built objects within 5 minutes on my machine.
  • if canary is not found and coreboot dir doesn't exist: git clone and build clean (meaning also rebuilding buildstack, version reusable build artifacts and boards artifacts clean, which is what takes 45 minutes per board, clean, on CircleCI).

Fix issues when building multiple boards not using the same coreboot fork and using the
./docker_repro.sh make BOARD=xyz real.remove_canary_files-extract_patch_rebuild_what_changed

Note:
real.remove_canary_files-extract_patch_rebuild_what_changed wipes all .canary files, where previous coreboot .canary logic was cloning git repo if .canary was missing, resulting in an error.

Improves on #1953 prior work

…o .canary file but coreboot fork directory exists

Improves collaboration with Makefile real.remove_canary_files-extract_patch_rebuild_what_changed helper:
- if canary is not found but coreboot fork directory exists: do not attempt to git clone; git reset instead and reuse previous logic
- if canary is not found and coreboot dir doesn't exist: git clone

Signed-off-by: Thierry Laurion <[email protected]>
@tlaurion tlaurion force-pushed the coreboot_forks-canary_removal_helper-improve_helper branch from e49407f to c324a83 Compare May 5, 2025 19:04
@tlaurion tlaurion merged commit 13f55f4 into linuxboot:master May 5, 2025
47 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant