add aarch64-unknown-openbsd definition

move c_char definition more deeper to make it 'u8' on
aarch64-unknown-openbsd.
diff --git a/src/unix/bsd/apple/mod.rs b/src/unix/bsd/apple/mod.rs
index 694d394..5049d39 100644
--- a/src/unix/bsd/apple/mod.rs
+++ b/src/unix/bsd/apple/mod.rs
@@ -2,6 +2,7 @@
 //!
 //! This covers *-apple-* triples currently
 
+pub type c_char = i8;
 pub type clock_t = c_ulong;
 pub type time_t = c_long;
 pub type suseconds_t = i32;
diff --git a/src/unix/bsd/freebsdlike/mod.rs b/src/unix/bsd/freebsdlike/mod.rs
index e1f2e33..6a34571 100644
--- a/src/unix/bsd/freebsdlike/mod.rs
+++ b/src/unix/bsd/freebsdlike/mod.rs
@@ -1,3 +1,4 @@
+pub type c_char = i8;
 pub type dev_t = u32;
 pub type mode_t = u16;
 pub type pthread_attr_t = *mut ::c_void;
diff --git a/src/unix/bsd/mod.rs b/src/unix/bsd/mod.rs
index a9f9fa8..b9a88f0 100644
--- a/src/unix/bsd/mod.rs
+++ b/src/unix/bsd/mod.rs
@@ -1,6 +1,5 @@
 use dox::{mem, Option};
 
-pub type c_char = i8;
 pub type wchar_t = i32;
 pub type off_t = i64;
 pub type useconds_t = u32;
diff --git a/src/unix/bsd/netbsdlike/netbsd/mod.rs b/src/unix/bsd/netbsdlike/netbsd/mod.rs
index c3dd2eb..e79e4e9 100644
--- a/src/unix/bsd/netbsdlike/netbsd/mod.rs
+++ b/src/unix/bsd/netbsdlike/netbsd/mod.rs
@@ -1,5 +1,6 @@
 use dox::mem;
 
+pub type c_char = i8;
 pub type clock_t = ::c_uint;
 pub type suseconds_t = ::c_int;
 pub type dev_t = u64;
diff --git a/src/unix/bsd/netbsdlike/openbsdlike/bitrig.rs b/src/unix/bsd/netbsdlike/openbsdlike/bitrig/mod.rs
similarity index 90%
rename from src/unix/bsd/netbsdlike/openbsdlike/bitrig.rs
rename to src/unix/bsd/netbsdlike/openbsdlike/bitrig/mod.rs
index 695cf68..ac4acad 100644
--- a/src/unix/bsd/netbsdlike/openbsdlike/bitrig.rs
+++ b/src/unix/bsd/netbsdlike/openbsdlike/bitrig/mod.rs
@@ -1,3 +1,5 @@
+pub type c_char = i8;
+
 s! {
     pub struct lconv {
         pub decimal_point: *mut ::c_char,
@@ -73,3 +75,15 @@
     pub fn uselocale(loc: ::locale_t) -> ::locale_t;
     pub fn querylocale(mask: ::c_int, loc: ::locale_t) -> *const ::c_char;
 }
+
+cfg_if! {
+    if #[cfg(target_arch = "x86")] {
+        mod x86;
+        pub use self::x86::*;
+    } else if #[cfg(target_arch = "x86_64")] {
+        mod x86_64;
+        pub use self::x86_64::*;
+    } else {
+        // Unknown target_arch
+    }
+}
diff --git a/src/unix/bsd/netbsdlike/openbsdlike/other/b32/mod.rs b/src/unix/bsd/netbsdlike/openbsdlike/bitrig/x86.rs
similarity index 100%
rename from src/unix/bsd/netbsdlike/openbsdlike/other/b32/mod.rs
rename to src/unix/bsd/netbsdlike/openbsdlike/bitrig/x86.rs
diff --git a/src/unix/bsd/netbsdlike/openbsdlike/other/b64/mod.rs b/src/unix/bsd/netbsdlike/openbsdlike/bitrig/x86_64.rs
similarity index 100%
rename from src/unix/bsd/netbsdlike/openbsdlike/other/b64/mod.rs
rename to src/unix/bsd/netbsdlike/openbsdlike/bitrig/x86_64.rs
diff --git a/src/unix/bsd/netbsdlike/openbsdlike/mod.rs b/src/unix/bsd/netbsdlike/openbsdlike/mod.rs
index 59b0318..1f40e34 100644
--- a/src/unix/bsd/netbsdlike/openbsdlike/mod.rs
+++ b/src/unix/bsd/netbsdlike/openbsdlike/mod.rs
@@ -748,6 +748,3 @@
         // Unknown target_os
     }
 }
-
-mod other;
-pub use self::other::*;
diff --git a/src/unix/bsd/netbsdlike/openbsdlike/openbsd/aarch64.rs b/src/unix/bsd/netbsdlike/openbsdlike/openbsd/aarch64.rs
new file mode 100644
index 0000000..6aa9950
--- /dev/null
+++ b/src/unix/bsd/netbsdlike/openbsdlike/openbsd/aarch64.rs
@@ -0,0 +1,3 @@
+pub type c_long = i64;
+pub type c_ulong = u64;
+pub type c_char = u8;
diff --git a/src/unix/bsd/netbsdlike/openbsdlike/openbsd.rs b/src/unix/bsd/netbsdlike/openbsdlike/openbsd/mod.rs
similarity index 78%
rename from src/unix/bsd/netbsdlike/openbsdlike/openbsd.rs
rename to src/unix/bsd/netbsdlike/openbsdlike/openbsd/mod.rs
index 5c80447..e7e5876 100644
--- a/src/unix/bsd/netbsdlike/openbsdlike/openbsd.rs
+++ b/src/unix/bsd/netbsdlike/openbsdlike/openbsd/mod.rs
@@ -33,3 +33,18 @@
     pub fn execvpe(file: *const ::c_char, argv: *const *const ::c_char,
                    envp: *const *const ::c_char) -> ::c_int;
 }
+
+cfg_if! {
+    if #[cfg(target_arch = "x86")] {
+        mod x86;
+        pub use self::x86::*;
+    } else if #[cfg(target_arch = "x86_64")] {
+        mod x86_64;
+        pub use self::x86_64::*;
+    } else if #[cfg(target_arch = "aarch64")] {
+        mod aarch64;
+        pub use self::aarch64::*;
+    } else {
+        // Unknown target_arch
+    }
+}
diff --git a/src/unix/bsd/netbsdlike/openbsdlike/openbsd/x86.rs b/src/unix/bsd/netbsdlike/openbsdlike/openbsd/x86.rs
new file mode 100644
index 0000000..a00e333
--- /dev/null
+++ b/src/unix/bsd/netbsdlike/openbsdlike/openbsd/x86.rs
@@ -0,0 +1,3 @@
+pub type c_long = i32;
+pub type c_ulong = u32;
+pub type c_char = i8;
diff --git a/src/unix/bsd/netbsdlike/openbsdlike/openbsd/x86_64.rs b/src/unix/bsd/netbsdlike/openbsdlike/openbsd/x86_64.rs
new file mode 100644
index 0000000..27b9412
--- /dev/null
+++ b/src/unix/bsd/netbsdlike/openbsdlike/openbsd/x86_64.rs
@@ -0,0 +1,3 @@
+pub type c_long = i64;
+pub type c_ulong = u64;
+pub type c_char = i8;
diff --git a/src/unix/bsd/netbsdlike/openbsdlike/other/mod.rs b/src/unix/bsd/netbsdlike/openbsdlike/other/mod.rs
deleted file mode 100644
index e4087da..0000000
--- a/src/unix/bsd/netbsdlike/openbsdlike/other/mod.rs
+++ /dev/null
@@ -1,11 +0,0 @@
-cfg_if! {
-    if #[cfg(target_arch = "x86_64")] {
-        mod b64;
-        pub use self::b64::*;
-    } else if #[cfg(target_arch = "x86")] {
-        mod b32;
-        pub use self::b32::*;
-    } else {
-        // Unknown target_arch
-    }
-}