On 2011-11-22 20:33 +0100, Stefano Lattarini wrote: > On Tuesday 22 November 2011, Nick Bowler wrote: > > On 2011-11-22 17:46 +0100, Stefano Lattarini wrote: > > > See also: > > > <http://lists.gnu.org/archive/html/automake/2011-01/msg00091.html> > > > > Yes, it is sad that many package maintainers fail to properly test their > > build systems. > > Consider that some maintainers cannot; not everyone can afford to have > access to all the *BSD, as well as Solaris, AIX, Windows (for Cygwin) ...
Obviously, it's going to be harder to test some platforms than others. And it's obviously impossible to test every possible environment. But what maintainers can and should do is test their packages in as many different environments as is feasible. There is a wonderful free software package called Qemu, which allows one to pretty easily test at least {Free,Net,Open}BSD and OpenSolaris. Qemu also supports a number of CPU architectures (useful for testing CPUs that you don't have access to; not so important for testing the build system, though). In terms of testing make implementations, GNU make, bmake/pmake (both ports of NetBSD make), dmake and heirloom make are free software and easily available for GNU/Linux systems (please let me know if I missed any!) Microsoft Windows can be problematic to test because it is proprietary software, but there's another free software package called Wine that gets you 90% of the way. I use an i486-pc-mingw32 cross toolchain for this purpose: this has the advantage of simultaneously testing my cross toolchain support. Unfortunately, wine seems to have some troubles with Cygwin, though there are success stories. If you use libtool, you can configure with --disable-shared which will give you a pretty good idea of how your package will work on platforms without shared libraries. Cheers, -- Nick Bowler, Elliptic Technologies (http://www.elliptictech.com/)