From 1207086b5a6341412c647480eea68c870b18bba1 Mon Sep 17 00:00:00 2001 From: Tavian Barnes Date: Thu, 18 Apr 2024 16:16:18 -0400 Subject: config: Check for getdents{,64}() --- config/flags.mk | 1 - config/getdents.c | 10 ++++++++++ config/getdents64-syscall.c | 12 ++++++++++++ config/getdents64.c | 10 ++++++++++ config/header.mk | 3 +++ 5 files changed, 35 insertions(+), 1 deletion(-) create mode 100644 config/getdents.c create mode 100644 config/getdents64-syscall.c create mode 100644 config/getdents64.c (limited to 'config') diff --git a/config/flags.mk b/config/flags.mk index 9959d10..8a2e50e 100644 --- a/config/flags.mk +++ b/config/flags.mk @@ -36,7 +36,6 @@ export BFS_CPPFLAGS= \ -D_DARWIN_C_SOURCE \ -D_DEFAULT_SOURCE \ -D_GNU_SOURCE \ - -D_LARGEFILE64_SOURCE \ -D_POSIX_PTHREAD_SEMANTICS \ -D_FILE_OFFSET_BITS=64 \ -D_TIME_BITS=64 diff --git a/config/getdents.c b/config/getdents.c new file mode 100644 index 0000000..d0d4228 --- /dev/null +++ b/config/getdents.c @@ -0,0 +1,10 @@ +// Copyright © Tavian Barnes +// SPDX-License-Identifier: 0BSD + +#include + +int main(void) { + struct dirent de; + getdents(3, &de, 1024); + return 0; +} diff --git a/config/getdents64-syscall.c b/config/getdents64-syscall.c new file mode 100644 index 0000000..4838c14 --- /dev/null +++ b/config/getdents64-syscall.c @@ -0,0 +1,12 @@ +// Copyright © Tavian Barnes +// SPDX-License-Identifier: 0BSD + +#include +#include +#include + +int main(void) { + struct dirent64 de; + syscall(SYS_getdents64, 3, &de, 1024); + return 0; +} diff --git a/config/getdents64.c b/config/getdents64.c new file mode 100644 index 0000000..1abf36d --- /dev/null +++ b/config/getdents64.c @@ -0,0 +1,10 @@ +// Copyright © Tavian Barnes +// SPDX-License-Identifier: 0BSD + +#include + +int main(void) { + struct dirent64 de; + getdents64(3, &de, 1024); + return 0; +} diff --git a/config/header.mk b/config/header.mk index 8867200..cc4ae05 100644 --- a/config/header.mk +++ b/config/header.mk @@ -9,6 +9,9 @@ include config/exports.mk # All header fragments we generate HEADERS := \ + ${GEN}/getdents.h \ + ${GEN}/getdents64.h \ + ${GEN}/getdents64-syscall.h \ ${GEN}/getprogname.h \ ${GEN}/getprogname-gnu.h \ ${GEN}/posix-spawn-addfchdir.h \ -- cgit v1.2.3