From: Peter Korsgaard <peter@korsgaard.com>
To: buildroot@buildroot.org
Subject: [Buildroot] [PATCH 2/2] support/dependencies/dependencies.sh: ensure git is >= 2.0.0 for vendoring
Date: Tue, 7 Feb 2023 18:00:40 +0100 [thread overview]
Message-ID: <20230207170040.3503236-2-peter@korsgaard.com> (raw)
In-Reply-To: <20230207170040.3503236-1-peter@korsgaard.com>
The go vendoring fails on CentOS 7 (which uses git 1.8.3.1) with errors
related to shallow clones:
make docker-compose-source
..
go: downloading github.com/matttproud/golang_protobuf_extensions v1.0.4
github.com/docker/compose/v2/pkg/mocks imports
github.com/theupdateframework/notary/client imports
github.com/docker/go/canonical/json: github.com/docker/go@v1.5.1-1.0.20160303222718-d30aec9fd63c: invalid pseudo-version: git fetch --unshallow -f origin in /home/jacmet/source/buildroot-mirror/output/host/share/go-path/pkg/mod/cache/vcs/48fbd2dfabec81f4c93170677bfc89087d4bec07a2d08f6ca5ce3d17962677ee: exit status 128:
fatal: git fetch-pack: expected shallow list
make[1]: *** [/home/jacmet/source/buildroot-mirror/output/build/docker-compose-2.15.1/.stamp_downloaded] Error 1
It works with git 2.0.0 (released May 2014, included in Debian 8), so check
for >= 2.0.0 with logic similar to the GNU patch version check.
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
---
support/dependencies/dependencies.sh | 10 ++++++++++
1 file changed, 10 insertions(+)
diff --git a/support/dependencies/dependencies.sh b/support/dependencies/dependencies.sh
index 88eabe921d..9193b3ee12 100755
--- a/support/dependencies/dependencies.sh
+++ b/support/dependencies/dependencies.sh
@@ -174,6 +174,16 @@ for prog in perl tar wget cpio unzip rsync bc cmp find xargs ${DL_TOOLS} ; do
echo " xargs is usually part of the findutils package in your distribution"
fi
fi
+
+ # we need git >= 2.0.0 for shallow clones / vendoring
+ if test $prog = "git" ; then
+ GIT_VERSION="$(git --version | sed -n 's/^git version \(.*\)/\1/p')"
+ GIT_MAJOR="$(echo "${GIT_VERSION}" | cut -d . -f 1)"
+ if [ "${GIT_MAJOR}" -lt 2 ]; then
+ echo "You have git '${GIT_VERSION}' installed. Git >= 2.0.0 is required"
+ exit 1
+ fi
+ fi
done
if test "${missing_progs}" = "yes" ; then
--
2.30.2
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
next prev parent reply other threads:[~2023-02-07 17:00 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-02-07 17:00 [Buildroot] [PATCH 1/2] package/pkg-generic.mk: require git on the host for packages using cargo/go vendoring Peter Korsgaard
2023-02-07 17:00 ` Peter Korsgaard [this message]
2023-02-28 15:52 ` [Buildroot] [PATCH 2/2] support/dependencies/dependencies.sh: ensure git is >= 2.0.0 for vendoring Peter Korsgaard
2023-02-07 22:06 ` [Buildroot] [PATCH 1/2] package/pkg-generic.mk: require git on the host for packages using cargo/go vendoring Thomas Petazzoni via buildroot
2023-02-28 15:52 ` Peter Korsgaard
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20230207170040.3503236-2-peter@korsgaard.com \
--to=peter@korsgaard.com \
--cc=buildroot@buildroot.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox