On Thursday, January 8, 2004, at 04:32 pm, Ralf Corsepius wrote:
Wrt. your example: You are supporting aix3*. Now IBM renames AIX to something else or changes some fundamental characteristics of their OS without changing the $host_os.
All you can do is to extend, extend and extend your "case".
Agreed, but often that is easier than writing comprehensive checking code.
How would libtool find out what the shared library soname versioning algorithm is with runtime tests for example?
Another problematic case is ensuring "correctness" of guess-derived results. Without additional checks, you can't guarantee anything. Eg. wrt. host_os, you can't guess on the object format or if an OS honors LD_LIBRARY_PATH/LD_RUN_PATH or other advanced linker features libtool might require on a system (I am not a libtool expert, so bare with the examples).
Libtool has however done exactly this with reasonable success for the last 8 years... There are cases where testing $host is simply the path of least resistance, but pragmatism is not a bad thing.
To me, using config.guess'ed values should only be applied as absolute last resort if all else fail. In any case using them is fragile.
I don't disagree with any of the points you make, but libtool probably wouldn't have ever got off the ground at all if all of the parameters it needs to check had to be probed from first principles.
The beauty of open source is that if something is causing a real problem, it can be fixed and patched up stream. config.guess is without a doubt a very useful piece of code, and libtool is a prime example where leveraging it has probably saved thousands of programmers untold pain.
Cheers, Gary. -- Gary V. Vaughan ())_. [EMAIL PROTECTED],gnu.org} Research Scientist ( '/ http://www.oranda.demon.co.uk GNU Hacker / )= http://www.gnu.org/software/libtool Technical Author `(_~)_ http://sources.redhat.com/autobook