File tree 1 file changed +12
-0
lines changed
1 file changed +12
-0
lines changed Original file line number Diff line number Diff line change @@ -38,6 +38,7 @@ fn main() {
38
38
let align_cargo_feature = env:: var ( "CARGO_FEATURE_ALIGN" ) . is_ok ( ) ;
39
39
let const_extern_fn_cargo_feature = env:: var ( "CARGO_FEATURE_CONST_EXTERN_FN" ) . is_ok ( ) ;
40
40
let libc_ci = env:: var ( "LIBC_CI" ) . is_ok ( ) ;
41
+ let libc_check_cfg = env:: var ( "LIBC_CHECK_CFG" ) . is_ok ( ) ;
41
42
42
43
if env:: var ( "CARGO_FEATURE_USE_STD" ) . is_ok ( ) {
43
44
println ! (
@@ -140,6 +141,17 @@ fn main() {
140
141
set_cfg ( "libc_const_extern_fn" ) ;
141
142
}
142
143
}
144
+
145
+ // check-cfg is a nightly cargo/rustc feature to warn when unknown cfgs are used across the
146
+ // codebase. libc can configure it if the appropriate environment variable is passed. Since
147
+ // rust-lang/rust enforces it, this is useful when using a custom libc fork there.
148
+ //
149
+ // https://doc.rust-lang.org/nightly/cargo/reference/unstable.html#check-cfg
150
+ if libc_check_cfg {
151
+ for cfg in ALLOWED_CFGS {
152
+ println ! ( "cargo:rustc-check-cfg=values({})" , cfg) ;
153
+ }
154
+ }
143
155
}
144
156
145
157
fn rustc_minor_nightly ( ) -> ( u32 , bool ) {
You can’t perform that action at this time.
0 commit comments