On Mon, Jan 30, 2006 at 08:59:58AM -0500, David Golden wrote: > > Well, the more generalized problem is how to you signal to an automated > test that you're bailing out as N/A for whatever reason? For Perl > itself, it's easy enough for the smoke test to check if the required > version of Perl is available -- and the smoke test is smart enough not > to try to install an updated version of Perl to satisfy the dependency. > It bails out with N/A instead. > > What's a clean, generic mechanism for a distribution to signal "please > check this dependency and abort if it's not satisfied"? Something in > the META.yml (e.g. Alien::*)? Send a specific string to STDERR? Send a > specific exit codes? Ugh. Other ideas?
For CPANPLUS (and thus YACSmoke) the distribution author can check the OS from a list of known compatible OSs, and if it doesn't find it, bail out with a "OS unsupported" message. See this slide [1] for a simple example. [1] http://birmingham.pm.org/talks/barbie/cpan-ready/slide603.html This has been in CPANPLUS for a while now. While the obvious distributions of Win32:: and Linux:: may be OS specific, there are others that are not so obvious from the name, which may support a number of OSs, or might not support specific ones. The above exit mechanism provides an NA report to the CPAN testers. Barbie.