qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] scripts/archive-source: Use more portable argument with tar command
@ 2022-12-08 16:20 Philippe Mathieu-Daudé
  2022-12-08 16:36 ` Peter Maydell
                   ` (2 more replies)
  0 siblings, 3 replies; 5+ messages in thread
From: Philippe Mathieu-Daudé @ 2022-12-08 16:20 UTC (permalink / raw)
  To: qemu-devel
  Cc: Wainer dos Santos Moschetta, qemu-trivial, Thomas Huth,
	Eric Blake, Philippe Mathieu-Daudé, Alex Bennée,
	Beraldo Leal, Gerd Hoffmann

When using the archive-source.sh script on Darwin we get:

  tar: Option --concatenate is not supported
  Usage:
    List:    tar -tf <archive-filename>
    Extract: tar -xf <archive-filename>
    Create:  tar -cf <archive-filename> [filenames...]
    Help:    tar --help

Replace the long argument added by commit 8fc76176f6 ("scripts: use
git-archive in archive-source") by their short form to keep this
script functional.

Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
---
 scripts/archive-source.sh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/scripts/archive-source.sh b/scripts/archive-source.sh
index 23e042dacd..6a710a212e 100755
--- a/scripts/archive-source.sh
+++ b/scripts/archive-source.sh
@@ -67,7 +67,7 @@ for sm in $submodules; do
     esac
     (cd $sm; git archive --format tar --prefix "$sm/" $(tree_ish)) > "$sub_file"
     test $? -ne 0 && error "failed to archive submodule $sm ($smhash)"
-    tar --concatenate --file "$tar_file" "$sub_file"
+    tar -c -f "$tar_file" "$sub_file"
     test $? -ne 0 && error "failed append submodule $sm to $tar_file"
 done
 exit 0
-- 
2.38.1



^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [PATCH] scripts/archive-source: Use more portable argument with tar command
  2022-12-08 16:20 [PATCH] scripts/archive-source: Use more portable argument with tar command Philippe Mathieu-Daudé
@ 2022-12-08 16:36 ` Peter Maydell
  2022-12-08 17:06 ` Alex Bennée
  2022-12-08 17:15 ` Daniel P. Berrangé
  2 siblings, 0 replies; 5+ messages in thread
From: Peter Maydell @ 2022-12-08 16:36 UTC (permalink / raw)
  To: Philippe Mathieu-Daudé
  Cc: qemu-devel, Wainer dos Santos Moschetta, qemu-trivial,
	Thomas Huth, Eric Blake, Alex Bennée, Beraldo Leal,
	Gerd Hoffmann

On Thu, 8 Dec 2022 at 16:21, Philippe Mathieu-Daudé <philmd@linaro.org> wrote:
>
> When using the archive-source.sh script on Darwin we get:
>
>   tar: Option --concatenate is not supported
>   Usage:
>     List:    tar -tf <archive-filename>
>     Extract: tar -xf <archive-filename>
>     Create:  tar -cf <archive-filename> [filenames...]
>     Help:    tar --help
>
> Replace the long argument added by commit 8fc76176f6 ("scripts: use
> git-archive in archive-source") by their short form to keep this
> script functional.
>
> Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
> ---
>  scripts/archive-source.sh | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/scripts/archive-source.sh b/scripts/archive-source.sh
> index 23e042dacd..6a710a212e 100755
> --- a/scripts/archive-source.sh
> +++ b/scripts/archive-source.sh
> @@ -67,7 +67,7 @@ for sm in $submodules; do
>      esac
>      (cd $sm; git archive --format tar --prefix "$sm/" $(tree_ish)) > "$sub_file"
>      test $? -ne 0 && error "failed to archive submodule $sm ($smhash)"
> -    tar --concatenate --file "$tar_file" "$sub_file"
> +    tar -c -f "$tar_file" "$sub_file"

'-c' is not the short-form option of '--concatenate': that would
be '-A'. The problem is not long vs short options, but that
BSD-style tar does not support the --concatenate functionality at all.

>      test $? -ne 0 && error "failed append submodule $sm to $tar_file"
>  done
>  exit 0

thanks
-- PMM


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] scripts/archive-source: Use more portable argument with tar command
  2022-12-08 16:20 [PATCH] scripts/archive-source: Use more portable argument with tar command Philippe Mathieu-Daudé
  2022-12-08 16:36 ` Peter Maydell
@ 2022-12-08 17:06 ` Alex Bennée
  2022-12-08 17:15 ` Daniel P. Berrangé
  2 siblings, 0 replies; 5+ messages in thread
From: Alex Bennée @ 2022-12-08 17:06 UTC (permalink / raw)
  To: Philippe Mathieu-Daudé
  Cc: qemu-devel, Wainer dos Santos Moschetta, qemu-trivial,
	Thomas Huth, Eric Blake, Beraldo Leal, Gerd Hoffmann


Philippe Mathieu-Daudé <philmd@linaro.org> writes:

> When using the archive-source.sh script on Darwin we get:
>
>   tar: Option --concatenate is not supported
>   Usage:
>     List:    tar -tf <archive-filename>
>     Extract: tar -xf <archive-filename>
>     Create:  tar -cf <archive-filename> [filenames...]
>     Help:    tar --help
>
> Replace the long argument added by commit 8fc76176f6 ("scripts: use
> git-archive in archive-source") by their short form to keep this
> script functional.
>
> Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
> ---
>  scripts/archive-source.sh | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/scripts/archive-source.sh b/scripts/archive-source.sh
> index 23e042dacd..6a710a212e 100755
> --- a/scripts/archive-source.sh
> +++ b/scripts/archive-source.sh
> @@ -67,7 +67,7 @@ for sm in $submodules; do
>      esac
>      (cd $sm; git archive --format tar --prefix "$sm/" $(tree_ish)) > "$sub_file"
>      test $? -ne 0 && error "failed to archive submodule $sm ($smhash)"
> -    tar --concatenate --file "$tar_file" "$sub_file"
> +    tar -c -f "$tar_file" "$sub_file"

I'm not sure that is correct. The gnu shortform for --concatenate is -A,
-c is specifically create so I suspect you end up re-creating the
tarball rather than adding to it.

>      test $? -ne 0 && error "failed append submodule $sm to $tar_file"
>  done
>  exit 0


-- 
Alex Bennée


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] scripts/archive-source: Use more portable argument with tar command
  2022-12-08 16:20 [PATCH] scripts/archive-source: Use more portable argument with tar command Philippe Mathieu-Daudé
  2022-12-08 16:36 ` Peter Maydell
  2022-12-08 17:06 ` Alex Bennée
@ 2022-12-08 17:15 ` Daniel P. Berrangé
  2022-12-08 18:06   ` Philippe Mathieu-Daudé
  2 siblings, 1 reply; 5+ messages in thread
From: Daniel P. Berrangé @ 2022-12-08 17:15 UTC (permalink / raw)
  To: Philippe Mathieu-Daudé
  Cc: qemu-devel, Wainer dos Santos Moschetta, qemu-trivial,
	Thomas Huth, Eric Blake, Alex Bennée, Beraldo Leal,
	Gerd Hoffmann

On Thu, Dec 08, 2022 at 05:20:51PM +0100, Philippe Mathieu-Daudé wrote:
> When using the archive-source.sh script on Darwin we get:
> 
>   tar: Option --concatenate is not supported
>   Usage:
>     List:    tar -tf <archive-filename>
>     Extract: tar -xf <archive-filename>
>     Create:  tar -cf <archive-filename> [filenames...]
>     Help:    tar --help
> 
> Replace the long argument added by commit 8fc76176f6 ("scripts: use
> git-archive in archive-source") by their short form to keep this
> script functional.

Or install a better tar implementation from brew ?

  https://formulae.brew.sh/formula/gnu-tar


With regards,
Daniel
-- 
|: https://berrange.com      -o-    https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org         -o-            https://fstop138.berrange.com :|
|: https://entangle-photo.org    -o-    https://www.instagram.com/dberrange :|



^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] scripts/archive-source: Use more portable argument with tar command
  2022-12-08 17:15 ` Daniel P. Berrangé
@ 2022-12-08 18:06   ` Philippe Mathieu-Daudé
  0 siblings, 0 replies; 5+ messages in thread
From: Philippe Mathieu-Daudé @ 2022-12-08 18:06 UTC (permalink / raw)
  To: Daniel P. Berrangé
  Cc: qemu-devel, Wainer dos Santos Moschetta, qemu-trivial,
	Thomas Huth, Eric Blake, Alex Bennée, Beraldo Leal,
	Gerd Hoffmann

On 8/12/22 18:15, Daniel P. Berrangé wrote:
> On Thu, Dec 08, 2022 at 05:20:51PM +0100, Philippe Mathieu-Daudé wrote:
>> When using the archive-source.sh script on Darwin we get:
>>
>>    tar: Option --concatenate is not supported
>>    Usage:
>>      List:    tar -tf <archive-filename>
>>      Extract: tar -xf <archive-filename>
>>      Create:  tar -cf <archive-filename> [filenames...]
>>      Help:    tar --help
>>
>> Replace the long argument added by commit 8fc76176f6 ("scripts: use
>> git-archive in archive-source") by their short form to keep this
>> script functional.
> 
> Or install a better tar implementation from brew ?
> 
>    https://formulae.brew.sh/formula/gnu-tar

Good idea, this works for me:

-- >8 --
diff --git a/scripts/archive-source.sh b/scripts/archive-source.sh
index 23e042dacd..150bdf5536 100755
--- a/scripts/archive-source.sh
+++ b/scripts/archive-source.sh
@@ -20,2 +20,3 @@ fi

+tar=$(command -v gtar || command -v tar)
  tar_file=$(realpath "$1")
@@ -69,3 +70,3 @@ for sm in $submodules; do
      test $? -ne 0 && error "failed to archive submodule $sm ($smhash)"
-    tar --concatenate --file "$tar_file" "$sub_file"
+    $tar --concatenate --file "$tar_file" "$sub_file"
      test $? -ne 0 && error "failed append submodule $sm to $tar_file"
---


^ permalink raw reply related	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2022-12-08 18:07 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-12-08 16:20 [PATCH] scripts/archive-source: Use more portable argument with tar command Philippe Mathieu-Daudé
2022-12-08 16:36 ` Peter Maydell
2022-12-08 17:06 ` Alex Bennée
2022-12-08 17:15 ` Daniel P. Berrangé
2022-12-08 18:06   ` Philippe Mathieu-Daudé

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).