Index: libcfa/configure.ac
===================================================================
--- libcfa/configure.ac	(revision 97c3159a8935460c693d4081ccd00629d1f32093)
+++ libcfa/configure.ac	(revision d3a518c4e9e6284103a9706fc3fd93ceee932d6b)
@@ -131,4 +131,49 @@
 #io_uring 5.5 uses enum values
 #io_uring 5.6 and later uses probes
+
+AH_TEMPLATE([CFA_HAVE_LINUX_IO_URING_H],[Defined if io_uring support is present when compiling libcfathread.])
+AH_TEMPLATE([CFA_HAVE_IORING_OP_NOP],[Defined if io_uring support is present when compiling libcfathread and supports the operation IORING_OP_NOP.])
+AH_TEMPLATE([CFA_HAVE_IORING_OP_READV],[Defined if io_uring support is present when compiling libcfathread and supports the operation IORING_OP_READV.])
+AH_TEMPLATE([CFA_HAVE_IORING_OP_WRITEV],[Defined if io_uring support is present when compiling libcfathread and supports the operation IORING_OP_WRITEV.])
+AH_TEMPLATE([CFA_HAVE_IORING_OP_FSYNC],[Defined if io_uring support is present when compiling libcfathread and supports the operation IORING_OP_FSYNC.])
+AH_TEMPLATE([CFA_HAVE_IORING_OP_READ_FIXED],[Defined if io_uring support is present when compiling libcfathread and supports the operation IORING_OP_READ_FIXED.])
+AH_TEMPLATE([CFA_HAVE_IORING_OP_WRITE_FIXED],[Defined if io_uring support is present when compiling libcfathread and supports the operation IORING_OP_WRITE_FIXED.])
+AH_TEMPLATE([CFA_HAVE_IORING_OP_POLL_ADD],[Defined if io_uring support is present when compiling libcfathread and supports the operation IORING_OP_POLL_ADD.])
+AH_TEMPLATE([CFA_HAVE_IORING_OP_POLL_REMOVE],[Defined if io_uring support is present when compiling libcfathread and supports the operation IORING_OP_POLL_REMOVE.])
+AH_TEMPLATE([CFA_HAVE_IORING_OP_SYNC_FILE_RANGE],[Defined if io_uring support is present when compiling libcfathread and supports the operation IORING_OP_SYNC_FILE_RANGE.])
+AH_TEMPLATE([CFA_HAVE_IORING_OP_SENDMSG],[Defined if io_uring support is present when compiling libcfathread and supports the operation IORING_OP_SENDMSG.])
+AH_TEMPLATE([CFA_HAVE_IORING_OP_RECVMSG],[Defined if io_uring support is present when compiling libcfathread and supports the operation IORING_OP_RECVMSG.])
+AH_TEMPLATE([CFA_HAVE_IORING_OP_TIMEOUT],[Defined if io_uring support is present when compiling libcfathread and supports the operation IORING_OP_TIMEOUT.])
+AH_TEMPLATE([CFA_HAVE_IORING_OP_TIMEOUT_REMOVE],[Defined if io_uring support is present when compiling libcfathread and supports the operation IORING_OP_TIMEOUT_REMOVE.])
+AH_TEMPLATE([CFA_HAVE_IORING_OP_ACCEPT],[Defined if io_uring support is present when compiling libcfathread and supports the operation IORING_OP_ACCEPT.])
+AH_TEMPLATE([CFA_HAVE_IORING_OP_ASYNC_CANCEL],[Defined if io_uring support is present when compiling libcfathread and supports the operation IORING_OP_ASYNC_CANCEL.])
+AH_TEMPLATE([CFA_HAVE_IORING_OP_LINK_TIMEOUT],[Defined if io_uring support is present when compiling libcfathread and supports the operation IORING_OP_LINK_TIMEOUT.])
+AH_TEMPLATE([CFA_HAVE_IORING_OP_CONNECT],[Defined if io_uring support is present when compiling libcfathread and supports the operation IORING_OP_CONNECT.])
+AH_TEMPLATE([CFA_HAVE_IORING_OP_FALLOCATE],[Defined if io_uring support is present when compiling libcfathread and supports the operation IORING_OP_FALLOCATE.])
+AH_TEMPLATE([CFA_HAVE_IORING_OP_OPENAT],[Defined if io_uring support is present when compiling libcfathread and supports the operation IORING_OP_OPENAT.])
+AH_TEMPLATE([CFA_HAVE_IORING_OP_CLOSE],[Defined if io_uring support is present when compiling libcfathread and supports the operation IORING_OP_CLOSE.])
+AH_TEMPLATE([CFA_HAVE_IORING_OP_FILES_UPDATE],[Defined if io_uring support is present when compiling libcfathread and supports the operation IORING_OP_FILES_UPDATE.])
+AH_TEMPLATE([CFA_HAVE_IORING_OP_STATX],[Defined if io_uring support is present when compiling libcfathread and supports the operation IORING_OP_STATX.])
+AH_TEMPLATE([CFA_HAVE_IORING_OP_READ],[Defined if io_uring support is present when compiling libcfathread and supports the operation IORING_OP_READ.])
+AH_TEMPLATE([CFA_HAVE_IORING_OP_WRITE],[Defined if io_uring support is present when compiling libcfathread and supports the operation IORING_OP_WRITE.])
+AH_TEMPLATE([CFA_HAVE_IORING_OP_FADVISE],[Defined if io_uring support is present when compiling libcfathread and supports the operation IORING_OP_FADVISE.])
+AH_TEMPLATE([CFA_HAVE_IORING_OP_MADVISE],[Defined if io_uring support is present when compiling libcfathread and supports the operation IORING_OP_MADVISE.])
+AH_TEMPLATE([CFA_HAVE_IORING_OP_SEND],[Defined if io_uring support is present when compiling libcfathread and supports the operation IORING_OP_SEND.])
+AH_TEMPLATE([CFA_HAVE_IORING_OP_RECV],[Defined if io_uring support is present when compiling libcfathread and supports the operation IORING_OP_RECV.])
+AH_TEMPLATE([CFA_HAVE_IORING_OP_OPENAT2],[Defined if io_uring support is present when compiling libcfathread and supports the operation IORING_OP_OPENAT2.])
+AH_TEMPLATE([CFA_HAVE_IORING_OP_EPOLL_CTL],[Defined if io_uring support is present when compiling libcfathread and supports the operation IORING_OP_EPOLL_CTL.])
+AH_TEMPLATE([CFA_HAVE_IORING_OP_SPLICE],[Defined if io_uring support is present when compiling libcfathread and supports the operation IORING_OP_SPLICE.])
+AH_TEMPLATE([CFA_HAVE_IORING_OP_PROVIDE_BUFFERS],[Defined if io_uring support is present when compiling libcfathread and supports the operation IORING_OP_PROVIDE_BUFFERS.])
+AH_TEMPLATE([CFA_HAVE_IORING_OP_REMOVE_BUFFER],[Defined if io_uring support is present when compiling libcfathread and supports the operation IORING_OP_REMOVE_BUFFER.])
+AH_TEMPLATE([CFA_HAVE_IOSQE_FIXED_FILE],[Defined if io_uring support is present when compiling libcfathread and supports the flag FIXED_FILE.])
+AH_TEMPLATE([CFA_HAVE_IOSQE_IO_DRAIN],[Defined if io_uring support is present when compiling libcfathread and supports the flag IO_DRAIN.])
+AH_TEMPLATE([CFA_HAVE_IOSQE_ASYNC],[Defined if io_uring support is present when compiling libcfathread and supports the flag ASYNC.])
+AH_TEMPLATE([CFA_HAVE_IOSQE_IO_LINK],[Defined if io_uring support is present when compiling libcfathread and supports the flag IO_LINK.])
+AH_TEMPLATE([CFA_HAVE_IOSQE_IO_HARDLINK],[Defined if io_uring support is present when compiling libcfathread and supports the flag IO_HARDLINK.])
+AH_TEMPLATE([CFA_HAVE_SPLICE_F_FD_IN_FIXED],[Defined if io_uring support is present when compiling libcfathread and supports the flag SPLICE_F_FD_IN_FIXED.])
+AH_TEMPLATE([HAVE_PREADV2],[Defined if preadv2 support is present when compiling libcfathread.])
+AH_TEMPLATE([HAVE_PWRITEV2],[Defined if pwritev2 support is present when compiling libcfathread.])
+AH_TEMPLATE([__CFA_NO_STATISTICS__],[Defined if libcfathread was compiled without support for statistics.])
+
 define(ioring_ops, [IORING_OP_NOP,IORING_OP_READV,IORING_OP_WRITEV,IORING_OP_FSYNC,IORING_OP_READ_FIXED,IORING_OP_WRITE_FIXED,IORING_OP_POLL_ADD,IORING_OP_POLL_REMOVE,IORING_OP_SYNC_FILE_RANGE,IORING_OP_SENDMSG,IORING_OP_RECVMSG,IORING_OP_TIMEOUT,IORING_OP_TIMEOUT_REMOVE,IORING_OP_ACCEPT,IORING_OP_ASYNC_CANCEL,IORING_OP_LINK_TIMEOUT,IORING_OP_CONNECT,IORING_OP_FALLOCATE,IORING_OP_OPENAT,IORING_OP_CLOSE,IORING_OP_FILES_UPDATE,IORING_OP_STATX,IORING_OP_READ,IORING_OP_WRITE,IORING_OP_FADVISE,IORING_OP_MADVISE,IORING_OP_SEND,IORING_OP_RECV,IORING_OP_OPENAT2,IORING_OP_EPOLL_CTL,IORING_OP_SPLICE,IORING_OP_PROVIDE_BUFFERS,IORING_OP_REMOVE_BUFFER])
 define(ioring_flags, [IOSQE_FIXED_FILE,IOSQE_IO_DRAIN,IOSQE_ASYNC,IOSQE_IO_LINK,IOSQE_IO_HARDLINK,SPLICE_F_FD_IN_FIXED])
Index: libcfa/prelude/defines.hfa.in
===================================================================
--- libcfa/prelude/defines.hfa.in	(revision 97c3159a8935460c693d4081ccd00629d1f32093)
+++ libcfa/prelude/defines.hfa.in	(revision d3a518c4e9e6284103a9706fc3fd93ceee932d6b)
@@ -14,49 +14,179 @@
 //
 
+//-----------------------------------------------------------------------
+// Global Support
+/* Defined if io_uring support is present when compiling libcfathread. */
 #undef CFA_HAVE_LINUX_IO_URING_H
 
+//-----------------------------------------------------------------------
+// Operations
+/* Defined if io_uring support is present when compiling libcfathread and
+   supports the operation IORING_OP_NOP. */
 #undef CFA_HAVE_IORING_OP_NOP
+
+/* Defined if io_uring support is present when compiling libcfathread and
+   supports the operation IORING_OP_READV. */
 #undef CFA_HAVE_IORING_OP_READV
+
+/* Defined if io_uring support is present when compiling libcfathread and
+   supports the operation IORING_OP_WRITEV. */
 #undef CFA_HAVE_IORING_OP_WRITEV
+
+/* Defined if io_uring support is present when compiling libcfathread and
+   supports the operation IORING_OP_FSYNC. */
 #undef CFA_HAVE_IORING_OP_FSYNC
+
+/* Defined if io_uring support is present when compiling libcfathread and
+   supports the operation IORING_OP_READ_FIXED. */
 #undef CFA_HAVE_IORING_OP_READ_FIXED
+
+/* Defined if io_uring support is present when compiling libcfathread and
+   supports the operation IORING_OP_WRITE_FIXED. */
 #undef CFA_HAVE_IORING_OP_WRITE_FIXED
+
+/* Defined if io_uring support is present when compiling libcfathread and
+   supports the operation IORING_OP_POLL_ADD. */
 #undef CFA_HAVE_IORING_OP_POLL_ADD
+
+/* Defined if io_uring support is present when compiling libcfathread and
+   supports the operation IORING_OP_POLL_REMOVE. */
 #undef CFA_HAVE_IORING_OP_POLL_REMOVE
+
+/* Defined if io_uring support is present when compiling libcfathread and
+   supports the operation IORING_OP_SYNC_FILE_RANGE. */
 #undef CFA_HAVE_IORING_OP_SYNC_FILE_RANGE
+
+/* Defined if io_uring support is present when compiling libcfathread and
+   supports the operation IORING_OP_SENDMSG. */
 #undef CFA_HAVE_IORING_OP_SENDMSG
+
+/* Defined if io_uring support is present when compiling libcfathread and
+   supports the operation IORING_OP_RECVMSG. */
 #undef CFA_HAVE_IORING_OP_RECVMSG
+
+/* Defined if io_uring support is present when compiling libcfathread and
+   supports the operation IORING_OP_TIMEOUT. */
 #undef CFA_HAVE_IORING_OP_TIMEOUT
+
+/* Defined if io_uring support is present when compiling libcfathread and
+   supports the operation IORING_OP_TIMEOUT_REMOVE. */
 #undef CFA_HAVE_IORING_OP_TIMEOUT_REMOVE
+
+/* Defined if io_uring support is present when compiling libcfathread and
+   supports the operation IORING_OP_ACCEPT. */
 #undef CFA_HAVE_IORING_OP_ACCEPT
+
+/* Defined if io_uring support is present when compiling libcfathread and
+   supports the operation IORING_OP_ASYNC_CANCEL. */
 #undef CFA_HAVE_IORING_OP_ASYNC_CANCEL
+
+/* Defined if io_uring support is present when compiling libcfathread and
+   supports the operation IORING_OP_LINK_TIMEOUT. */
 #undef CFA_HAVE_IORING_OP_LINK_TIMEOUT
+
+/* Defined if io_uring support is present when compiling libcfathread and
+   supports the operation IORING_OP_CONNECT. */
 #undef CFA_HAVE_IORING_OP_CONNECT
+
+/* Defined if io_uring support is present when compiling libcfathread and
+   supports the operation IORING_OP_FALLOCATE. */
 #undef CFA_HAVE_IORING_OP_FALLOCATE
+
+/* Defined if io_uring support is present when compiling libcfathread and
+   supports the operation IORING_OP_OPENAT. */
 #undef CFA_HAVE_IORING_OP_OPENAT
+
+/* Defined if io_uring support is present when compiling libcfathread and
+   supports the operation IORING_OP_CLOSE. */
 #undef CFA_HAVE_IORING_OP_CLOSE
+
+/* Defined if io_uring support is present when compiling libcfathread and
+   supports the operation IORING_OP_FILES_UPDATE. */
 #undef CFA_HAVE_IORING_OP_FILES_UPDATE
+
+/* Defined if io_uring support is present when compiling libcfathread and
+   supports the operation IORING_OP_STATX. */
 #undef CFA_HAVE_IORING_OP_STATX
+
+/* Defined if io_uring support is present when compiling libcfathread and
+   supports the operation IORING_OP_READ. */
 #undef CFA_HAVE_IORING_OP_READ
+
+/* Defined if io_uring support is present when compiling libcfathread and
+   supports the operation IORING_OP_WRITE. */
 #undef CFA_HAVE_IORING_OP_WRITE
+
+/* Defined if io_uring support is present when compiling libcfathread and
+   supports the operation IORING_OP_FADVISE. */
 #undef CFA_HAVE_IORING_OP_FADVISE
+
+/* Defined if io_uring support is present when compiling libcfathread and
+   supports the operation IORING_OP_MADVISE. */
 #undef CFA_HAVE_IORING_OP_MADVISE
+
+/* Defined if io_uring support is present when compiling libcfathread and
+   supports the operation IORING_OP_SEND. */
 #undef CFA_HAVE_IORING_OP_SEND
+
+/* Defined if io_uring support is present when compiling libcfathread and
+   supports the operation IORING_OP_RECV. */
 #undef CFA_HAVE_IORING_OP_RECV
+
+/* Defined if io_uring support is present when compiling libcfathread and
+   supports the operation IORING_OP_OPENAT2. */
 #undef CFA_HAVE_IORING_OP_OPENAT2
+
+/* Defined if io_uring support is present when compiling libcfathread and
+   supports the operation IORING_OP_EPOLL_CTL. */
 #undef CFA_HAVE_IORING_OP_EPOLL_CTL
+
+/* Defined if io_uring support is present when compiling libcfathread and
+   supports the operation IORING_OP_SPLICE. */
 #undef CFA_HAVE_IORING_OP_SPLICE
+
+/* Defined if io_uring support is present when compiling libcfathread and
+   supports the operation IORING_OP_PROVIDE_BUFFERS. */
 #undef CFA_HAVE_IORING_OP_PROVIDE_BUFFERS
+
+/* Defined if io_uring support is present when compiling libcfathread and
+   supports the operation IORING_OP_REMOVE_BUFFER. */
 #undef CFA_HAVE_IORING_OP_REMOVE_BUFFER
 
+//-----------------------------------------------------------------------
+// Flags
+/* Defined if io_uring support is present when compiling libcfathread and
+   supports the flag FIXED_FILE. */
 #undef CFA_HAVE_IOSQE_FIXED_FILE
+
+/* Defined if io_uring support is present when compiling libcfathread and
+   supports the flag IO_DRAIN. */
 #undef CFA_HAVE_IOSQE_IO_DRAIN
+
+/* Defined if io_uring support is present when compiling libcfathread and
+   supports the flag ASYNC. */
 #undef CFA_HAVE_IOSQE_ASYNC
+
+/* Defined if io_uring support is present when compiling libcfathread and
+   supports the flag IO_LINK. */
 #undef CFA_HAVE_IOSQE_IO_LINK
+
+/* Defined if io_uring support is present when compiling libcfathread and
+   supports the flag IO_HARDLINK. */
 #undef CFA_HAVE_IOSQE_IO_HARDLINK
+
+/* Defined if io_uring support is present when compiling libcfathread and
+   supports the flag SPLICE_F_FD_IN_FIXED. */
 #undef CFA_HAVE_SPLICE_F_FD_IN_FIXED
 
+//-----------------------------------------------------------------------
+// Other calls
+/* Define to 1 if you have the `preadv2' function. */
 #undef HAVE_PREADV2
+
+/* Define to 1 if you have the `pwritev2' function. */
 #undef HAVE_PWRITEV2
 
+//-----------------------------------------------------------------------
+// Statistics
+/* Defined if libcfathread was compiled without support for statistics. */
 #undef __CFA_NO_STATISTICS__
