summary refs log tree commit diff stats
path: root/lib/pure
diff options
context:
space:
mode:
authorcheatfate <ka@hardcore.kiev.ua>2016-12-07 14:08:53 +0200
committercheatfate <ka@hardcore.kiev.ua>2016-12-07 14:08:53 +0200
commitb59ce8d32114e6e6bd62aa8c8e3ca61fe70a6236 (patch)
tree0e4c06b1143b2d388dd4b7f47bd9d9e615288584 /lib/pure
parentac4ccc695f880fa0f8add1d4d2236a72498cbd08 (diff)
downloadNim-b59ce8d32114e6e6bd62aa8c8e3ca61fe70a6236.tar.gz
Fix compilation errors and enable async events on partially supported systems.
Diffstat (limited to 'lib/pure')
-rw-r--r--lib/pure/ioselectors.nim14
1 files changed, 9 insertions, 5 deletions
diff --git a/lib/pure/ioselectors.nim b/lib/pure/ioselectors.nim
index 28e6ef3d0..5745d0b72 100644
--- a/lib/pure/ioselectors.nim
+++ b/lib/pure/ioselectors.nim
@@ -18,10 +18,12 @@
 ## Supported features: files, sockets, pipes, timers, processes, signals
 ## and user events.
 ##
-## Fully supported OS: MacOSX, FreeBSD, OpenBSD, NetBSD, Linux.
+## Fully supported OS: MacOSX, FreeBSD, OpenBSD, NetBSD, Linux (except
+## for Android).
 ##
 ## Partially supported OS: Windows (only sockets and user events),
 ## Solaris (files, sockets, handles and user events).
+## Android (files, sockets, handles and user events).
 ##
 ## TODO: ``/dev/poll``, ``event ports`` and filesystem events.
 
@@ -29,9 +31,11 @@ import os
 
 const hasThreadSupport = compileOption("threads") and defined(threadsafe)
 
-const supportedPlatform = defined(macosx) or defined(freebsd) or
-                          defined(netbsd) or defined(openbsd) or
-                          (defined(linux) and not defined(android))
+const ioselSupportedPlatform* = defined(macosx) or defined(freebsd) or
+                                defined(netbsd) or defined(openbsd) or
+                                (defined(linux) and not defined(android))
+  ## This constant is used to determine whether the destination platform is
+  ## fully supported by ``ioselectors`` module.
 
 const bsdPlatform = defined(macosx) or defined(freebsd) or
                     defined(netbsd) or defined(openbsd)
@@ -244,7 +248,7 @@ else:
       skey.key.fd = pkeyfd
       skey.key.data = pdata
 
-  when supportedPlatform:
+  when ioselSupportedPlatform:
     template blockSignals(newmask: var Sigset, oldmask: var Sigset) =
       when hasThreadSupport:
         if posix.pthread_sigmask(SIG_BLOCK, newmask, oldmask) == -1: