summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--build.rs6
-rw-r--r--ci/azure.yml6
-rw-r--r--src/lib.rs4
3 files changed, 11 insertions, 5 deletions
diff --git a/build.rs b/build.rs
index efc95b6627..d9d23ca2ac 100644
--- a/build.rs
+++ b/build.rs
@@ -7,7 +7,6 @@ fn main() {
rustc_minor_version().expect("Failed to get rustc version");
let rustc_dep_of_std = env::var("CARGO_FEATURE_RUSTC_DEP_OF_STD").is_ok();
let align_cargo_feature = env::var("CARGO_FEATURE_ALIGN").is_ok();
- #[allow(unused)]
let libc_ci = env::var("LIBC_CI").is_ok();
if env::var("CARGO_FEATURE_USE_STD").is_ok() {
@@ -28,6 +27,11 @@ fn main() {
Some(_) | None => println!("cargo:rustc-cfg=freebsd11"),
}
+ // On CI: deny all warnings
+ if libc_ci {
+ println!("cargo:rustc-cfg=libc_deny_warnings");
+ }
+
// Rust >= 1.15 supports private module use:
if rustc_minor_ver >= 15 || rustc_dep_of_std {
println!("cargo:rustc-cfg=libc_priv_mod_use");
diff --git a/ci/azure.yml b/ci/azure.yml
index 4526361aef..456ac7f74f 100644
--- a/ci/azure.yml
+++ b/ci/azure.yml
@@ -136,7 +136,7 @@ jobs:
- template: azure-install-rust.yml
- script: sh ci/style.sh
displayName: Check style
- - script: sh ci/dox.sh
+ - script: LIBC_CI=1 sh ci/dox.sh
displayName: Generate documentation
- template: azure-configs/static-websites.yml@rustinfra
parameters:
@@ -169,7 +169,7 @@ jobs:
vmImage: ubuntu-16.04
steps:
- template: azure-install-rust.yml
- - script: sh ./ci/build.sh
+ - script: LIBC_CI=1 sh ./ci/build.sh
displayName: Execute build.sh
strategy:
matrix:
@@ -198,7 +198,7 @@ jobs:
vmImage: macos-10.13
steps:
- template: azure-install-rust.yml
- - script: sh ./ci/build.sh
+ - script: LIBC_CI=1 sh ./ci/build.sh
displayName: Execute build.sh
strategy:
matrix:
diff --git a/src/lib.rs b/src/lib.rs
index 6c2e6c8b5b..3c757f75b3 100644
--- a/src/lib.rs
+++ b/src/lib.rs
@@ -14,8 +14,10 @@
//! [pd]: https://rust-lang.github.io/libc/#platform-specific-documentation
#![crate_name = "libc"]
#![crate_type = "rlib"]
-#![cfg_attr(not(feature = "rustc-dep-of-std"), deny(warnings))]
+#![cfg_attr(libc_deny_warnings, deny(warnings))]
#![allow(bad_style, overflowing_literals, improper_ctypes, unknown_lints)]
+// FIXME: this is due to a rustc bug
+#![allow(redundant_semicolon)]
// Attributes needed when building as part of the standard library
#![cfg_attr(
feature = "rustc-dep-of-std",