[tlbuild] Gregorio test failures

Karl Berry karl at freefriends.org
Sat Jan 23 01:28:44 CET 2016


Thanks for reporting, Mojca.

    I wonder if kpathsea itself provides something we can directly use for

I guess the combination of remove_dots and expand_symlinks in progname.c
might do it, as in (see the code):
  name = remove_dots (kpse, expand_symlinks (kpse, self));

I'd have to expose a well-named function to do it, since those are
static functions right now.  Before I do that, would you mind seeing if
it actually does the job in your case?  E.g., devise a new function
kpse_canonicalize to wrap those two function in whatever way is needed,
and we can go from there?

Alternatively, I wonder if it's really needed to canonicalize the
path anyway.  What are you gaining?  To look for a file relative to
argv[0], maybe you could just do string operations to create the name to
look for.  If you see what I mean.  It's easier for users if the paths
used are relative to the paths they actually see/use, before symlink
expansion and all.

Alternatively 2, in this particular case, I think it would be the lesser
evil to call realpath() with a fixed array.  The gnulib replacement, as
pointed out, has far too many dependencies to be realistically usable in
our context.  Sad but true.  For bonus points, sure, could autoconfigure
whether NULL as the second argument work (maybe such a macro has already
been written in autoconf-archive, or somewhere), but personally, I
probably wouldn't bother :).

Maybe open an issue for this on your tracker and we can discuss there,
since all the TL builders don't need to be in on all these gory details.

Thanks,
Karl


More information about the tlbuild mailing list