Am 02.06.2014 um 13:34 schrieb David Golden <x...@xdg.me>: > On Mon, Jun 2, 2014 at 7:28 AM, Jens Rehsack <rehs...@gmail.com> wrote: >> Others (eg. packagers) have always a compiler and want benefit from XS when >> available and what is more important: if the "DEVELOPER MODE FLAGS IS ON", >> they want to have a -Werror behavior even for "I enabled foo and it doesn't >> appear". > > I don't understand what you mean by this.
http://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html It's the widest know of those flags - GNU autotools provide such a one, too. xlc names it -qhalt=<severity> ... Lot's of tools provide switches which exit when something doesn't do as wanted (if a specific behavior is intended). >> I'm fine with "Jens' distribution have a non-standard switch", but I >> would prefer a "Toolchain community favors that knob to be used". > > In Lancaster, we considered having both a "give me PP" option *and* a > "give me XS" option and the group decided it was less confusing to > have just one. I didn't had the "user control > author mind" situation. I evolved by implementing (both sides - provide CPAN distributions and use/package them). > Here's how I would do it: > > (a) if the PP option is there, give them PP > (b) if the PP option is missing/false, check if there is a compiler > (c) if there is a compiler, give them XS or give them death > (d) if there isn't a compiler, give them PP > > If for (c) that means running tests under some "XS-only" flag of your > own, that's fine with me. (b)-(d) shall die (or exit 0 in Makefile.PL) when XS-force flag is set. I currently prove: a) what is wanted (tri-state: PP-only, XS-only, check) pp-b) do just pp b) check for "sane xs" (perl.h, xsub.h, perl-api, ...) xs-c) (b) or bail-out check-c) (b) or goto (pp-b) d) compile && pp Is that somehow clear? But ... that brings me to another point of view. Take Unix::Statgrab, File::LibMagic or BSD::Resource as example - they won't work without XS either. Shall they generally bail-out when PUREPERL_ONLY=1 is set? Cheers -- Jens Rehsack rehs...@gmail.com