[libc-commits] [libc] [libc] add ioctl (PR #141393)

via libc-commits libc-commits at lists.llvm.org
Fri May 30 08:44:23 PDT 2025


================
@@ -0,0 +1,83 @@
+//===-- Unittests for ioctl -----------------------------------------------===//
+//
+// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
+// See https://llvm.org/LICENSE.txt for license information.
+// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
+//
+//===----------------------------------------------------------------------===//
+#include "src/errno/libc_errno.h"
+#include "src/fcntl/open.h"
+#include "src/sys/ioctl/ioctl.h"
+#include "src/unistd/close.h"
+#include "src/unistd/read.h"
+#include "test/UnitTest/ErrnoSetterMatcher.h"
+
+#include <sys/ioctl.h>
----------------
lntue wrote:

We don't want to directly include system headers `<...>` in our sources and tests, unless necessary, because there might be differences between our own generated headers in full build mode and those from the systems in overlay mode.  So we want all the usages point to our "proxy headers" in `libc/hdr` folder to resolve the differences between those 2 modes.  Most of them time they can be very simple and straightforward.  You can take a look at `libc/hdr/sys_stat_macros.h` and its corresponding cmake target for example.

https://github.com/llvm/llvm-project/pull/141393


More information about the libc-commits mailing list