diff mbox

scripts/functions: change zcat to gzcat on Mac OS X

Message ID d9b7eeea2b565287de66.1381743097@Fernandos-MacBook-Pro.local
State Changes Requested
Headers show

Commit Message

Fernando Ortiz Oct. 14, 2013, 9:31 a.m. UTC
# HG changeset patch
# User nandub <dev+ctng@nandub.info>
# Date 1381743034 18000
#      Mon Oct 14 04:30:34 2013 -0500
# Node ID d9b7eeea2b565287de66b71e13bfa40265230362
# Parent  9838aecd63405ba0d1660ac8e91208de880d71a2
scripts/functions: change zcat to gzcat on Mac OS X

it looks like gnu zcat is required to work on Mac OS X (osx)
osx zcat will throw an log.gz.Z error when restoring
a building step.

Signed-off-by: nandub <dev+ctng@nandub.info>


--
For unsubscribe information see http://sourceware.org/lists.html#faq

Comments

Mike Frysinger Oct. 14, 2013, 5:56 p.m. UTC | #1
On Monday 14 October 2013 05:31:37 Fernando Ortiz wrote:
> # HG changeset patch
> # User nandub <dev+ctng@nandub.info>
> # Date 1381743034 18000
> #      Mon Oct 14 04:30:34 2013 -0500
> # Node ID d9b7eeea2b565287de66b71e13bfa40265230362
> # Parent  9838aecd63405ba0d1660ac8e91208de880d71a2
> scripts/functions: change zcat to gzcat on Mac OS X
> 
> it looks like gnu zcat is required to work on Mac OS X (osx)
> osx zcat will throw an log.gz.Z error when restoring
> a building step.
> 
> --- a/scripts/functions	Mon Oct 07 00:16:38 2013 +0200
> +++ b/scripts/functions	Mon Oct 14 04:30:34 2013 -0500
> @@ -1336,7 +1336,7 @@ CT_DoLoadState(){
>      CT_DoLog STATE "  Restoring log file"
>      exec >/dev/null
>      case "${CT_DEBUG_CT_SAVE_STEPS_GZIP}" in
> -        y)  zcat "${state_dir}/log.gz" >"${tmp_log_file}";;
> +        y)  gzcat "${state_dir}/log.gz" >"${tmp_log_file}";;
>          *)  cat "${state_dir}/log" >"${tmp_log_file}";;
>      esac

`gzcat` is not portable.  this code snippet looks like it's used by all 
targets and not just OS X (although i didn't load the repo itself to find out).
-mike
Yann Diorcet Oct. 14, 2013, 6:11 p.m. UTC | #2
Le 14/10/2013 19:56, Mike Frysinger a écrit :
> On Monday 14 October 2013 05:31:37 Fernando Ortiz wrote:
>> # HG changeset patch
>> # User nandub <dev+ctng@nandub.info>
>> # Date 1381743034 18000
>> #      Mon Oct 14 04:30:34 2013 -0500
>> # Node ID d9b7eeea2b565287de66b71e13bfa40265230362
>> # Parent  9838aecd63405ba0d1660ac8e91208de880d71a2
>> scripts/functions: change zcat to gzcat on Mac OS X
>>
>> it looks like gnu zcat is required to work on Mac OS X (osx)
>> osx zcat will throw an log.gz.Z error when restoring
>> a building step.
>>
>> --- a/scripts/functions    Mon Oct 07 00:16:38 2013 +0200
>> +++ b/scripts/functions    Mon Oct 14 04:30:34 2013 -0500
>> @@ -1336,7 +1336,7 @@ CT_DoLoadState(){
>>      CT_DoLog STATE "  Restoring log file"
>>      exec >/dev/null
>>      case "${CT_DEBUG_CT_SAVE_STEPS_GZIP}" in
>> -        y)  zcat "${state_dir}/log.gz" >"${tmp_log_file}";;
>> +        y)  gzcat "${state_dir}/log.gz" >"${tmp_log_file}";;
>>          *)  cat "${state_dir}/log" >"${tmp_log_file}";;
>>      esac
>
> `gzcat` is not portable.  this code snippet looks like it's used by all
> targets and not just OS X (although i didn't load the repo itself to
find out).
> -mike
Try with that tip:

export PATH=/opt/local//libexec/gnubin:$PATH

with /opt/local your macports path


--
For unsubscribe information see http://sourceware.org/lists.html#faq
Ray Donnelly Oct. 14, 2013, 6:27 p.m. UTC | #3
The best fix is to add --with-zcat=<path> as an option IMHO. It's
quite easily done too.

On Mon, Oct 14, 2013 at 7:11 PM, Diorcet Yann <diorcet.yann@gmail.com> wrote:
> Le 14/10/2013 19:56, Mike Frysinger a écrit :
>> On Monday 14 October 2013 05:31:37 Fernando Ortiz wrote:
>>> # HG changeset patch
>>> # User nandub <dev+ctng@nandub.info>
>>> # Date 1381743034 18000
>>> #      Mon Oct 14 04:30:34 2013 -0500
>>> # Node ID d9b7eeea2b565287de66b71e13bfa40265230362
>>> # Parent  9838aecd63405ba0d1660ac8e91208de880d71a2
>>> scripts/functions: change zcat to gzcat on Mac OS X
>>>
>>> it looks like gnu zcat is required to work on Mac OS X (osx)
>>> osx zcat will throw an log.gz.Z error when restoring
>>> a building step.
>>>
>>> --- a/scripts/functions    Mon Oct 07 00:16:38 2013 +0200
>>> +++ b/scripts/functions    Mon Oct 14 04:30:34 2013 -0500
>>> @@ -1336,7 +1336,7 @@ CT_DoLoadState(){
>>>      CT_DoLog STATE "  Restoring log file"
>>>      exec >/dev/null
>>>      case "${CT_DEBUG_CT_SAVE_STEPS_GZIP}" in
>>> -        y)  zcat "${state_dir}/log.gz" >"${tmp_log_file}";;
>>> +        y)  gzcat "${state_dir}/log.gz" >"${tmp_log_file}";;
>>>          *)  cat "${state_dir}/log" >"${tmp_log_file}";;
>>>      esac
>>
>> `gzcat` is not portable.  this code snippet looks like it's used by all
>> targets and not just OS X (although i didn't load the repo itself to
> find out).
>> -mike
> Try with that tip:
>
> export PATH=/opt/local//libexec/gnubin:$PATH
>
> with /opt/local your macports path
>
>
> --
> For unsubscribe information see http://sourceware.org/lists.html#faq
>

--
For unsubscribe information see http://sourceware.org/lists.html#faq
Anthony Foiani Oct. 14, 2013, 11:53 p.m. UTC | #4
[Oops, sorry, meant to send to entire list...]

Greetings, all --

On Mon, Oct 14, 2013 at 12:27 PM, Ray Donnelly <mingw.android@gmail.com> wrote:
> The best fix is to add --with-zcat=<path> as an option IMHO. It's
> quite easily done too.

Sorry if I'm late to the party, but is it possible to replace all such
usage with just:

  gzip -dc

This is my go-to command whenever I don't know if gzcat / zcat is
handy, and my impression is that it's pretty portable.

Best,
Anthony Foiani

--
For unsubscribe information see http://sourceware.org/lists.html#faq
Mike Frysinger Oct. 15, 2013, 4:33 p.m. UTC | #5
On Monday 14 October 2013 19:53:13 Anthony Foiani wrote:
> On Mon, Oct 14, 2013 at 12:27 PM, Ray Donnelly wrote:
> > The best fix is to add --with-zcat=<path> as an option IMHO. It's
> > quite easily done too.
> 
> Sorry if I'm late to the party, but is it possible to replace all such
> usage with just:
> 
>   gzip -dc
> 
> This is my go-to command whenever I don't know if gzcat / zcat is
> handy, and my impression is that it's pretty portable.

that is an excellent suggestion.  thanks!

you could even add a func to the code and then people wouldn't be able to 
regress:
zcat() { gzip -dc "$@"; }
gzcat() { zcat "$@"; }
-mike
Yann E. MORIN Nov. 15, 2013, 8:08 p.m. UTC | #6
Anthony, Mike, All,

On 2013-10-15 12:33 -0400, Mike Frysinger spake thusly:
> On Monday 14 October 2013 19:53:13 Anthony Foiani wrote:
> > On Mon, Oct 14, 2013 at 12:27 PM, Ray Donnelly wrote:
> > > The best fix is to add --with-zcat=<path> as an option IMHO. It's
> > > quite easily done too.
> > 
> > Sorry if I'm late to the party, but is it possible to replace all such
> > usage with just:
> > 
> >   gzip -dc
> > 
> > This is my go-to command whenever I don't know if gzcat / zcat is
> > handy, and my impression is that it's pretty portable.
> 
> that is an excellent suggestion.  thanks!

Indeed, I'll implement this. Thanks! :-)

Regards,
Yann E. MORIN.
diff mbox

Patch

diff -r 9838aecd6340 -r d9b7eeea2b56 scripts/functions
--- a/scripts/functions	Mon Oct 07 00:16:38 2013 +0200
+++ b/scripts/functions	Mon Oct 14 04:30:34 2013 -0500
@@ -1336,7 +1336,7 @@  CT_DoLoadState(){
     CT_DoLog STATE "  Restoring log file"
     exec >/dev/null
     case "${CT_DEBUG_CT_SAVE_STEPS_GZIP}" in
-        y)  zcat "${state_dir}/log.gz" >"${tmp_log_file}";;
+        y)  gzcat "${state_dir}/log.gz" >"${tmp_log_file}";;
         *)  cat "${state_dir}/log" >"${tmp_log_file}";;
     esac
     cat "${state_dir}/tail.log" >>"${tmp_log_file}"