Closed umanwizard closed 8 years ago
@jsedgwick SPLICE_F_NONBLOCK
is certainly a Linux only thing. Probably need an #ifndef SPLICE_F_NONBLOCK
.
I think ::splice doesn't exist on OSX
It does not. Sorry I wasn't at a computer, I only saw the line of code from the error (not the function call where flags
was used).
FYI, this is blocking FBThrift from building on OSX (see the issue I referenced above)
ping
Ping, is this still the state of the world?
Send a pull request? We can probably just disable FileRegion entirely for osx
This problem still exists as of today. Is there any way I can help?
BTW - @umanwizard thank you for your efforts in collating and organizing all the various reasons the FB packages fail to build on OS X.
Oh - and after simply deleting FileRegion from the cmake files, wangle does compile, and most tests pass, but:
The following tests FAILED:
5 - BootstrapTest (OTHER_FAULT)
7 - BroadcastPoolTest (OTHER_FAULT)
15 - ThreadPoolExecutorTest (OTHER_FAULT)
Playing devil's advocate here... we could create an OS X implementation of FileRegion
using sendfile
? It's equivalent to splice
but limited to writing to sockets.
[ 30%] Building CXX object CMakeFiles/wangle.dir/channel/FileRegion.cpp.o /Users/btv/wangle/wangle/channel/FileRegion.cpp:54:15: error: use of undeclared identifier 'SPLICE_F_NONBLOCK' int flags = SPLICE_F_NONBLOCK | SPLICE_F_MORE;