[libc-commits] [libc] [libc] Add sys/xattr.h and entrypoints flistxattr, listxattr, and llistxattr. (PR #224357)
Alex Strelnikov via libc-commits
libc-commits at lists.llvm.org
Thu Sep 17 12:06:36 PDT 2026
================
@@ -0,0 +1,66 @@
+add_custom_target(libc_sys_xattr_unittests)
+
+add_libc_test(
+ flistxattr_test
+ SUITE
+ libc_sys_xattr_unittests
+ SRCS
+ flistxattr_test.cpp
+ DEPENDS
+ libc.hdr.sys_stat_macros
+ libc.include.sys_xattr
+ libc.src.__support.CPP.scope
+ libc.src.__support.OSUtil.osutil
+ libc.src.__support.libc_errno
+ libc.src.errno.errno
+ libc.src.fcntl.creat
+ libc.src.sys.xattr.flistxattr
+ libc.src.unistd.close
+ libc.src.unistd.unlink
+ libc.test.UnitTest.ErrnoCheckingTest
+ libc.test.UnitTest.ErrnoSetterMatcher
+)
+
+add_libc_test(
+ listxattr_test
+ SUITE
+ libc_sys_xattr_unittests
+ SRCS
+ listxattr_test.cpp
+ DEPENDS
+ libc.hdr.sys_stat_macros
+ libc.include.sys_xattr
+ libc.src.__support.OSUtil.osutil
+ libc.src.__support.libc_errno
+ libc.src.errno.errno
+ libc.src.fcntl.creat
+ libc.src.sys.xattr.listxattr
+ libc.src.unistd.close
+ libc.src.unistd.symlink
+ libc.src.unistd.unlink
+ libc.test.UnitTest.ErrnoCheckingTest
+ libc.test.UnitTest.ErrnoSetterMatcher
+)
+
+add_libc_test(
+ llistxattr_test
+ SUITE
+ libc_sys_xattr_unittests
+ SRCS
+ llistxattr_test.cpp
+ DEPENDS
+ libc.hdr.sys_stat_macros
+ libc.include.sys_xattr
+ libc.src.__support.OSUtil.osutil
+ libc.src.__support.libc_errno
+ libc.src.errno.errno
+ libc.src.fcntl.creat
+ libc.src.sys.xattr.llistxattr
+ libc.src.unistd.close
+ libc.src.unistd.symlink
+ libc.src.unistd.unlink
+ libc.test.UnitTest.ErrnoCheckingTest
+ libc.test.UnitTest.ErrnoSetterMatcher
+)
+
+add_subdirectory(testdata)
----------------
strel-12 wrote:
This is the existing pattern I saw with a bunch of the tests that interact with files, where `add_subdirectory` (+ an empty CMakeLists.txt there) is used so that cmake creates that testdata subdirectory in the build tree.
Otherwise, calls like `creat` fail because `testdata` does not exist yet. If you have a strong preference, I could remove the "testdata/" prefix from the test file paths used in the test itself.
https://github.com/llvm/llvm-project/pull/224357
More information about the libc-commits
mailing list