diff --git a/src/signal/src/lib.rs b/src/signal/src/lib.rs
index 80ec786e331653ceb351e324f3a9a3e49f635df6..9a4e781785290bb3e9aa6ff661530b61b230ae70 100644
--- a/src/signal/src/lib.rs
+++ b/src/signal/src/lib.rs
@@ -4,17 +4,183 @@
 
 extern crate platform;
 
+use platform::types::*;
+
 #[cfg(target_os = "linux")]
-#[path = "linux.rs"]
-pub mod sys;
+#[repr(C)]
+pub struct sigset_t {
+    pub bits: [u64; 16],
+}
+
+#[cfg(target_os = "linux")]
+pub const SIGHUP: usize = 1;
+#[cfg(target_os = "linux")]
+pub const SIGINT: usize = 2;
+#[cfg(target_os = "linux")]
+pub const SIGQUIT: usize = 3;
+#[cfg(target_os = "linux")]
+pub const SIGILL: usize = 4;
+#[cfg(target_os = "linux")]
+pub const SIGTRAP: usize = 5;
+#[cfg(target_os = "linux")]
+pub const SIGABRT: usize = 6;
+#[cfg(target_os = "linux")]
+pub const SIGIOT: usize = SIGABRT;
+#[cfg(target_os = "linux")]
+pub const SIGBUS: usize = 7;
+#[cfg(target_os = "linux")]
+pub const SIGFPE: usize = 8;
+#[cfg(target_os = "linux")]
+pub const SIGKILL: usize = 9;
+#[cfg(target_os = "linux")]
+pub const SIGUSR1: usize = 10;
+#[cfg(target_os = "linux")]
+pub const SIGSEGV: usize = 11;
+#[cfg(target_os = "linux")]
+pub const SIGUSR2: usize = 12;
+#[cfg(target_os = "linux")]
+pub const SIGPIPE: usize = 13;
+#[cfg(target_os = "linux")]
+pub const SIGALRM: usize = 14;
+#[cfg(target_os = "linux")]
+pub const SIGTERM: usize = 15;
+#[cfg(target_os = "linux")]
+pub const SIGSTKFLT: usize = 16;
+#[cfg(target_os = "linux")]
+pub const SIGCHLD: usize = 17;
+#[cfg(target_os = "linux")]
+pub const SIGCONT: usize = 18;
+#[cfg(target_os = "linux")]
+pub const SIGSTOP: usize = 19;
+#[cfg(target_os = "linux")]
+pub const SIGTSTP: usize = 20;
+#[cfg(target_os = "linux")]
+pub const SIGTTIN: usize = 21;
+#[cfg(target_os = "linux")]
+pub const SIGTTOU: usize = 22;
+#[cfg(target_os = "linux")]
+pub const SIGURG: usize = 23;
+#[cfg(target_os = "linux")]
+pub const SIGXCPU: usize = 24;
+#[cfg(target_os = "linux")]
+pub const SIGXFSZ: usize = 25;
+#[cfg(target_os = "linux")]
+pub const SIGVTALRM: usize = 26;
+#[cfg(target_os = "linux")]
+pub const SIGPROF: usize = 27;
+#[cfg(target_os = "linux")]
+pub const SIGWINCH: usize = 28;
+#[cfg(target_os = "linux")]
+pub const SIGIO: usize = 29;
+#[cfg(target_os = "linux")]
+pub const SIGPOLL: usize = 29;
+#[cfg(target_os = "linux")]
+pub const SIGPWR: usize = 30;
+#[cfg(target_os = "linux")]
+pub const SIGSYS: usize = 31;
+#[cfg(target_os = "linux")]
+pub const SIGUNUSED: usize = SIGSYS;
+
+#[cfg(target_os = "linux")]
+pub const SA_NOCLDSTOP: usize = 1;
+#[cfg(target_os = "linux")]
+pub const SA_NOCLDWAIT: usize = 2;
+#[cfg(target_os = "linux")]
+pub const SA_SIGINFO: usize = 4;
+#[cfg(target_os = "linux")]
+pub const SA_ONSTACK: usize = 0x08000000;
+#[cfg(target_os = "linux")]
+pub const SA_RESTART: usize = 0x10000000;
+#[cfg(target_os = "linux")]
+pub const SA_NODEFER: usize = 0x40000000;
+#[cfg(target_os = "linux")]
+pub const SA_RESETHAND: usize = 0x80000000;
+#[cfg(target_os = "linux")]
+pub const SA_RESTORER: usize = 0x04000000;
 
 #[cfg(target_os = "redox")]
-#[path = "redox.rs"]
-pub mod sys;
+#[repr(C)]
+pub struct sigset_t {
+    pub bits: [u64; 2],
+}
 
-pub use sys::*;
+#[cfg(target_os = "redox")]
+pub const SIGHUP: usize = 1;
+#[cfg(target_os = "redox")]
+pub const SIGINT: usize = 2;
+#[cfg(target_os = "redox")]
+pub const SIGQUIT: usize = 3;
+#[cfg(target_os = "redox")]
+pub const SIGILL: usize = 4;
+#[cfg(target_os = "redox")]
+pub const SIGTRAP: usize = 5;
+#[cfg(target_os = "redox")]
+pub const SIGBUS: usize = 7;
+#[cfg(target_os = "redox")]
+pub const SIGFPE: usize = 8;
+#[cfg(target_os = "redox")]
+pub const SIGKILL: usize = 9;
+#[cfg(target_os = "redox")]
+pub const SIGUSR1: usize = 10;
+#[cfg(target_os = "redox")]
+pub const SIGSEGV: usize = 11;
+#[cfg(target_os = "redox")]
+pub const SIGUSR2: usize = 12;
+#[cfg(target_os = "redox")]
+pub const SIGPIPE: usize = 13;
+#[cfg(target_os = "redox")]
+pub const SIGALRM: usize = 14;
+#[cfg(target_os = "redox")]
+pub const SIGTERM: usize = 15;
+#[cfg(target_os = "redox")]
+pub const SIGSTKFLT: usize = 16;
+#[cfg(target_os = "redox")]
+pub const SIGCHLD: usize = 17;
+#[cfg(target_os = "redox")]
+pub const SIGCONT: usize = 18;
+#[cfg(target_os = "redox")]
+pub const SIGSTOP: usize = 19;
+#[cfg(target_os = "redox")]
+pub const SIGTSTP: usize = 20;
+#[cfg(target_os = "redox")]
+pub const SIGTTIN: usize = 21;
+#[cfg(target_os = "redox")]
+pub const SIGTTOU: usize = 22;
+#[cfg(target_os = "redox")]
+pub const SIGURG: usize = 23;
+#[cfg(target_os = "redox")]
+pub const SIGXCPU: usize = 24;
+#[cfg(target_os = "redox")]
+pub const SIGXFSZ: usize = 25;
+#[cfg(target_os = "redox")]
+pub const SIGVTALRM: usize = 26;
+#[cfg(target_os = "redox")]
+pub const SIGPROF: usize = 27;
+#[cfg(target_os = "redox")]
+pub const SIGWINCH: usize = 28;
+#[cfg(target_os = "redox")]
+pub const SIGIO: usize = 29;
+#[cfg(target_os = "redox")]
+pub const SIGPWR: usize = 30;
+#[cfg(target_os = "redox")]
+pub const SIGSYS: usize = 31;
 
-use platform::types::*;
+#[cfg(target_os = "redox")]
+pub const SA_NOCLDSTOP: usize = 0x00000001;
+#[cfg(target_os = "redox")]
+pub const SA_NOCLDWAIT: usize = 0x00000002;
+#[cfg(target_os = "redox")]
+pub const SA_SIGINFO: usize = 0x00000004;
+#[cfg(target_os = "redox")]
+pub const SA_RESTORER: usize = 0x04000000;
+#[cfg(target_os = "redox")]
+pub const SA_ONSTACK: usize = 0x08000000;
+#[cfg(target_os = "redox")]
+pub const SA_RESTART: usize = 0x10000000;
+#[cfg(target_os = "redox")]
+pub const SA_NODEFER: usize = 0x40000000;
+#[cfg(target_os = "redox")]
+pub const SA_RESETHAND: usize = 0x80000000;
 
 #[repr(C)]
 pub struct sigaction {
diff --git a/src/signal/src/linux.rs b/src/signal/src/linux.rs
deleted file mode 100644
index 63eff1c144d5888806f3b1ddafab65d619fb8b30..0000000000000000000000000000000000000000
--- a/src/signal/src/linux.rs
+++ /dev/null
@@ -1,48 +0,0 @@
-#[repr(C)]
-pub struct sigset_t {
-    pub bits: [u64; 16],
-}
-
-pub const SIGHUP: usize = 1;
-pub const SIGINT: usize = 2;
-pub const SIGQUIT: usize = 3;
-pub const SIGILL: usize = 4;
-pub const SIGTRAP: usize = 5;
-pub const SIGABRT: usize = 6;
-pub const SIGIOT: usize = SIGABRT;
-pub const SIGBUS: usize = 7;
-pub const SIGFPE: usize = 8;
-pub const SIGKILL: usize = 9;
-pub const SIGUSR1: usize = 10;
-pub const SIGSEGV: usize = 11;
-pub const SIGUSR2: usize = 12;
-pub const SIGPIPE: usize = 13;
-pub const SIGALRM: usize = 14;
-pub const SIGTERM: usize = 15;
-pub const SIGSTKFLT: usize = 16;
-pub const SIGCHLD: usize = 17;
-pub const SIGCONT: usize = 18;
-pub const SIGSTOP: usize = 19;
-pub const SIGTSTP: usize = 20;
-pub const SIGTTIN: usize = 21;
-pub const SIGTTOU: usize = 22;
-pub const SIGURG: usize = 23;
-pub const SIGXCPU: usize = 24;
-pub const SIGXFSZ: usize = 25;
-pub const SIGVTALRM: usize = 26;
-pub const SIGPROF: usize = 27;
-pub const SIGWINCH: usize = 28;
-pub const SIGIO: usize = 29;
-pub const SIGPOLL: usize = 29;
-pub const SIGPWR: usize = 30;
-pub const SIGSYS: usize = 31;
-pub const SIGUNUSED: usize = SIGSYS;
-
-pub const SA_NOCLDSTOP: usize = 1;
-pub const SA_NOCLDWAIT: usize = 2;
-pub const SA_SIGINFO: usize = 4;
-pub const SA_ONSTACK: usize = 0x08000000;
-pub const SA_RESTART: usize = 0x10000000;
-pub const SA_NODEFER: usize = 0x40000000;
-pub const SA_RESETHAND: usize = 0x80000000;
-pub const SA_RESTORER: usize = 0x04000000;
diff --git a/src/signal/src/redox.rs b/src/signal/src/redox.rs
deleted file mode 100644
index 54cb42adc53d3fc9f88d0720594c3fdd07a042df..0000000000000000000000000000000000000000
--- a/src/signal/src/redox.rs
+++ /dev/null
@@ -1,44 +0,0 @@
-#[repr(C)]
-pub struct sigset_t {
-    pub bits: [u64; 2],
-}
-
-pub const SIGHUP: usize = 1;
-pub const SIGINT: usize = 2;
-pub const SIGQUIT: usize = 3;
-pub const SIGILL: usize = 4;
-pub const SIGTRAP: usize = 5;
-pub const SIGBUS: usize = 7;
-pub const SIGFPE: usize = 8;
-pub const SIGKILL: usize = 9;
-pub const SIGUSR1: usize = 10;
-pub const SIGSEGV: usize = 11;
-pub const SIGUSR2: usize = 12;
-pub const SIGPIPE: usize = 13;
-pub const SIGALRM: usize = 14;
-pub const SIGTERM: usize = 15;
-pub const SIGSTKFLT: usize = 16;
-pub const SIGCHLD: usize = 17;
-pub const SIGCONT: usize = 18;
-pub const SIGSTOP: usize = 19;
-pub const SIGTSTP: usize = 20;
-pub const SIGTTIN: usize = 21;
-pub const SIGTTOU: usize = 22;
-pub const SIGURG: usize = 23;
-pub const SIGXCPU: usize = 24;
-pub const SIGXFSZ: usize = 25;
-pub const SIGVTALRM: usize = 26;
-pub const SIGPROF: usize = 27;
-pub const SIGWINCH: usize = 28;
-pub const SIGIO: usize = 29;
-pub const SIGPWR: usize = 30;
-pub const SIGSYS: usize = 31;
-
-pub const SA_NOCLDSTOP: usize = 0x00000001;
-pub const SA_NOCLDWAIT: usize = 0x00000002;
-pub const SA_SIGINFO: usize = 0x00000004;
-pub const SA_RESTORER: usize = 0x04000000;
-pub const SA_ONSTACK: usize = 0x08000000;
-pub const SA_RESTART: usize = 0x10000000;
-pub const SA_NODEFER: usize = 0x40000000;
-pub const SA_RESETHAND: usize = 0x80000000;