glibc/support
Adhemerval Zanella 570c46d36b configure: Repurpose have-cc-with-libunwind for clang support
The `have-cc-with-libunwind` check (and its corresponding macro
HAVE_CC_WITH_LIBUNWIND) was historically specific to IA64, intended
to supplement libgcc with libunwind.  Since this logic is unused in
current GCC configurations, this patch repurposes it to support
clang-based toolchains that utilize LLVM's libunwind instead of
libgcc_s.

The configure script now detects if the compiler natively supports
unwinding via `-lunwind`.

Additionally, when this mode is enabled, `-lclang_rt.builtins` is
explicitly added to the `libgcc_eh` definition.  This is necessary
because `links-dso-program` otherwise fails to link due to a missing
`__gcc_personality_v0` symbol.  It appears that clang does not
automatically link the builtins providing this personality routine
when `rlink-path` is actively used during the build.

Reviewed-by: Sam James <sam@gentoo.org>
2026-03-12 13:52:50 -03:00
..
bundled Update the bundled <linux/fuse.h> userspace header from Linux 6.18 2026-01-09 12:19:49 +01:00
Depend
Makefile configure: Repurpose have-cc-with-libunwind for clang support 2026-03-12 13:52:50 -03:00
README
README-testing.c
blob_repeat.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
blob_repeat.h Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
capture_subprocess.h Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
check.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
check.h Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
check_addrinfo.c support: Clean up NSS formatting and checking functions 2026-02-12 12:18:54 +01:00
check_aliasent.c support: Add missing NSS formatting and checking functions 2026-02-12 12:18:54 +01:00
check_dns_packet.c support: Clean up NSS formatting and checking functions 2026-02-12 12:18:54 +01:00
check_ether_addr.c support: Add missing NSS formatting and checking functions 2026-02-12 12:18:54 +01:00
check_group.c support: Add missing NSS formatting and checking functions 2026-02-12 12:18:54 +01:00
check_hostent.c support: Clean up NSS formatting and checking functions 2026-02-12 12:18:54 +01:00
check_mem_access.h Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
check_netent.c support: Clean up NSS formatting and checking functions 2026-02-12 12:18:54 +01:00
check_nss.h support: Add missing NSS formatting and checking functions 2026-02-12 12:18:54 +01:00
check_passwd.c support: Add missing NSS formatting and checking functions 2026-02-12 12:18:54 +01:00
check_protoent.c support: Add missing NSS formatting and checking functions 2026-02-12 12:18:54 +01:00
check_rpcent.c support: Add missing NSS formatting and checking functions 2026-02-12 12:18:54 +01:00
check_servent.c support: Add missing NSS formatting and checking functions 2026-02-12 12:18:54 +01:00
check_sgrp.c support: Add missing NSS formatting and checking functions 2026-02-12 12:18:54 +01:00
check_spwd.c support: Add missing NSS formatting and checking functions 2026-02-12 12:18:54 +01:00
delayed_exit.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
descriptors.h Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
dtotimespec-time64.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
dtotimespec.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
echo-container.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
file_contents.h Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
format_nss.h support: Add missing NSS formatting and checking functions 2026-02-12 12:18:54 +01:00
fuse.h Linux: test sizes larger than UINT_MAX for copy_file_range 2026-01-09 12:19:52 +01:00
ignore_stderr.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
links-dso-program-c.c
links-dso-program.cc
namespace.h Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
next_to_fault.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
next_to_fault.h Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
nscd_test.h support: Add support for starting and stopping nscd 2026-02-12 12:18:54 +01:00
oom_error.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
process_state.h Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
readdir.h Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
resolv_response_context_duplicate.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
resolv_response_context_free.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
resolv_test.c support: no_override_resolv_conf_search flag for resolver test framework 2026-03-03 18:48:47 +01:00
resolv_test.h support: no_override_resolv_conf_search flag for resolver test framework 2026-03-03 18:48:47 +01:00
run_diff.h Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
set_fortify_handler.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
shell-container.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
subprocess.h support: Add support_spawn_wrap and related functionality 2026-02-02 21:15:48 +01:00
support-open-dev-null-range.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
support.h support: Add support_hardcoded_paths_in_test 2026-01-24 10:29:22 +01:00
support_become_root.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
support_can_chroot.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
support_capture_subprocess.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
support_capture_subprocess_check.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
support_check_nss.c support: Clean up NSS formatting and checking functions 2026-02-12 12:18:54 +01:00
support_check_stat_fd.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
support_check_stat_path.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
support_chroot.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
support_compare_file_bytes.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
support_compare_file_string.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
support_copy_file.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
support_copy_file_range.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
support_create_timer.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
support_descriptor_supports_holes.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
support_descriptors.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
support_enter_mount_namespace.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
support_enter_network_namespace.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
support_format_address_family.c support: Clean up NSS formatting and checking functions 2026-02-12 12:18:54 +01:00
support_format_addrinfo.c support: Clean up NSS formatting and checking functions 2026-02-12 12:18:54 +01:00
support_format_aliasent.c support: Add missing NSS formatting and checking functions 2026-02-12 12:18:54 +01:00
support_format_dns_packet.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
support_format_ether_addr.c support: Add missing NSS formatting and checking functions 2026-02-12 12:18:54 +01:00
support_format_group.c support: Add missing NSS formatting and checking functions 2026-02-12 12:18:54 +01:00
support_format_herrno.c support: Clean up NSS formatting and checking functions 2026-02-12 12:18:54 +01:00
support_format_hostent.c support: Clean up NSS formatting and checking functions 2026-02-12 12:18:54 +01:00
support_format_netent.c support: Clean up NSS formatting and checking functions 2026-02-12 12:18:54 +01:00
support_format_passwd.c support: Add missing NSS formatting and checking functions 2026-02-12 12:18:54 +01:00
support_format_protoent.c support: Add missing NSS formatting and checking functions 2026-02-12 12:18:54 +01:00
support_format_rpcent.c support: Add missing NSS formatting and checking functions 2026-02-12 12:18:54 +01:00
support_format_servent.c support: Add missing NSS formatting and checking functions 2026-02-12 12:18:54 +01:00
support_format_sgrp.c support: Add missing NSS formatting and checking functions 2026-02-12 12:18:54 +01:00
support_format_spwd.c support: Add missing NSS formatting and checking functions 2026-02-12 12:18:54 +01:00
support_fuse.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
support_isolate_in_subprocess.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
support_mem_access.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
support_mutex_pi_monotonic.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
support_need_proc.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
support_nscd.c support: Add support for starting and stopping nscd 2026-02-12 12:18:54 +01:00
support_open_and_compare_file_bytes.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
support_open_and_compare_file_string.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
support_openpty.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
support_path_support_time64.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
support_paths.c support: Add support_hardcoded_paths_in_test 2026-01-24 10:29:22 +01:00
support_process_state.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
support_ptrace.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
support_quote_blob.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
support_quote_blob_main.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
support_quote_blob_wide.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
support_quote_string.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
support_readdir.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
support_readdir_check.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
support_readdir_r_check.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
support_record_failure.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
support_run_diff.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
support_select_modifies_timeout.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
support_select_normalizes_timeout.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
support_set_small_thread_stack_size.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
support_set_vma_name_supported.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
support_shared_allocate.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
support_small_stack_thread_attribute.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
support_socket_so_timestamp_time64.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
support_spawn_wrap.c support: Add support_spawn_wrap and related functionality 2026-02-02 21:15:48 +01:00
support_stack_alloc.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
support_stat_nanoseconds.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
support_subprocess.c support: Fix memory leaks in support_subprogram, support_subprogram_wait 2026-01-24 10:29:22 +01:00
support_test_compare_blob.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
support_test_compare_failure.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
support_test_compare_string.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
support_test_compare_string_main.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
support_test_compare_string_wide.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
support_test_in_thread_wrapper.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
support_test_main.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
support_test_verify_impl.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
support_wait_for_thread_exit.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
support_write_file_string.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
temp_file-internal.h Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
temp_file.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
temp_file.h Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
test-container.c support: Reinitialize containers if /etc is present 2026-01-24 10:29:39 +01:00
test-driver.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
test-driver.h Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
test-run-command.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
timespec-add-time64.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
timespec-add.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
timespec-sub-time64.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
timespec-sub.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
timespec-time64.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
timespec.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
timespec.h Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
true-container.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
tst-glibcpp.py Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
tst-support-namespace.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
tst-support-open-dev-null-range.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
tst-support-openpty-c.c
tst-support-openpty.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
tst-support-process_state.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
tst-support_accept_oom.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
tst-support_blob_repeat.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
tst-support_capture_subprocess.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
tst-support_descriptors.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
tst-support_format_dns_packet.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
tst-support_format_nss.c support: Add missing NSS formatting and checking functions 2026-02-12 12:18:54 +01:00
tst-support_fuse.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
tst-support_quote_blob.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
tst-support_quote_blob_wide.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
tst-support_quote_string.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
tst-support_readdir.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
tst-support_record_failure-2.sh Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
tst-support_record_failure.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
tst-support_spawn_wrap.c support: Add support_spawn_wrap and related functionality 2026-02-02 21:15:48 +01:00
tst-test_compare.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
tst-test_compare_blob.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
tst-test_compare_string.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
tst-test_compare_string_wide.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
tst-timespec.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
tst-xdirent.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
tst-xreadlink.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
tst-xsigstack.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
tty.h Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
write_message.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xaccept.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xaccept4.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xasprintf.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xbind.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xcalloc.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xchdir.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xchmod.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xchroot.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xclock_gettime.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xclock_gettime_time64.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xclock_settime.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xclock_settime_time64.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xclone.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xclose.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xclosedir.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xconnect.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xcopy_file_range.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xdirent.h Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xdlfcn.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xdlfcn.h Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xdlmopen.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xdup.c
xdup2.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xfchmod.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xfclose.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xfdopendir.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xfgets.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xfmemopen.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xfopen.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xfork.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xfread.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xfreopen.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xftruncate.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xgetline.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xgetpeername.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xgetsockname.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xlisten.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xlseek.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xmalloc.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xmemstream.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xmemstream.h Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xmkdir.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xmkdirp.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xmkfifo.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xmmap.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xmprotect.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xmunmap.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xnewlocale.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xopen.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xopendir.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xpipe.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xpoll.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xposix_memalign.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xposix_spawn.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xposix_spawn_file_actions_addclose.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xposix_spawn_file_actions_adddup2.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xpthread_attr_destroy.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xpthread_attr_init.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xpthread_attr_setaffinity_np.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xpthread_attr_setdetachstate.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xpthread_attr_setguardsize.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xpthread_attr_setstack.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xpthread_attr_setstacksize.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xpthread_barrier_destroy.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xpthread_barrier_init.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xpthread_barrier_wait.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xpthread_barrierattr_destroy.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xpthread_barrierattr_init.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xpthread_barrierattr_setpshared.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xpthread_cancel.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xpthread_check_return.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xpthread_cond_signal.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xpthread_cond_wait.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xpthread_create.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xpthread_detach.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xpthread_join.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xpthread_key_create.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xpthread_key_delete.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xpthread_kill.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xpthread_mutex_consistent.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xpthread_mutex_destroy.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xpthread_mutex_init.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xpthread_mutex_lock.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xpthread_mutex_unlock.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xpthread_mutexattr_destroy.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xpthread_mutexattr_init.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xpthread_mutexattr_setprotocol.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xpthread_mutexattr_setpshared.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xpthread_mutexattr_setrobust.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xpthread_mutexattr_settype.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xpthread_once.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xpthread_rwlock_destroy.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xpthread_rwlock_init.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xpthread_rwlock_rdlock.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xpthread_rwlock_unlock.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xpthread_rwlock_wrlock.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xpthread_rwlockattr_init.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xpthread_rwlockattr_setkind_np.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xpthread_sigmask.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xpthread_spin_lock.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xpthread_spin_unlock.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xptrace.h Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xraise.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xread.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xreadlink.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xrealloc.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xrecvfrom.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xsched.h Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xsendto.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xsetlocale.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xsetsockopt.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xsigaction.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xsignal.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xsignal.h Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xsigstack.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xsocket.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xsocket.h Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xspawn.h Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xstatx.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xstdio.h Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xstdlib.h Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xstrdup.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xstrndup.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xsymlink.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xsysconf.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xsystem.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xthread.h Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xtime.h Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xunistd.h Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xunlink.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xuselocale.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xwaitpid.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00
xwrite.c Update copyright dates with scripts/update-copyrights 2026-01-01 13:42:29 -08:00

README

This subdirectory contains infrastructure which is not put into
installed libraries, but may be linked into programs (installed or
not) and tests.

# Error-checking wrappers

These wrappers test for error return codes an terminate the process on
error.  They are declared in these header files:

* support.h
* xsignal.h
* xthread.h
* xtime.h

In general, new wrappers should be added to support.h if possible.
However, support.h must remain fully compatible with C90 and therefore
cannot include headers which use identifiers not reserved in C90.  If
the wrappers need additional types, additional headers such as
signal.h need to be introduced.

# Test framework

The test framework provides a main program for tests, including a
timeout for hanging tests.  See README-testing.c for a minimal
example, and test-driver.c for details how to use it.  The following
header files provide related declarations:

* check.h
* temp_file.h
* test-driver.h

For tests that make use of struct timespec, the following header files
contain additional macros and helper functions:

* timespec.h