[libc-commits] [libc] [libc] newheadergen: configured cmake (PR #98828)
via libc-commits
libc-commits at lists.llvm.org
Mon Jul 15 17:28:52 PDT 2024
https://github.com/RoseZhang03 updated https://github.com/llvm/llvm-project/pull/98828
>From d13a098ad71ecc7f269ac8ee94a5d69b98baba29 Mon Sep 17 00:00:00 2001
From: Aaryan Shukla <aaryanshukla at google.com>
Date: Sun, 14 Jul 2024 18:20:08 +0000
Subject: [PATCH 1/8] [libc] newheadergen: configured cmake
- all headers in the build system are generated by newheadergen
- tested on gpu-build
---
libc/cmake/modules/LLVMLibCHeaderRules.cmake | 131 ++++++++++++++--
libc/include/CMakeLists.txt | 155 ++++++++++++-------
2 files changed, 217 insertions(+), 69 deletions(-)
diff --git a/libc/cmake/modules/LLVMLibCHeaderRules.cmake b/libc/cmake/modules/LLVMLibCHeaderRules.cmake
index 7fc6860f23eb2..1bcca5f19577c 100644
--- a/libc/cmake/modules/LLVMLibCHeaderRules.cmake
+++ b/libc/cmake/modules/LLVMLibCHeaderRules.cmake
@@ -66,7 +66,106 @@ function(add_header target_name)
)
endfunction(add_header)
-# A rule for generated header file targets.
+function(add_gen_header2 target_name)
+ cmake_parse_arguments(
+ "ADD_GEN_HDR2"
+ "PUBLIC" # No optional arguments
+ "YAML_FILE;DEF_FILE;GEN_HDR" # Single value arguments
+ "DEPENDS" # Multi value arguments
+ ${ARGN}
+ )
+ get_fq_target_name(${target_name} fq_target_name)
+ if(NOT LLVM_LIBC_FULL_BUILD)
+ add_library(${fq_target_name} INTERFACE)
+ return()
+ endif()
+ if(NOT ADD_GEN_HDR2_DEF_FILE)
+ mesage(FATAL_ERROR "`add_gen_hdr2` rule requires DEF_FILE to be specified.")
+ endif()
+ if(NOT ADD_GEN_HDR2_GEN_HDR)
+ message(FATAL_ERROR "`add_gen_hdr2` rule requires GEN_HDR to be specified.")
+ endif()
+ if(NOT ADD_GEN_HDR2_YAML_FILE)
+ message(FATAL_ERROR "`add_gen_hdr2` rule requires YAML_FILE to be specified.")
+ endif()
+
+ set(absolute_path ${CMAKE_CURRENT_SOURCE_DIR}/${ADD_GEN_HDR2_GEN_HDR})
+ file(RELATIVE_PATH relative_path ${LIBC_INCLUDE_SOURCE_DIR} ${absolute_path})
+ set(out_file ${LIBC_INCLUDE_DIR}/${relative_path})
+ set(yaml_file ${CMAKE_SOURCE_DIR}/${ADD_GEN_HDR2_YAML_FILE})
+ set(def_file ${CMAKE_CURRENT_SOURCE_DIR}/${ADD_GEN_HDR2_DEF_FILE})
+
+ set(fq_data_files "")
+ if(ADD_GEN_HDR2_DATA_FILES)
+ foreach(data_file IN 2LISTS ADD_GEN_HDR2_DATA_FILES)
+ list(APPEND fq_data_files "${CMAKE_CURRENT_SOURCE_DIR}/${data_file}")
+ endforeach(data_file)
+ endif()
+
+ set(entry_points "${TARGET_ENTRYPOINT_NAME_LIST}")
+ list(TRANSFORM entry_points PREPEND "--e=")
+
+ add_custom_command(
+ OUTPUT ${out_file}
+ COMMAND ${Python3_EXECUTABLE} ${LIBC_SOURCE_DIR}/newhdrgen/yaml_to_classes.py
+ ${yaml_file}
+ --h_def_file ${def_file}
+ ${entry_points}
+ --output_dir ${out_file}
+ DEPENDS ${yaml_file} ${def_file} ${fq_data_files}
+ COMMENT "Generating header ${ADD_GEN_HDR2_GE2N_HDR} from ${yaml_file} and ${def_file}"
+ )
+ if(LIBC_TARGET_OS_IS_GPU)
+ file(MAKE_DIRECTORY ${LIBC_INCLUDE_DIR}/llvm-libc-decls)
+ file(MAKE_DIRECTORY ${LIBC_INCLUDE_DIR}/llvm-libc-decls/gpu)
+ set(decl_out_file ${LIBC_INCLUDE_DIR}/llvm-libc-decls/${relative_path})
+ add_custom_command(
+ OUTPUT ${decl_out_file}
+ COMMAND ${Python3_EXECUTABLE} ${LIBC_SOURCE_DIR}/newhdrgen/yaml_to_classes.py
+ ${yaml_file}
+ --export-decls
+ ${entry_points}
+ --output_dir ${decl_out_file}
+ WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
+ DEPENDS ${yaml_file} ${fq_data_files}
+ )
+ endif()
+ 2
+ if(ADD_GEN_HDR2_DEPENDS)
+ get_fq_deps_list(f2q_deps_list ${ADD_GEN_HDR2_DEPENDS})
+ # Dependencies of a add_header target can only be another add_gen_header target
+ # or an add_header target.
+ foreach(dep IN LISTS fq_deps_list)
+ get_target_property(header_file ${dep} HEADER_FILE_PATH)
+ if(NOT header_file)
+ message(FATAL_ERROR "Invalid dependency '${dep}' for '${fq_target_name}'.")
+ endif()
+ endforeach()
+ endif()
+ set(generated_hdr_target ${fq_target_name}.__generated_hdr__)
+ add_custom_target(
+ ${generated_hdr_target}
+ DEPENDS ${out_file} ${fq_deps_list} ${decl_out_file}
+ )
+
+ add_header_library(
+ ${target_name}
+ HDRS
+ ${out_file}
+ )
+
+ add_dependencies(${fq_target_name} ${generated_hdr_target})
+
+ set_target_properties(
+ ${fq_target_name}
+ PROPERTIES
+ HEADER_FILE_PATH ${out_file}
+ DEPS "${fq_deps_list}"
+ )
+
+
+endfunction(add_gen_header2)
+
# Usage:
# add_gen_header(
# <target name>
@@ -140,22 +239,22 @@ function(add_gen_header target_name)
)
if(LIBC_TARGET_OS_IS_GPU)
- file(MAKE_DIRECTORY ${LIBC_INCLUDE_DIR}/llvm-libc-decls)
- file(MAKE_DIRECTORY ${LIBC_INCLUDE_DIR}/llvm-libc-decls/gpu)
- set(decl_out_file ${LIBC_INCLUDE_DIR}/llvm-libc-decls/${relative_path})
- add_custom_command(
- OUTPUT ${decl_out_file}
- COMMAND ${hdrgen_exe} -o ${decl_out_file}
- --header ${ADD_GEN_HDR_GEN_HDR} --def ${in_file} --export-decls
- ${replacement_params} -I ${LIBC_SOURCE_DIR} ${ENTRYPOINT_NAME_LIST_ARG}
- ${LIBC_SOURCE_DIR}/config/${LIBC_TARGET_OS}/api.td
+ file(MAKE_DIRECTORY ${LIBC_INCLUDE_DIR}/llvm-libc-decls)
+ file(MAKE_DIRECTORY ${LIBC_INCLUDE_DIR}/llvm-libc-decls/gpu)
+ set(decl_out_file ${LIBC_INCLUDE_DIR}/llvm-libc-decls/${relative_path})
+ add_custom_command(
+ OUTPUT ${decl_out_file}
+ COMMAND ${hdrgen_exe} -o ${decl_out_file}
+ --header ${ADD_GEN_HDR_GEN_HDR} --def ${in_file} --export-decls
+ ${replacement_params} -I ${LIBC_SOURCE_DIR} ${ENTRYPOINT_NAME_LIST_ARG}
+ ${LIBC_SOURCE_DIR}/config/${LIBC_TARGET_OS}/api.td
- WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
- DEPENDS ${in_file} ${fq_data_files} ${td_includes}
- ${LIBC_SOURCE_DIR}/config/${LIBC_TARGET_OS}/api.td
- ${hdrgen_deps}
- )
- endif()
+ WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
+ DEPENDS ${in_file} ${fq_data_files} ${td_includes}
+ ${LIBC_SOURCE_DIR}/config/${LIBC_TARGET_OS}/api.td
+ ${hdrgen_deps}
+ )
+endif()
if(ADD_GEN_HDR_DEPENDS)
get_fq_deps_list(fq_deps_list ${ADD_GEN_HDR_DEPENDS})
diff --git a/libc/include/CMakeLists.txt b/libc/include/CMakeLists.txt
index 2cf7206f3a625..8e9942fac69e1 100644
--- a/libc/include/CMakeLists.txt
+++ b/libc/include/CMakeLists.txt
@@ -17,16 +17,18 @@ add_header(
__llvm-libc-common.h
)
-add_gen_header(
+add_gen_header2(
ctype
+ YAML_FILE ../libc/newhdrgen/yaml/ctype.yaml
DEF_FILE ctype.h.def
GEN_HDR ctype.h
DEPENDS
.llvm_libc_common_h
)
-add_gen_header(
+add_gen_header2(
dirent
+ YAML_FILE ../libc/newhdrgen/yaml/dirent.yaml
DEF_FILE dirent.h.def
GEN_HDR dirent.h
DEPENDS
@@ -36,8 +38,9 @@ add_gen_header(
.llvm-libc-types.struct_dirent
)
-add_gen_header(
+add_gen_header2(
fcntl
+ YAML_FILE ../libc/newhdrgen/yaml/fcntl.yaml
DEF_FILE fcntl.h.def
GEN_HDR fcntl.h
DEPENDS
@@ -51,8 +54,9 @@ add_gen_header(
.llvm_libc_common_h
)
-add_gen_header(
+add_gen_header2(
dlfcn
+ YAML_FILE ../libc/newhdrgen/yaml/dlfcn.yaml
DEF_FILE dlfcn.h.def
GEN_HDR dlfcn.h
DEPENDS
@@ -60,8 +64,9 @@ add_gen_header(
.llvm_libc_common_h
)
-add_gen_header(
+add_gen_header2(
features
+ YAML_FILE ../libc/newhdrgen/yaml/features.yaml
DEF_FILE features.h.def
GEN_HDR features.h
DEPENDS
@@ -69,8 +74,9 @@ add_gen_header(
.llvm-libc-macros.features_macros
)
-add_gen_header(
+add_gen_header2(
fenv
+ YAML_FILE ../libc/newhdrgen/yaml/fenv.yaml
DEF_FILE fenv.h.def
GEN_HDR fenv.h
DEPENDS
@@ -80,8 +86,9 @@ add_gen_header(
.llvm-libc-types.fexcept_t
)
-add_gen_header(
+add_gen_header2(
inttypes
+ YAML_FILE ../libc/newhdrgen/yaml/inttypes.yaml
DEF_FILE inttypes.h.def
GEN_HDR inttypes.h
DEPENDS
@@ -90,46 +97,50 @@ add_gen_header(
.llvm-libc-macros.inttypes_macros
)
-add_gen_header(
+add_gen_header2(
float
+ YAML_FILE ../libc/newhdrgen/yaml/float.yaml
DEF_FILE float.h.def
GEN_HDR float.h
DEPENDS
.llvm-libc-macros.float_macros
)
-add_gen_header(
+add_gen_header2(
stdint
+ YAML_FILE ../libc/newhdrgen/yaml/stdint.yaml
DEF_FILE stdint.h.def
GEN_HDR stdint.h
DEPENDS
.llvm-libc-macros.stdint_macros
)
-add_gen_header(
+add_gen_header2(
limits
+ YAML_FILE ../libc/newhdrgen/yaml/limits.yaml
DEF_FILE limits.h.def
GEN_HDR limits.h
DEPENDS
.llvm-libc-macros.limits_macros
)
-add_gen_header(
+add_gen_header2(
math
+ YAML_FILE ../libc/newhdrgen/yaml/math.yaml
DEF_FILE math.h.def
GEN_HDR math.h
DEPENDS
.llvm_libc_common_h
.llvm-libc-macros.float16_macros
.llvm-libc-macros.math_macros
- .llvm-libc-macros.math_function_macros
.llvm-libc-types.double_t
.llvm-libc-types.float_t
.llvm-libc-types.float128
)
-add_gen_header(
+add_gen_header2(
stdfix
+ YAML_FILE ../libc/newhdrgen/yaml/stdfix.yaml
DEF_FILE stdfix.h.def
GEN_HDR stdfix.h
DEPENDS
@@ -139,15 +150,16 @@ add_gen_header(
# TODO: This should be conditional on POSIX networking being included.
file(MAKE_DIRECTORY ${LIBC_INCLUDE_DIR}/arpa)
-add_gen_header(
+add_gen_header2(
arpa_inet
+ YAML_FILE ../libc/newhdrgen/yaml/arpa_inet.yaml
DEF_FILE arpa/inet.h.def
GEN_HDR arpa/inet.h
DEPENDS
.llvm_libc_common_h
)
-add_gen_header(
+add_gen_header2(
assert
DEF_FILE assert.h.def
GEN_HDR assert.h
@@ -156,8 +168,9 @@ add_gen_header(
.llvm-libc-macros.assert_macros
)
-add_gen_header(
+add_gen_header2(
setjmp
+ YAML_FILE ../libc/newhdrgen/yaml/setjmp.yaml
DEF_FILE setjmp.h.def
GEN_HDR setjmp.h
DEPENDS
@@ -165,8 +178,9 @@ add_gen_header(
.llvm-libc-types.jmp_buf
)
-add_gen_header(
+add_gen_header2(
string
+ YAML_FILE ../libc/newhdrgen/yaml/string.yaml
DEF_FILE string.h.def
GEN_HDR string.h
DEPENDS
@@ -175,8 +189,9 @@ add_gen_header(
.llvm-libc-types.size_t
)
-add_gen_header(
+add_gen_header2(
strings
+ YAML_FILE ../libc/newhdrgen/yaml/strings.yaml
DEF_FILE strings.h.def
GEN_HDR strings.h
DEPENDS
@@ -184,8 +199,9 @@ add_gen_header(
.llvm-libc-types.size_t
)
-add_gen_header(
+add_gen_header2(
search
+ YAML_FILE ../libc/newhdrgen/yaml/search.yaml
DEF_FILE search.h.def
GEN_HDR search.h
DEPENDS
@@ -196,8 +212,9 @@ add_gen_header(
.llvm-libc-types.size_t
)
-add_gen_header(
+add_gen_header2(
time
+ YAML_FILE ../libc/newhdrgen/yaml/time.yaml
DEF_FILE time.h.def
GEN_HDR time.h
DEPENDS
@@ -211,8 +228,9 @@ add_gen_header(
.llvm-libc-types.clockid_t
)
-add_gen_header(
+add_gen_header2(
threads
+ YAML_FILE ../libc/newhdrgen/yaml/threads.yaml
DEF_FILE threads.h.def
GEN_HDR threads.h
DEPENDS
@@ -227,8 +245,9 @@ add_gen_header(
.llvm-libc-types.tss_dtor_t
)
-add_gen_header(
+add_gen_header2(
errno
+ YAML_FILE ../libc/newhdrgen/yaml/errno.yaml
DEF_FILE errno.h.def
GEN_HDR errno.h
DEPENDS
@@ -236,8 +255,9 @@ add_gen_header(
.llvm-libc-macros.error_number_macros
)
-add_gen_header(
+add_gen_header2(
signal
+ YAML_FILE ../libc/newhdrgen/yaml/signal.yaml
DEF_FILE signal.h.def
GEN_HDR signal.h
DEPENDS
@@ -251,8 +271,9 @@ add_gen_header(
.llvm-libc-types.pid_t
)
-add_gen_header(
+add_gen_header2(
stdbit
+ YAML_FILE ../libc/newhdrgen/yaml/stdbit.yaml
DEF_FILE stdbit.h.def
GEN_HDR stdbit.h
DEPENDS
@@ -260,8 +281,9 @@ add_gen_header(
.llvm-libc-macros.stdbit_macros
)
-add_gen_header(
+add_gen_header2(
stdckdint
+ YAML_FILE ../libc/newhdrgen/yaml/stdckdint.yaml
DEF_FILE stdckdint.h.def
GEN_HDR stdckdint.h
DEPENDS
@@ -269,8 +291,9 @@ add_gen_header(
.llvm-libc-macros.stdckdint_macros
)
-add_gen_header(
+add_gen_header2(
stdio
+ YAML_FILE ../libc/newhdrgen/yaml/stdio.yaml
DEF_FILE stdio.h.def
GEN_HDR stdio.h
DEPENDS
@@ -284,8 +307,9 @@ add_gen_header(
.llvm_libc_common_h
)
-add_gen_header(
+add_gen_header2(
stdlib
+ YAML_FILE ../libc/newhdrgen/yaml/stdlib.yaml
DEF_FILE stdlib.h.def
GEN_HDR stdlib.h
DEPENDS
@@ -301,8 +325,9 @@ add_gen_header(
.llvm-libc-types.__atexithandler_t
)
-add_gen_header(
+add_gen_header2(
unistd
+ YAML_FILE ../libc/newhdrgen/yaml/unistd.yaml
DEF_FILE unistd.h.def
GEN_HDR unistd.h
DEPENDS
@@ -319,8 +344,9 @@ add_gen_header(
.llvm-libc-types.__getoptargv_t
)
-add_gen_header(
+add_gen_header2(
pthread
+ YAML_FILE ../libc/newhdrgen/yaml/pthread.yaml
DEF_FILE pthread.h.def
GEN_HDR pthread.h
DEPENDS
@@ -340,8 +366,9 @@ add_gen_header(
.llvm-libc-types.pthread_t
)
-add_gen_header(
+add_gen_header2(
sched
+ YAML_FILE ../libc/newhdrgen/yaml/sched.yaml
DEF_FILE sched.h.def
GEN_HDR sched.h
DEPENDS
@@ -356,8 +383,9 @@ add_gen_header(
.llvm-libc-types.struct_timespec
)
-add_gen_header(
+add_gen_header2(
spawn
+ YAML_FILE ../libc/newhdrgen/yaml/spawn.yaml
DEF_FILE spawn.h.def
GEN_HDR spawn.h
DEPENDS
@@ -373,8 +401,9 @@ add_gen_header(
# them.
file(MAKE_DIRECTORY ${LIBC_INCLUDE_DIR}/sys)
-add_gen_header(
+add_gen_header2(
sys_auxv
+ YAML_FILE ../libc/newhdrgen/yaml/sys/sys_auxv.yaml
DEF_FILE sys/auxv.h.def
GEN_HDR sys/auxv.h
DEPENDS
@@ -382,8 +411,9 @@ add_gen_header(
.llvm-libc-macros.sys_auxv_macros
)
-add_gen_header(
+add_gen_header2(
sys_epoll
+ YAML_FILE ../libc/newhdrgen/yaml/sys/sys_epoll.yaml
DEF_FILE sys/epoll.h.def
GEN_HDR sys/epoll.h
DEPENDS
@@ -394,8 +424,9 @@ add_gen_header(
.llvm-libc-macros.sys_epoll_macros
)
-add_gen_header(
+add_gen_header2(
sys_ioctl
+ YAML_FILE ../libc/newhdrgen/yaml/sys/sys_ioctl.yaml
DEF_FILE sys/ioctl.h.def
GEN_HDR sys/ioctl.h
DEPENDS
@@ -403,8 +434,9 @@ add_gen_header(
.llvm-libc-macros.sys_ioctl_macros
)
-add_gen_header(
+add_gen_header2(
sys_mman
+ YAML_FILE ../libc/newhdrgen/yaml/sys/sys_mman.yaml
DEF_FILE sys/mman.h.def
GEN_HDR sys/mman.h
DEPENDS
@@ -415,8 +447,9 @@ add_gen_header(
.llvm-libc-types.ssize_t
)
-add_gen_header(
+add_gen_header2(
sys_prctl
+ YAML_FILE ../libc/newhdrgen/yaml/sys_prctl.yaml
DEF_FILE sys/prctl.h.def
GEN_HDR sys/prctl.h
DEPENDS
@@ -431,8 +464,9 @@ add_header(
.llvm-libc-macros.sys_queue_macros
)
-add_gen_header(
+add_gen_header2(
sys_random
+ YAML_FILE ../libc/newhdrgen/yaml/sys/sys_random.yaml
DEF_FILE sys/random.h.def
GEN_HDR sys/random.h
DEPENDS
@@ -442,8 +476,9 @@ add_gen_header(
.llvm-libc-types.ssize_t
)
-add_gen_header(
+add_gen_header2(
sys_resource
+ YAML_FILE ../libc/newhdrgen/yaml/sys/sys_resource.yaml
DEF_FILE sys/resource.h.def
GEN_HDR sys/resource.h
DEPENDS
@@ -453,8 +488,9 @@ add_gen_header(
.llvm-libc-types.struct_rlimit
)
-add_gen_header(
+add_gen_header2(
sys_stat
+ YAML_FILE ../libc/newhdrgen/yaml/sys/sys_stat.yaml
DEF_FILE sys/stat.h.def
GEN_HDR sys/stat.h
DEPENDS
@@ -474,8 +510,9 @@ add_gen_header(
.llvm-libc-types.struct_stat
)
-add_gen_header(
+add_gen_header2(
sys_select
+ YAML_FILE ../libc/newhdrgen/yaml/sys/sys_select.yaml
DEF_FILE sys/select.h.def
GEN_HDR sys/select.h
DEPENDS
@@ -489,8 +526,9 @@ add_gen_header(
.llvm-libc-types.struct_timeval
)
-add_gen_header(
+add_gen_header2(
sys_sendfile
+ YAML_FILE ../libc/newhdrgen/yaml/sys/sys_sendfile.yaml
DEF_FILE sys/sendfile.h.def
GEN_HDR sys/sendfile.h
DEPENDS
@@ -500,8 +538,9 @@ add_gen_header(
.llvm-libc-types.ssize_t
)
-add_gen_header(
+add_gen_header2(
sys_socket
+ YAML_FILE ../libc/newhdrgen/yaml/sys/sys_socket.yaml
DEF_FILE sys/socket.h.def
GEN_HDR sys/socket.h
DEPENDS
@@ -513,8 +552,9 @@ add_gen_header(
.llvm-libc-types.struct_sockaddr_un
)
-add_gen_header(
+add_gen_header2(
sys_statvfs
+ YAML_FILE ../libc/newhdrgen/yaml/sys/sys_statvfs.yaml
DEF_FILE sys/statvfs.h.def
GEN_HDR sys/statvfs.h
DEPENDS
@@ -522,14 +562,16 @@ add_gen_header(
.llvm-libc-types.struct_statvfs
)
-add_gen_header(
+add_gen_header2(
sys_syscall
+ YAML_FILE ../libc/newhdrgen/yaml/sys/sys_syscall.yaml
DEF_FILE sys/syscall.h.def
GEN_HDR sys/syscall.h
)
-add_gen_header(
+add_gen_header2(
sys_time
+ YAML_FILE ../libc/newhdrgen/yaml/sys/sys_time.yaml
DEF_FILE sys/time.h.def
GEN_HDR sys/time.h
DEPENDS
@@ -538,8 +580,9 @@ add_gen_header(
.llvm-libc-macros.sys_time_macros
)
-add_gen_header(
+add_gen_header2(
sys_types
+ YAML_FILE ../libc/newhdrgen/yaml/sys/sys_types.yaml
DEF_FILE sys/types.h.def
GEN_HDR sys/types.h
DEPENDS
@@ -567,8 +610,9 @@ add_gen_header(
.llvm-libc-types.uid_t
)
-add_gen_header(
+add_gen_header2(
sys_utsname
+ YAML_FILE ../libc/newhdrgen/yaml/sys/sys_utsname.yaml
DEF_FILE sys/utsname.h.def
GEN_HDR sys/utsname.h
DEPENDS
@@ -576,8 +620,9 @@ add_gen_header(
.llvm-libc-types.struct_utsname
)
-add_gen_header(
+add_gen_header2(
sys_wait
+ YAML_FILE ../libc/newhdrgen/yaml/sys/sys_wait.yaml
DEF_FILE sys/wait.h.def
GEN_HDR sys/wait.h
DEPENDS
@@ -588,8 +633,9 @@ add_gen_header(
.llvm-libc-types.siginfo_t
)
-add_gen_header(
+add_gen_header2(
termios
+ YAML_FILE ../libc/newhdrgen/yaml/termios.yaml
DEF_FILE termios.h.def
GEN_HDR termios.h
DEPENDS
@@ -602,8 +648,9 @@ add_gen_header(
.llvm-libc-types.tcflag_t
)
-add_gen_header(
+add_gen_header2(
uchar
+ YAML_FILE ../libc/newhdrgen/yaml/uchar.yaml
DEF_FILE uchar.h.def
GEN_HDR uchar.h
DEPENDS
@@ -614,8 +661,9 @@ add_gen_header(
.llvm-libc-types.char32_t
)
-add_gen_header(
+add_gen_header2(
wchar
+ YAML_FILE ../libc/newhdrgen/yaml/wchar.yaml
DEF_FILE wchar.h.def
GEN_HDR wchar.h
DEPENDS
@@ -630,8 +678,9 @@ add_gen_header(
if(LIBC_TARGET_OS_IS_GPU)
file(MAKE_DIRECTORY ${LIBC_INCLUDE_DIR}/gpu)
- add_gen_header(
+ add_gen_header2(
gpu_rpc
+ YAML_FILE ../libc/newhdrgen/yaml/rpc.yaml
DEF_FILE gpu/rpc.h.def
GEN_HDR gpu/rpc.h
DEPENDS
@@ -703,4 +752,4 @@ if(LLVM_LIBC_FULL_BUILD)
-P "${CMAKE_BINARY_DIR}/cmake_install.cmake")
# Stripping is a no-op for headers
add_custom_target(install-libc-headers-stripped DEPENDS install-libc-headers)
-endif()
+endif()
\ No newline at end of file
>From a1e40be8d64c912bfb0f5039179b96d9bc480463 Mon Sep 17 00:00:00 2001
From: Aaryan Shukla <aaryanshukla at google.com>
Date: Sun, 14 Jul 2024 18:27:42 +0000
Subject: [PATCH 2/8] added sys path for prctl
---
libc/include/CMakeLists.txt | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/libc/include/CMakeLists.txt b/libc/include/CMakeLists.txt
index 8e9942fac69e1..0d59f21e0fffa 100644
--- a/libc/include/CMakeLists.txt
+++ b/libc/include/CMakeLists.txt
@@ -449,7 +449,7 @@ add_gen_header2(
add_gen_header2(
sys_prctl
- YAML_FILE ../libc/newhdrgen/yaml/sys_prctl.yaml
+ YAML_FILE ../libc/newhdrgen/yaml/sys/sys_prctl.yaml
DEF_FILE sys/prctl.h.def
GEN_HDR sys/prctl.h
DEPENDS
>From 1c921deb482de0546c33253b3987920a755a9a3b Mon Sep 17 00:00:00 2001
From: Aaryan Shukla <aaryanshukla at google.com>
Date: Sun, 14 Jul 2024 18:28:34 +0000
Subject: [PATCH 3/8] added newline for CMakeLists.txt
---
libc/include/CMakeLists.txt | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/libc/include/CMakeLists.txt b/libc/include/CMakeLists.txt
index 0d59f21e0fffa..7bb15371c91b0 100644
--- a/libc/include/CMakeLists.txt
+++ b/libc/include/CMakeLists.txt
@@ -752,4 +752,4 @@ if(LLVM_LIBC_FULL_BUILD)
-P "${CMAKE_BINARY_DIR}/cmake_install.cmake")
# Stripping is a no-op for headers
add_custom_target(install-libc-headers-stripped DEPENDS install-libc-headers)
-endif()
\ No newline at end of file
+endif()
>From 1475b2b8432be52a095924d05d2d7e1e4f2429a4 Mon Sep 17 00:00:00 2001
From: Aaryan Shukla <aaryanshukla at google.com>
Date: Sun, 14 Jul 2024 18:30:45 +0000
Subject: [PATCH 4/8] spacing and nits
---
libc/cmake/modules/LLVMLibCHeaderRules.cmake | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/libc/cmake/modules/LLVMLibCHeaderRules.cmake b/libc/cmake/modules/LLVMLibCHeaderRules.cmake
index 1bcca5f19577c..b87137c5f1a0d 100644
--- a/libc/cmake/modules/LLVMLibCHeaderRules.cmake
+++ b/libc/cmake/modules/LLVMLibCHeaderRules.cmake
@@ -130,7 +130,7 @@ function(add_gen_header2 target_name)
DEPENDS ${yaml_file} ${fq_data_files}
)
endif()
- 2
+
if(ADD_GEN_HDR2_DEPENDS)
get_fq_deps_list(f2q_deps_list ${ADD_GEN_HDR2_DEPENDS})
# Dependencies of a add_header target can only be another add_gen_header target
@@ -239,10 +239,10 @@ function(add_gen_header target_name)
)
if(LIBC_TARGET_OS_IS_GPU)
- file(MAKE_DIRECTORY ${LIBC_INCLUDE_DIR}/llvm-libc-decls)
- file(MAKE_DIRECTORY ${LIBC_INCLUDE_DIR}/llvm-libc-decls/gpu)
- set(decl_out_file ${LIBC_INCLUDE_DIR}/llvm-libc-decls/${relative_path})
- add_custom_command(
+ file(MAKE_DIRECTORY ${LIBC_INCLUDE_DIR}/llvm-libc-decls)
+ file(MAKE_DIRECTORY ${LIBC_INCLUDE_DIR}/llvm-libc-decls/gpu)
+ set(decl_out_file ${LIBC_INCLUDE_DIR}/llvm-libc-decls/${relative_path})
+ add_custom_command(
OUTPUT ${decl_out_file}
COMMAND ${hdrgen_exe} -o ${decl_out_file}
--header ${ADD_GEN_HDR_GEN_HDR} --def ${in_file} --export-decls
>From 05ff1da089e045d60a29da51dd277404896ccef3 Mon Sep 17 00:00:00 2001
From: Rose Zhang <rosezhang at google.com>
Date: Mon, 15 Jul 2024 22:09:36 +0000
Subject: [PATCH 5/8] added switch for using old versus new headergen in
CMakeLists
---
libc/include/CMakeLists.txt | 1853 +++++++++++++++++++++++------------
1 file changed, 1239 insertions(+), 614 deletions(-)
diff --git a/libc/include/CMakeLists.txt b/libc/include/CMakeLists.txt
index 7bb15371c91b0..3a9f511d47d77 100644
--- a/libc/include/CMakeLists.txt
+++ b/libc/include/CMakeLists.txt
@@ -17,676 +17,1301 @@ add_header(
__llvm-libc-common.h
)
-add_gen_header2(
- ctype
- YAML_FILE ../libc/newhdrgen/yaml/ctype.yaml
- DEF_FILE ctype.h.def
- GEN_HDR ctype.h
- DEPENDS
- .llvm_libc_common_h
-)
-
-add_gen_header2(
- dirent
- YAML_FILE ../libc/newhdrgen/yaml/dirent.yaml
- DEF_FILE dirent.h.def
- GEN_HDR dirent.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-types.ino_t
- .llvm-libc-types.DIR
- .llvm-libc-types.struct_dirent
-)
+if (USE_NEW_HEADER_GEN)
+ add_gen_header2(
+ ctype
+ YAML_FILE ../libc/newhdrgen/yaml/ctype.yaml
+ DEF_FILE ctype.h.def
+ GEN_HDR ctype.h
+ DEPENDS
+ .llvm_libc_common_h
+ )
-add_gen_header2(
- fcntl
- YAML_FILE ../libc/newhdrgen/yaml/fcntl.yaml
- DEF_FILE fcntl.h.def
- GEN_HDR fcntl.h
- DEPENDS
- .llvm-libc-macros.fcntl_macros
- .llvm-libc-types.mode_t
- .llvm-libc-types.struct_flock
- .llvm-libc-types.struct_flock64
- .llvm-libc-types.off64_t
- .llvm-libc-types.pid_t
- .llvm-libc-types.off_t
- .llvm_libc_common_h
-)
+ add_gen_header2(
+ dirent
+ YAML_FILE ../libc/newhdrgen/yaml/dirent.yaml
+ DEF_FILE dirent.h.def
+ GEN_HDR dirent.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-types.ino_t
+ .llvm-libc-types.DIR
+ .llvm-libc-types.struct_dirent
+ )
-add_gen_header2(
- dlfcn
- YAML_FILE ../libc/newhdrgen/yaml/dlfcn.yaml
- DEF_FILE dlfcn.h.def
- GEN_HDR dlfcn.h
- DEPENDS
- .llvm-libc-macros.dlfcn_macros
- .llvm_libc_common_h
-)
+ add_gen_header2(
+ fcntl
+ YAML_FILE ../libc/newhdrgen/yaml/fcntl.yaml
+ DEF_FILE fcntl.h.def
+ GEN_HDR fcntl.h
+ DEPENDS
+ .llvm-libc-macros.fcntl_macros
+ .llvm-libc-types.mode_t
+ .llvm-libc-types.struct_flock
+ .llvm-libc-types.struct_flock64
+ .llvm-libc-types.off64_t
+ .llvm-libc-types.pid_t
+ .llvm-libc-types.off_t
+ .llvm_libc_common_h
+ )
-add_gen_header2(
- features
- YAML_FILE ../libc/newhdrgen/yaml/features.yaml
- DEF_FILE features.h.def
- GEN_HDR features.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-macros.features_macros
-)
+ add_gen_header2(
+ dlfcn
+ YAML_FILE ../libc/newhdrgen/yaml/dlfcn.yaml
+ DEF_FILE dlfcn.h.def
+ GEN_HDR dlfcn.h
+ DEPENDS
+ .llvm-libc-macros.dlfcn_macros
+ .llvm_libc_common_h
+ )
-add_gen_header2(
- fenv
- YAML_FILE ../libc/newhdrgen/yaml/fenv.yaml
- DEF_FILE fenv.h.def
- GEN_HDR fenv.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-macros.fenv_macros
- .llvm-libc-types.fenv_t
- .llvm-libc-types.fexcept_t
-)
+ add_gen_header2(
+ features
+ YAML_FILE ../libc/newhdrgen/yaml/features.yaml
+ DEF_FILE features.h.def
+ GEN_HDR features.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-macros.features_macros
+ )
-add_gen_header2(
- inttypes
- YAML_FILE ../libc/newhdrgen/yaml/inttypes.yaml
- DEF_FILE inttypes.h.def
- GEN_HDR inttypes.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-types.imaxdiv_t
- .llvm-libc-macros.inttypes_macros
-)
+ add_gen_header2(
+ fenv
+ YAML_FILE ../libc/newhdrgen/yaml/fenv.yaml
+ DEF_FILE fenv.h.def
+ GEN_HDR fenv.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-macros.fenv_macros
+ .llvm-libc-types.fenv_t
+ .llvm-libc-types.fexcept_t
+ )
-add_gen_header2(
- float
- YAML_FILE ../libc/newhdrgen/yaml/float.yaml
- DEF_FILE float.h.def
- GEN_HDR float.h
- DEPENDS
- .llvm-libc-macros.float_macros
-)
+ add_gen_header2(
+ inttypes
+ YAML_FILE ../libc/newhdrgen/yaml/inttypes.yaml
+ DEF_FILE inttypes.h.def
+ GEN_HDR inttypes.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-types.imaxdiv_t
+ .llvm-libc-macros.inttypes_macros
+ )
-add_gen_header2(
- stdint
- YAML_FILE ../libc/newhdrgen/yaml/stdint.yaml
- DEF_FILE stdint.h.def
- GEN_HDR stdint.h
- DEPENDS
- .llvm-libc-macros.stdint_macros
-)
+ add_gen_header2(
+ float
+ YAML_FILE ../libc/newhdrgen/yaml/float.yaml
+ DEF_FILE float.h.def
+ GEN_HDR float.h
+ DEPENDS
+ .llvm-libc-macros.float_macros
+ )
-add_gen_header2(
- limits
- YAML_FILE ../libc/newhdrgen/yaml/limits.yaml
- DEF_FILE limits.h.def
- GEN_HDR limits.h
- DEPENDS
- .llvm-libc-macros.limits_macros
-)
+ add_gen_header2(
+ stdint
+ YAML_FILE ../libc/newhdrgen/yaml/stdint.yaml
+ DEF_FILE stdint.h.def
+ GEN_HDR stdint.h
+ DEPENDS
+ .llvm-libc-macros.stdint_macros
+ )
-add_gen_header2(
- math
- YAML_FILE ../libc/newhdrgen/yaml/math.yaml
- DEF_FILE math.h.def
- GEN_HDR math.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-macros.float16_macros
- .llvm-libc-macros.math_macros
- .llvm-libc-types.double_t
- .llvm-libc-types.float_t
- .llvm-libc-types.float128
-)
+ add_gen_header2(
+ limits
+ YAML_FILE ../libc/newhdrgen/yaml/limits.yaml
+ DEF_FILE limits.h.def
+ GEN_HDR limits.h
+ DEPENDS
+ .llvm-libc-macros.limits_macros
+ )
-add_gen_header2(
- stdfix
- YAML_FILE ../libc/newhdrgen/yaml/stdfix.yaml
- DEF_FILE stdfix.h.def
- GEN_HDR stdfix.h
- DEPENDS
- .llvm-libc-macros.stdfix_macros
-)
+ add_gen_header2(
+ math
+ YAML_FILE ../libc/newhdrgen/yaml/math.yaml
+ DEF_FILE math.h.def
+ GEN_HDR math.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-macros.float16_macros
+ .llvm-libc-macros.math_macros
+ .llvm-libc-types.double_t
+ .llvm-libc-types.float_t
+ .llvm-libc-types.float128
+ )
-# TODO: This should be conditional on POSIX networking being included.
-file(MAKE_DIRECTORY ${LIBC_INCLUDE_DIR}/arpa)
+ add_gen_header2(
+ stdfix
+ YAML_FILE ../libc/newhdrgen/yaml/stdfix.yaml
+ DEF_FILE stdfix.h.def
+ GEN_HDR stdfix.h
+ DEPENDS
+ .llvm-libc-macros.stdfix_macros
+ )
-add_gen_header2(
- arpa_inet
- YAML_FILE ../libc/newhdrgen/yaml/arpa_inet.yaml
- DEF_FILE arpa/inet.h.def
- GEN_HDR arpa/inet.h
- DEPENDS
- .llvm_libc_common_h
-)
+ # TODO: This should be conditional on POSIX networking being included.
+ file(MAKE_DIRECTORY ${LIBC_INCLUDE_DIR}/arpa)
-add_gen_header2(
- assert
- DEF_FILE assert.h.def
- GEN_HDR assert.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-macros.assert_macros
-)
+ add_gen_header2(
+ arpa_inet
+ YAML_FILE ../libc/newhdrgen/yaml/arpa_inet.yaml
+ DEF_FILE arpa/inet.h.def
+ GEN_HDR arpa/inet.h
+ DEPENDS
+ .llvm_libc_common_h
+ )
-add_gen_header2(
- setjmp
- YAML_FILE ../libc/newhdrgen/yaml/setjmp.yaml
- DEF_FILE setjmp.h.def
- GEN_HDR setjmp.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-types.jmp_buf
-)
+ add_gen_header2(
+ assert
+ DEF_FILE assert.h.def
+ GEN_HDR assert.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-macros.assert_macros
+ )
-add_gen_header2(
- string
- YAML_FILE ../libc/newhdrgen/yaml/string.yaml
- DEF_FILE string.h.def
- GEN_HDR string.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-macros.null_macro
- .llvm-libc-types.size_t
-)
+ add_gen_header2(
+ setjmp
+ YAML_FILE ../libc/newhdrgen/yaml/setjmp.yaml
+ DEF_FILE setjmp.h.def
+ GEN_HDR setjmp.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-types.jmp_buf
+ )
-add_gen_header2(
- strings
- YAML_FILE ../libc/newhdrgen/yaml/strings.yaml
- DEF_FILE strings.h.def
- GEN_HDR strings.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-types.size_t
-)
+ add_gen_header2(
+ string
+ YAML_FILE ../libc/newhdrgen/yaml/string.yaml
+ DEF_FILE string.h.def
+ GEN_HDR string.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-macros.null_macro
+ .llvm-libc-types.size_t
+ )
-add_gen_header2(
- search
- YAML_FILE ../libc/newhdrgen/yaml/search.yaml
- DEF_FILE search.h.def
- GEN_HDR search.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-types.ACTION
- .llvm-libc-types.ENTRY
- .llvm-libc-types.struct_hsearch_data
- .llvm-libc-types.size_t
-)
+ add_gen_header2(
+ strings
+ YAML_FILE ../libc/newhdrgen/yaml/strings.yaml
+ DEF_FILE strings.h.def
+ GEN_HDR strings.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-types.size_t
+ )
-add_gen_header2(
- time
- YAML_FILE ../libc/newhdrgen/yaml/time.yaml
- DEF_FILE time.h.def
- GEN_HDR time.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-macros.time_macros
- .llvm-libc-types.clock_t
- .llvm-libc-types.time_t
- .llvm-libc-types.struct_tm
- .llvm-libc-types.struct_timespec
- .llvm-libc-types.struct_timeval
- .llvm-libc-types.clockid_t
-)
+ add_gen_header2(
+ search
+ YAML_FILE ../libc/newhdrgen/yaml/search.yaml
+ DEF_FILE search.h.def
+ GEN_HDR search.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-types.ACTION
+ .llvm-libc-types.ENTRY
+ .llvm-libc-types.struct_hsearch_data
+ .llvm-libc-types.size_t
+ )
-add_gen_header2(
- threads
- YAML_FILE ../libc/newhdrgen/yaml/threads.yaml
- DEF_FILE threads.h.def
- GEN_HDR threads.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-types.__call_once_func_t
- .llvm-libc-types.once_flag
- .llvm-libc-types.cnd_t
- .llvm-libc-types.mtx_t
- .llvm-libc-types.thrd_t
- .llvm-libc-types.thrd_start_t
- .llvm-libc-types.tss_t
- .llvm-libc-types.tss_dtor_t
-)
+ add_gen_header2(
+ time
+ YAML_FILE ../libc/newhdrgen/yaml/time.yaml
+ DEF_FILE time.h.def
+ GEN_HDR time.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-macros.time_macros
+ .llvm-libc-types.clock_t
+ .llvm-libc-types.time_t
+ .llvm-libc-types.struct_tm
+ .llvm-libc-types.struct_timespec
+ .llvm-libc-types.struct_timeval
+ .llvm-libc-types.clockid_t
+ )
-add_gen_header2(
- errno
- YAML_FILE ../libc/newhdrgen/yaml/errno.yaml
- DEF_FILE errno.h.def
- GEN_HDR errno.h
- DEPENDS
- .llvm-libc-macros.generic_error_number_macros
- .llvm-libc-macros.error_number_macros
-)
+ add_gen_header2(
+ threads
+ YAML_FILE ../libc/newhdrgen/yaml/threads.yaml
+ DEF_FILE threads.h.def
+ GEN_HDR threads.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-types.__call_once_func_t
+ .llvm-libc-types.once_flag
+ .llvm-libc-types.cnd_t
+ .llvm-libc-types.mtx_t
+ .llvm-libc-types.thrd_t
+ .llvm-libc-types.thrd_start_t
+ .llvm-libc-types.tss_t
+ .llvm-libc-types.tss_dtor_t
+ )
-add_gen_header2(
- signal
- YAML_FILE ../libc/newhdrgen/yaml/signal.yaml
- DEF_FILE signal.h.def
- GEN_HDR signal.h
- DEPENDS
- .llvm-libc-macros.signal_macros
- .llvm-libc-types.sig_atomic_t
- .llvm-libc-types.sigset_t
- .llvm-libc-types.struct_sigaction
- .llvm-libc-types.union_sigval
- .llvm-libc-types.siginfo_t
- .llvm-libc-types.stack_t
- .llvm-libc-types.pid_t
-)
+ add_gen_header2(
+ errno
+ YAML_FILE ../libc/newhdrgen/yaml/errno.yaml
+ DEF_FILE errno.h.def
+ GEN_HDR errno.h
+ DEPENDS
+ .llvm-libc-macros.generic_error_number_macros
+ .llvm-libc-macros.error_number_macros
+ )
-add_gen_header2(
- stdbit
- YAML_FILE ../libc/newhdrgen/yaml/stdbit.yaml
- DEF_FILE stdbit.h.def
- GEN_HDR stdbit.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-macros.stdbit_macros
-)
+ add_gen_header2(
+ signal
+ YAML_FILE ../libc/newhdrgen/yaml/signal.yaml
+ DEF_FILE signal.h.def
+ GEN_HDR signal.h
+ DEPENDS
+ .llvm-libc-macros.signal_macros
+ .llvm-libc-types.sig_atomic_t
+ .llvm-libc-types.sigset_t
+ .llvm-libc-types.struct_sigaction
+ .llvm-libc-types.union_sigval
+ .llvm-libc-types.siginfo_t
+ .llvm-libc-types.stack_t
+ .llvm-libc-types.pid_t
+ )
-add_gen_header2(
- stdckdint
- YAML_FILE ../libc/newhdrgen/yaml/stdckdint.yaml
- DEF_FILE stdckdint.h.def
- GEN_HDR stdckdint.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-macros.stdckdint_macros
-)
+ add_gen_header2(
+ stdbit
+ YAML_FILE ../libc/newhdrgen/yaml/stdbit.yaml
+ DEF_FILE stdbit.h.def
+ GEN_HDR stdbit.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-macros.stdbit_macros
+ )
-add_gen_header2(
- stdio
- YAML_FILE ../libc/newhdrgen/yaml/stdio.yaml
- DEF_FILE stdio.h.def
- GEN_HDR stdio.h
- DEPENDS
- .llvm-libc-macros.file_seek_macros
- .llvm-libc-macros.stdio_macros
- .llvm-libc-types.FILE
- .llvm-libc-types.cookie_io_functions_t
- .llvm-libc-types.off_t
- .llvm-libc-types.size_t
- .llvm-libc-types.ssize_t
- .llvm_libc_common_h
-)
+ add_gen_header2(
+ stdckdint
+ YAML_FILE ../libc/newhdrgen/yaml/stdckdint.yaml
+ DEF_FILE stdckdint.h.def
+ GEN_HDR stdckdint.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-macros.stdckdint_macros
+ )
-add_gen_header2(
- stdlib
- YAML_FILE ../libc/newhdrgen/yaml/stdlib.yaml
- DEF_FILE stdlib.h.def
- GEN_HDR stdlib.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-macros.stdlib_macros
- .llvm-libc-types.div_t
- .llvm-libc-types.ldiv_t
- .llvm-libc-types.lldiv_t
- .llvm-libc-types.size_t
- .llvm-libc-types.__bsearchcompare_t
- .llvm-libc-types.__qsortcompare_t
- .llvm-libc-types.__qsortrcompare_t
- .llvm-libc-types.__atexithandler_t
-)
+ add_gen_header2(
+ stdio
+ YAML_FILE ../libc/newhdrgen/yaml/stdio.yaml
+ DEF_FILE stdio.h.def
+ GEN_HDR stdio.h
+ DEPENDS
+ .llvm-libc-macros.file_seek_macros
+ .llvm-libc-macros.stdio_macros
+ .llvm-libc-types.FILE
+ .llvm-libc-types.cookie_io_functions_t
+ .llvm-libc-types.off_t
+ .llvm-libc-types.size_t
+ .llvm-libc-types.ssize_t
+ .llvm_libc_common_h
+ )
-add_gen_header2(
- unistd
- YAML_FILE ../libc/newhdrgen/yaml/unistd.yaml
- DEF_FILE unistd.h.def
- GEN_HDR unistd.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-macros.file_seek_macros
- .llvm-libc-macros.unistd_macros
- .llvm-libc-types.__exec_argv_t
- .llvm-libc-types.__exec_envp_t
- .llvm-libc-types.off_t
- .llvm-libc-types.pid_t
- .llvm-libc-types.size_t
- .llvm-libc-types.ssize_t
- .llvm-libc-types.uid_t
- .llvm-libc-types.__getoptargv_t
-)
+ add_gen_header2(
+ stdlib
+ YAML_FILE ../libc/newhdrgen/yaml/stdlib.yaml
+ DEF_FILE stdlib.h.def
+ GEN_HDR stdlib.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-macros.stdlib_macros
+ .llvm-libc-types.div_t
+ .llvm-libc-types.ldiv_t
+ .llvm-libc-types.lldiv_t
+ .llvm-libc-types.size_t
+ .llvm-libc-types.__bsearchcompare_t
+ .llvm-libc-types.__qsortcompare_t
+ .llvm-libc-types.__qsortrcompare_t
+ .llvm-libc-types.__atexithandler_t
+ )
-add_gen_header2(
- pthread
- YAML_FILE ../libc/newhdrgen/yaml/pthread.yaml
- DEF_FILE pthread.h.def
- GEN_HDR pthread.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-types.__atfork_callback_t
- .llvm-libc-types.__pthread_once_func_t
- .llvm-libc-types.__pthread_start_t
- .llvm-libc-types.__pthread_tss_dtor_t
- .llvm-libc-types.pthread_attr_t
- .llvm-libc-types.pthread_condattr_t
- .llvm-libc-types.pthread_key_t
- .llvm-libc-types.pthread_mutex_t
- .llvm-libc-types.pthread_mutexattr_t
- .llvm-libc-types.pthread_once_t
- .llvm-libc-types.pthread_rwlock_t
- .llvm-libc-types.pthread_rwlockattr_t
- .llvm-libc-types.pthread_t
-)
+ add_gen_header2(
+ unistd
+ YAML_FILE ../libc/newhdrgen/yaml/unistd.yaml
+ DEF_FILE unistd.h.def
+ GEN_HDR unistd.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-macros.file_seek_macros
+ .llvm-libc-macros.unistd_macros
+ .llvm-libc-types.__exec_argv_t
+ .llvm-libc-types.__exec_envp_t
+ .llvm-libc-types.off_t
+ .llvm-libc-types.pid_t
+ .llvm-libc-types.size_t
+ .llvm-libc-types.ssize_t
+ .llvm-libc-types.uid_t
+ .llvm-libc-types.__getoptargv_t
+ )
-add_gen_header2(
- sched
- YAML_FILE ../libc/newhdrgen/yaml/sched.yaml
- DEF_FILE sched.h.def
- GEN_HDR sched.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-macros.sched_macros
- .llvm-libc-types.cpu_set_t
- .llvm-libc-types.pid_t
- .llvm-libc-types.size_t
- .llvm-libc-types.struct_sched_param
- # Needed according to posix standard
- .llvm-libc-types.time_t
- .llvm-libc-types.struct_timespec
-)
+ add_gen_header2(
+ pthread
+ YAML_FILE ../libc/newhdrgen/yaml/pthread.yaml
+ DEF_FILE pthread.h.def
+ GEN_HDR pthread.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-types.__atfork_callback_t
+ .llvm-libc-types.__pthread_once_func_t
+ .llvm-libc-types.__pthread_start_t
+ .llvm-libc-types.__pthread_tss_dtor_t
+ .llvm-libc-types.pthread_attr_t
+ .llvm-libc-types.pthread_condattr_t
+ .llvm-libc-types.pthread_key_t
+ .llvm-libc-types.pthread_mutex_t
+ .llvm-libc-types.pthread_mutexattr_t
+ .llvm-libc-types.pthread_once_t
+ .llvm-libc-types.pthread_rwlock_t
+ .llvm-libc-types.pthread_rwlockattr_t
+ .llvm-libc-types.pthread_t
+ )
-add_gen_header2(
- spawn
- YAML_FILE ../libc/newhdrgen/yaml/spawn.yaml
- DEF_FILE spawn.h.def
- GEN_HDR spawn.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-types.mode_t
- .llvm-libc-types.pid_t
- .llvm-libc-types.posix_spawnattr_t
- .llvm-libc-types.posix_spawn_file_actions_t
-)
+ add_gen_header2(
+ sched
+ YAML_FILE ../libc/newhdrgen/yaml/sched.yaml
+ DEF_FILE sched.h.def
+ GEN_HDR sched.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-macros.sched_macros
+ .llvm-libc-types.cpu_set_t
+ .llvm-libc-types.pid_t
+ .llvm-libc-types.size_t
+ .llvm-libc-types.struct_sched_param
+ # Needed according to posix standard
+ .llvm-libc-types.time_t
+ .llvm-libc-types.struct_timespec
+ )
-# TODO: Not all platforms will have a include/sys directory. Add the sys
-# directory and the targets for sys/*.h files conditional to the OS requiring
-# them.
-file(MAKE_DIRECTORY ${LIBC_INCLUDE_DIR}/sys)
-
-add_gen_header2(
- sys_auxv
- YAML_FILE ../libc/newhdrgen/yaml/sys/sys_auxv.yaml
- DEF_FILE sys/auxv.h.def
- GEN_HDR sys/auxv.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-macros.sys_auxv_macros
-)
+ add_gen_header2(
+ spawn
+ YAML_FILE ../libc/newhdrgen/yaml/spawn.yaml
+ DEF_FILE spawn.h.def
+ GEN_HDR spawn.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-types.mode_t
+ .llvm-libc-types.pid_t
+ .llvm-libc-types.posix_spawnattr_t
+ .llvm-libc-types.posix_spawn_file_actions_t
+ )
-add_gen_header2(
- sys_epoll
- YAML_FILE ../libc/newhdrgen/yaml/sys/sys_epoll.yaml
- DEF_FILE sys/epoll.h.def
- GEN_HDR sys/epoll.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-types.struct_epoll_event
- .llvm-libc-types.struct_epoll_data
- .llvm-libc-types.sigset_t
- .llvm-libc-macros.sys_epoll_macros
-)
+ # TODO: Not all platforms will have a include/sys directory. Add the sys
+ # directory and the targets for sys/*.h files conditional to the OS requiring
+ # them.
+ file(MAKE_DIRECTORY ${LIBC_INCLUDE_DIR}/sys)
-add_gen_header2(
- sys_ioctl
- YAML_FILE ../libc/newhdrgen/yaml/sys/sys_ioctl.yaml
- DEF_FILE sys/ioctl.h.def
- GEN_HDR sys/ioctl.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-macros.sys_ioctl_macros
-)
+ add_gen_header2(
+ sys_auxv
+ YAML_FILE ../libc/newhdrgen/yaml/sys/sys_auxv.yaml
+ DEF_FILE sys/auxv.h.def
+ GEN_HDR sys/auxv.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-macros.sys_auxv_macros
+ )
-add_gen_header2(
- sys_mman
- YAML_FILE ../libc/newhdrgen/yaml/sys/sys_mman.yaml
- DEF_FILE sys/mman.h.def
- GEN_HDR sys/mman.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-macros.sys_mman_macros
- .llvm-libc-types.off_t
- .llvm-libc-types.size_t
- .llvm-libc-types.ssize_t
-)
+ add_gen_header2(
+ sys_epoll
+ YAML_FILE ../libc/newhdrgen/yaml/sys/sys_epoll.yaml
+ DEF_FILE sys/epoll.h.def
+ GEN_HDR sys/epoll.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-types.struct_epoll_event
+ .llvm-libc-types.struct_epoll_data
+ .llvm-libc-types.sigset_t
+ .llvm-libc-macros.sys_epoll_macros
+ )
-add_gen_header2(
- sys_prctl
- YAML_FILE ../libc/newhdrgen/yaml/sys/sys_prctl.yaml
- DEF_FILE sys/prctl.h.def
- GEN_HDR sys/prctl.h
- DEPENDS
- .llvm_libc_common_h
-)
+ add_gen_header2(
+ sys_ioctl
+ YAML_FILE ../libc/newhdrgen/yaml/sys/sys_ioctl.yaml
+ DEF_FILE sys/ioctl.h.def
+ GEN_HDR sys/ioctl.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-macros.sys_ioctl_macros
+ )
-add_header(
- sys_queue
- HDR
- sys/queue.h
- DEPENDS
- .llvm-libc-macros.sys_queue_macros
-)
+ add_gen_header2(
+ sys_mman
+ YAML_FILE ../libc/newhdrgen/yaml/sys/sys_mman.yaml
+ DEF_FILE sys/mman.h.def
+ GEN_HDR sys/mman.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-macros.sys_mman_macros
+ .llvm-libc-types.off_t
+ .llvm-libc-types.size_t
+ .llvm-libc-types.ssize_t
+ )
-add_gen_header2(
- sys_random
- YAML_FILE ../libc/newhdrgen/yaml/sys/sys_random.yaml
- DEF_FILE sys/random.h.def
- GEN_HDR sys/random.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-macros.sys_random_macros
- .llvm-libc-types.size_t
- .llvm-libc-types.ssize_t
-)
+ add_gen_header2(
+ sys_prctl
+ YAML_FILE ../libc/newhdrgen/yaml/sys/sys_prctl.yaml
+ DEF_FILE sys/prctl.h.def
+ GEN_HDR sys/prctl.h
+ DEPENDS
+ .llvm_libc_common_h
+ )
-add_gen_header2(
- sys_resource
- YAML_FILE ../libc/newhdrgen/yaml/sys/sys_resource.yaml
- DEF_FILE sys/resource.h.def
- GEN_HDR sys/resource.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-macros.sys_resource_macros
- .llvm-libc-types.rlim_t
- .llvm-libc-types.struct_rlimit
-)
+ add_header(
+ sys_queue
+ HDR
+ sys/queue.h
+ DEPENDS
+ .llvm-libc-macros.sys_queue_macros
+ )
-add_gen_header2(
- sys_stat
- YAML_FILE ../libc/newhdrgen/yaml/sys/sys_stat.yaml
- DEF_FILE sys/stat.h.def
- GEN_HDR sys/stat.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-macros.sys_stat_macros
- .llvm-libc-types.mode_t
- .llvm-libc-types.dev_t
- .llvm-libc-types.ino_t
- .llvm-libc-types.nlink_t
- .llvm-libc-types.uid_t
- .llvm-libc-types.gid_t
- .llvm-libc-types.off_t
- .llvm-libc-types.struct_timespec
- .llvm-libc-types.struct_timeval
- .llvm-libc-types.blksize_t
- .llvm-libc-types.blkcnt_t
- .llvm-libc-types.struct_stat
-)
+ add_gen_header2(
+ sys_random
+ YAML_FILE ../libc/newhdrgen/yaml/sys/sys_random.yaml
+ DEF_FILE sys/random.h.def
+ GEN_HDR sys/random.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-macros.sys_random_macros
+ .llvm-libc-types.size_t
+ .llvm-libc-types.ssize_t
+ )
-add_gen_header2(
- sys_select
- YAML_FILE ../libc/newhdrgen/yaml/sys/sys_select.yaml
- DEF_FILE sys/select.h.def
- GEN_HDR sys/select.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-macros.sys_select_macros
- .llvm-libc-types.fd_set
- .llvm-libc-types.sigset_t
- .llvm-libc-types.suseconds_t
- .llvm-libc-types.time_t
- .llvm-libc-types.struct_timespec
- .llvm-libc-types.struct_timeval
-)
+ add_gen_header2(
+ sys_resource
+ YAML_FILE ../libc/newhdrgen/yaml/sys/sys_resource.yaml
+ DEF_FILE sys/resource.h.def
+ GEN_HDR sys/resource.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-macros.sys_resource_macros
+ .llvm-libc-types.rlim_t
+ .llvm-libc-types.struct_rlimit
+ )
-add_gen_header2(
- sys_sendfile
- YAML_FILE ../libc/newhdrgen/yaml/sys/sys_sendfile.yaml
- DEF_FILE sys/sendfile.h.def
- GEN_HDR sys/sendfile.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-types.off_t
- .llvm-libc-types.size_t
- .llvm-libc-types.ssize_t
-)
+ add_gen_header2(
+ sys_stat
+ YAML_FILE ../libc/newhdrgen/yaml/sys/sys_stat.yaml
+ DEF_FILE sys/stat.h.def
+ GEN_HDR sys/stat.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-macros.sys_stat_macros
+ .llvm-libc-types.mode_t
+ .llvm-libc-types.dev_t
+ .llvm-libc-types.ino_t
+ .llvm-libc-types.nlink_t
+ .llvm-libc-types.uid_t
+ .llvm-libc-types.gid_t
+ .llvm-libc-types.off_t
+ .llvm-libc-types.struct_timespec
+ .llvm-libc-types.struct_timeval
+ .llvm-libc-types.blksize_t
+ .llvm-libc-types.blkcnt_t
+ .llvm-libc-types.struct_stat
+ )
-add_gen_header2(
- sys_socket
- YAML_FILE ../libc/newhdrgen/yaml/sys/sys_socket.yaml
- DEF_FILE sys/socket.h.def
- GEN_HDR sys/socket.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-macros.sys_socket_macros
- .llvm-libc-types.sa_family_t
- .llvm-libc-types.socklen_t
- .llvm-libc-types.struct_sockaddr
- .llvm-libc-types.struct_sockaddr_un
-)
+ add_gen_header2(
+ sys_select
+ YAML_FILE ../libc/newhdrgen/yaml/sys/sys_select.yaml
+ DEF_FILE sys/select.h.def
+ GEN_HDR sys/select.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-macros.sys_select_macros
+ .llvm-libc-types.fd_set
+ .llvm-libc-types.sigset_t
+ .llvm-libc-types.suseconds_t
+ .llvm-libc-types.time_t
+ .llvm-libc-types.struct_timespec
+ .llvm-libc-types.struct_timeval
+ )
-add_gen_header2(
- sys_statvfs
- YAML_FILE ../libc/newhdrgen/yaml/sys/sys_statvfs.yaml
- DEF_FILE sys/statvfs.h.def
- GEN_HDR sys/statvfs.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-types.struct_statvfs
-)
+ add_gen_header2(
+ sys_sendfile
+ YAML_FILE ../libc/newhdrgen/yaml/sys/sys_sendfile.yaml
+ DEF_FILE sys/sendfile.h.def
+ GEN_HDR sys/sendfile.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-types.off_t
+ .llvm-libc-types.size_t
+ .llvm-libc-types.ssize_t
+ )
-add_gen_header2(
- sys_syscall
- YAML_FILE ../libc/newhdrgen/yaml/sys/sys_syscall.yaml
- DEF_FILE sys/syscall.h.def
- GEN_HDR sys/syscall.h
-)
+ add_gen_header2(
+ sys_socket
+ YAML_FILE ../libc/newhdrgen/yaml/sys/sys_socket.yaml
+ DEF_FILE sys/socket.h.def
+ GEN_HDR sys/socket.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-macros.sys_socket_macros
+ .llvm-libc-types.sa_family_t
+ .llvm-libc-types.socklen_t
+ .llvm-libc-types.struct_sockaddr
+ .llvm-libc-types.struct_sockaddr_un
+ )
-add_gen_header2(
- sys_time
- YAML_FILE ../libc/newhdrgen/yaml/sys/sys_time.yaml
- DEF_FILE sys/time.h.def
- GEN_HDR sys/time.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-types.struct_timeval
- .llvm-libc-macros.sys_time_macros
-)
+ add_gen_header2(
+ sys_statvfs
+ YAML_FILE ../libc/newhdrgen/yaml/sys/sys_statvfs.yaml
+ DEF_FILE sys/statvfs.h.def
+ GEN_HDR sys/statvfs.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-types.struct_statvfs
+ )
-add_gen_header2(
- sys_types
- YAML_FILE ../libc/newhdrgen/yaml/sys/sys_types.yaml
- DEF_FILE sys/types.h.def
- GEN_HDR sys/types.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-types.blkcnt_t
- .llvm-libc-types.blksize_t
- .llvm-libc-types.clockid_t
- .llvm-libc-types.dev_t
- .llvm-libc-types.gid_t
- .llvm-libc-types.ino_t
- .llvm-libc-types.mode_t
- .llvm-libc-types.nlink_t
- .llvm-libc-types.off_t
- .llvm-libc-types.pid_t
- .llvm-libc-types.pthread_attr_t
- .llvm-libc-types.pthread_key_t
- .llvm-libc-types.pthread_mutex_t
- .llvm-libc-types.pthread_mutexattr_t
- .llvm-libc-types.pthread_once_t
- .llvm-libc-types.pthread_t
- .llvm-libc-types.size_t
- .llvm-libc-types.ssize_t
- .llvm-libc-types.suseconds_t
- .llvm-libc-types.time_t
- .llvm-libc-types.uid_t
-)
+ add_gen_header2(
+ sys_syscall
+ YAML_FILE ../libc/newhdrgen/yaml/sys/sys_syscall.yaml
+ DEF_FILE sys/syscall.h.def
+ GEN_HDR sys/syscall.h
+ )
-add_gen_header2(
- sys_utsname
- YAML_FILE ../libc/newhdrgen/yaml/sys/sys_utsname.yaml
- DEF_FILE sys/utsname.h.def
- GEN_HDR sys/utsname.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-types.struct_utsname
-)
+ add_gen_header2(
+ sys_time
+ YAML_FILE ../libc/newhdrgen/yaml/sys/sys_time.yaml
+ DEF_FILE sys/time.h.def
+ GEN_HDR sys/time.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-types.struct_timeval
+ .llvm-libc-macros.sys_time_macros
+ )
-add_gen_header2(
- sys_wait
- YAML_FILE ../libc/newhdrgen/yaml/sys/sys_wait.yaml
- DEF_FILE sys/wait.h.def
- GEN_HDR sys/wait.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-macros.sys_wait_macros
- .llvm-libc-types.pid_t
- .llvm-libc-types.struct_rusage
- .llvm-libc-types.siginfo_t
-)
+ add_gen_header2(
+ sys_types
+ YAML_FILE ../libc/newhdrgen/yaml/sys/sys_types.yaml
+ DEF_FILE sys/types.h.def
+ GEN_HDR sys/types.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-types.blkcnt_t
+ .llvm-libc-types.blksize_t
+ .llvm-libc-types.clockid_t
+ .llvm-libc-types.dev_t
+ .llvm-libc-types.gid_t
+ .llvm-libc-types.ino_t
+ .llvm-libc-types.mode_t
+ .llvm-libc-types.nlink_t
+ .llvm-libc-types.off_t
+ .llvm-libc-types.pid_t
+ .llvm-libc-types.pthread_attr_t
+ .llvm-libc-types.pthread_key_t
+ .llvm-libc-types.pthread_mutex_t
+ .llvm-libc-types.pthread_mutexattr_t
+ .llvm-libc-types.pthread_once_t
+ .llvm-libc-types.pthread_t
+ .llvm-libc-types.size_t
+ .llvm-libc-types.ssize_t
+ .llvm-libc-types.suseconds_t
+ .llvm-libc-types.time_t
+ .llvm-libc-types.uid_t
+ )
-add_gen_header2(
- termios
- YAML_FILE ../libc/newhdrgen/yaml/termios.yaml
- DEF_FILE termios.h.def
- GEN_HDR termios.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-macros.termios_macros
- .llvm-libc-types.cc_t
- .llvm-libc-types.pid_t
- .llvm-libc-types.speed_t
- .llvm-libc-types.struct_termios
- .llvm-libc-types.tcflag_t
-)
+ add_gen_header2(
+ sys_utsname
+ YAML_FILE ../libc/newhdrgen/yaml/sys/sys_utsname.yaml
+ DEF_FILE sys/utsname.h.def
+ GEN_HDR sys/utsname.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-types.struct_utsname
+ )
-add_gen_header2(
- uchar
- YAML_FILE ../libc/newhdrgen/yaml/uchar.yaml
- DEF_FILE uchar.h.def
- GEN_HDR uchar.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-types.mbstate_t
- .llvm-libc-types.char8_t
- .llvm-libc-types.char16_t
- .llvm-libc-types.char32_t
-)
+ add_gen_header2(
+ sys_wait
+ YAML_FILE ../libc/newhdrgen/yaml/sys/sys_wait.yaml
+ DEF_FILE sys/wait.h.def
+ GEN_HDR sys/wait.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-macros.sys_wait_macros
+ .llvm-libc-types.pid_t
+ .llvm-libc-types.struct_rusage
+ .llvm-libc-types.siginfo_t
+ )
-add_gen_header2(
- wchar
- YAML_FILE ../libc/newhdrgen/yaml/wchar.yaml
- DEF_FILE wchar.h.def
- GEN_HDR wchar.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-macros.wchar_macros
- .llvm-libc-types.mbstate_t
- .llvm-libc-types.size_t
- .llvm-libc-types.wint_t
- .llvm-libc-types.wchar_t
-)
+ add_gen_header2(
+ termios
+ YAML_FILE ../libc/newhdrgen/yaml/termios.yaml
+ DEF_FILE termios.h.def
+ GEN_HDR termios.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-macros.termios_macros
+ .llvm-libc-types.cc_t
+ .llvm-libc-types.pid_t
+ .llvm-libc-types.speed_t
+ .llvm-libc-types.struct_termios
+ .llvm-libc-types.tcflag_t
+ )
-if(LIBC_TARGET_OS_IS_GPU)
- file(MAKE_DIRECTORY ${LIBC_INCLUDE_DIR}/gpu)
+ add_gen_header2(
+ uchar
+ YAML_FILE ../libc/newhdrgen/yaml/uchar.yaml
+ DEF_FILE uchar.h.def
+ GEN_HDR uchar.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-types.mbstate_t
+ .llvm-libc-types.char8_t
+ .llvm-libc-types.char16_t
+ .llvm-libc-types.char32_t
+ )
add_gen_header2(
- gpu_rpc
- YAML_FILE ../libc/newhdrgen/yaml/rpc.yaml
- DEF_FILE gpu/rpc.h.def
- GEN_HDR gpu/rpc.h
+ wchar
+ YAML_FILE ../libc/newhdrgen/yaml/wchar.yaml
+ DEF_FILE wchar.h.def
+ GEN_HDR wchar.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-macros.wchar_macros
+ .llvm-libc-types.mbstate_t
+ .llvm-libc-types.size_t
+ .llvm-libc-types.wint_t
+ .llvm-libc-types.wchar_t
+ )
+
+ if(LIBC_TARGET_OS_IS_GPU)
+ file(MAKE_DIRECTORY ${LIBC_INCLUDE_DIR}/gpu)
+
+ add_gen_header2(
+ gpu_rpc
+ YAML_FILE ../libc/newhdrgen/yaml/rpc.yaml
+ DEF_FILE gpu/rpc.h.def
+ GEN_HDR gpu/rpc.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-types.rpc_opcodes_t
+ )
+ endif()
+else()
+ add_gen_header(
+ ctype
+ DEF_FILE ctype.h.def
+ GEN_HDR ctype.h
+ DEPENDS
+ .llvm_libc_common_h
+ )
+
+ add_gen_header(
+ dirent
+ DEF_FILE dirent.h.def
+ GEN_HDR dirent.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-types.ino_t
+ .llvm-libc-types.DIR
+ .llvm-libc-types.struct_dirent
+ )
+
+ add_gen_header(
+ fcntl
+ DEF_FILE fcntl.h.def
+ GEN_HDR fcntl.h
+ DEPENDS
+ .llvm-libc-macros.fcntl_macros
+ .llvm-libc-types.mode_t
+ .llvm-libc-types.struct_flock
+ .llvm-libc-types.struct_flock64
+ .llvm-libc-types.off64_t
+ .llvm-libc-types.pid_t
+ .llvm-libc-types.off_t
+ .llvm_libc_common_h
+ )
+
+ add_gen_header(
+ dlfcn
+ DEF_FILE dlfcn.h.def
+ GEN_HDR dlfcn.h
+ DEPENDS
+ .llvm-libc-macros.dlfcn_macros
+ .llvm_libc_common_h
+ )
+
+ add_gen_header(
+ features
+ DEF_FILE features.h.def
+ GEN_HDR features.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-macros.features_macros
+ )
+
+ add_gen_header(
+ fenv
+ DEF_FILE fenv.h.def
+ GEN_HDR fenv.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-macros.fenv_macros
+ .llvm-libc-types.fenv_t
+ .llvm-libc-types.fexcept_t
+ )
+
+ add_gen_header(
+ inttypes
+ DEF_FILE inttypes.h.def
+ GEN_HDR inttypes.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-types.imaxdiv_t
+ .llvm-libc-macros.inttypes_macros
+ )
+
+ add_gen_header(
+ float
+ DEF_FILE float.h.def
+ GEN_HDR float.h
+ DEPENDS
+ .llvm-libc-macros.float_macros
+ )
+
+ add_gen_header(
+ stdint
+ DEF_FILE stdint.h.def
+ GEN_HDR stdint.h
+ DEPENDS
+ .llvm-libc-macros.stdint_macros
+ )
+
+ add_gen_header(
+ limits
+ DEF_FILE limits.h.def
+ GEN_HDR limits.h
+ DEPENDS
+ .llvm-libc-macros.limits_macros
+ )
+
+ add_gen_header(
+ math
+ DEF_FILE math.h.def
+ GEN_HDR math.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-macros.float16_macros
+ .llvm-libc-macros.math_macros
+ .llvm-libc-macros.math_function_macros
+ .llvm-libc-types.double_t
+ .llvm-libc-types.float_t
+ .llvm-libc-types.float128
+ )
+
+ add_gen_header(
+ stdfix
+ DEF_FILE stdfix.h.def
+ GEN_HDR stdfix.h
+ DEPENDS
+ .llvm-libc-macros.stdfix_macros
+ )
+
+ # TODO: This should be conditional on POSIX networking being included.
+ file(MAKE_DIRECTORY ${LIBC_INCLUDE_DIR}/arpa)
+
+ add_gen_header(
+ arpa_inet
+ DEF_FILE arpa/inet.h.def
+ GEN_HDR arpa/inet.h
+ DEPENDS
+ .llvm_libc_common_h
+ )
+
+ add_gen_header(
+ assert
+ DEF_FILE assert.h.def
+ GEN_HDR assert.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-macros.assert_macros
+ )
+
+ add_gen_header(
+ setjmp
+ DEF_FILE setjmp.h.def
+ GEN_HDR setjmp.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-types.jmp_buf
+ )
+
+ add_gen_header(
+ string
+ DEF_FILE string.h.def
+ GEN_HDR string.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-macros.null_macro
+ .llvm-libc-types.size_t
+ )
+
+ add_gen_header(
+ strings
+ DEF_FILE strings.h.def
+ GEN_HDR strings.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-types.size_t
+ )
+
+ add_gen_header(
+ search
+ DEF_FILE search.h.def
+ GEN_HDR search.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-types.ACTION
+ .llvm-libc-types.ENTRY
+ .llvm-libc-types.struct_hsearch_data
+ .llvm-libc-types.size_t
+ )
+
+ add_gen_header(
+ time
+ DEF_FILE time.h.def
+ GEN_HDR time.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-macros.time_macros
+ .llvm-libc-types.clock_t
+ .llvm-libc-types.time_t
+ .llvm-libc-types.struct_tm
+ .llvm-libc-types.struct_timespec
+ .llvm-libc-types.struct_timeval
+ .llvm-libc-types.clockid_t
+ )
+
+ add_gen_header(
+ threads
+ DEF_FILE threads.h.def
+ GEN_HDR threads.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-types.__call_once_func_t
+ .llvm-libc-types.once_flag
+ .llvm-libc-types.cnd_t
+ .llvm-libc-types.mtx_t
+ .llvm-libc-types.thrd_t
+ .llvm-libc-types.thrd_start_t
+ .llvm-libc-types.tss_t
+ .llvm-libc-types.tss_dtor_t
+ )
+
+ add_gen_header(
+ errno
+ DEF_FILE errno.h.def
+ GEN_HDR errno.h
+ DEPENDS
+ .llvm-libc-macros.generic_error_number_macros
+ .llvm-libc-macros.error_number_macros
+ )
+
+ add_gen_header(
+ signal
+ DEF_FILE signal.h.def
+ GEN_HDR signal.h
+ DEPENDS
+ .llvm-libc-macros.signal_macros
+ .llvm-libc-types.sig_atomic_t
+ .llvm-libc-types.sigset_t
+ .llvm-libc-types.struct_sigaction
+ .llvm-libc-types.union_sigval
+ .llvm-libc-types.siginfo_t
+ .llvm-libc-types.stack_t
+ .llvm-libc-types.pid_t
+ )
+
+ add_gen_header(
+ stdbit
+ DEF_FILE stdbit.h.def
+ GEN_HDR stdbit.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-macros.stdbit_macros
+ )
+
+ add_gen_header(
+ stdckdint
+ DEF_FILE stdckdint.h.def
+ GEN_HDR stdckdint.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-macros.stdckdint_macros
+ )
+
+ add_gen_header(
+ stdio
+ DEF_FILE stdio.h.def
+ GEN_HDR stdio.h
+ DEPENDS
+ .llvm-libc-macros.file_seek_macros
+ .llvm-libc-macros.stdio_macros
+ .llvm-libc-types.FILE
+ .llvm-libc-types.cookie_io_functions_t
+ .llvm-libc-types.off_t
+ .llvm-libc-types.size_t
+ .llvm-libc-types.ssize_t
+ .llvm_libc_common_h
+ )
+
+ add_gen_header(
+ stdlib
+ DEF_FILE stdlib.h.def
+ GEN_HDR stdlib.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-macros.stdlib_macros
+ .llvm-libc-types.div_t
+ .llvm-libc-types.ldiv_t
+ .llvm-libc-types.lldiv_t
+ .llvm-libc-types.size_t
+ .llvm-libc-types.__bsearchcompare_t
+ .llvm-libc-types.__qsortcompare_t
+ .llvm-libc-types.__qsortrcompare_t
+ .llvm-libc-types.__atexithandler_t
+ )
+
+ add_gen_header(
+ unistd
+ DEF_FILE unistd.h.def
+ GEN_HDR unistd.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-macros.file_seek_macros
+ .llvm-libc-macros.unistd_macros
+ .llvm-libc-types.__exec_argv_t
+ .llvm-libc-types.__exec_envp_t
+ .llvm-libc-types.off_t
+ .llvm-libc-types.pid_t
+ .llvm-libc-types.size_t
+ .llvm-libc-types.ssize_t
+ .llvm-libc-types.uid_t
+ .llvm-libc-types.__getoptargv_t
+ )
+
+ add_gen_header(
+ pthread
+ DEF_FILE pthread.h.def
+ GEN_HDR pthread.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-types.__atfork_callback_t
+ .llvm-libc-types.__pthread_once_func_t
+ .llvm-libc-types.__pthread_start_t
+ .llvm-libc-types.__pthread_tss_dtor_t
+ .llvm-libc-types.pthread_attr_t
+ .llvm-libc-types.pthread_condattr_t
+ .llvm-libc-types.pthread_key_t
+ .llvm-libc-types.pthread_mutex_t
+ .llvm-libc-types.pthread_mutexattr_t
+ .llvm-libc-types.pthread_once_t
+ .llvm-libc-types.pthread_rwlock_t
+ .llvm-libc-types.pthread_rwlockattr_t
+ .llvm-libc-types.pthread_t
+ )
+
+ add_gen_header(
+ sched
+ DEF_FILE sched.h.def
+ GEN_HDR sched.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-macros.sched_macros
+ .llvm-libc-types.cpu_set_t
+ .llvm-libc-types.pid_t
+ .llvm-libc-types.size_t
+ .llvm-libc-types.struct_sched_param
+ # Needed according to posix standard
+ .llvm-libc-types.time_t
+ .llvm-libc-types.struct_timespec
+ )
+
+ add_gen_header(
+ spawn
+ DEF_FILE spawn.h.def
+ GEN_HDR spawn.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-types.mode_t
+ .llvm-libc-types.pid_t
+ .llvm-libc-types.posix_spawnattr_t
+ .llvm-libc-types.posix_spawn_file_actions_t
+ )
+
+ # TODO: Not all platforms will have a include/sys directory. Add the sys
+ # directory and the targets for sys/*.h files conditional to the OS requiring
+ # them.
+ file(MAKE_DIRECTORY ${LIBC_INCLUDE_DIR}/sys)
+
+ add_gen_header(
+ sys_auxv
+ DEF_FILE sys/auxv.h.def
+ GEN_HDR sys/auxv.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-macros.sys_auxv_macros
+ )
+
+ add_gen_header(
+ sys_epoll
+ DEF_FILE sys/epoll.h.def
+ GEN_HDR sys/epoll.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-types.struct_epoll_event
+ .llvm-libc-types.struct_epoll_data
+ .llvm-libc-types.sigset_t
+ .llvm-libc-macros.sys_epoll_macros
+ )
+
+ add_gen_header(
+ sys_ioctl
+ DEF_FILE sys/ioctl.h.def
+ GEN_HDR sys/ioctl.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-macros.sys_ioctl_macros
+ )
+
+ add_gen_header(
+ sys_mman
+ DEF_FILE sys/mman.h.def
+ GEN_HDR sys/mman.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-macros.sys_mman_macros
+ .llvm-libc-types.off_t
+ .llvm-libc-types.size_t
+ .llvm-libc-types.ssize_t
+ )
+
+ add_gen_header(
+ sys_prctl
+ DEF_FILE sys/prctl.h.def
+ GEN_HDR sys/prctl.h
+ DEPENDS
+ .llvm_libc_common_h
+ )
+
+ add_header(
+ sys_queue
+ HDR
+ sys/queue.h
+ DEPENDS
+ .llvm-libc-macros.sys_queue_macros
+ )
+
+ add_gen_header(
+ sys_random
+ DEF_FILE sys/random.h.def
+ GEN_HDR sys/random.h
DEPENDS
.llvm_libc_common_h
- .llvm-libc-types.rpc_opcodes_t
+ .llvm-libc-macros.sys_random_macros
+ .llvm-libc-types.size_t
+ .llvm-libc-types.ssize_t
)
+
+ add_gen_header(
+ sys_resource
+ DEF_FILE sys/resource.h.def
+ GEN_HDR sys/resource.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-macros.sys_resource_macros
+ .llvm-libc-types.rlim_t
+ .llvm-libc-types.struct_rlimit
+ )
+
+ add_gen_header(
+ sys_stat
+ DEF_FILE sys/stat.h.def
+ GEN_HDR sys/stat.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-macros.sys_stat_macros
+ .llvm-libc-types.mode_t
+ .llvm-libc-types.dev_t
+ .llvm-libc-types.ino_t
+ .llvm-libc-types.nlink_t
+ .llvm-libc-types.uid_t
+ .llvm-libc-types.gid_t
+ .llvm-libc-types.off_t
+ .llvm-libc-types.struct_timespec
+ .llvm-libc-types.struct_timeval
+ .llvm-libc-types.blksize_t
+ .llvm-libc-types.blkcnt_t
+ .llvm-libc-types.struct_stat
+ )
+
+ add_gen_header(
+ sys_select
+ DEF_FILE sys/select.h.def
+ GEN_HDR sys/select.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-macros.sys_select_macros
+ .llvm-libc-types.fd_set
+ .llvm-libc-types.sigset_t
+ .llvm-libc-types.suseconds_t
+ .llvm-libc-types.time_t
+ .llvm-libc-types.struct_timespec
+ .llvm-libc-types.struct_timeval
+ )
+
+ add_gen_header(
+ sys_sendfile
+ DEF_FILE sys/sendfile.h.def
+ GEN_HDR sys/sendfile.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-types.off_t
+ .llvm-libc-types.size_t
+ .llvm-libc-types.ssize_t
+ )
+
+ add_gen_header(
+ sys_socket
+ DEF_FILE sys/socket.h.def
+ GEN_HDR sys/socket.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-macros.sys_socket_macros
+ .llvm-libc-types.sa_family_t
+ .llvm-libc-types.socklen_t
+ .llvm-libc-types.struct_sockaddr
+ .llvm-libc-types.struct_sockaddr_un
+ )
+
+ add_gen_header(
+ sys_statvfs
+ DEF_FILE sys/statvfs.h.def
+ GEN_HDR sys/statvfs.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-types.struct_statvfs
+ )
+
+ add_gen_header(
+ sys_syscall
+ DEF_FILE sys/syscall.h.def
+ GEN_HDR sys/syscall.h
+ )
+
+ add_gen_header(
+ sys_time
+ DEF_FILE sys/time.h.def
+ GEN_HDR sys/time.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-types.struct_timeval
+ .llvm-libc-macros.sys_time_macros
+ )
+
+ add_gen_header(
+ sys_types
+ DEF_FILE sys/types.h.def
+ GEN_HDR sys/types.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-types.blkcnt_t
+ .llvm-libc-types.blksize_t
+ .llvm-libc-types.clockid_t
+ .llvm-libc-types.dev_t
+ .llvm-libc-types.gid_t
+ .llvm-libc-types.ino_t
+ .llvm-libc-types.mode_t
+ .llvm-libc-types.nlink_t
+ .llvm-libc-types.off_t
+ .llvm-libc-types.pid_t
+ .llvm-libc-types.pthread_attr_t
+ .llvm-libc-types.pthread_key_t
+ .llvm-libc-types.pthread_mutex_t
+ .llvm-libc-types.pthread_mutexattr_t
+ .llvm-libc-types.pthread_once_t
+ .llvm-libc-types.pthread_t
+ .llvm-libc-types.size_t
+ .llvm-libc-types.ssize_t
+ .llvm-libc-types.suseconds_t
+ .llvm-libc-types.time_t
+ .llvm-libc-types.uid_t
+ )
+
+ add_gen_header(
+ sys_utsname
+ DEF_FILE sys/utsname.h.def
+ GEN_HDR sys/utsname.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-types.struct_utsname
+ )
+
+ add_gen_header(
+ sys_wait
+ DEF_FILE sys/wait.h.def
+ GEN_HDR sys/wait.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-macros.sys_wait_macros
+ .llvm-libc-types.pid_t
+ .llvm-libc-types.struct_rusage
+ .llvm-libc-types.siginfo_t
+ )
+
+ add_gen_header(
+ termios
+ DEF_FILE termios.h.def
+ GEN_HDR termios.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-macros.termios_macros
+ .llvm-libc-types.cc_t
+ .llvm-libc-types.pid_t
+ .llvm-libc-types.speed_t
+ .llvm-libc-types.struct_termios
+ .llvm-libc-types.tcflag_t
+ )
+
+ add_gen_header(
+ uchar
+ DEF_FILE uchar.h.def
+ GEN_HDR uchar.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-types.mbstate_t
+ .llvm-libc-types.char8_t
+ .llvm-libc-types.char16_t
+ .llvm-libc-types.char32_t
+ )
+
+ add_gen_header(
+ wchar
+ DEF_FILE wchar.h.def
+ GEN_HDR wchar.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-macros.wchar_macros
+ .llvm-libc-types.mbstate_t
+ .llvm-libc-types.size_t
+ .llvm-libc-types.wint_t
+ .llvm-libc-types.wchar_t
+ )
+
+ if(LIBC_TARGET_OS_IS_GPU)
+ file(MAKE_DIRECTORY ${LIBC_INCLUDE_DIR}/gpu)
+
+ add_gen_header(
+ gpu_rpc
+ DEF_FILE gpu/rpc.h.def
+ GEN_HDR gpu/rpc.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-types.rpc_opcodes_t
+ )
+ endif()
endif()
if(NOT LLVM_LIBC_FULL_BUILD)
>From cb20a5f098f4340557b65587f1f1d90504fb16bc Mon Sep 17 00:00:00 2001
From: Rose Zhang <rosezhang at google.com>
Date: Mon, 15 Jul 2024 23:05:58 +0000
Subject: [PATCH 6/8] added option and changed name to start with LIBC_
---
libc/CMakeLists.txt | 1 +
libc/include/CMakeLists.txt | 2 +-
2 files changed, 2 insertions(+), 1 deletion(-)
diff --git a/libc/CMakeLists.txt b/libc/CMakeLists.txt
index 6ba54475d0fd1..c89897f2900fe 100644
--- a/libc/CMakeLists.txt
+++ b/libc/CMakeLists.txt
@@ -72,6 +72,7 @@ option(LIBC_BUILD_GPU_LOADER "Always build the GPU loader utilities" OFF)
if(LIBC_BUILD_GPU_LOADER OR (LLVM_LIBC_GPU_BUILD AND NOT LLVM_RUNTIMES_BUILD))
add_subdirectory(utils/gpu)
endif()
+option(LIBC_USE_NEW_HEADER_GEN "Generate header files using new headergen instead of the old one" ON)
set(NEED_LIBC_HDRGEN FALSE)
if(NOT LLVM_RUNTIMES_BUILD)
diff --git a/libc/include/CMakeLists.txt b/libc/include/CMakeLists.txt
index 3a9f511d47d77..91fd8ce1a1f79 100644
--- a/libc/include/CMakeLists.txt
+++ b/libc/include/CMakeLists.txt
@@ -17,7 +17,7 @@ add_header(
__llvm-libc-common.h
)
-if (USE_NEW_HEADER_GEN)
+if (LIBC_USE_NEW_HEADER_GEN)
add_gen_header2(
ctype
YAML_FILE ../libc/newhdrgen/yaml/ctype.yaml
>From ea8b7a160223b6119fa9cb689a2de3e94cc667e7 Mon Sep 17 00:00:00 2001
From: Aaryan Shukla <aaryanshukla at google.com>
Date: Mon, 15 Jul 2024 23:50:38 +0000
Subject: [PATCH 7/8] spacing for gpu target and assert.yaml
---
libc/cmake/modules/LLVMLibCHeaderRules.cmake | 22 ++++++++++----------
libc/include/CMakeLists.txt | 1 +
2 files changed, 12 insertions(+), 11 deletions(-)
diff --git a/libc/cmake/modules/LLVMLibCHeaderRules.cmake b/libc/cmake/modules/LLVMLibCHeaderRules.cmake
index b87137c5f1a0d..121dab0e40c1b 100644
--- a/libc/cmake/modules/LLVMLibCHeaderRules.cmake
+++ b/libc/cmake/modules/LLVMLibCHeaderRules.cmake
@@ -243,18 +243,18 @@ function(add_gen_header target_name)
file(MAKE_DIRECTORY ${LIBC_INCLUDE_DIR}/llvm-libc-decls/gpu)
set(decl_out_file ${LIBC_INCLUDE_DIR}/llvm-libc-decls/${relative_path})
add_custom_command(
- OUTPUT ${decl_out_file}
- COMMAND ${hdrgen_exe} -o ${decl_out_file}
- --header ${ADD_GEN_HDR_GEN_HDR} --def ${in_file} --export-decls
- ${replacement_params} -I ${LIBC_SOURCE_DIR} ${ENTRYPOINT_NAME_LIST_ARG}
- ${LIBC_SOURCE_DIR}/config/${LIBC_TARGET_OS}/api.td
+ OUTPUT ${decl_out_file}
+ COMMAND ${hdrgen_exe} -o ${decl_out_file}
+ --header ${ADD_GEN_HDR_GEN_HDR} --def ${in_file} --export-decls
+ ${replacement_params} -I ${LIBC_SOURCE_DIR} ${ENTRYPOINT_NAME_LIST_ARG}
+ ${LIBC_SOURCE_DIR}/config/${LIBC_TARGET_OS}/api.td
- WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
- DEPENDS ${in_file} ${fq_data_files} ${td_includes}
- ${LIBC_SOURCE_DIR}/config/${LIBC_TARGET_OS}/api.td
- ${hdrgen_deps}
- )
-endif()
+ WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
+ DEPENDS ${in_file} ${fq_data_files} ${td_includes}
+ ${LIBC_SOURCE_DIR}/config/${LIBC_TARGET_OS}/api.td
+ ${hdrgen_deps}
+ )
+ endif()
if(ADD_GEN_HDR_DEPENDS)
get_fq_deps_list(fq_deps_list ${ADD_GEN_HDR_DEPENDS})
diff --git a/libc/include/CMakeLists.txt b/libc/include/CMakeLists.txt
index 91fd8ce1a1f79..bd07a3dc9b3d0 100644
--- a/libc/include/CMakeLists.txt
+++ b/libc/include/CMakeLists.txt
@@ -162,6 +162,7 @@ if (LIBC_USE_NEW_HEADER_GEN)
add_gen_header2(
assert
+ YAML_FILE ../libc/newhdrgen/yaml/assert.yaml
DEF_FILE assert.h.def
GEN_HDR assert.h
DEPENDS
>From 09f03a446d23d83ee3d0d6b2ea6c8f7e09fdf8e9 Mon Sep 17 00:00:00 2001
From: Rose Zhang <rosezhang at google.com>
Date: Tue, 16 Jul 2024 00:28:33 +0000
Subject: [PATCH 8/8] added macro
---
libc/include/CMakeLists.txt | 1871 ++++++++++++-----------------------
1 file changed, 632 insertions(+), 1239 deletions(-)
diff --git a/libc/include/CMakeLists.txt b/libc/include/CMakeLists.txt
index bd07a3dc9b3d0..5ad09e4ae8aad 100644
--- a/libc/include/CMakeLists.txt
+++ b/libc/include/CMakeLists.txt
@@ -17,1304 +17,697 @@ add_header(
__llvm-libc-common.h
)
-if (LIBC_USE_NEW_HEADER_GEN)
- add_gen_header2(
- ctype
- YAML_FILE ../libc/newhdrgen/yaml/ctype.yaml
- DEF_FILE ctype.h.def
- GEN_HDR ctype.h
- DEPENDS
- .llvm_libc_common_h
- )
-
- add_gen_header2(
- dirent
- YAML_FILE ../libc/newhdrgen/yaml/dirent.yaml
- DEF_FILE dirent.h.def
- GEN_HDR dirent.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-types.ino_t
- .llvm-libc-types.DIR
- .llvm-libc-types.struct_dirent
- )
-
- add_gen_header2(
- fcntl
- YAML_FILE ../libc/newhdrgen/yaml/fcntl.yaml
- DEF_FILE fcntl.h.def
- GEN_HDR fcntl.h
- DEPENDS
- .llvm-libc-macros.fcntl_macros
- .llvm-libc-types.mode_t
- .llvm-libc-types.struct_flock
- .llvm-libc-types.struct_flock64
- .llvm-libc-types.off64_t
- .llvm-libc-types.pid_t
- .llvm-libc-types.off_t
- .llvm_libc_common_h
- )
-
- add_gen_header2(
- dlfcn
- YAML_FILE ../libc/newhdrgen/yaml/dlfcn.yaml
- DEF_FILE dlfcn.h.def
- GEN_HDR dlfcn.h
- DEPENDS
- .llvm-libc-macros.dlfcn_macros
- .llvm_libc_common_h
- )
-
- add_gen_header2(
- features
- YAML_FILE ../libc/newhdrgen/yaml/features.yaml
- DEF_FILE features.h.def
- GEN_HDR features.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-macros.features_macros
- )
-
- add_gen_header2(
- fenv
- YAML_FILE ../libc/newhdrgen/yaml/fenv.yaml
- DEF_FILE fenv.h.def
- GEN_HDR fenv.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-macros.fenv_macros
- .llvm-libc-types.fenv_t
- .llvm-libc-types.fexcept_t
- )
-
- add_gen_header2(
- inttypes
- YAML_FILE ../libc/newhdrgen/yaml/inttypes.yaml
- DEF_FILE inttypes.h.def
- GEN_HDR inttypes.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-types.imaxdiv_t
- .llvm-libc-macros.inttypes_macros
- )
-
- add_gen_header2(
- float
- YAML_FILE ../libc/newhdrgen/yaml/float.yaml
- DEF_FILE float.h.def
- GEN_HDR float.h
- DEPENDS
- .llvm-libc-macros.float_macros
- )
-
- add_gen_header2(
- stdint
- YAML_FILE ../libc/newhdrgen/yaml/stdint.yaml
- DEF_FILE stdint.h.def
- GEN_HDR stdint.h
- DEPENDS
- .llvm-libc-macros.stdint_macros
- )
-
- add_gen_header2(
- limits
- YAML_FILE ../libc/newhdrgen/yaml/limits.yaml
- DEF_FILE limits.h.def
- GEN_HDR limits.h
- DEPENDS
- .llvm-libc-macros.limits_macros
- )
-
- add_gen_header2(
- math
- YAML_FILE ../libc/newhdrgen/yaml/math.yaml
- DEF_FILE math.h.def
- GEN_HDR math.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-macros.float16_macros
- .llvm-libc-macros.math_macros
- .llvm-libc-types.double_t
- .llvm-libc-types.float_t
- .llvm-libc-types.float128
- )
-
- add_gen_header2(
- stdfix
- YAML_FILE ../libc/newhdrgen/yaml/stdfix.yaml
- DEF_FILE stdfix.h.def
- GEN_HDR stdfix.h
- DEPENDS
- .llvm-libc-macros.stdfix_macros
- )
-
- # TODO: This should be conditional on POSIX networking being included.
- file(MAKE_DIRECTORY ${LIBC_INCLUDE_DIR}/arpa)
-
- add_gen_header2(
- arpa_inet
- YAML_FILE ../libc/newhdrgen/yaml/arpa_inet.yaml
- DEF_FILE arpa/inet.h.def
- GEN_HDR arpa/inet.h
- DEPENDS
- .llvm_libc_common_h
- )
-
- add_gen_header2(
- assert
- YAML_FILE ../libc/newhdrgen/yaml/assert.yaml
- DEF_FILE assert.h.def
- GEN_HDR assert.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-macros.assert_macros
- )
-
- add_gen_header2(
- setjmp
- YAML_FILE ../libc/newhdrgen/yaml/setjmp.yaml
- DEF_FILE setjmp.h.def
- GEN_HDR setjmp.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-types.jmp_buf
- )
-
- add_gen_header2(
- string
- YAML_FILE ../libc/newhdrgen/yaml/string.yaml
- DEF_FILE string.h.def
- GEN_HDR string.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-macros.null_macro
- .llvm-libc-types.size_t
- )
-
- add_gen_header2(
- strings
- YAML_FILE ../libc/newhdrgen/yaml/strings.yaml
- DEF_FILE strings.h.def
- GEN_HDR strings.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-types.size_t
- )
-
- add_gen_header2(
- search
- YAML_FILE ../libc/newhdrgen/yaml/search.yaml
- DEF_FILE search.h.def
- GEN_HDR search.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-types.ACTION
- .llvm-libc-types.ENTRY
- .llvm-libc-types.struct_hsearch_data
- .llvm-libc-types.size_t
- )
-
- add_gen_header2(
- time
- YAML_FILE ../libc/newhdrgen/yaml/time.yaml
- DEF_FILE time.h.def
- GEN_HDR time.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-macros.time_macros
- .llvm-libc-types.clock_t
- .llvm-libc-types.time_t
- .llvm-libc-types.struct_tm
- .llvm-libc-types.struct_timespec
- .llvm-libc-types.struct_timeval
- .llvm-libc-types.clockid_t
- )
-
- add_gen_header2(
- threads
- YAML_FILE ../libc/newhdrgen/yaml/threads.yaml
- DEF_FILE threads.h.def
- GEN_HDR threads.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-types.__call_once_func_t
- .llvm-libc-types.once_flag
- .llvm-libc-types.cnd_t
- .llvm-libc-types.mtx_t
- .llvm-libc-types.thrd_t
- .llvm-libc-types.thrd_start_t
- .llvm-libc-types.tss_t
- .llvm-libc-types.tss_dtor_t
- )
-
- add_gen_header2(
- errno
- YAML_FILE ../libc/newhdrgen/yaml/errno.yaml
- DEF_FILE errno.h.def
- GEN_HDR errno.h
- DEPENDS
- .llvm-libc-macros.generic_error_number_macros
- .llvm-libc-macros.error_number_macros
- )
-
- add_gen_header2(
- signal
- YAML_FILE ../libc/newhdrgen/yaml/signal.yaml
- DEF_FILE signal.h.def
- GEN_HDR signal.h
- DEPENDS
- .llvm-libc-macros.signal_macros
- .llvm-libc-types.sig_atomic_t
- .llvm-libc-types.sigset_t
- .llvm-libc-types.struct_sigaction
- .llvm-libc-types.union_sigval
- .llvm-libc-types.siginfo_t
- .llvm-libc-types.stack_t
- .llvm-libc-types.pid_t
- )
-
- add_gen_header2(
- stdbit
- YAML_FILE ../libc/newhdrgen/yaml/stdbit.yaml
- DEF_FILE stdbit.h.def
- GEN_HDR stdbit.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-macros.stdbit_macros
- )
-
- add_gen_header2(
- stdckdint
- YAML_FILE ../libc/newhdrgen/yaml/stdckdint.yaml
- DEF_FILE stdckdint.h.def
- GEN_HDR stdckdint.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-macros.stdckdint_macros
- )
-
- add_gen_header2(
- stdio
- YAML_FILE ../libc/newhdrgen/yaml/stdio.yaml
- DEF_FILE stdio.h.def
- GEN_HDR stdio.h
- DEPENDS
- .llvm-libc-macros.file_seek_macros
- .llvm-libc-macros.stdio_macros
- .llvm-libc-types.FILE
- .llvm-libc-types.cookie_io_functions_t
- .llvm-libc-types.off_t
- .llvm-libc-types.size_t
- .llvm-libc-types.ssize_t
- .llvm_libc_common_h
- )
-
- add_gen_header2(
- stdlib
- YAML_FILE ../libc/newhdrgen/yaml/stdlib.yaml
- DEF_FILE stdlib.h.def
- GEN_HDR stdlib.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-macros.stdlib_macros
- .llvm-libc-types.div_t
- .llvm-libc-types.ldiv_t
- .llvm-libc-types.lldiv_t
- .llvm-libc-types.size_t
- .llvm-libc-types.__bsearchcompare_t
- .llvm-libc-types.__qsortcompare_t
- .llvm-libc-types.__qsortrcompare_t
- .llvm-libc-types.__atexithandler_t
- )
-
- add_gen_header2(
- unistd
- YAML_FILE ../libc/newhdrgen/yaml/unistd.yaml
- DEF_FILE unistd.h.def
- GEN_HDR unistd.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-macros.file_seek_macros
- .llvm-libc-macros.unistd_macros
- .llvm-libc-types.__exec_argv_t
- .llvm-libc-types.__exec_envp_t
- .llvm-libc-types.off_t
- .llvm-libc-types.pid_t
- .llvm-libc-types.size_t
- .llvm-libc-types.ssize_t
- .llvm-libc-types.uid_t
- .llvm-libc-types.__getoptargv_t
- )
-
- add_gen_header2(
- pthread
- YAML_FILE ../libc/newhdrgen/yaml/pthread.yaml
- DEF_FILE pthread.h.def
- GEN_HDR pthread.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-types.__atfork_callback_t
- .llvm-libc-types.__pthread_once_func_t
- .llvm-libc-types.__pthread_start_t
- .llvm-libc-types.__pthread_tss_dtor_t
- .llvm-libc-types.pthread_attr_t
- .llvm-libc-types.pthread_condattr_t
- .llvm-libc-types.pthread_key_t
- .llvm-libc-types.pthread_mutex_t
- .llvm-libc-types.pthread_mutexattr_t
- .llvm-libc-types.pthread_once_t
- .llvm-libc-types.pthread_rwlock_t
- .llvm-libc-types.pthread_rwlockattr_t
- .llvm-libc-types.pthread_t
- )
-
- add_gen_header2(
- sched
- YAML_FILE ../libc/newhdrgen/yaml/sched.yaml
- DEF_FILE sched.h.def
- GEN_HDR sched.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-macros.sched_macros
- .llvm-libc-types.cpu_set_t
- .llvm-libc-types.pid_t
- .llvm-libc-types.size_t
- .llvm-libc-types.struct_sched_param
- # Needed according to posix standard
- .llvm-libc-types.time_t
- .llvm-libc-types.struct_timespec
- )
-
- add_gen_header2(
- spawn
- YAML_FILE ../libc/newhdrgen/yaml/spawn.yaml
- DEF_FILE spawn.h.def
- GEN_HDR spawn.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-types.mode_t
- .llvm-libc-types.pid_t
- .llvm-libc-types.posix_spawnattr_t
- .llvm-libc-types.posix_spawn_file_actions_t
- )
-
- # TODO: Not all platforms will have a include/sys directory. Add the sys
- # directory and the targets for sys/*.h files conditional to the OS requiring
- # them.
- file(MAKE_DIRECTORY ${LIBC_INCLUDE_DIR}/sys)
-
- add_gen_header2(
- sys_auxv
- YAML_FILE ../libc/newhdrgen/yaml/sys/sys_auxv.yaml
- DEF_FILE sys/auxv.h.def
- GEN_HDR sys/auxv.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-macros.sys_auxv_macros
- )
-
- add_gen_header2(
- sys_epoll
- YAML_FILE ../libc/newhdrgen/yaml/sys/sys_epoll.yaml
- DEF_FILE sys/epoll.h.def
- GEN_HDR sys/epoll.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-types.struct_epoll_event
- .llvm-libc-types.struct_epoll_data
- .llvm-libc-types.sigset_t
- .llvm-libc-macros.sys_epoll_macros
- )
-
- add_gen_header2(
- sys_ioctl
- YAML_FILE ../libc/newhdrgen/yaml/sys/sys_ioctl.yaml
- DEF_FILE sys/ioctl.h.def
- GEN_HDR sys/ioctl.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-macros.sys_ioctl_macros
- )
-
- add_gen_header2(
- sys_mman
- YAML_FILE ../libc/newhdrgen/yaml/sys/sys_mman.yaml
- DEF_FILE sys/mman.h.def
- GEN_HDR sys/mman.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-macros.sys_mman_macros
- .llvm-libc-types.off_t
- .llvm-libc-types.size_t
- .llvm-libc-types.ssize_t
- )
-
- add_gen_header2(
- sys_prctl
- YAML_FILE ../libc/newhdrgen/yaml/sys/sys_prctl.yaml
- DEF_FILE sys/prctl.h.def
- GEN_HDR sys/prctl.h
- DEPENDS
- .llvm_libc_common_h
- )
-
- add_header(
- sys_queue
- HDR
- sys/queue.h
- DEPENDS
- .llvm-libc-macros.sys_queue_macros
- )
-
- add_gen_header2(
- sys_random
- YAML_FILE ../libc/newhdrgen/yaml/sys/sys_random.yaml
- DEF_FILE sys/random.h.def
- GEN_HDR sys/random.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-macros.sys_random_macros
- .llvm-libc-types.size_t
- .llvm-libc-types.ssize_t
- )
-
- add_gen_header2(
- sys_resource
- YAML_FILE ../libc/newhdrgen/yaml/sys/sys_resource.yaml
- DEF_FILE sys/resource.h.def
- GEN_HDR sys/resource.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-macros.sys_resource_macros
- .llvm-libc-types.rlim_t
- .llvm-libc-types.struct_rlimit
- )
-
- add_gen_header2(
- sys_stat
- YAML_FILE ../libc/newhdrgen/yaml/sys/sys_stat.yaml
- DEF_FILE sys/stat.h.def
- GEN_HDR sys/stat.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-macros.sys_stat_macros
- .llvm-libc-types.mode_t
- .llvm-libc-types.dev_t
- .llvm-libc-types.ino_t
- .llvm-libc-types.nlink_t
- .llvm-libc-types.uid_t
- .llvm-libc-types.gid_t
- .llvm-libc-types.off_t
- .llvm-libc-types.struct_timespec
- .llvm-libc-types.struct_timeval
- .llvm-libc-types.blksize_t
- .llvm-libc-types.blkcnt_t
- .llvm-libc-types.struct_stat
- )
-
- add_gen_header2(
- sys_select
- YAML_FILE ../libc/newhdrgen/yaml/sys/sys_select.yaml
- DEF_FILE sys/select.h.def
- GEN_HDR sys/select.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-macros.sys_select_macros
- .llvm-libc-types.fd_set
- .llvm-libc-types.sigset_t
- .llvm-libc-types.suseconds_t
- .llvm-libc-types.time_t
- .llvm-libc-types.struct_timespec
- .llvm-libc-types.struct_timeval
- )
-
- add_gen_header2(
- sys_sendfile
- YAML_FILE ../libc/newhdrgen/yaml/sys/sys_sendfile.yaml
- DEF_FILE sys/sendfile.h.def
- GEN_HDR sys/sendfile.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-types.off_t
- .llvm-libc-types.size_t
- .llvm-libc-types.ssize_t
- )
-
- add_gen_header2(
- sys_socket
- YAML_FILE ../libc/newhdrgen/yaml/sys/sys_socket.yaml
- DEF_FILE sys/socket.h.def
- GEN_HDR sys/socket.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-macros.sys_socket_macros
- .llvm-libc-types.sa_family_t
- .llvm-libc-types.socklen_t
- .llvm-libc-types.struct_sockaddr
- .llvm-libc-types.struct_sockaddr_un
- )
-
- add_gen_header2(
- sys_statvfs
- YAML_FILE ../libc/newhdrgen/yaml/sys/sys_statvfs.yaml
- DEF_FILE sys/statvfs.h.def
- GEN_HDR sys/statvfs.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-types.struct_statvfs
- )
-
- add_gen_header2(
- sys_syscall
- YAML_FILE ../libc/newhdrgen/yaml/sys/sys_syscall.yaml
- DEF_FILE sys/syscall.h.def
- GEN_HDR sys/syscall.h
- )
-
- add_gen_header2(
- sys_time
- YAML_FILE ../libc/newhdrgen/yaml/sys/sys_time.yaml
- DEF_FILE sys/time.h.def
- GEN_HDR sys/time.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-types.struct_timeval
- .llvm-libc-macros.sys_time_macros
- )
-
- add_gen_header2(
- sys_types
- YAML_FILE ../libc/newhdrgen/yaml/sys/sys_types.yaml
- DEF_FILE sys/types.h.def
- GEN_HDR sys/types.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-types.blkcnt_t
- .llvm-libc-types.blksize_t
- .llvm-libc-types.clockid_t
- .llvm-libc-types.dev_t
- .llvm-libc-types.gid_t
- .llvm-libc-types.ino_t
- .llvm-libc-types.mode_t
- .llvm-libc-types.nlink_t
- .llvm-libc-types.off_t
- .llvm-libc-types.pid_t
- .llvm-libc-types.pthread_attr_t
- .llvm-libc-types.pthread_key_t
- .llvm-libc-types.pthread_mutex_t
- .llvm-libc-types.pthread_mutexattr_t
- .llvm-libc-types.pthread_once_t
- .llvm-libc-types.pthread_t
- .llvm-libc-types.size_t
- .llvm-libc-types.ssize_t
- .llvm-libc-types.suseconds_t
- .llvm-libc-types.time_t
- .llvm-libc-types.uid_t
- )
-
- add_gen_header2(
- sys_utsname
- YAML_FILE ../libc/newhdrgen/yaml/sys/sys_utsname.yaml
- DEF_FILE sys/utsname.h.def
- GEN_HDR sys/utsname.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-types.struct_utsname
- )
-
- add_gen_header2(
- sys_wait
- YAML_FILE ../libc/newhdrgen/yaml/sys/sys_wait.yaml
- DEF_FILE sys/wait.h.def
- GEN_HDR sys/wait.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-macros.sys_wait_macros
- .llvm-libc-types.pid_t
- .llvm-libc-types.struct_rusage
- .llvm-libc-types.siginfo_t
- )
-
- add_gen_header2(
- termios
- YAML_FILE ../libc/newhdrgen/yaml/termios.yaml
- DEF_FILE termios.h.def
- GEN_HDR termios.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-macros.termios_macros
- .llvm-libc-types.cc_t
- .llvm-libc-types.pid_t
- .llvm-libc-types.speed_t
- .llvm-libc-types.struct_termios
- .llvm-libc-types.tcflag_t
- )
-
- add_gen_header2(
- uchar
- YAML_FILE ../libc/newhdrgen/yaml/uchar.yaml
- DEF_FILE uchar.h.def
- GEN_HDR uchar.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-types.mbstate_t
- .llvm-libc-types.char8_t
- .llvm-libc-types.char16_t
- .llvm-libc-types.char32_t
- )
-
- add_gen_header2(
- wchar
- YAML_FILE ../libc/newhdrgen/yaml/wchar.yaml
- DEF_FILE wchar.h.def
- GEN_HDR wchar.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-macros.wchar_macros
- .llvm-libc-types.mbstate_t
- .llvm-libc-types.size_t
- .llvm-libc-types.wint_t
- .llvm-libc-types.wchar_t
- )
-
- if(LIBC_TARGET_OS_IS_GPU)
- file(MAKE_DIRECTORY ${LIBC_INCLUDE_DIR}/gpu)
-
+macro(add_header_macro TYPE YAML_FILE DEF_FILE GEN_HDR DEPENDS)
+ if (LIBC_USE_NEW_HEADER_GEN)
add_gen_header2(
- gpu_rpc
- YAML_FILE ../libc/newhdrgen/yaml/rpc.yaml
- DEF_FILE gpu/rpc.h.def
- GEN_HDR gpu/rpc.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-types.rpc_opcodes_t
+ ${TYPE}
+ ${YAML_FILE}
+ ${DEF_FILE}
+ ${GEN_HDR}
+ ${DEPENDS}
+ )
+ else()
+ add_gen_header(
+ ${TYPE}
+ ${DEF_FILE}
+ ${GEN_HDR}
+ ${DEPENDS}
)
endif()
-else()
- add_gen_header(
- ctype
- DEF_FILE ctype.h.def
- GEN_HDR ctype.h
- DEPENDS
- .llvm_libc_common_h
- )
+endmacro()
+
+add_header_macro(
+ ctype
+ YAML_FILE ../libc/newhdrgen/yaml/ctype.yaml
+ DEF_FILE ctype.h.def
+ GEN_HDR ctype.h
+ DEPENDS
+ .llvm_libc_common_h
+)
- add_gen_header(
- dirent
- DEF_FILE dirent.h.def
- GEN_HDR dirent.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-types.ino_t
- .llvm-libc-types.DIR
- .llvm-libc-types.struct_dirent
- )
+add_header_macro(
+ dirent
+ YAML_FILE ../libc/newhdrgen/yaml/dirent.yaml
+ DEF_FILE dirent.h.def
+ GEN_HDR dirent.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-types.ino_t
+ .llvm-libc-types.DIR
+ .llvm-libc-types.struct_dirent
+)
- add_gen_header(
- fcntl
- DEF_FILE fcntl.h.def
- GEN_HDR fcntl.h
- DEPENDS
- .llvm-libc-macros.fcntl_macros
- .llvm-libc-types.mode_t
- .llvm-libc-types.struct_flock
- .llvm-libc-types.struct_flock64
- .llvm-libc-types.off64_t
- .llvm-libc-types.pid_t
- .llvm-libc-types.off_t
- .llvm_libc_common_h
- )
+add_header_macro(
+ fcntl
+ YAML_FILE ../libc/newhdrgen/yaml/fcntl.yaml
+ DEF_FILE fcntl.h.def
+ GEN_HDR fcntl.h
+ DEPENDS
+ .llvm-libc-macros.fcntl_macros
+ .llvm-libc-types.mode_t
+ .llvm-libc-types.struct_flock
+ .llvm-libc-types.struct_flock64
+ .llvm-libc-types.off64_t
+ .llvm-libc-types.pid_t
+ .llvm-libc-types.off_t
+ .llvm_libc_common_h
+)
- add_gen_header(
- dlfcn
- DEF_FILE dlfcn.h.def
- GEN_HDR dlfcn.h
- DEPENDS
- .llvm-libc-macros.dlfcn_macros
- .llvm_libc_common_h
- )
+add_header_macro(
+ dlfcn
+ YAML_FILE ../libc/newhdrgen/yaml/dlfcn.yaml
+ DEF_FILE dlfcn.h.def
+ GEN_HDR dlfcn.h
+ DEPENDS
+ .llvm-libc-macros.dlfcn_macros
+ .llvm_libc_common_h
+)
- add_gen_header(
- features
- DEF_FILE features.h.def
- GEN_HDR features.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-macros.features_macros
- )
+add_header_macro(
+ features
+ YAML_FILE ../libc/newhdrgen/yaml/features.yaml
+ DEF_FILE features.h.def
+ GEN_HDR features.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-macros.features_macros
+)
- add_gen_header(
- fenv
- DEF_FILE fenv.h.def
- GEN_HDR fenv.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-macros.fenv_macros
- .llvm-libc-types.fenv_t
- .llvm-libc-types.fexcept_t
- )
+add_header_macro(
+ fenv
+ YAML_FILE ../libc/newhdrgen/yaml/fenv.yaml
+ DEF_FILE fenv.h.def
+ GEN_HDR fenv.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-macros.fenv_macros
+ .llvm-libc-types.fenv_t
+ .llvm-libc-types.fexcept_t
+)
- add_gen_header(
- inttypes
- DEF_FILE inttypes.h.def
- GEN_HDR inttypes.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-types.imaxdiv_t
- .llvm-libc-macros.inttypes_macros
- )
+add_header_macro(
+ inttypes
+ YAML_FILE ../libc/newhdrgen/yaml/inttypes.yaml
+ DEF_FILE inttypes.h.def
+ GEN_HDR inttypes.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-types.imaxdiv_t
+ .llvm-libc-macros.inttypes_macros
+)
- add_gen_header(
- float
- DEF_FILE float.h.def
- GEN_HDR float.h
- DEPENDS
- .llvm-libc-macros.float_macros
- )
+add_header_macro(
+ float
+ YAML_FILE ../libc/newhdrgen/yaml/float.yaml
+ DEF_FILE float.h.def
+ GEN_HDR float.h
+ DEPENDS
+ .llvm-libc-macros.float_macros
+)
- add_gen_header(
- stdint
- DEF_FILE stdint.h.def
- GEN_HDR stdint.h
- DEPENDS
- .llvm-libc-macros.stdint_macros
- )
+add_header_macro(
+ stdint
+ YAML_FILE ../libc/newhdrgen/yaml/stdint.yaml
+ DEF_FILE stdint.h.def
+ GEN_HDR stdint.h
+ DEPENDS
+ .llvm-libc-macros.stdint_macros
+)
- add_gen_header(
- limits
- DEF_FILE limits.h.def
- GEN_HDR limits.h
- DEPENDS
- .llvm-libc-macros.limits_macros
- )
+add_header_macro(
+ limits
+ YAML_FILE ../libc/newhdrgen/yaml/limits.yaml
+ DEF_FILE limits.h.def
+ GEN_HDR limits.h
+ DEPENDS
+ .llvm-libc-macros.limits_macros
+)
- add_gen_header(
- math
- DEF_FILE math.h.def
- GEN_HDR math.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-macros.float16_macros
- .llvm-libc-macros.math_macros
- .llvm-libc-macros.math_function_macros
- .llvm-libc-types.double_t
- .llvm-libc-types.float_t
- .llvm-libc-types.float128
- )
+add_header_macro(
+ math
+ YAML_FILE ../libc/newhdrgen/yaml/math.yaml
+ DEF_FILE math.h.def
+ GEN_HDR math.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-macros.float16_macros
+ .llvm-libc-macros.math_macros
+ .llvm-libc-types.double_t
+ .llvm-libc-types.float_t
+ .llvm-libc-types.float128
+)
- add_gen_header(
- stdfix
- DEF_FILE stdfix.h.def
- GEN_HDR stdfix.h
- DEPENDS
- .llvm-libc-macros.stdfix_macros
- )
+add_header_macro(
+ stdfix
+ YAML_FILE ../libc/newhdrgen/yaml/stdfix.yaml
+ DEF_FILE stdfix.h.def
+ GEN_HDR stdfix.h
+ DEPENDS
+ .llvm-libc-macros.stdfix_macros
+)
- # TODO: This should be conditional on POSIX networking being included.
- file(MAKE_DIRECTORY ${LIBC_INCLUDE_DIR}/arpa)
+# TODO: This should be conditional on POSIX networking being included.
+file(MAKE_DIRECTORY ${LIBC_INCLUDE_DIR}/arpa)
- add_gen_header(
- arpa_inet
- DEF_FILE arpa/inet.h.def
- GEN_HDR arpa/inet.h
- DEPENDS
- .llvm_libc_common_h
- )
+add_header_macro(
+ arpa_inet
+ YAML_FILE ../libc/newhdrgen/yaml/arpa_inet.yaml
+ DEF_FILE arpa/inet.h.def
+ GEN_HDR arpa/inet.h
+ DEPENDS
+ .llvm_libc_common_h
+)
- add_gen_header(
- assert
- DEF_FILE assert.h.def
- GEN_HDR assert.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-macros.assert_macros
- )
+add_header_macro(
+ assert
+ YAML_FILE ../libc/newhdrgen/yaml/assert.yaml
+ DEF_FILE assert.h.def
+ GEN_HDR assert.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-macros.assert_macros
+)
- add_gen_header(
- setjmp
- DEF_FILE setjmp.h.def
- GEN_HDR setjmp.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-types.jmp_buf
- )
+add_header_macro(
+ setjmp
+ YAML_FILE ../libc/newhdrgen/yaml/setjmp.yaml
+ DEF_FILE setjmp.h.def
+ GEN_HDR setjmp.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-types.jmp_buf
+)
- add_gen_header(
- string
- DEF_FILE string.h.def
- GEN_HDR string.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-macros.null_macro
- .llvm-libc-types.size_t
- )
+add_header_macro(
+ string
+ YAML_FILE ../libc/newhdrgen/yaml/string.yaml
+ DEF_FILE string.h.def
+ GEN_HDR string.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-macros.null_macro
+ .llvm-libc-types.size_t
+)
- add_gen_header(
- strings
- DEF_FILE strings.h.def
- GEN_HDR strings.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-types.size_t
- )
+add_header_macro(
+ strings
+ YAML_FILE ../libc/newhdrgen/yaml/strings.yaml
+ DEF_FILE strings.h.def
+ GEN_HDR strings.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-types.size_t
+)
- add_gen_header(
- search
- DEF_FILE search.h.def
- GEN_HDR search.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-types.ACTION
- .llvm-libc-types.ENTRY
- .llvm-libc-types.struct_hsearch_data
- .llvm-libc-types.size_t
- )
+add_header_macro(
+ search
+ YAML_FILE ../libc/newhdrgen/yaml/search.yaml
+ DEF_FILE search.h.def
+ GEN_HDR search.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-types.ACTION
+ .llvm-libc-types.ENTRY
+ .llvm-libc-types.struct_hsearch_data
+ .llvm-libc-types.size_t
+)
- add_gen_header(
- time
- DEF_FILE time.h.def
- GEN_HDR time.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-macros.time_macros
- .llvm-libc-types.clock_t
- .llvm-libc-types.time_t
- .llvm-libc-types.struct_tm
- .llvm-libc-types.struct_timespec
- .llvm-libc-types.struct_timeval
- .llvm-libc-types.clockid_t
- )
+add_header_macro(
+ time
+ YAML_FILE ../libc/newhdrgen/yaml/time.yaml
+ DEF_FILE time.h.def
+ GEN_HDR time.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-macros.time_macros
+ .llvm-libc-types.clock_t
+ .llvm-libc-types.time_t
+ .llvm-libc-types.struct_tm
+ .llvm-libc-types.struct_timespec
+ .llvm-libc-types.struct_timeval
+ .llvm-libc-types.clockid_t
+)
- add_gen_header(
- threads
- DEF_FILE threads.h.def
- GEN_HDR threads.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-types.__call_once_func_t
- .llvm-libc-types.once_flag
- .llvm-libc-types.cnd_t
- .llvm-libc-types.mtx_t
- .llvm-libc-types.thrd_t
- .llvm-libc-types.thrd_start_t
- .llvm-libc-types.tss_t
- .llvm-libc-types.tss_dtor_t
- )
+add_header_macro(
+ threads
+ YAML_FILE ../libc/newhdrgen/yaml/threads.yaml
+ DEF_FILE threads.h.def
+ GEN_HDR threads.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-types.__call_once_func_t
+ .llvm-libc-types.once_flag
+ .llvm-libc-types.cnd_t
+ .llvm-libc-types.mtx_t
+ .llvm-libc-types.thrd_t
+ .llvm-libc-types.thrd_start_t
+ .llvm-libc-types.tss_t
+ .llvm-libc-types.tss_dtor_t
+)
- add_gen_header(
- errno
- DEF_FILE errno.h.def
- GEN_HDR errno.h
- DEPENDS
- .llvm-libc-macros.generic_error_number_macros
- .llvm-libc-macros.error_number_macros
- )
+add_header_macro(
+ errno
+ YAML_FILE ../libc/newhdrgen/yaml/errno.yaml
+ DEF_FILE errno.h.def
+ GEN_HDR errno.h
+ DEPENDS
+ .llvm-libc-macros.generic_error_number_macros
+ .llvm-libc-macros.error_number_macros
+)
- add_gen_header(
- signal
- DEF_FILE signal.h.def
- GEN_HDR signal.h
- DEPENDS
- .llvm-libc-macros.signal_macros
- .llvm-libc-types.sig_atomic_t
- .llvm-libc-types.sigset_t
- .llvm-libc-types.struct_sigaction
- .llvm-libc-types.union_sigval
- .llvm-libc-types.siginfo_t
- .llvm-libc-types.stack_t
- .llvm-libc-types.pid_t
- )
+add_header_macro(
+ signal
+ YAML_FILE ../libc/newhdrgen/yaml/signal.yaml
+ DEF_FILE signal.h.def
+ GEN_HDR signal.h
+ DEPENDS
+ .llvm-libc-macros.signal_macros
+ .llvm-libc-types.sig_atomic_t
+ .llvm-libc-types.sigset_t
+ .llvm-libc-types.struct_sigaction
+ .llvm-libc-types.union_sigval
+ .llvm-libc-types.siginfo_t
+ .llvm-libc-types.stack_t
+ .llvm-libc-types.pid_t
+)
- add_gen_header(
- stdbit
- DEF_FILE stdbit.h.def
- GEN_HDR stdbit.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-macros.stdbit_macros
- )
+add_header_macro(
+ stdbit
+ YAML_FILE ../libc/newhdrgen/yaml/stdbit.yaml
+ DEF_FILE stdbit.h.def
+ GEN_HDR stdbit.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-macros.stdbit_macros
+)
- add_gen_header(
- stdckdint
- DEF_FILE stdckdint.h.def
- GEN_HDR stdckdint.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-macros.stdckdint_macros
- )
+add_header_macro(
+ stdckdint
+ YAML_FILE ../libc/newhdrgen/yaml/stdckdint.yaml
+ DEF_FILE stdckdint.h.def
+ GEN_HDR stdckdint.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-macros.stdckdint_macros
+)
- add_gen_header(
- stdio
- DEF_FILE stdio.h.def
- GEN_HDR stdio.h
- DEPENDS
- .llvm-libc-macros.file_seek_macros
- .llvm-libc-macros.stdio_macros
- .llvm-libc-types.FILE
- .llvm-libc-types.cookie_io_functions_t
- .llvm-libc-types.off_t
- .llvm-libc-types.size_t
- .llvm-libc-types.ssize_t
- .llvm_libc_common_h
- )
+add_header_macro(
+ stdio
+ YAML_FILE ../libc/newhdrgen/yaml/stdio.yaml
+ DEF_FILE stdio.h.def
+ GEN_HDR stdio.h
+ DEPENDS
+ .llvm-libc-macros.file_seek_macros
+ .llvm-libc-macros.stdio_macros
+ .llvm-libc-types.FILE
+ .llvm-libc-types.cookie_io_functions_t
+ .llvm-libc-types.off_t
+ .llvm-libc-types.size_t
+ .llvm-libc-types.ssize_t
+ .llvm_libc_common_h
+)
- add_gen_header(
- stdlib
- DEF_FILE stdlib.h.def
- GEN_HDR stdlib.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-macros.stdlib_macros
- .llvm-libc-types.div_t
- .llvm-libc-types.ldiv_t
- .llvm-libc-types.lldiv_t
- .llvm-libc-types.size_t
- .llvm-libc-types.__bsearchcompare_t
- .llvm-libc-types.__qsortcompare_t
- .llvm-libc-types.__qsortrcompare_t
- .llvm-libc-types.__atexithandler_t
- )
+add_header_macro(
+ stdlib
+ YAML_FILE ../libc/newhdrgen/yaml/stdlib.yaml
+ DEF_FILE stdlib.h.def
+ GEN_HDR stdlib.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-macros.stdlib_macros
+ .llvm-libc-types.div_t
+ .llvm-libc-types.ldiv_t
+ .llvm-libc-types.lldiv_t
+ .llvm-libc-types.size_t
+ .llvm-libc-types.__bsearchcompare_t
+ .llvm-libc-types.__qsortcompare_t
+ .llvm-libc-types.__qsortrcompare_t
+ .llvm-libc-types.__atexithandler_t
+)
- add_gen_header(
- unistd
- DEF_FILE unistd.h.def
- GEN_HDR unistd.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-macros.file_seek_macros
- .llvm-libc-macros.unistd_macros
- .llvm-libc-types.__exec_argv_t
- .llvm-libc-types.__exec_envp_t
- .llvm-libc-types.off_t
- .llvm-libc-types.pid_t
- .llvm-libc-types.size_t
- .llvm-libc-types.ssize_t
- .llvm-libc-types.uid_t
- .llvm-libc-types.__getoptargv_t
- )
+add_header_macro(
+ unistd
+ YAML_FILE ../libc/newhdrgen/yaml/unistd.yaml
+ DEF_FILE unistd.h.def
+ GEN_HDR unistd.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-macros.file_seek_macros
+ .llvm-libc-macros.unistd_macros
+ .llvm-libc-types.__exec_argv_t
+ .llvm-libc-types.__exec_envp_t
+ .llvm-libc-types.off_t
+ .llvm-libc-types.pid_t
+ .llvm-libc-types.size_t
+ .llvm-libc-types.ssize_t
+ .llvm-libc-types.uid_t
+ .llvm-libc-types.__getoptargv_t
+)
- add_gen_header(
- pthread
- DEF_FILE pthread.h.def
- GEN_HDR pthread.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-types.__atfork_callback_t
- .llvm-libc-types.__pthread_once_func_t
- .llvm-libc-types.__pthread_start_t
- .llvm-libc-types.__pthread_tss_dtor_t
- .llvm-libc-types.pthread_attr_t
- .llvm-libc-types.pthread_condattr_t
- .llvm-libc-types.pthread_key_t
- .llvm-libc-types.pthread_mutex_t
- .llvm-libc-types.pthread_mutexattr_t
- .llvm-libc-types.pthread_once_t
- .llvm-libc-types.pthread_rwlock_t
- .llvm-libc-types.pthread_rwlockattr_t
- .llvm-libc-types.pthread_t
- )
+add_header_macro(
+ pthread
+ YAML_FILE ../libc/newhdrgen/yaml/pthread.yaml
+ DEF_FILE pthread.h.def
+ GEN_HDR pthread.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-types.__atfork_callback_t
+ .llvm-libc-types.__pthread_once_func_t
+ .llvm-libc-types.__pthread_start_t
+ .llvm-libc-types.__pthread_tss_dtor_t
+ .llvm-libc-types.pthread_attr_t
+ .llvm-libc-types.pthread_condattr_t
+ .llvm-libc-types.pthread_key_t
+ .llvm-libc-types.pthread_mutex_t
+ .llvm-libc-types.pthread_mutexattr_t
+ .llvm-libc-types.pthread_once_t
+ .llvm-libc-types.pthread_rwlock_t
+ .llvm-libc-types.pthread_rwlockattr_t
+ .llvm-libc-types.pthread_t
+)
- add_gen_header(
- sched
- DEF_FILE sched.h.def
- GEN_HDR sched.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-macros.sched_macros
- .llvm-libc-types.cpu_set_t
- .llvm-libc-types.pid_t
- .llvm-libc-types.size_t
- .llvm-libc-types.struct_sched_param
- # Needed according to posix standard
- .llvm-libc-types.time_t
- .llvm-libc-types.struct_timespec
- )
+add_header_macro(
+ sched
+ YAML_FILE ../libc/newhdrgen/yaml/sched.yaml
+ DEF_FILE sched.h.def
+ GEN_HDR sched.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-macros.sched_macros
+ .llvm-libc-types.cpu_set_t
+ .llvm-libc-types.pid_t
+ .llvm-libc-types.size_t
+ .llvm-libc-types.struct_sched_param
+ # Needed according to posix standard
+ .llvm-libc-types.time_t
+ .llvm-libc-types.struct_timespec
+)
- add_gen_header(
- spawn
- DEF_FILE spawn.h.def
- GEN_HDR spawn.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-types.mode_t
- .llvm-libc-types.pid_t
- .llvm-libc-types.posix_spawnattr_t
- .llvm-libc-types.posix_spawn_file_actions_t
- )
+add_header_macro(
+ spawn
+ YAML_FILE ../libc/newhdrgen/yaml/spawn.yaml
+ DEF_FILE spawn.h.def
+ GEN_HDR spawn.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-types.mode_t
+ .llvm-libc-types.pid_t
+ .llvm-libc-types.posix_spawnattr_t
+ .llvm-libc-types.posix_spawn_file_actions_t
+)
- # TODO: Not all platforms will have a include/sys directory. Add the sys
- # directory and the targets for sys/*.h files conditional to the OS requiring
- # them.
- file(MAKE_DIRECTORY ${LIBC_INCLUDE_DIR}/sys)
+# TODO: Not all platforms will have a include/sys directory. Add the sys
+# directory and the targets for sys/*.h files conditional to the OS requiring
+# them.
+file(MAKE_DIRECTORY ${LIBC_INCLUDE_DIR}/sys)
+
+add_header_macro(
+ sys_auxv
+ YAML_FILE ../libc/newhdrgen/yaml/sys/sys_auxv.yaml
+ DEF_FILE sys/auxv.h.def
+ GEN_HDR sys/auxv.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-macros.sys_auxv_macros
+)
- add_gen_header(
- sys_auxv
- DEF_FILE sys/auxv.h.def
- GEN_HDR sys/auxv.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-macros.sys_auxv_macros
- )
+add_header_macro(
+ sys_epoll
+ YAML_FILE ../libc/newhdrgen/yaml/sys/sys_epoll.yaml
+ DEF_FILE sys/epoll.h.def
+ GEN_HDR sys/epoll.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-types.struct_epoll_event
+ .llvm-libc-types.struct_epoll_data
+ .llvm-libc-types.sigset_t
+ .llvm-libc-macros.sys_epoll_macros
+)
- add_gen_header(
- sys_epoll
- DEF_FILE sys/epoll.h.def
- GEN_HDR sys/epoll.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-types.struct_epoll_event
- .llvm-libc-types.struct_epoll_data
- .llvm-libc-types.sigset_t
- .llvm-libc-macros.sys_epoll_macros
- )
+add_header_macro(
+ sys_ioctl
+ YAML_FILE ../libc/newhdrgen/yaml/sys/sys_ioctl.yaml
+ DEF_FILE sys/ioctl.h.def
+ GEN_HDR sys/ioctl.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-macros.sys_ioctl_macros
+)
- add_gen_header(
- sys_ioctl
- DEF_FILE sys/ioctl.h.def
- GEN_HDR sys/ioctl.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-macros.sys_ioctl_macros
- )
+add_header_macro(
+ sys_mman
+ YAML_FILE ../libc/newhdrgen/yaml/sys/sys_mman.yaml
+ DEF_FILE sys/mman.h.def
+ GEN_HDR sys/mman.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-macros.sys_mman_macros
+ .llvm-libc-types.off_t
+ .llvm-libc-types.size_t
+ .llvm-libc-types.ssize_t
+)
- add_gen_header(
- sys_mman
- DEF_FILE sys/mman.h.def
- GEN_HDR sys/mman.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-macros.sys_mman_macros
- .llvm-libc-types.off_t
- .llvm-libc-types.size_t
- .llvm-libc-types.ssize_t
- )
+add_header_macro(
+ sys_prctl
+ YAML_FILE ../libc/newhdrgen/yaml/sys/sys_prctl.yaml
+ DEF_FILE sys/prctl.h.def
+ GEN_HDR sys/prctl.h
+ DEPENDS
+ .llvm_libc_common_h
+)
- add_gen_header(
- sys_prctl
- DEF_FILE sys/prctl.h.def
- GEN_HDR sys/prctl.h
- DEPENDS
- .llvm_libc_common_h
- )
+add_header(
+ sys_queue
+ HDR
+ sys/queue.h
+ DEPENDS
+ .llvm-libc-macros.sys_queue_macros
+)
- add_header(
- sys_queue
- HDR
- sys/queue.h
- DEPENDS
- .llvm-libc-macros.sys_queue_macros
- )
+add_header_macro(
+ sys_random
+ YAML_FILE ../libc/newhdrgen/yaml/sys/sys_random.yaml
+ DEF_FILE sys/random.h.def
+ GEN_HDR sys/random.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-macros.sys_random_macros
+ .llvm-libc-types.size_t
+ .llvm-libc-types.ssize_t
+)
- add_gen_header(
- sys_random
- DEF_FILE sys/random.h.def
- GEN_HDR sys/random.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-macros.sys_random_macros
- .llvm-libc-types.size_t
- .llvm-libc-types.ssize_t
- )
+add_header_macro(
+ sys_resource
+ YAML_FILE ../libc/newhdrgen/yaml/sys/sys_resource.yaml
+ DEF_FILE sys/resource.h.def
+ GEN_HDR sys/resource.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-macros.sys_resource_macros
+ .llvm-libc-types.rlim_t
+ .llvm-libc-types.struct_rlimit
+)
- add_gen_header(
- sys_resource
- DEF_FILE sys/resource.h.def
- GEN_HDR sys/resource.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-macros.sys_resource_macros
- .llvm-libc-types.rlim_t
- .llvm-libc-types.struct_rlimit
- )
+add_header_macro(
+ sys_stat
+ YAML_FILE ../libc/newhdrgen/yaml/sys/sys_stat.yaml
+ DEF_FILE sys/stat.h.def
+ GEN_HDR sys/stat.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-macros.sys_stat_macros
+ .llvm-libc-types.mode_t
+ .llvm-libc-types.dev_t
+ .llvm-libc-types.ino_t
+ .llvm-libc-types.nlink_t
+ .llvm-libc-types.uid_t
+ .llvm-libc-types.gid_t
+ .llvm-libc-types.off_t
+ .llvm-libc-types.struct_timespec
+ .llvm-libc-types.struct_timeval
+ .llvm-libc-types.blksize_t
+ .llvm-libc-types.blkcnt_t
+ .llvm-libc-types.struct_stat
+)
- add_gen_header(
- sys_stat
- DEF_FILE sys/stat.h.def
- GEN_HDR sys/stat.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-macros.sys_stat_macros
- .llvm-libc-types.mode_t
- .llvm-libc-types.dev_t
- .llvm-libc-types.ino_t
- .llvm-libc-types.nlink_t
- .llvm-libc-types.uid_t
- .llvm-libc-types.gid_t
- .llvm-libc-types.off_t
- .llvm-libc-types.struct_timespec
- .llvm-libc-types.struct_timeval
- .llvm-libc-types.blksize_t
- .llvm-libc-types.blkcnt_t
- .llvm-libc-types.struct_stat
- )
+add_header_macro(
+ sys_select
+ YAML_FILE ../libc/newhdrgen/yaml/sys/sys_select.yaml
+ DEF_FILE sys/select.h.def
+ GEN_HDR sys/select.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-macros.sys_select_macros
+ .llvm-libc-types.fd_set
+ .llvm-libc-types.sigset_t
+ .llvm-libc-types.suseconds_t
+ .llvm-libc-types.time_t
+ .llvm-libc-types.struct_timespec
+ .llvm-libc-types.struct_timeval
+)
- add_gen_header(
- sys_select
- DEF_FILE sys/select.h.def
- GEN_HDR sys/select.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-macros.sys_select_macros
- .llvm-libc-types.fd_set
- .llvm-libc-types.sigset_t
- .llvm-libc-types.suseconds_t
- .llvm-libc-types.time_t
- .llvm-libc-types.struct_timespec
- .llvm-libc-types.struct_timeval
- )
+add_header_macro(
+ sys_sendfile
+ YAML_FILE ../libc/newhdrgen/yaml/sys/sys_sendfile.yaml
+ DEF_FILE sys/sendfile.h.def
+ GEN_HDR sys/sendfile.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-types.off_t
+ .llvm-libc-types.size_t
+ .llvm-libc-types.ssize_t
+)
- add_gen_header(
- sys_sendfile
- DEF_FILE sys/sendfile.h.def
- GEN_HDR sys/sendfile.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-types.off_t
- .llvm-libc-types.size_t
- .llvm-libc-types.ssize_t
- )
+add_header_macro(
+ sys_socket
+ YAML_FILE ../libc/newhdrgen/yaml/sys/sys_socket.yaml
+ DEF_FILE sys/socket.h.def
+ GEN_HDR sys/socket.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-macros.sys_socket_macros
+ .llvm-libc-types.sa_family_t
+ .llvm-libc-types.socklen_t
+ .llvm-libc-types.struct_sockaddr
+ .llvm-libc-types.struct_sockaddr_un
+)
- add_gen_header(
- sys_socket
- DEF_FILE sys/socket.h.def
- GEN_HDR sys/socket.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-macros.sys_socket_macros
- .llvm-libc-types.sa_family_t
- .llvm-libc-types.socklen_t
- .llvm-libc-types.struct_sockaddr
- .llvm-libc-types.struct_sockaddr_un
- )
+add_header_macro(
+ sys_statvfs
+ YAML_FILE ../libc/newhdrgen/yaml/sys/sys_statvfs.yaml
+ DEF_FILE sys/statvfs.h.def
+ GEN_HDR sys/statvfs.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-types.struct_statvfs
+)
- add_gen_header(
- sys_statvfs
- DEF_FILE sys/statvfs.h.def
- GEN_HDR sys/statvfs.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-types.struct_statvfs
- )
+add_header_macro(
+ sys_syscall
+ YAML_FILE ../libc/newhdrgen/yaml/sys/sys_syscall.yaml
+ DEF_FILE sys/syscall.h.def
+ GEN_HDR sys/syscall.h
+)
- add_gen_header(
- sys_syscall
- DEF_FILE sys/syscall.h.def
- GEN_HDR sys/syscall.h
- )
+add_header_macro(
+ sys_time
+ YAML_FILE ../libc/newhdrgen/yaml/sys/sys_time.yaml
+ DEF_FILE sys/time.h.def
+ GEN_HDR sys/time.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-types.struct_timeval
+ .llvm-libc-macros.sys_time_macros
+)
- add_gen_header(
- sys_time
- DEF_FILE sys/time.h.def
- GEN_HDR sys/time.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-types.struct_timeval
- .llvm-libc-macros.sys_time_macros
- )
+add_header_macro(
+ sys_types
+ YAML_FILE ../libc/newhdrgen/yaml/sys/sys_types.yaml
+ DEF_FILE sys/types.h.def
+ GEN_HDR sys/types.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-types.blkcnt_t
+ .llvm-libc-types.blksize_t
+ .llvm-libc-types.clockid_t
+ .llvm-libc-types.dev_t
+ .llvm-libc-types.gid_t
+ .llvm-libc-types.ino_t
+ .llvm-libc-types.mode_t
+ .llvm-libc-types.nlink_t
+ .llvm-libc-types.off_t
+ .llvm-libc-types.pid_t
+ .llvm-libc-types.pthread_attr_t
+ .llvm-libc-types.pthread_key_t
+ .llvm-libc-types.pthread_mutex_t
+ .llvm-libc-types.pthread_mutexattr_t
+ .llvm-libc-types.pthread_once_t
+ .llvm-libc-types.pthread_t
+ .llvm-libc-types.size_t
+ .llvm-libc-types.ssize_t
+ .llvm-libc-types.suseconds_t
+ .llvm-libc-types.time_t
+ .llvm-libc-types.uid_t
+)
- add_gen_header(
- sys_types
- DEF_FILE sys/types.h.def
- GEN_HDR sys/types.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-types.blkcnt_t
- .llvm-libc-types.blksize_t
- .llvm-libc-types.clockid_t
- .llvm-libc-types.dev_t
- .llvm-libc-types.gid_t
- .llvm-libc-types.ino_t
- .llvm-libc-types.mode_t
- .llvm-libc-types.nlink_t
- .llvm-libc-types.off_t
- .llvm-libc-types.pid_t
- .llvm-libc-types.pthread_attr_t
- .llvm-libc-types.pthread_key_t
- .llvm-libc-types.pthread_mutex_t
- .llvm-libc-types.pthread_mutexattr_t
- .llvm-libc-types.pthread_once_t
- .llvm-libc-types.pthread_t
- .llvm-libc-types.size_t
- .llvm-libc-types.ssize_t
- .llvm-libc-types.suseconds_t
- .llvm-libc-types.time_t
- .llvm-libc-types.uid_t
- )
+add_header_macro(
+ sys_utsname
+ YAML_FILE ../libc/newhdrgen/yaml/sys/sys_utsname.yaml
+ DEF_FILE sys/utsname.h.def
+ GEN_HDR sys/utsname.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-types.struct_utsname
+)
- add_gen_header(
- sys_utsname
- DEF_FILE sys/utsname.h.def
- GEN_HDR sys/utsname.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-types.struct_utsname
- )
+add_header_macro(
+ sys_wait
+ YAML_FILE ../libc/newhdrgen/yaml/sys/sys_wait.yaml
+ DEF_FILE sys/wait.h.def
+ GEN_HDR sys/wait.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-macros.sys_wait_macros
+ .llvm-libc-types.pid_t
+ .llvm-libc-types.struct_rusage
+ .llvm-libc-types.siginfo_t
+)
- add_gen_header(
- sys_wait
- DEF_FILE sys/wait.h.def
- GEN_HDR sys/wait.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-macros.sys_wait_macros
- .llvm-libc-types.pid_t
- .llvm-libc-types.struct_rusage
- .llvm-libc-types.siginfo_t
- )
+add_header_macro(
+ termios
+ YAML_FILE ../libc/newhdrgen/yaml/termios.yaml
+ DEF_FILE termios.h.def
+ GEN_HDR termios.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-macros.termios_macros
+ .llvm-libc-types.cc_t
+ .llvm-libc-types.pid_t
+ .llvm-libc-types.speed_t
+ .llvm-libc-types.struct_termios
+ .llvm-libc-types.tcflag_t
+)
- add_gen_header(
- termios
- DEF_FILE termios.h.def
- GEN_HDR termios.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-macros.termios_macros
- .llvm-libc-types.cc_t
- .llvm-libc-types.pid_t
- .llvm-libc-types.speed_t
- .llvm-libc-types.struct_termios
- .llvm-libc-types.tcflag_t
- )
+add_header_macro(
+ uchar
+ YAML_FILE ../libc/newhdrgen/yaml/uchar.yaml
+ DEF_FILE uchar.h.def
+ GEN_HDR uchar.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-types.mbstate_t
+ .llvm-libc-types.char8_t
+ .llvm-libc-types.char16_t
+ .llvm-libc-types.char32_t
+)
- add_gen_header(
- uchar
- DEF_FILE uchar.h.def
- GEN_HDR uchar.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-types.mbstate_t
- .llvm-libc-types.char8_t
- .llvm-libc-types.char16_t
- .llvm-libc-types.char32_t
- )
+add_header_macro(
+ wchar
+ YAML_FILE ../libc/newhdrgen/yaml/wchar.yaml
+ DEF_FILE wchar.h.def
+ GEN_HDR wchar.h
+ DEPENDS
+ .llvm_libc_common_h
+ .llvm-libc-macros.wchar_macros
+ .llvm-libc-types.mbstate_t
+ .llvm-libc-types.size_t
+ .llvm-libc-types.wint_t
+ .llvm-libc-types.wchar_t
+)
+
+if(LIBC_TARGET_OS_IS_GPU)
+ file(MAKE_DIRECTORY ${LIBC_INCLUDE_DIR}/gpu)
- add_gen_header(
- wchar
- DEF_FILE wchar.h.def
- GEN_HDR wchar.h
+ add_header_macro(
+ gpu_rpc
+ YAML_FILE ../libc/newhdrgen/yaml/rpc.yaml
+ DEF_FILE gpu/rpc.h.def
+ GEN_HDR gpu/rpc.h
DEPENDS
.llvm_libc_common_h
- .llvm-libc-macros.wchar_macros
- .llvm-libc-types.mbstate_t
- .llvm-libc-types.size_t
- .llvm-libc-types.wint_t
- .llvm-libc-types.wchar_t
+ .llvm-libc-types.rpc_opcodes_t
)
- if(LIBC_TARGET_OS_IS_GPU)
- file(MAKE_DIRECTORY ${LIBC_INCLUDE_DIR}/gpu)
-
- add_gen_header(
- gpu_rpc
- DEF_FILE gpu/rpc.h.def
- GEN_HDR gpu/rpc.h
- DEPENDS
- .llvm_libc_common_h
- .llvm-libc-types.rpc_opcodes_t
- )
- endif()
-endif()
-
if(NOT LLVM_LIBC_FULL_BUILD)
# We don't install headers in non-fullbuild mode.
return()
More information about the libc-commits
mailing list