* test: (gnu) tar(1) portability
@ 2014-01-11 10:46 Tomi Ollila
2014-01-11 16:04 ` David Bremner
0 siblings, 1 reply; 3+ messages in thread
From: Tomi Ollila @ 2014-01-11 10:46 UTC (permalink / raw)
To: notmuch
Hi
Currently performance-test requires GNU tar and the uprgrade test
in progress will (in it's current form) require it too.
From portability point of view these tests will work only on Linux
by default -- BSD/Mac OS X have libarchive based tar(1) and other
systems something less capable (no -z option, for example).
From the test point of view we can expect people to install GNU tar
(somewhere) in for their systems but should we provide less "intrusive"
way for having the GNU tar available.
Options:
1) Do nothing, and expect testers to have GNU tar in PATH available
before any other tar. For example /usr/local/bin/tar could be GNU tar
and that is put before /bin:/usr/bin in path.
2) Change calls to 'tar' to format ${GNU_TAR:-tar} so testers can set
environment variable GNU_TAR to the name/path of gnu tar when running
tests (like GNU_TAR=/usr/local/bin/gtar make test or GNU_TAR=gtar ...)
3) Check whether 'gtar' is in system and use that. if not use tar:
# opportunistically check whether 'gtar' is in system and use that if it is
if hash gtar >/dev/null
then TAR=gtar
else TAR=tar
fi
and then replate tar with ${TAR} ($ & {} to emphasize the variable usage)
in the test code.
Interestingly Fedora 20 installs both /usr/bin/gtar & /usr/bin/tar.
In one wheezy system I saw only tar. I tried to JFGI 'gnu tar installation'
but I could not find references to 'gtar' there.
If installing gtar is widespread I'd use option 3. If not, option 2.
It may be that we end up using option 1 ;/
Tomi
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: test: (gnu) tar(1) portability
2014-01-11 10:46 test: (gnu) tar(1) portability Tomi Ollila
@ 2014-01-11 16:04 ` David Bremner
2014-01-19 13:58 ` Tomi Ollila
0 siblings, 1 reply; 3+ messages in thread
From: David Bremner @ 2014-01-11 16:04 UTC (permalink / raw)
To: Tomi Ollila, notmuch
Tomi Ollila <tomi.ollila@iki.fi> writes:
>
> 2) Change calls to 'tar' to format ${GNU_TAR:-tar} so testers can set
> environment variable GNU_TAR to the name/path of gnu tar when running
> tests (like GNU_TAR=/usr/local/bin/gtar make test or GNU_TAR=gtar ...)
I don't really see any downside to this option; there's only a few calls
to tar to replace. Of course we could bikeshed about whether to write
TAR=${GNU_TAR:-tar}
...
${TAR} --frub --blah
instead of testing GNU_TAR everywhere.
But, shrug...
d
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: test: (gnu) tar(1) portability
2014-01-11 16:04 ` David Bremner
@ 2014-01-19 13:58 ` Tomi Ollila
0 siblings, 0 replies; 3+ messages in thread
From: Tomi Ollila @ 2014-01-19 13:58 UTC (permalink / raw)
To: David Bremner, notmuch
On Sat, Jan 11 2014, David Bremner <david@tethera.net> wrote:
> Tomi Ollila <tomi.ollila@iki.fi> writes:
>>
>> 2) Change calls to 'tar' to format ${GNU_TAR:-tar} so testers can set
>> environment variable GNU_TAR to the name/path of gnu tar when running
>> tests (like GNU_TAR=/usr/local/bin/gtar make test or GNU_TAR=gtar ...)
>
> I don't really see any downside to this option; there's only a few calls
> to tar to replace. Of course we could bikeshed about whether to write
>
> TAR=${GNU_TAR:-tar}
> ...
>
> ${TAR} --frub --blah
>
> instead of testing GNU_TAR everywhere.
I also thought of this option, exactly in the same format, too..
>
> But, shrug...
Yes...
and this leads to probably more problematic issue: Mac OS X has
bash version 3 -- which cannot be used to run test scripts. For
that we'd also need a variabe (and some test script trickiness).
This bash issue is easier to solve by tuning the PATH instead of
introducing another variable (or check for 'bash4' existence (ehhe;))
There for we could (that's probably me, then ;/) just document that
in test/README Prerequisites section..
>
> d
Tomi
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2014-01-19 13:58 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-01-11 10:46 test: (gnu) tar(1) portability Tomi Ollila
2014-01-11 16:04 ` David Bremner
2014-01-19 13:58 ` Tomi Ollila
Code repositories for project(s) associated with this public inbox
https://yhetil.org/notmuch.git/
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 read-only IMAP folder(s) and NNTP newsgroup(s).