[Buildroot] [PATCH 2/2 v3] support/download: fix the git helper output file format

Yann E. MORIN yann.morin.1998 at free.fr
Wed Aug 6 16:47:53 UTC 2014

The git helper uses gzip to compress the intermediate tarball. But gzip
removes the source file, and create a new file named by appending .gz to
the original file name.

Thus, we end up with output.gz, while the download wrapper expects jsut
output, and thus believes the downlaod failed.

Fix that by storing the tar from git to a temporary file, then pipe this
file to gzip's stdin, and redirect gzip's stdout to the output file.

Reported-by: Graham Newton <gnewton at peavey-eu.com>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998 at free.fr>
Cc: Peter Seiderer <ps.report at gmx.net>
 support/download/git | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/support/download/git b/support/download/git
index d451530..ff6b5c3 100755
--- a/support/download/git
+++ b/support/download/git
@@ -34,6 +34,6 @@ if [ ${git_done} -eq 0 ]; then
 GIT_DIR="${basename}" \
-${GIT} archive --prefix="${basename}/" -o "${output}" --format=tar "${cset}"
+${GIT} archive --prefix="${basename}/" -o "${output}.tmp" --format=tar "${cset}"
-gzip "${output}"
+gzip <"${output}.tmp" >"${output}"

More information about the buildroot mailing list