[libc-commits] [libc] 48a99ad - [libc] Add llvm-libc-types header deps for <complex.h>. (#164422)

via libc-commits libc-commits at lists.llvm.org
Tue Oct 21 07:47:59 PDT 2025


Author: Simon Tatham
Date: 2025-10-21T15:47:54+01:00
New Revision: 48a99ad1fa8b3fe7c0f23f02e95e6c23e145429d

URL: https://github.com/llvm/llvm-project/commit/48a99ad1fa8b3fe7c0f23f02e95e6c23e145429d
DIFF: https://github.com/llvm/llvm-project/commit/48a99ad1fa8b3fe7c0f23f02e95e6c23e145429d.diff

LOG: [libc] Add llvm-libc-types header deps for <complex.h>. (#164422)

complex.yaml declares types cfloat16, cfloat128 and float128 in its
'types' section, causing the output complex.h to #include three headers
with names of the form "llvm-libc-types/cfloat16.h". But
include/CMakeLists.txt doesn't mention those types as dependencies in
the `add_header_macro` call for complex.h. As a result, cfloat16.h and
cfloat128.h are not installed by the 'install' target, but complex.h
still tries to to include them.

The third type header, float128.h, doesn't have this problem because the
`add_header_macro` math.h does mention it as a dependency. So I've added
all three headers as dependencies in complex.h, following the same
pattern, and now the install target installs the missing two headers.

Added: 
    

Modified: 
    libc/include/CMakeLists.txt

Removed: 
    


################################################################################
diff  --git a/libc/include/CMakeLists.txt b/libc/include/CMakeLists.txt
index 81360aac984e0..a5c18785ef891 100644
--- a/libc/include/CMakeLists.txt
+++ b/libc/include/CMakeLists.txt
@@ -218,6 +218,9 @@ add_header_macro(
   DEPENDS
     .llvm_libc_common_h
     .llvm-libc-macros.complex_macros
+    .llvm-libc-types.float128
+    .llvm-libc-types.cfloat128
+    .llvm-libc-types.cfloat16
 )
 
 add_header_macro(


        


More information about the libc-commits mailing list