celluloid/nio4r — pull request #32 by luislavena (2013-07-27 00:18:13+00:00)
Title: Upgrade libev and fix Windows build

Hello,

This pull request upgrades libev to version 4.15 and adjust the defines requires for Windows compilation.

Before this patch, it was not possible to build nio4r, with it, build succeed and spec pass, except for the following two:

```
1) IO.pipe behaves like an NIO selectable does not select unwritable objects
Failure/Error: monitor = selector.register(unwritable_subject, :w)
Errno::EBADF:
Bad file descriptor
Shared Example Group: "an NIO selectable" called from ./spec/nio/selectables/pipe_spec.rb:36

2) NIO::Selector timeouts waits for a timeout when selecting
Failure/Error: reader.read_nonblock(payload.size)
Errno::EBADF:
Bad file descriptor
# ./spec/nio/selector_spec.rb:78:in `read_nonblock'
```

These two failures seems related to a bug I reported to Ruby-Core *a year ago*:

https://bugs.ruby-lang.org/issues/5954

And this only happens with `IO.pipe`. Pipes *should work* transparently on Windows, but is clear that what `IO.pipe` is doing is not creating a compatible file descriptor for `read_nonblock` and requires further investigation.

This pull request should solve Issue #31

Cheers! :heart: :heart: :heart: