… | |
… | |
159 | |
159 | |
160 | *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** |
160 | *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** |
161 | |
161 | |
162 | |
162 | |
163 | Similarly to the kqueue backend above, EV can take advantage of the |
163 | Similarly to the kqueue backend above, EV can take advantage of the |
164 | solaris 10 port interface. Support for port will be detected at runtime, |
164 | solaris 10 event port interface. Support for event ports will be detected |
165 | with a safe fallback to other methods when it cannot be used. |
165 | at runtime, with a safe fallback to other methods when it cannot be used. |
166 | |
166 | |
167 | EOF |
167 | EOF |
168 | |
168 | |
169 | $DEFINE .= " -DEV_USE_PORT=" . (0 + (prompt ("Enable port backend (y/n)?", (-e "/usr/include/sys/port.h") ? "y" : "n") =~ /[yY]/)); |
169 | $DEFINE .= " -DEV_USE_PORT=" . (0 + (prompt ("Enable event port backend (y/n)?", (-e "/usr/include/sys/port.h") ? "y" : "n") =~ /[yY]/)); |
170 | |
170 | |
171 | print <<EOF; |
171 | print <<EOF; |
172 | |
172 | |
173 | *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** |
173 | *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** |
174 | |
174 | |
… | |
… | |
182 | |
182 | |
183 | $SOLARIS_LIBS = $^O =~ /solaris/ ? " -lsocket -lnsl" : ""; |
183 | $SOLARIS_LIBS = $^O =~ /solaris/ ? " -lsocket -lnsl" : ""; |
184 | |
184 | |
185 | $LIBS = prompt "Extra libraries for pthread_atfork and clock_gettime?", "-lpthread -lrt$SOLARIS_LIBS"; |
185 | $LIBS = prompt "Extra libraries for pthread_atfork and clock_gettime?", "-lpthread -lrt$SOLARIS_LIBS"; |
186 | |
186 | |
|
|
187 | |
|
|
188 | print <<EOF; |
|
|
189 | |
|
|
190 | *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** |
|
|
191 | |
|
|
192 | |
|
|
193 | A backend of a different kind is the Linux inotify(7) interface, which can |
|
|
194 | be used to speed up (and reduce resource consumption) of stat watchers. If |
|
|
195 | you have it, it is usually a good idea to enable it. |
|
|
196 | |
|
|
197 | EOF |
|
|
198 | |
|
|
199 | my $can_inotify = -e "/usr/include/sys/inotify.h"; |
|
|
200 | |
|
|
201 | $DEFINE .= " -DEV_USE_INOTIFY=" . (0 + (prompt ("Enable inotify support (y/n)?", $can_inotify ? "y" : "n") =~ /[yY]/)); |
187 | |
202 | |
188 | print <<EOF; |
203 | print <<EOF; |
189 | |
204 | |
190 | *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** |
205 | *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** |
191 | |
206 | |
… | |
… | |
201 | SUFFIX => '.gz', |
216 | SUFFIX => '.gz', |
202 | }, |
217 | }, |
203 | depend => { |
218 | depend => { |
204 | "EV.c" => "EV/EVAPI.h " |
219 | "EV.c" => "EV/EVAPI.h " |
205 | . "libev/ev.c libev/ev.h libev/ev_epoll.c libev/ev_select.c libev/ev_kqueue.c libev/ev_poll.c " |
220 | . "libev/ev.c libev/ev.h libev/ev_epoll.c libev/ev_select.c libev/ev_kqueue.c libev/ev_poll.c " |
206 | . "libev/event.h libev/event.c evdns.h evdns.c libev/ev_vars.h libev/ev_wrap.h", |
221 | . "libev/event.h libev/event.c libev/ev_vars.h libev/ev_wrap.h", |
207 | }, |
222 | }, |
208 | INC => "-Ilibev", |
223 | INC => "-Ilibev", |
209 | DEFINE => "$DEFINE", |
224 | DEFINE => "$DEFINE", |
210 | NAME => "EV", |
225 | NAME => "EV", |
211 | LIBS => [$LIBS], |
226 | LIBS => [$LIBS], |
… | |
… | |
213 | @anyevent, |
228 | @anyevent, |
214 | }, |
229 | }, |
215 | VERSION_FROM => "EV.pm", |
230 | VERSION_FROM => "EV.pm", |
216 | PM => { |
231 | PM => { |
217 | 'EV.pm' => '$(INST_LIBDIR)/EV.pm', |
232 | 'EV.pm' => '$(INST_LIBDIR)/EV.pm', |
218 | 'EV/DNS.pm' => '$(INST_LIBDIR)/EV/DNS.pm', |
|
|
219 | 'EV/EVAPI.h' => '$(INST_LIBDIR)/EV/EVAPI.h', |
233 | 'EV/EVAPI.h' => '$(INST_LIBDIR)/EV/EVAPI.h', |
220 | 'EV/MakeMaker.pm' => '$(INST_LIBDIR)/EV/MakeMaker.pm', |
234 | 'EV/MakeMaker.pm' => '$(INST_LIBDIR)/EV/MakeMaker.pm', |
221 | 'libev/ev.h' => '$(INST_LIBDIR)/EV/ev.h', |
235 | 'libev/ev.h' => '$(INST_LIBDIR)/EV/ev.h', |
222 | }, |
236 | }, |
223 | ); |
237 | ); |