On Wed, Apr 10, 2002 at 04:25:48PM +0200, Denys Duchier wrote: > Petter Reinholdtsen <[EMAIL PROTECTED]> writes:
> > Part of the problem seem to be that the configure script tests for OS > > and architecture, not if the needed features are present or not. This > > of course makes it fail on all new OS/architecture combination, as > > well as old combinations when the feature set changes over time. > This is not exactly the case. We do check for "features" (if I > understand that term correctly), however features are not necessarily > as reliable as you'd like and the inferences that you may draw from > them vary depending on the platform. Thus we use knowledge about the > platform (1) to conditionalize inferences (2) make platform specific > inferences and guesses or override inferences that are known not to > work. If you're checking for the *right* features, it's possible to guarantee that your code will work on all platforms that are encompassed by your feature checks, because ideally you have a direct mapping between the feature you're checking for in your configure-time script and what your code actually does at run-time. GNU autoconf provides a good framework for this, but using autoconf doesn't guarantee that you're using the right feature checks. I don't know that I can easily reconcile this with your desire to not "accidentally" support additional platforms; except to say that using autoconf to check for the actual features used by your program will make the job of new porters much easier, as well as making less work for you whenever a supported platform happens to change an interface. > While transparently accommodating new OS/architectures is reasonably > possible for most software, it is not realistic for a VM with complex > memory management (tagged pointers, tagged data, GC), support for > concurrent computations, and protocols to support distributed data, > distributed computations, and mobile objects. Well, if the VM is fully virtual, it should be relatively easy to support all Linux architectures by generalizing your existing support -- the only major variables are word size and endianness.. HTH, Steve Langasek postmodern programmer
pgpWOWDP0yJGE.pgp
Description: PGP signature