diff options
author | Jim Meyering <meyering@fb.com> | 2022-02-01 16:27:51 -0800 |
---|---|---|
committer | Jim Meyering <meyering@fb.com> | 2022-03-20 13:30:38 -0700 |
commit | 269795f3b8d5fc6ee5bc8e575aa2e96557b0b949 (patch) | |
tree | 91f70e82ea01de179b67d3bf15e2452adaea952c /bootstrap | |
parent | 9af9d51605fdedc18eaf24bcf693c812add29305 (diff) | |
download | grep-269795f3b8d5fc6ee5bc8e575aa2e96557b0b949.tar.gz |
build: update gnulib to latest; also bootstrap and init.sh
Diffstat (limited to 'bootstrap')
-rwxr-xr-x | bootstrap | 24 |
1 files changed, 20 insertions, 4 deletions
@@ -1,6 +1,6 @@ #! /bin/sh # Print a version string. -scriptversion=2021-04-11.09; # UTC +scriptversion=2022-01-26.05; # UTC # Bootstrap this package from checked-out sources. @@ -763,9 +763,25 @@ if $use_gnulib; then shallow= if test -z "$GNULIB_REVISION"; then git clone -h 2>&1 | grep -- --depth > /dev/null && shallow='--depth 2' + git clone $shallow ${GNULIB_URL:-$default_gnulib_url} "$gnulib_path" \ + || cleanup_gnulib + else + git fetch -h 2>&1 | grep -- --depth > /dev/null && shallow='--depth 2' + mkdir -p "$gnulib_path" + # Only want a shallow checkout of $GNULIB_REVISION, but git does not + # support cloning by commit hash. So attempt a shallow fetch by commit + # hash to minimize the amount of data downloaded and changes needed to + # be processed, which can drastically reduce download and processing + # time for checkout. If the fetch by commit fails, a shallow fetch can + # not be performed because we do not know what the depth of the commit + # is without fetching all commits. So fallback to fetching all commits. + git -C "$gnulib_path" init + git -C "$gnulib_path" remote add origin ${GNULIB_URL:-$default_gnulib_url} + git -C "$gnulib_path" fetch $shallow origin "$GNULIB_REVISION" \ + || git -C "$gnulib_path" fetch origin \ + || cleanup_gnulib + git -C "$gnulib_path" reset --hard FETCH_HEAD fi - git clone $shallow ${GNULIB_URL:-$default_gnulib_url} "$gnulib_path" \ - || cleanup_gnulib trap - 1 2 13 15 fi @@ -1093,7 +1109,7 @@ bootstrap_epilogue echo "$0: done. Now you can run './configure'." -# Local variables: +# Local Variables: # eval: (add-hook 'before-save-hook 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" |