Skip to content

Commit

Permalink
Add emscripten support
Browse files Browse the repository at this point in the history
  • Loading branch information
brson committed Dec 21, 2015
1 parent e0c0bf4 commit 7d1d575
Show file tree
Hide file tree
Showing 4 changed files with 14 additions and 4 deletions.
3 changes: 3 additions & 0 deletions src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -72,6 +72,9 @@
#![cfg_attr(target_os = "dragonfly", doc(
html_root_url = "https://doc.rust-lang.org/libc/x86_64-unknown-dragonfly"
))]
#![cfg_attr(all(target_os = "emscripten", target_arch = "asmjs"), doc(
html_root_url = "https://doc.rust-lang.org/libc/asmjs-unknown-emscripten"
))]

// Attributes needed when building as part of the standard library
#![cfg_attr(stdbuild, feature(no_std, core, core_slice_ext, staged_api, custom_attribute))]
Expand Down
7 changes: 6 additions & 1 deletion src/unix/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -124,6 +124,9 @@ cfg_if! {
} else if #[cfg(target_env = "musl")] {
#[link(name = "c", kind = "static")]
extern {}
} else if #[cfg(target_os = "emscripten")] {
#[link(name = "c")]
extern {}
} else if #[cfg(any(target_os = "macos",
target_os = "ios",
target_os = "android",
Expand Down Expand Up @@ -664,7 +667,9 @@ extern {
}

cfg_if! {
if #[cfg(any(target_os = "linux", target_os = "android"))] {
if #[cfg(any(target_os = "linux",
target_os = "android",
target_os = "emscripten"))] {
mod notbsd;
pub use self::notbsd::*;
} else if #[cfg(any(target_os = "macos",
Expand Down
3 changes: 2 additions & 1 deletion src/unix/notbsd/linux/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -511,7 +511,8 @@ extern {
}

cfg_if! {
if #[cfg(target_env = "musl")] {
if #[cfg(any(target_env = "musl",
target_os = "emscripten"))] {
mod musl;
pub use self::musl::*;
} else if #[cfg(any(target_arch = "mips", target_arch = "mipsel"))] {
Expand Down
5 changes: 3 additions & 2 deletions src/unix/notbsd/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ s! {
pub ai_protocol: ::c_int,
pub ai_addrlen: socklen_t,

#[cfg(target_os = "linux")]
#[cfg(any(target_os = "linux", target_os = "emscripten"))]
pub ai_addr: *mut ::sockaddr,

pub ai_canonname: *mut c_char,
Expand Down Expand Up @@ -610,7 +610,8 @@ extern {
}

cfg_if! {
if #[cfg(target_os = "linux")] {
if #[cfg(any(target_os = "linux",
target_os = "emscripten"))] {
mod linux;
pub use self::linux::*;
} else if #[cfg(target_os = "android")] {
Expand Down

0 comments on commit 7d1d575

Please sign in to comment.