diff --git a/libc-test/build.rs b/libc-test/build.rs
index ec0d1e0de0faef97bd69c02b33161cdc731e7085..2615826f82674504f52fb062b739dda34338bcb1 100644
--- a/libc-test/build.rs
+++ b/libc-test/build.rs
@@ -55,13 +55,6 @@ fn main() {
         cfg.define("in_port_t", Some("uint16_t"));
     }
 
-    // these constants do not exist in msvc, but they are still useful
-    if msvc {
-        cfg.define("STDIN_FILENO", Some("0"));
-        cfg.define("STDOUT_FILENO", Some("1"));
-        cfg.define("STDERR_FILENO", Some("2"));
-    }
-
     cfg.header("errno.h")
         .header("fcntl.h")
         .header("limits.h")
@@ -720,6 +713,9 @@ fn main() {
             s if ios && s.starts_with("RTV_") => true,
             s if ios && s.starts_with("DLT_") => true,
 
+            // these constants do not exist in msvc, but they are still useful
+            "STDIN_FILENO" | "STDOUT_FILENO" | "STDERR_FILENO" if msvc => true,
+
             _ => false,
         }
     });