diff --git a/libc/src/__support/File/linux/lseekImpl.h b/libc/src/__support/File/linux/lseekImpl.h index d1632b703d3bc..b4bf91263a84c 100644 --- a/libc/src/__support/File/linux/lseekImpl.h +++ b/libc/src/__support/File/linux/lseekImpl.h @@ -9,6 +9,7 @@ #ifndef LLVM_LIBC_SRC___SUPPORT_FILE_LINUX_LSEEKIMPL_H #define LLVM_LIBC_SRC___SUPPORT_FILE_LINUX_LSEEKIMPL_H +#include "include/llvm-libc-types/off_t.h" #include "src/__support/OSUtil/syscall.h" // For internal syscall function. #include "src/__support/common.h" #include "src/__support/error_or.h" @@ -16,7 +17,6 @@ #include // For uint64_t. #include // For syscall numbers. -#include // For off_t. namespace LIBC_NAMESPACE { namespace internal { diff --git a/libc/src/unistd/dup.h b/libc/src/unistd/dup.h index d6daa5a9ad74d..786aa8a3401a0 100644 --- a/libc/src/unistd/dup.h +++ b/libc/src/unistd/dup.h @@ -9,8 +9,6 @@ #ifndef LLVM_LIBC_SRC_UNISTD_DUP_H #define LLVM_LIBC_SRC_UNISTD_DUP_H -#include - namespace LIBC_NAMESPACE { int dup(int fd); diff --git a/libc/src/unistd/dup2.h b/libc/src/unistd/dup2.h index ba8c5f4b16010..669dcb6bfb481 100644 --- a/libc/src/unistd/dup2.h +++ b/libc/src/unistd/dup2.h @@ -9,8 +9,6 @@ #ifndef LLVM_LIBC_SRC_UNISTD_DUP2_H #define LLVM_LIBC_SRC_UNISTD_DUP2_H -#include - namespace LIBC_NAMESPACE { int dup2(int oldfd, int newfd); diff --git a/libc/src/unistd/dup3.h b/libc/src/unistd/dup3.h index 2b1082403daff..fe81452cce65c 100644 --- a/libc/src/unistd/dup3.h +++ b/libc/src/unistd/dup3.h @@ -9,8 +9,6 @@ #ifndef LLVM_LIBC_SRC_UNISTD_DUP3_H #define LLVM_LIBC_SRC_UNISTD_DUP3_H -#include - namespace LIBC_NAMESPACE { int dup3(int oldfd, int newfd, int flags); diff --git a/libc/src/unistd/fork.h b/libc/src/unistd/fork.h index 6b1b72a7dfc08..1fc97c2383eb8 100644 --- a/libc/src/unistd/fork.h +++ b/libc/src/unistd/fork.h @@ -9,7 +9,7 @@ #ifndef LLVM_LIBC_SRC_UNISTD_FORK_H #define LLVM_LIBC_SRC_UNISTD_FORK_H -#include +#include "include/llvm-libc-types/pid_t.h" namespace LIBC_NAMESPACE { diff --git a/libc/src/unistd/ftruncate.h b/libc/src/unistd/ftruncate.h index 5508ef0718e94..6d207c57805ce 100644 --- a/libc/src/unistd/ftruncate.h +++ b/libc/src/unistd/ftruncate.h @@ -9,7 +9,7 @@ #ifndef LLVM_LIBC_SRC_UNISTD_FTRUNCATE_H #define LLVM_LIBC_SRC_UNISTD_FTRUNCATE_H -#include +#include "include/llvm-libc-types/off_t.h" namespace LIBC_NAMESPACE { diff --git a/libc/src/unistd/getcwd.h b/libc/src/unistd/getcwd.h index ab7038e453276..c9ce1eb3f36f8 100644 --- a/libc/src/unistd/getcwd.h +++ b/libc/src/unistd/getcwd.h @@ -9,7 +9,7 @@ #ifndef LLVM_LIBC_SRC_UNISTD_GETCWD_H #define LLVM_LIBC_SRC_UNISTD_GETCWD_H -#include +#include "include/llvm-libc-types/size_t.h" namespace LIBC_NAMESPACE { diff --git a/libc/src/unistd/geteuid.h b/libc/src/unistd/geteuid.h index f19cbaefd5792..9b602caba9304 100644 --- a/libc/src/unistd/geteuid.h +++ b/libc/src/unistd/geteuid.h @@ -9,7 +9,7 @@ #ifndef LLVM_LIBC_SRC_UNISTD_GETEUID_H #define LLVM_LIBC_SRC_UNISTD_GETEUID_H -#include +#include "include/llvm-libc-types/uid_t.h" namespace LIBC_NAMESPACE { diff --git a/libc/src/unistd/getopt.h b/libc/src/unistd/getopt.h index ae27958756f44..d298f392dd0f4 100644 --- a/libc/src/unistd/getopt.h +++ b/libc/src/unistd/getopt.h @@ -9,8 +9,7 @@ #ifndef LLVM_LIBC_SRC_UNISTD_GETOPT_H #define LLVM_LIBC_SRC_UNISTD_GETOPT_H -#include -#include +#include "include/llvm-libc-types/FILE.h" namespace LIBC_NAMESPACE { diff --git a/libc/src/unistd/getpid.h b/libc/src/unistd/getpid.h index 5890dbf63681a..09c7af247b9a4 100644 --- a/libc/src/unistd/getpid.h +++ b/libc/src/unistd/getpid.h @@ -9,7 +9,7 @@ #ifndef LLVM_LIBC_SRC_UNISTD_GETPID_H #define LLVM_LIBC_SRC_UNISTD_GETPID_H -#include +#include "include/llvm-libc-types/pid_t.h" namespace LIBC_NAMESPACE { diff --git a/libc/src/unistd/getppid.h b/libc/src/unistd/getppid.h index a09c7ca224187..0db76ae34a7ba 100644 --- a/libc/src/unistd/getppid.h +++ b/libc/src/unistd/getppid.h @@ -9,7 +9,7 @@ #ifndef LLVM_LIBC_SRC_UNISTD_GETPPID_H #define LLVM_LIBC_SRC_UNISTD_GETPPID_H -#include +#include "include/llvm-libc-types/pid_t.h" namespace LIBC_NAMESPACE { diff --git a/libc/src/unistd/getuid.h b/libc/src/unistd/getuid.h index 35163783518c7..7d042d2d6420d 100644 --- a/libc/src/unistd/getuid.h +++ b/libc/src/unistd/getuid.h @@ -9,7 +9,7 @@ #ifndef LLVM_LIBC_SRC_UNISTD_GETUID_H #define LLVM_LIBC_SRC_UNISTD_GETUID_H -#include +#include "include/llvm-libc-types/uid_t.h" namespace LIBC_NAMESPACE { diff --git a/libc/src/unistd/isatty.h b/libc/src/unistd/isatty.h index 90a169730fe04..361cbeae43385 100644 --- a/libc/src/unistd/isatty.h +++ b/libc/src/unistd/isatty.h @@ -9,8 +9,6 @@ #ifndef LLVM_LIBC_SRC_UNISTD_ISATTY_H #define LLVM_LIBC_SRC_UNISTD_ISATTY_H -#include - namespace LIBC_NAMESPACE { int isatty(int fd); diff --git a/libc/src/unistd/link.h b/libc/src/unistd/link.h index a95111f3a7f96..1485a62760eb3 100644 --- a/libc/src/unistd/link.h +++ b/libc/src/unistd/link.h @@ -9,8 +9,6 @@ #ifndef LLVM_LIBC_SRC_UNISTD_LINK_H #define LLVM_LIBC_SRC_UNISTD_LINK_H -#include - namespace LIBC_NAMESPACE { int link(const char *, const char *); diff --git a/libc/src/unistd/linux/ftruncate.cpp b/libc/src/unistd/linux/ftruncate.cpp index 795bb98ceae0c..25175825cc6c7 100644 --- a/libc/src/unistd/linux/ftruncate.cpp +++ b/libc/src/unistd/linux/ftruncate.cpp @@ -8,13 +8,13 @@ #include "src/unistd/ftruncate.h" +#include "include/llvm-libc-types/off_t.h" #include "src/__support/OSUtil/syscall.h" // For internal syscall function. #include "src/__support/common.h" - #include "src/errno/libc_errno.h" + #include // For uint64_t. #include // For syscall numbers. -#include namespace LIBC_NAMESPACE { diff --git a/libc/src/unistd/linux/lseek.cpp b/libc/src/unistd/linux/lseek.cpp index 6f3d9937db245..30ff1f38b0dbe 100644 --- a/libc/src/unistd/linux/lseek.cpp +++ b/libc/src/unistd/linux/lseek.cpp @@ -7,14 +7,14 @@ //===----------------------------------------------------------------------===// #include "src/unistd/lseek.h" -#include "src/errno/libc_errno.h" +#include "include/llvm-libc-types/off_t.h" #include "src/__support/File/linux/lseekImpl.h" #include "src/__support/OSUtil/syscall.h" // For internal syscall function. #include "src/__support/common.h" +#include "src/errno/libc_errno.h" #include // For syscall numbers. -#include // For off_t. namespace LIBC_NAMESPACE { diff --git a/libc/src/unistd/linux/readlink.cpp b/libc/src/unistd/linux/readlink.cpp index 8dee58c8f215f..ee82b81f1a528 100644 --- a/libc/src/unistd/linux/readlink.cpp +++ b/libc/src/unistd/linux/readlink.cpp @@ -8,10 +8,12 @@ #include "src/unistd/readlink.h" +#include "include/llvm-libc-types/size_t.h" +#include "include/llvm-libc-types/ssize_t.h" #include "src/__support/OSUtil/syscall.h" // For internal syscall function. #include "src/__support/common.h" - #include "src/errno/libc_errno.h" + #include #include // For syscall numbers. diff --git a/libc/src/unistd/linux/readlinkat.cpp b/libc/src/unistd/linux/readlinkat.cpp index 479735d4f4d3d..937eb4d5142e3 100644 --- a/libc/src/unistd/linux/readlinkat.cpp +++ b/libc/src/unistd/linux/readlinkat.cpp @@ -8,10 +8,12 @@ #include "src/unistd/readlinkat.h" +#include "include/llvm-libc-types/size_t.h" +#include "include/llvm-libc-types/ssize_t.h" #include "src/__support/OSUtil/syscall.h" // For internal syscall function. #include "src/__support/common.h" - #include "src/errno/libc_errno.h" + #include #include // For syscall numbers. diff --git a/libc/src/unistd/linux/sysconf.cpp b/libc/src/unistd/linux/sysconf.cpp index d4577c8d3d769..7c0149975403f 100644 --- a/libc/src/unistd/linux/sysconf.cpp +++ b/libc/src/unistd/linux/sysconf.cpp @@ -8,12 +8,11 @@ #include "src/unistd/sysconf.h" +#include "include/llvm-libc-macros/linux/unistd-macros.h" #include "src/__support/common.h" - #include "src/errno/libc_errno.h" #include "src/sys/auxv/getauxval.h" #include -#include namespace LIBC_NAMESPACE { diff --git a/libc/src/unistd/linux/truncate.cpp b/libc/src/unistd/linux/truncate.cpp index 0120cc738a921..63cee9e6d8671 100644 --- a/libc/src/unistd/linux/truncate.cpp +++ b/libc/src/unistd/linux/truncate.cpp @@ -8,13 +8,13 @@ #include "src/unistd/truncate.h" +#include "include/llvm-libc-types/off_t.h" #include "src/__support/OSUtil/syscall.h" // For internal syscall function. #include "src/__support/common.h" #include "src/errno/libc_errno.h" #include // For uint64_t. #include // For syscall numbers. -#include namespace LIBC_NAMESPACE { diff --git a/libc/src/unistd/lseek.h b/libc/src/unistd/lseek.h index 75e33d8a6987d..7130418b47528 100644 --- a/libc/src/unistd/lseek.h +++ b/libc/src/unistd/lseek.h @@ -9,7 +9,7 @@ #ifndef LLVM_LIBC_SRC_UNISTD_LSEEK_H #define LLVM_LIBC_SRC_UNISTD_LSEEK_H -#include +#include "include/llvm-libc-types/off_t.h" namespace LIBC_NAMESPACE { diff --git a/libc/src/unistd/pread.h b/libc/src/unistd/pread.h index 6ecfef4c82c60..ec932e1f6fe8e 100644 --- a/libc/src/unistd/pread.h +++ b/libc/src/unistd/pread.h @@ -9,7 +9,9 @@ #ifndef LLVM_LIBC_SRC_UNISTD_PREAD_H #define LLVM_LIBC_SRC_UNISTD_PREAD_H -#include +#include "include/llvm-libc-types/off_t.h" +#include "include/llvm-libc-types/size_t.h" +#include "include/llvm-libc-types/ssize_t.h" namespace LIBC_NAMESPACE { diff --git a/libc/src/unistd/pwrite.h b/libc/src/unistd/pwrite.h index 535c9217c2353..98d57e4e59de3 100644 --- a/libc/src/unistd/pwrite.h +++ b/libc/src/unistd/pwrite.h @@ -9,7 +9,9 @@ #ifndef LLVM_LIBC_SRC_UNISTD_PWRITE_H #define LLVM_LIBC_SRC_UNISTD_PWRITE_H -#include +#include "include/llvm-libc-types/off_t.h" +#include "include/llvm-libc-types/size_t.h" +#include "include/llvm-libc-types/ssize_t.h" namespace LIBC_NAMESPACE { diff --git a/libc/src/unistd/read.h b/libc/src/unistd/read.h index 05a56a2fdeaeb..76ac2ff28879e 100644 --- a/libc/src/unistd/read.h +++ b/libc/src/unistd/read.h @@ -9,7 +9,8 @@ #ifndef LLVM_LIBC_SRC_UNISTD_READ_H #define LLVM_LIBC_SRC_UNISTD_READ_H -#include +#include "include/llvm-libc-types/size_t.h" +#include "include/llvm-libc-types/ssize_t.h" namespace LIBC_NAMESPACE { diff --git a/libc/src/unistd/readlink.h b/libc/src/unistd/readlink.h index c93c430988c79..908f84332b45f 100644 --- a/libc/src/unistd/readlink.h +++ b/libc/src/unistd/readlink.h @@ -9,7 +9,8 @@ #ifndef LLVM_LIBC_SRC_UNISTD_READLINK_H #define LLVM_LIBC_SRC_UNISTD_READLINK_H -#include +#include "include/llvm-libc-types/size_t.h" +#include "include/llvm-libc-types/ssize_t.h" namespace LIBC_NAMESPACE { diff --git a/libc/src/unistd/readlinkat.h b/libc/src/unistd/readlinkat.h index a4357efec1a1b..2ee97b5d29930 100644 --- a/libc/src/unistd/readlinkat.h +++ b/libc/src/unistd/readlinkat.h @@ -9,7 +9,8 @@ #ifndef LLVM_LIBC_SRC_UNISTD_READLINKAT_H #define LLVM_LIBC_SRC_UNISTD_READLINKAT_H -#include +#include "include/llvm-libc-types/size_t.h" +#include "include/llvm-libc-types/ssize_t.h" namespace LIBC_NAMESPACE { diff --git a/libc/src/unistd/swab.h b/libc/src/unistd/swab.h index 0a6aa49540b5b..9fa32d669960a 100644 --- a/libc/src/unistd/swab.h +++ b/libc/src/unistd/swab.h @@ -9,7 +9,7 @@ #ifndef LLVM_LIBC_SRC_UNISTD_SWAB_H #define LLVM_LIBC_SRC_UNISTD_SWAB_H -#include // For ssize_t +#include "include/llvm-libc-types/ssize_t.h" namespace LIBC_NAMESPACE { diff --git a/libc/src/unistd/symlink.h b/libc/src/unistd/symlink.h index 0a0124ccbc7ab..ac021498bafaf 100644 --- a/libc/src/unistd/symlink.h +++ b/libc/src/unistd/symlink.h @@ -9,8 +9,6 @@ #ifndef LLVM_LIBC_SRC_UNISTD_SYMLINK_H #define LLVM_LIBC_SRC_UNISTD_SYMLINK_H -#include - namespace LIBC_NAMESPACE { int symlink(const char *, const char *); diff --git a/libc/src/unistd/symlinkat.h b/libc/src/unistd/symlinkat.h index ecca4380e98eb..dd83a9cc6fe5a 100644 --- a/libc/src/unistd/symlinkat.h +++ b/libc/src/unistd/symlinkat.h @@ -9,8 +9,6 @@ #ifndef LLVM_LIBC_SRC_UNISTD_SYMLINKAT_H #define LLVM_LIBC_SRC_UNISTD_SYMLINKAT_H -#include - namespace LIBC_NAMESPACE { int symlinkat(const char *, int, const char *); diff --git a/libc/src/unistd/syscall.h b/libc/src/unistd/syscall.h index a41d9778e0559..85b874ed12ebe 100644 --- a/libc/src/unistd/syscall.h +++ b/libc/src/unistd/syscall.h @@ -9,9 +9,6 @@ #ifndef LLVM_LIBC_SRC_UNISTD_SYSCALL_H #define LLVM_LIBC_SRC_UNISTD_SYSCALL_H -#include -#include - namespace LIBC_NAMESPACE { long __llvm_libc_syscall(long number, long arg1, long arg2, long arg3, diff --git a/libc/src/unistd/sysconf.h b/libc/src/unistd/sysconf.h index 89c5efa574636..fd9eb43ee55db 100644 --- a/libc/src/unistd/sysconf.h +++ b/libc/src/unistd/sysconf.h @@ -9,8 +9,6 @@ #ifndef LLVM_LIBC_SRC_UNISTD_SYSCONF_H #define LLVM_LIBC_SRC_UNISTD_SYSCONF_H -#include - namespace LIBC_NAMESPACE { long sysconf(int name); diff --git a/libc/src/unistd/truncate.h b/libc/src/unistd/truncate.h index 5245b6bf2ed02..37932fa4fd749 100644 --- a/libc/src/unistd/truncate.h +++ b/libc/src/unistd/truncate.h @@ -9,7 +9,7 @@ #ifndef LLVM_LIBC_SRC_UNISTD_TRUNCATE_H #define LLVM_LIBC_SRC_UNISTD_TRUNCATE_H -#include +#include "include/llvm-libc-types/off_t.h" namespace LIBC_NAMESPACE { diff --git a/libc/src/unistd/write.h b/libc/src/unistd/write.h index 52cdff348085f..5d5a4435c2991 100644 --- a/libc/src/unistd/write.h +++ b/libc/src/unistd/write.h @@ -9,7 +9,8 @@ #ifndef LLVM_LIBC_SRC_UNISTD_WRITE_H #define LLVM_LIBC_SRC_UNISTD_WRITE_H -#include +#include "include/llvm-libc-types/size_t.h" +#include "include/llvm-libc-types/ssize_t.h" namespace LIBC_NAMESPACE { diff --git a/libc/test/src/sys/mman/linux/mincore_test.cpp b/libc/test/src/sys/mman/linux/mincore_test.cpp index 8e0c29c2ac177..43af59ed9ada0 100644 --- a/libc/test/src/sys/mman/linux/mincore_test.cpp +++ b/libc/test/src/sys/mman/linux/mincore_test.cpp @@ -6,6 +6,7 @@ // //===----------------------------------------------------------------------===// +#include "include/llvm-libc-macros/linux/unistd-macros.h" #include "src/__support/OSUtil/syscall.h" // For internal syscall function. #include "src/errno/libc_errno.h" #include "src/sys/mman/madvise.h" @@ -21,7 +22,6 @@ #include #include -#include using LIBC_NAMESPACE::testing::ErrnoSetterMatcher::Fails; using LIBC_NAMESPACE::testing::ErrnoSetterMatcher::Succeeds; diff --git a/libc/test/src/sys/mman/linux/mlock_test.cpp b/libc/test/src/sys/mman/linux/mlock_test.cpp index 804038a68a7e0..6f79ff056d732 100644 --- a/libc/test/src/sys/mman/linux/mlock_test.cpp +++ b/libc/test/src/sys/mman/linux/mlock_test.cpp @@ -6,6 +6,7 @@ // //===----------------------------------------------------------------------===// +#include "include/llvm-libc-macros/linux/unistd-macros.h" #include "src/__support/OSUtil/syscall.h" // For internal syscall function. #include "src/errno/libc_errno.h" #include "src/sys/mman/madvise.h" @@ -29,7 +30,6 @@ #include #include #include -#include using namespace LIBC_NAMESPACE::testing::ErrnoSetterMatcher; diff --git a/libc/test/src/sys/mman/linux/msync_test.cpp b/libc/test/src/sys/mman/linux/msync_test.cpp index 0d60415b1243a..77df61fde935e 100644 --- a/libc/test/src/sys/mman/linux/msync_test.cpp +++ b/libc/test/src/sys/mman/linux/msync_test.cpp @@ -6,6 +6,7 @@ // //===----------------------------------------------------------------------===// +#include "include/llvm-libc-macros/linux/unistd-macros.h" #include "src/errno/libc_errno.h" #include "src/sys/mman/mlock.h" #include "src/sys/mman/mmap.h" diff --git a/libc/test/src/unistd/sysconf_test.cpp b/libc/test/src/unistd/sysconf_test.cpp index 85bc1258a4863..2c540be285d45 100644 --- a/libc/test/src/unistd/sysconf_test.cpp +++ b/libc/test/src/unistd/sysconf_test.cpp @@ -9,7 +9,7 @@ #include "src/unistd/sysconf.h" #include "test/UnitTest/Test.h" -#include +#include "include/llvm-libc-macros/linux/unistd-macros.h" TEST(LlvmLibcSysconfTest, PagesizeTest) { long pagesize = LIBC_NAMESPACE::sysconf(_SC_PAGESIZE); diff --git a/utils/bazel/llvm-project-overlay/libc/BUILD.bazel b/utils/bazel/llvm-project-overlay/libc/BUILD.bazel index 12fbe0dd60253..a59448309189d 100644 --- a/utils/bazel/llvm-project-overlay/libc/BUILD.bazel +++ b/utils/bazel/llvm-project-overlay/libc/BUILD.bazel @@ -97,6 +97,11 @@ libc_support_library( deps = [":llvm_libc_macros_float_macros"], ) +libc_support_library( + name = "llvm_libc_types", + hdrs = glob(["include/llvm-libc-types/*.h"]), +) + ############################### Support libraries ############################## libc_support_library( @@ -2732,6 +2737,7 @@ libc_function( ":__support_common", ":__support_osutil_syscall", ":errno", + ":llvm_libc_types", ], ) @@ -2754,6 +2760,7 @@ libc_function( ":__support_common", ":__support_osutil_syscall", ":errno", + ":llvm_libc_types", ], ) @@ -2765,6 +2772,7 @@ libc_function( ":__support_common", ":__support_osutil_syscall", ":errno", + ":llvm_libc_types", ], ) @@ -2776,6 +2784,7 @@ libc_function( ":__support_common", ":__support_osutil_syscall", ":errno", + ":llvm_libc_types", ], ) @@ -2787,6 +2796,7 @@ libc_function( ":__support_common", ":__support_osutil_syscall", ":errno", + ":llvm_libc_types", ], ) @@ -2846,6 +2856,7 @@ libc_function( ":__support_file_linux_lseekimpl", ":__support_osutil_syscall", ":errno", + ":llvm_libc_types", ], ) @@ -2857,6 +2868,7 @@ libc_function( ":__support_common", ":__support_osutil_syscall", ":errno", + ":llvm_libc_types", ], ) @@ -2868,6 +2880,7 @@ libc_function( ":__support_common", ":__support_osutil_syscall", ":errno", + ":llvm_libc_types", ], ) @@ -2881,6 +2894,7 @@ libc_function( ":__support_macros_sanitizer", ":__support_osutil_syscall", ":errno", + ":llvm_libc_types", ], ) @@ -2892,6 +2906,7 @@ libc_function( ":__support_common", ":__support_osutil_syscall", ":errno", + ":llvm_libc_types", ], ) @@ -2903,6 +2918,7 @@ libc_function( ":__support_common", ":__support_osutil_syscall", ":errno", + ":llvm_libc_types", ], ) @@ -2961,6 +2977,7 @@ libc_function( ":__support_common", ":__support_osutil_syscall", ":errno", + ":llvm_libc_types", ], ) @@ -2972,6 +2989,7 @@ libc_function( ":__support_common", ":__support_osutil_syscall", ":errno", + ":llvm_libc_types", ], ) @@ -3006,6 +3024,7 @@ libc_function( ":__support_common", ":__support_osutil_syscall", ":errno", + ":llvm_libc_types", ], )