We've been discussing whether the LaTeX tests should go to extra effort to
find LaTeX, or whether the base tool should do it.  I just found another
similar case: on my Windows machine, test/FindSourceFiles.py fails because
the packaging tool can't find tar (it's in /cygwin/bin), so it doesn't
create a tar_bz packager -- so far that 's OK, but the test code only skips
the test if test.where_is('tar') fails.  But that succeeds on my machine
because /cygwin/bin is in my path and that where_is looks in $PATH.

So here I think there are three options:
 1: the packaging tool could try harder to find tar (look in cygwin, mingw,
etc.)
 2: the test code, having found tar, could pass its path into the code
under test using env.AppendENVPath
 3: the test code could just always skip the test on Windows.

I don't particularly like 3, because the test (and the packaging code)
*could* succeed there, and it'd be nice to exercise it.

I can easily make 2 work -- this is basically the path Dirk chose for
making the LaTeX tests pass if I remember correctly (or something like it).
 But it does seem a little odd.  Why should the tests be "smarter" than the
tool?

That leaves 1.  But that has the problem that it introduces a certain
amount of randomness and "magic" into the tool -- if you happen to have
cygwin, and it's installed in a particular place, the tool will work.  But
it won't be clear to users how to make it work between systems because it's
not explicit.  The same with the LaTeX stuff; if it just looks around in
the filesystem it'll sometimes (usually?) work.  But is that what we want?

Maybe (???) SCons needs a global tool-finding mode; if it's set to "try
harder" it looks in all the likely canonical places.  Otherwise it behaves
as usual.  On the other hand, setting env['ENV']['PATH'] =
os.environ('PATH') basically accomplishes the same thing (or similar).

Ideas?

-- 
Gary
_______________________________________________
Scons-dev mailing list
Scons-dev@scons.org
http://two.pairlist.net/mailman/listinfo/scons-dev

Reply via email to