ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/EV/Makefile.PL
(Generate patch)

Comparing EV/Makefile.PL (file contents):
Revision 1.30 by root, Sat Dec 22 12:05:42 2007 UTC vs.
Revision 1.36 by root, Wed Oct 29 17:41:11 2008 UTC

138 138
139Similarly to the epoll backend above, EV can take advantage of kqueue on 139Similarly to the epoll backend above, EV can take advantage of kqueue on
140many BSD systems. Support for kqueue will be detected at runtime, with a 140many BSD systems. Support for kqueue will be detected at runtime, with a
141safe fallback to other methods when it cannot be used. 141safe fallback to other methods when it cannot be used.
142 142
143Note that kqueue is broken on most operating systems, so it defaults to 143Note that kqueue is broken on most operating systems, so by default it
144'n' on everything but netbsd. Here is what we know: 144won't be used on many platforms, but you can still create your own event
145loop with qkueue backend.
146
147Here is what we know:
145 148
146NetBSD: partially working in at least 3.1. Yeah! :) 149NetBSD: partially working in at least 3.1. Yeah! :)
147FreeBSD: broken on at least 6.2-STABLE, 150FreeBSD: broken on at least 6.2-STABLE,
148 sockets *likely* work, ptys definitely don't. 151 sockets *likely* work, ptys definitely don't.
149OpenBSD: reports indicate that it likely doesn't work 152OpenBSD: reports indicate that it likely doesn't work
198EOF 201EOF
199 202
200my $can_inotify = -e "/usr/include/sys/inotify.h"; 203my $can_inotify = -e "/usr/include/sys/inotify.h";
201 204
202$DEFINE .= " -DEV_USE_INOTIFY=" . (0 + (prompt ("Enable inotify support (y/n)?", $can_inotify ? "y" : "n") =~ /[yY]/)); 205$DEFINE .= " -DEV_USE_INOTIFY=" . (0 + (prompt ("Enable inotify support (y/n)?", $can_inotify ? "y" : "n") =~ /[yY]/));
206
207print <<EOF;
208
209*** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
210
211
212Another useful bit of functionality is the Linux eventfd, which is useful
213for faster signal handling (don't care) and intra-thread communications
214(more relevant). Kernel support for this will be probed at runtime, but
215your libc must contain the necessary wrapper. Glibc 2.7 and later should
216have this wrapper.
217
218EOF
219
220$DEFINE .= " -DEV_USE_EVENTFD=" . (0 + (prompt ("Enable linux eventfd support (y/n)?", (-e "/usr/include/sys/eventfd.h") || $ENV{EV_EVENTFD} ? "y" : "n") =~ /[yY]/));
203 221
204print <<EOF; 222print <<EOF;
205 223
206*** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** 224*** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
207 225
232 PM => { 250 PM => {
233 'EV.pm' => '$(INST_LIBDIR)/EV.pm', 251 'EV.pm' => '$(INST_LIBDIR)/EV.pm',
234 'EV/EVAPI.h' => '$(INST_LIBDIR)/EV/EVAPI.h', 252 'EV/EVAPI.h' => '$(INST_LIBDIR)/EV/EVAPI.h',
235 'EV/MakeMaker.pm' => '$(INST_LIBDIR)/EV/MakeMaker.pm', 253 'EV/MakeMaker.pm' => '$(INST_LIBDIR)/EV/MakeMaker.pm',
236 'libev/ev.h' => '$(INST_LIBDIR)/EV/ev.h', 254 'libev/ev.h' => '$(INST_LIBDIR)/EV/ev.h',
255 'libev/ev.pod' => '$(INST_LIBDIR)/EV/libev.pod',
237 }, 256 },
257 MAN3PODS => {
258 'EV.pm' => '$(INST_MAN3DIR)/EV.$(MAN3EXT)',
259 'EV/MakeMaker.pm' => '$(INST_MAN3DIR)/EV::MakeMaker.$(MAN3EXT)',
260 'libev/ev.pod' => '$(INST_MAN3DIR)/EV::libev.$(MAN3EXT)',
261 },
238); 262);
239 263
240 264

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines