Skip to content
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

{uc-,}crux-llvm: Recommend cloning with --recurse-submodules #1030

Conversation

langston-barrett
Copy link
Contributor

See commentary on #888. Also, --recursive is no longer part of the git clone manpage, so replace with --recurse-submodules.

See commentary on GaloisInc#888. Also, --recursive is no longer part of the git clone
manpage, so replace with --recurse-submodules.
@RyanGlScott
Copy link
Contributor

We should also update the quick start section of the README, since that is where the confusion in #888 arose.

@langston-barrett
Copy link
Contributor Author

We should also update the quick start section of the README, since that is where the confusion in #888 arose.

@RyanGlScott This PR is intended to address the dicussion following this comment, which results from not having cloned the submodules (whereas the OP's issue was an actual build failure in crucible-go/golang). The quickstart section of the README already recommends cloning the submodules (via scripts/build-sandbox.sh), so I don't think a change is needed there.

Copy link
Contributor

@RyanGlScott RyanGlScott left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oh, my bad—I didn't realize that that was the purpose of the build-sandbox.sh script. (In my defense, that name is a bit misleading now that it's using v2-style cabal commands rather than sandboxes, but I digress.) Perhaps we should also update this line to use --recurse-submodules as well?

git submodule update --init --recursive

Other than that, LGTM.

@langston-barrett
Copy link
Contributor Author

langston-barrett commented Aug 30, 2022

Perhaps we should also update this line to use --recurse-submodules as well?

Ah, it's an either-or thing. You can either git clone --recurse-submodules, which clones and then fetches submodules, or you can git clone http:https://foo.bar/whatever.git, cd whatever.git, git submodule update --init --recursive. Docs for --recurse-submodules:

       --recurse-submodules[=<pathspec>]
           After the clone is created, initialize and clone submodules within based on the provided
           pathspec. If no pathspec is provided, all submodules are initialized and cloned. [...]

           Submodules are initialized and cloned using their default settings. This is equivalent to
           running git submodule update --init --recursive <pathspec> immediately after the clone is
           finished. This option is ignored if the cloned repository does not have a
           worktree/checkout (i.e. if any of --no-checkout/-n, --bare, or --mirror is given)

@langston-barrett langston-barrett merged commit e60b684 into GaloisInc:master Aug 30, 2022
@langston-barrett langston-barrett deleted the lb/readme-recurse-submodules branch August 30, 2022 14:01
@RyanGlScott
Copy link
Contributor

RyanGlScott commented Aug 30, 2022

Tricky. I see why there are two differently named options now—thanks for teaching me something!

Also, the CI failures aren't your fault—there's a slight misstep in the way the CI signs binaries on forks. I've opened #1031 to track this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants