> Mattia Barbon wrote:
 >>
 >> ... On the various unices you can probably use a big
 >> rule set, matching the C compiler name and/or some other
 >> heuristics.  IME it is the kind of thing that is easy to
 >> get 99% right.

 From my experience, I would modify that statement to "it is
the kind of thing that is *possible* to get 99% right on the
platforms you *actually use* and develop with."

The qualification is for two reasons:

   (1) It is very difficult to debug platform configuration
   code without the actual platform development environment

   (2) Even with the right platforms and compiler/config
   expertise, it can be difficult to debug because many
   tests need a clean slate for testing with no installed
   extras---exactly what an experienced developer would
   *not* have for his day-to-day development system(s).

 > This must seem easy to you because you know all this
 > and apparently have access to multiple compilers and
 > platforms.  I believe being able to do this 99% right
 > is very much dependent on experience.  Thus it would be
 > a very good candidate for being solved once by experts
 > and reused by fools like myself.

For Perl-only extensions, it is much easier to get right.

For XS-based extensions, it is much more difficult.

For example, Perl OpenGL module uses dictionary and
heuristics to determine the configuration needed for the
various platforms. This is mainly possible because it is
only a few, related, external libraries. Even so, the build
process is fragile and not robust to minor changes in the
platform environments.

For that reason, I would like to move to Module::Build
going forward.  The theory being that now the platform
dependencies are pretty much perl and the compiler
rather than perl, compiler, shell, and make command.

--Chris

_______________________________________________
Padre-dev mailing list
Padre-dev@perlide.org
http://mail.perlide.org/mailman/listinfo/padre-dev

Reply via email to