From 2f718d40d63513ee02674fc36dd7d7cab013bcae Mon Sep 17 00:00:00 2001
From: Dan Robertson <dan.robertson@anidata.org>
Date: Sat, 10 Mar 2018 19:01:54 +0000
Subject: [PATCH] mman: mman.h should be located at sys/mman.h

 - Update target location of mman.h to sys/mman.h
 - Add more types to sys/type.h
---
 include/sys/types.h       | 3 +++
 src/mman/build.rs         | 2 +-
 src/mman/cbindgen.toml    | 4 ++--
 src/platform/src/types.rs | 1 +
 4 files changed, 7 insertions(+), 3 deletions(-)

diff --git a/include/sys/types.h b/include/sys/types.h
index 0db183a7..3efc6300 100644
--- a/include/sys/types.h
+++ b/include/sys/types.h
@@ -8,6 +8,7 @@ typedef long dev_t;
 typedef unsigned long ino_t;
 
 typedef int gid_t;
+
 typedef int uid_t;
 
 typedef int mode_t;
@@ -18,6 +19,8 @@ typedef long off_t;
 
 typedef int pid_t;
 
+typedef unsigned id_t;
+
 typedef long ssize_t;
 
 typedef long time_t;
diff --git a/src/mman/build.rs b/src/mman/build.rs
index 652a2ae4..19d21bd4 100644
--- a/src/mman/build.rs
+++ b/src/mman/build.rs
@@ -7,5 +7,5 @@ fn main() {
     fs::create_dir_all("../../target/include").expect("failed to create include directory");
     cbindgen::generate(crate_dir)
         .expect("failed to generate bindings")
-        .write_to_file("../../target/include/mman.h");
+        .write_to_file("../../target/include/sys/mman.h");
 }
diff --git a/src/mman/cbindgen.toml b/src/mman/cbindgen.toml
index 84677294..783348ba 100644
--- a/src/mman/cbindgen.toml
+++ b/src/mman/cbindgen.toml
@@ -1,5 +1,5 @@
-sys_includes = []
-include_guard = "_MMAN_H"
+sys_includes = ["sys/types.h"]
+include_guard = "_SYS_MMAN_H"
 language = "C"
 
 [enum]
diff --git a/src/platform/src/types.rs b/src/platform/src/types.rs
index 45ae6449..9268bf55 100644
--- a/src/platform/src/types.rs
+++ b/src/platform/src/types.rs
@@ -50,6 +50,7 @@ pub type off_t = i64;
 pub type mode_t = u16;
 pub type time_t = i64;
 pub type pid_t = usize;
+pub type id_t = usize;
 pub type gid_t = usize;
 pub type uid_t = usize;
 pub type dev_t = usize;
-- 
GitLab