diff --git a/src/unix/bsd/mod.rs b/src/unix/bsd/mod.rs
index 0d5d24c3df1d4cff12891aaeb2c9fda7ef90076c..a70c1d92becd30f090dc0eac6cd4a20d5e43e70a 100644
--- a/src/unix/bsd/mod.rs
+++ b/src/unix/bsd/mod.rs
@@ -501,6 +501,10 @@ pub const REG_BACKR: ::c_int = 0o02000;
 pub const TIOCCBRK: ::c_uint = 0x2000747a;
 pub const TIOCSBRK: ::c_uint = 0x2000747b;
 
+pub const PRIO_PROCESS: ::c_int = 0;
+pub const PRIO_PGRP: ::c_int = 1;
+pub const PRIO_USER: ::c_int = 2;
+
 f! {
     pub fn CMSG_FIRSTHDR(mhdr: *const ::msghdr) -> *mut ::cmsghdr {
         if (*mhdr).msg_controllen as usize >= ::mem::size_of::<::cmsghdr>() {
diff --git a/src/unix/haiku/mod.rs b/src/unix/haiku/mod.rs
index 7df80652416008e5bbae9c293afea9651d09aae0..e7b104e994e5bdb87d019a4c5925060b76412920 100644
--- a/src/unix/haiku/mod.rs
+++ b/src/unix/haiku/mod.rs
@@ -1206,6 +1206,10 @@ pub const TIOCCBRK: ::c_int = TCGETA + 21;
 pub const TIOCMBIS: ::c_int = TCGETA + 22;
 pub const TIOCMBIC: ::c_int = TCGETA + 23;
 
+pub const PRIO_PROCESS: ::c_int = 0;
+pub const PRIO_PGRP: ::c_int = 1;
+pub const PRIO_USER: ::c_int = 2;
+
 f! {
     pub fn FD_CLR(fd: ::c_int, set: *mut fd_set) -> () {
         let fd = fd as usize;
diff --git a/src/unix/hermit/mod.rs b/src/unix/hermit/mod.rs
index 66ee6536447a1a2b44b01ab517c49fbf0c8beb36..ae3fa22ac5f3a4b1f8b3ba97316dc9d6494a7aea 100644
--- a/src/unix/hermit/mod.rs
+++ b/src/unix/hermit/mod.rs
@@ -939,6 +939,10 @@ const ULONG_SIZE: usize = 64;
 
 pub const WNOHANG: ::c_int = 0x00000001;
 
+pub const PRIO_PROCESS: ::c_int = 0;
+pub const PRIO_PGRP: ::c_int = 1;
+pub const PRIO_USER: ::c_int = 2;
+
 f! {
     pub fn WEXITSTATUS(status: ::c_int) -> ::c_int {
         (status >> 8) & 0xff
diff --git a/src/unix/linux_like/android/mod.rs b/src/unix/linux_like/android/mod.rs
index c83b8efa58fca4c6c1900691696b0eafa891a5a9..9cc1c77ad9650d400924c657315c0d1ae025c17a 100644
--- a/src/unix/linux_like/android/mod.rs
+++ b/src/unix/linux_like/android/mod.rs
@@ -2144,6 +2144,10 @@ pub const EDOM: ::c_int = 33;
 pub const ERANGE: ::c_int = 34;
 pub const EWOULDBLOCK: ::c_int = EAGAIN;
 
+pub const PRIO_PROCESS: ::c_int = 0;
+pub const PRIO_PGRP: ::c_int = 1;
+pub const PRIO_USER: ::c_int = 2;
+
 f! {
     pub fn CMSG_NXTHDR(mhdr: *const msghdr,
                        cmsg: *const cmsghdr) -> *mut cmsghdr {
diff --git a/src/unix/linux_like/emscripten/mod.rs b/src/unix/linux_like/emscripten/mod.rs
index ead0ea11d2cb504502d5ea04ac196a0a33fdd8d4..78170211a3f4cd1ff3874179e3c5c0d7bd0c14ed 100644
--- a/src/unix/linux_like/emscripten/mod.rs
+++ b/src/unix/linux_like/emscripten/mod.rs
@@ -1680,6 +1680,10 @@ pub const ARPD_LOOKUP: ::c_ushort = 0x02;
 pub const ARPD_FLUSH: ::c_ushort = 0x03;
 pub const ATF_MAGIC: ::c_int = 0x80;
 
+pub const PRIO_PROCESS: ::c_int = 0;
+pub const PRIO_PGRP: ::c_int = 1;
+pub const PRIO_USER: ::c_int = 2;
+
 f! {
     pub fn CMSG_NXTHDR(mhdr: *const msghdr,
                        cmsg: *const cmsghdr) -> *mut cmsghdr {
diff --git a/src/unix/linux_like/linux/gnu/mod.rs b/src/unix/linux_like/linux/gnu/mod.rs
index 7c8208ec70bd6fa210e8af9c3ae487c66d8fe0c0..da9890e0f0558cb4b18023867d794e39341c41f9 100644
--- a/src/unix/linux_like/linux/gnu/mod.rs
+++ b/src/unix/linux_like/linux/gnu/mod.rs
@@ -465,6 +465,10 @@ pub const RLIMIT_RTPRIO: ::__rlimit_resource_t = 14;
 pub const RLIMIT_RTTIME: ::__rlimit_resource_t = 15;
 pub const RLIMIT_NLIMITS: ::__rlimit_resource_t = 16;
 
+pub const PRIO_PROCESS: ::__priority_which_t = 0;
+pub const PRIO_PGRP: ::__priority_which_t = 1;
+pub const PRIO_USER: ::__priority_which_t = 2;
+
 pub const MS_RMT_MASK: ::c_ulong = 0x02800051;
 
 pub const __UT_LINESIZE: usize = 32;
diff --git a/src/unix/linux_like/linux/musl/mod.rs b/src/unix/linux_like/linux/musl/mod.rs
index 539a27b2b98a674b2723a245421b31d5f08f6161..b251383c178bce1c943f6188f91cf6634ed1c350 100644
--- a/src/unix/linux_like/linux/musl/mod.rs
+++ b/src/unix/linux_like/linux/musl/mod.rs
@@ -425,6 +425,10 @@ pub const REG_OK: ::c_int = 0;
 pub const TIOCSBRK: ::c_int = 0x5427;
 pub const TIOCCBRK: ::c_int = 0x5428;
 
+pub const PRIO_PROCESS: ::c_int = 0;
+pub const PRIO_PGRP: ::c_int = 1;
+pub const PRIO_USER: ::c_int = 2;
+
 extern "C" {
     pub fn sendmmsg(
         sockfd: ::c_int,
diff --git a/src/unix/mod.rs b/src/unix/mod.rs
index 1084d9aa9537aa16216f0ecf8fe9949e35706dad..55b892f7e7b634b34014bfd4151d840599975621 100644
--- a/src/unix/mod.rs
+++ b/src/unix/mod.rs
@@ -269,10 +269,6 @@ pub const LOG_NOWAIT: ::c_int = 0x10;
 pub const LOG_PRIMASK: ::c_int = 7;
 pub const LOG_FACMASK: ::c_int = 0x3f8;
 
-pub const PRIO_PROCESS: ::c_int = 0;
-pub const PRIO_PGRP: ::c_int = 1;
-pub const PRIO_USER: ::c_int = 2;
-
 pub const PRIO_MIN: ::c_int = -20;
 pub const PRIO_MAX: ::c_int = 20;
 
diff --git a/src/unix/newlib/mod.rs b/src/unix/newlib/mod.rs
index 0823f3b8fc1fb5960c1d61d58398c49a15e61847..f66707453a0b08ed295f24ef1f20d296b08e1974 100644
--- a/src/unix/newlib/mod.rs
+++ b/src/unix/newlib/mod.rs
@@ -547,6 +547,10 @@ pub const EAI_MEMORY: ::c_int = -304;
 pub const EAI_NONAME: ::c_int = -305;
 pub const EAI_SOCKTYPE: ::c_int = -307;
 
+pub const PRIO_PROCESS: ::c_int = 0;
+pub const PRIO_PGRP: ::c_int = 1;
+pub const PRIO_USER: ::c_int = 2;
+
 f! {
     pub fn FD_CLR(fd: ::c_int, set: *mut fd_set) -> () {
         let bits = ::mem::size_of_val(&(*set).fds_bits[0]) * 8;
diff --git a/src/unix/redox/mod.rs b/src/unix/redox/mod.rs
index 7b4b0217629484e3a926d9b1c2f15ce02e6eba76..55f64ee54fea06f270e3c031a8e6b975568f22a3 100644
--- a/src/unix/redox/mod.rs
+++ b/src/unix/redox/mod.rs
@@ -823,6 +823,10 @@ pub const _PC_ALLOC_SIZE_MIN: ::c_int = 18;
 pub const _PC_SYMLINK_MAX: ::c_int = 19;
 pub const _PC_2_SYMLINKS: ::c_int = 20;
 
+pub const PRIO_PROCESS: ::c_int = 0;
+pub const PRIO_PGRP: ::c_int = 1;
+pub const PRIO_USER: ::c_int = 2;
+
 // wait.h
 f! {
     pub fn WIFSTOPPED(status: ::c_int) -> bool {
diff --git a/src/unix/solarish/mod.rs b/src/unix/solarish/mod.rs
index ba959a7937f45478776170c5dca1eac810147fbd..b0eecf15c39239b90b12ba0f1bc6499c7c02117b 100644
--- a/src/unix/solarish/mod.rs
+++ b/src/unix/solarish/mod.rs
@@ -1995,6 +1995,10 @@ pub const TIME_OOP: i32 = 3;
 pub const TIME_WAIT: i32 = 4;
 pub const TIME_ERROR: i32 = 5;
 
+pub const PRIO_PROCESS: ::c_int = 0;
+pub const PRIO_PGRP: ::c_int = 1;
+pub const PRIO_USER: ::c_int = 2;
+
 f! {
     pub fn FD_CLR(fd: ::c_int, set: *mut fd_set) -> () {
         let bits = ::mem::size_of_val(&(*set).fds_bits[0]) * 8;
diff --git a/src/unix/uclibc/mod.rs b/src/unix/uclibc/mod.rs
index e57c43d89949fa4f46c4e7d9484dae1077496e9a..a68cb7a02818e4e8a9a39c173ebaab0e0d8a9543 100644
--- a/src/unix/uclibc/mod.rs
+++ b/src/unix/uclibc/mod.rs
@@ -1503,6 +1503,10 @@ pub const NOSTR: ::nl_item = 0x503;
 
 pub const FILENAME_MAX: ::c_uint = 4095;
 
+pub const PRIO_PROCESS: ::c_int = 0;
+pub const PRIO_PGRP: ::c_int = 1;
+pub const PRIO_USER: ::c_int = 2;
+
 f! {
     pub fn FD_CLR(fd: ::c_int, set: *mut fd_set) -> () {
         let fd = fd as usize;