Ryan Schmidt wrote:
- Let's say I'm updating a port and want to make this change. How can I actually tell what file is the dependency (without delving into the makefiles)? Seems like I'd have to delve.
Personally, I would just pick any important file (a binary perhaps, or a library) that both teTeX and texlive provide. I'm not familiar with TeX software, but take perl as an example. We now have ports perl5.8 and perl5.10 which (as far as I know) both install ${prefix}/bin/perl (and if they don't, then assume they do for the sake of this example). Instead of specifying a dependency on "port:perl5.8" this could be changed to "path:${prefix}/bin/perl:perl5.8". This way, perl5.10's perl is used if it was already installed, and if it wasn't, perl5.8 gets installed.
Not sure if that is a great example. For now, _only_ perl5.8 provides the ${prefix}/bin/perl program and perl5.10 doesn't provide it. Should it follow the lead of python24/python25, where _none_ of the ports supplies ${prefix}/bin/python since r28120, then there wouldn't be *anything* providing a "perl" program (just like with "python", that defaults to using /usr/bin/python - unless the user runs python_select manually for a different version) but only versioned ones like "perl5.8.8" and "perl5.10.0". That this whole situation sucks, as you have to patch each and every #! line to use a versioned interpreter, is a different story... --anders