Skip to content

bsp::grub2: Call updateConfigAllRecursive manually#93

Merged
jkloetzke merged 1 commit into
BobBuildTool:masterfrom
reet-:grub2-deterministic
May 19, 2025
Merged

bsp::grub2: Call updateConfigAllRecursive manually#93
jkloetzke merged 1 commit into
BobBuildTool:masterfrom
reet-:grub2-deterministic

Conversation

@reet-

@reet- reet- commented May 19, 2025

Copy link
Copy Markdown
Contributor

Required to make the git checkout deterministic in all cases.

Consider the following. If the bob workspace is clean (i.e. fresh checkout), the following sequence happens with regards to bsp::grub2:

checkout_scm
update_config
bootstrap # checks out gnulib

This leads to an as-is gnulib/build-aux/config.guess because it is checked out after update_config is run. If on the other hand dev/src/bsp/grub2 is not removed completely but bob still updates the workspace (e.g. after a git clean -dxf in the toplevel recipes directory), updateConfigAllRecursive will update the config files in the existing gnulib directory as well, resulting in a diff to the previous variant and therefore to an indeterministic SCM checkout.

To solve this, set APPLY_UPDATE_CONFIG to "no" and call updateConfigAllRecursive manually after bootstrap.

Comment thread recipes/bsp/grub2.yaml Outdated
Required to make the checkout deterministic in all cases.

Consider the following. If the bob workspace is clean (i.e. fresh
checkout), the following sequence happens with regards to bsp::grub2:

  checkout_scm
  update_config
  bootstrap # checks out gnulib

This leads to an as-is gnulib/build-aux/config.guess because it is
checked out after update_config is run. If on the other hand
dev/src/bsp/grub2 is not removed completely but bob still updates the
workspace (e.g. after a git clean -dxf in the toplevel recipes
directory), updateConfigAllRecursive will update the config files in the
existing gnulib directory as well, resulting in a diff to the previous
variant and therefore to an indeterministic SCM checkout.

To solve this, set APPLY_UPDATE_CONFIG to "no" and call
updateConfigAllRecursive manually after bootstrap.
@reet- reet- force-pushed the grub2-deterministic branch from c22c646 to ddc6449 Compare May 19, 2025 16:11
@jkloetzke jkloetzke merged commit 7c2d05c into BobBuildTool:master May 19, 2025
1 check passed
@jkloetzke

Copy link
Copy Markdown
Member

Thanks!

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.

2 participants