diff --git a/ci/dox.sh b/ci/dox.sh index 4f13b0e7c2..b4178089af 100755 --- a/ci/dox.sh +++ b/ci/dox.sh @@ -22,19 +22,24 @@ dox() { rm -rf "target/doc/${arch}" mkdir "target/doc/${arch}" + export RUSTFLAGS="--cfg core_arch_docs" + export RUSTDOCFLAGS="--cfg core_arch_docs" + cargo build --verbose --target "${target}" --manifest-path crates/core_arch/Cargo.toml cargo build --verbose --target "${target}" --manifest-path crates/std_detect/Cargo.toml rustdoc --verbose --target "${target}" \ -o "target/doc/${arch}" crates/core_arch/src/lib.rs \ --crate-name core_arch \ - --library-path "target/${target}/debug/deps" + --library-path "target/${target}/debug/deps" \ + --cfg core_arch_docs rustdoc --verbose --target "${target}" \ -o "target/doc/${arch}" crates/std_detect/src/lib.rs \ --crate-name std_detect \ --library-path "target/${target}/debug/deps" \ --extern cfg_if="$(ls target/"${target}"/debug/deps/libcfg_if-*.rlib)" \ - --extern libc="$(ls target/"${target}"/debug/deps/liblibc-*.rlib)" + --extern libc="$(ls target/"${target}"/debug/deps/liblibc-*.rlib)" \ + --cfg core_arch_docs } dox i686 i686-unknown-linux-gnu diff --git a/crates/core_arch/Cargo.toml b/crates/core_arch/Cargo.toml index 19c700bf0f..56140e0c34 100644 --- a/crates/core_arch/Cargo.toml +++ b/crates/core_arch/Cargo.toml @@ -14,6 +14,7 @@ readme = "README.md" keywords = ["core", "simd", "arch", "intrinsics"] categories = ["hardware-support", "no-std"] license = "MIT/Apache-2.0" +build = "build.rs" [badges] travis-ci = { repository = "rust-lang-nursery/stdsimd" } diff --git a/crates/core_arch/build.rs b/crates/core_arch/build.rs index f497e1830e..4d65e9ddc3 100644 --- a/crates/core_arch/build.rs +++ b/crates/core_arch/build.rs @@ -1,6 +1,3 @@ -use std::env; - fn main() { - println!("cargo:rustc-env=TARGET={}", env::var("TARGET").unwrap()); - println!("cargo:rerurn-if-changed=build.rs"); + println!("cargo:rustc-cfg=core_arch_docs"); } diff --git a/crates/core_arch/src/mod.rs b/crates/core_arch/src/mod.rs index 1991a57310..9705e091ca 100644 --- a/crates/core_arch/src/mod.rs +++ b/crates/core_arch/src/mod.rs @@ -5,7 +5,11 @@ mod macros; mod simd; -#[doc(include = "core_arch_docs.md")] +#[cfg_attr( + not(core_arch_docs), + doc(include = "../stdsimd/crates/core_arch/src/core_arch_docs.md") +)] +#[cfg_attr(core_arch_docs, doc(include = "core_arch_docs.md"))] #[stable(feature = "simd_arch", since = "1.27.0")] pub mod arch { /// Platform-specific intrinsics for the `x86` platform.