Adriano Ferreira wrote: > On 9/25/07, Michael G Schwern <[EMAIL PROTECTED]> wrote: >> Rafael Garcia-Suarez wrote: >>> I just committed change 31968 to ExtUtils::MM_Unix to add dragonfly to >>> the list of BSD-like OSes. See >>> http://public.activestate.com/cgi-bin/perlbrowse/p/31968 >>> >>> But while doing so, I noticed that the statement was buggy anyway, so I >>> fixed that too: >>> http://public.activestate.com/cgi-bin/perlbrowse/p/31969 >> What was buggy about it? > > $Is_SunOS = $Is_SunOS4 || $Is_Solaris; > - $Is_BSD = $^O =~ /^(?:free|net|open)bsd$/ or > - $^O eq 'bsdos' or $^O eq 'interix' or $^O eq 'dragonfly'; > + $Is_BSD = $^O =~ > /^(?:(?:free|net|open)bsd|bsdos|interix|dragonfly)$/; > > The former would never set $Is_BSD for 'bsdos', 'interix' and > 'dragonfly' but only evaluate " $^O eq 'foo' " in void context.
Ahh. I've patched it like this because that regex makes my eyes water. --- lib/ExtUtils/MM_Unix.pm (revision 32278) +++ lib/ExtUtils/MM_Unix.pm (local) @@ -35,8 +35,9 @@ $Is_SunOS4 = $^O eq 'sunos'; $Is_Solaris = $^O eq 'solaris'; $Is_SunOS = $Is_SunOS4 || $Is_Solaris; - $Is_BSD = $^O =~ /^(?:free|net|open)bsd$/ or - $^O eq 'bsdos' or $^O eq 'interix'; + $Is_BSD = ($^O =~ /^(?:free|net|open)bsd$/ or + grep( $^O eq $_, qw(bsdos interix dragonfly) ) + ); -- Robrt: People can't win Schwern: No, but they can riot after the game.