Bypass libc memfd_create when building with glibc am: 11ba04ed31 am: f8663e2827 am: 8fbe0a93f7 am: 2158b39bde

Original change: https://android-review.googlesource.com/c/platform/external/rust/crates/nix/+/2515636

Change-Id: Id5150487bb725d11ca478dd5b9a5343a4b4afb23
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
diff --git a/patches/memfd.diff b/patches/memfd.diff
new file mode 100644
index 0000000..a5d4609
--- /dev/null
+++ b/patches/memfd.diff
@@ -0,0 +1,15 @@
+diff --git a/src/sys/memfd.rs b/src/sys/memfd.rs
+index ad9345e..e43e1e5 100644
+--- a/src/sys/memfd.rs
++++ b/src/sys/memfd.rs
+@@ -49,7 +49,9 @@ pub fn memfd_create(name: &CStr, flags: MemFdCreateFlag) -> Result<RawFd> {
+                 any(
+                     target_os = "freebsd",
+                     // If the OS is Linux, gnu and musl expose a memfd_create symbol but not uclibc
+-                    target_env = "gnu",
++                    //
++                    // ANDROID: Our glibc is too old to have memfd_create.
++                    // target_env = "gnu",
+                     target_env = "musl",
+                 )))]
+             {
diff --git a/src/sys/memfd.rs b/src/sys/memfd.rs
index ad9345e..e43e1e5 100644
--- a/src/sys/memfd.rs
+++ b/src/sys/memfd.rs
@@ -49,7 +49,9 @@
                 any(
                     target_os = "freebsd",
                     // If the OS is Linux, gnu and musl expose a memfd_create symbol but not uclibc
-                    target_env = "gnu",
+                    //
+                    // ANDROID: Our glibc is too old to have memfd_create.
+                    // target_env = "gnu",
                     target_env = "musl",
                 )))]
             {