[libc-commits] [libc] 44c645f - [libc] Fix overlay mode inclusion for fcntl.h header. (#119159)

via libc-commits libc-commits at lists.llvm.org
Sun Dec 8 19:14:36 PST 2024


Author: lntue
Date: 2024-12-08T22:14:32-05:00
New Revision: 44c645fcc9c65bfe3f13813efd0998fac188987d

URL: https://github.com/llvm/llvm-project/commit/44c645fcc9c65bfe3f13813efd0998fac188987d
DIFF: https://github.com/llvm/llvm-project/commit/44c645fcc9c65bfe3f13813efd0998fac188987d.diff

LOG: [libc] Fix overlay mode inclusion for fcntl.h header. (#119159)

Added: 
    

Modified: 
    libc/hdr/fcntl_overlay.h
    libc/hdr/types/CMakeLists.txt
    libc/hdr/types/struct_f_owner_ex.h
    libc/hdr/types/struct_flock.h
    libc/hdr/types/struct_flock64.h

Removed: 
    


################################################################################
diff  --git a/libc/hdr/fcntl_overlay.h b/libc/hdr/fcntl_overlay.h
index c1cc98b0ebb2c7..17ae78b3d0eca0 100644
--- a/libc/hdr/fcntl_overlay.h
+++ b/libc/hdr/fcntl_overlay.h
@@ -20,6 +20,11 @@
 // `__USE_FORTIFY_LEVEL`, which will be temporarily disabled
 // with `_FORTIFY_SOURCE`.
 
+#ifdef _FORTIFY_SOURCE
+#define LIBC_OLD_FORTIFY_SOURCE _FORTIFY_SOURCE
+#undef _FORTIFY_SOURCE
+#endif
+
 #ifdef __USE_FORTIFY_LEVEL
 #define LIBC_OLD_USE_FORTIFY_LEVEL __USE_FORTIFY_LEVEL
 #undef __USE_FORTIFY_LEVEL
@@ -28,6 +33,11 @@
 
 #include <fcntl.h>
 
+#ifdef LIBC_OLD_FORTIFY_SOURCE
+#define _FORTIFY_SOURCE LIBC_OLD_FORTIFY_SOURCE
+#undef LIBC_OLD_FORTIFY_SOURCE
+#endif
+
 #ifdef LIBC_OLD_USE_FORTIFY_LEVEL
 #undef __USE_FORTIFY_LEVEL
 #define __USE_FORTIFY_LEVEL LIBC_OLD_USE_FORTIFY_LEVEL

diff  --git a/libc/hdr/types/CMakeLists.txt b/libc/hdr/types/CMakeLists.txt
index c4d14e6f893130..68a0e9603f9752 100644
--- a/libc/hdr/types/CMakeLists.txt
+++ b/libc/hdr/types/CMakeLists.txt
@@ -51,6 +51,8 @@ add_proxy_header_library(
   struct_flock
   HDRS
     struct_flock.h
+  DEPENDS
+    libc.hdr.fcntl_overlay
   FULL_BUILD_DEPENDS
     libc.include.llvm-libc-types.struct_flock
 )
@@ -59,6 +61,8 @@ add_proxy_header_library(
   struct_flock64
   HDRS
     struct_flock64.h
+  DEPENDS
+    libc.hdr.fcntl_overlay
   FULL_BUILD_DEPENDS
     libc.include.llvm-libc-types.struct_flock64
 )
@@ -67,6 +71,8 @@ add_proxy_header_library(
   struct_f_owner_ex
   HDRS
     struct_f_owner_ex.h
+  DEPENDS
+    libc.hdr.fcntl_overlay
   FULL_BUILD_DEPENDS
     libc.include.llvm-libc-types.struct_f_owner_ex
 )

diff  --git a/libc/hdr/types/struct_f_owner_ex.h b/libc/hdr/types/struct_f_owner_ex.h
index 49985115ae4bb2..6e37cea6df84dd 100644
--- a/libc/hdr/types/struct_f_owner_ex.h
+++ b/libc/hdr/types/struct_f_owner_ex.h
@@ -14,7 +14,7 @@
 
 #else
 
-#include <fcntl.h>
+#include "hdr/fcntl_overlay.h"
 
 #endif // LIBC_FULL_BUILD
 

diff  --git a/libc/hdr/types/struct_flock.h b/libc/hdr/types/struct_flock.h
index a552b91c432b38..6a6c928e6fa6dc 100644
--- a/libc/hdr/types/struct_flock.h
+++ b/libc/hdr/types/struct_flock.h
@@ -14,7 +14,7 @@
 
 #else
 
-#include <fcntl.h>
+#include "hdr/fcntl_overlay.h"
 
 #endif // LIBC_FULL_BUILD
 

diff  --git a/libc/hdr/types/struct_flock64.h b/libc/hdr/types/struct_flock64.h
index 84fe67816c3372..fcfda59479a297 100644
--- a/libc/hdr/types/struct_flock64.h
+++ b/libc/hdr/types/struct_flock64.h
@@ -14,7 +14,7 @@
 
 #else
 
-#include <fcntl.h>
+#include "hdr/fcntl_overlay.h"
 
 #endif // LIBC_FULL_BUILD
 


        


More information about the libc-commits mailing list