--- AnyEvent/constants.pl.PL 2010/02/21 09:28:18 1.1 +++ AnyEvent/constants.pl.PL 2010/03/13 00:08:08 1.3 @@ -1,7 +1,9 @@ #! perl -open STDOUT, ">$ARGV[0]~" - or die "$ARGV[0]~: $!"; +open my $fh, ">lib/AnyEvent/constants.pl" + or die "lib/AnyEvent/constants.pl: $_[0]\n"; + +my $oldstdout = select $fh; sub i($$) { print "sub $_[0] () { ", $_[1]*1, " }\n"; @@ -17,10 +19,10 @@ use Fcntl (); -i F_SETFL => Fcntl::F_SETFL(); -i F_SETFD => Fcntl::F_SETFD(); -i O_NONBLOCK => Fcntl::O_NONBLOCK(); -i FD_CLOEXEC => Fcntl::FD_CLOEXEC(); +i F_SETFL => eval { Fcntl::F_SETFL() }; +i F_SETFD => eval { Fcntl::F_SETFD() }; +i O_NONBLOCK => eval { Fcntl::O_NONBLOCK() }; +i FD_CLOEXEC => eval { Fcntl::FD_CLOEXEC() }; print "package AnyEvent::Util;\n"; @@ -38,8 +40,8 @@ my $af_inet6; -$af_inet6 ||= eval { use Socket ; Socket::AF_INET6 () }; -$af_ine6t ||= eval { use Socket6; Socket6::AF_INET6() }; +$af_inet6 ||= eval { require Socket ; Socket::AF_INET6 () }; +$af_ine6t ||= eval { require Socket6; Socket6::AF_INET6() }; # uhoh $af_inet6 ||= 10 if $^O =~ /linux/; @@ -62,5 +64,9 @@ print "1;\n"; -close STDOUT; +close $fh; +select $oldstdout; + rename "$ARGV[0]~", $ARGV[0]; + +1