Index: src/OFRunLoop+Private.h ================================================================== --- src/OFRunLoop+Private.h +++ src/OFRunLoop+Private.h @@ -14,11 +14,13 @@ * file. */ #import "OFRunLoop.h" #import "OFStream.h" -#import "OFUDPSocket.h" +#ifdef OF_HAVE_SOCKETS +# import "OFUDPSocket.h" +#endif #import "macros.h" @interface OFRunLoop (OF_PRIVATE_CATEGORY) + (void)OF_setMainRunLoop: (OFRunLoop*)runLoop; Index: src/OFStream.h ================================================================== --- src/OFStream.h +++ src/OFStream.h @@ -23,11 +23,13 @@ #include #import "OFObject.h" #import "OFString.h" -#import "OFKernelEventObserver.h" +#ifdef OF_HAVE_SOCKETS +# import "OFKernelEventObserver.h" +#endif /*! @file */ @class OFStream; @class OFDataArray; @@ -74,12 +76,15 @@ * the methods that do the actual work. OFStream uses those for all other * methods and does all the caching and other stuff for you. If you * override these methods without the lowlevel prefix, you *will* break * caching and get broken results! */ -@interface OFStream: OFObject +@interface OFStream: OFObject < +#ifdef OF_HAVE_SOCKETS + OFReadyForReadingObserving, OFReadyForWritingObserving, +#endif + OFCopying> { char *_readBuffer, *_writeBuffer; size_t _readBufferLength, _writeBufferLength; bool _writeBufferEnabled, _blocking, _waitingForDelimiter; }