%{ headers = [ 'stdc-predef.h', 'features.h', # C standard library 'complex.h', 'ctype.h', 'errno.h', 'fenv.h', 'float.h', 'inttypes.h', 'iso646.h', 'libutil.h', 'limits.h', 'locale.h', 'math.h', 'pty.h', 'setjmp.h', 'signal.h', 'stdarg.h', 'stdbool.h', 'stddef.h', 'stdint.h', 'stdio.h', 'stdlib.h', 'string.h', 'tgmath.h', 'time.h', 'util.h', 'utmp.h', # POSIX 'aio.h', 'arpa/inet.h', 'bsd/ifaddrs.h', 'bsd/pty.h', 'cpio.h', 'dirent.h', 'dlfcn.h', 'fcntl.h', 'fmtmsg.h', 'fnmatch.h', 'ftw.h', 'glob.h', 'grp.h', 'iconv.h', 'ifaddrs.h', 'langinfo.h', 'libgen.h', 'link.h', 'monetary.h', 'net/if.h', 'netdb.h', 'netinet/in.h', 'netinet/tcp.h', 'nl_types.h', 'poll.h', 'pthread.h', 'pwd.h', 'regex.h', 'sched.h', 'search.h', 'semaphore.h', 'spawn.h', 'strings.h', 'sys/event.h', 'sys/file.h', 'sys/inotify.h', 'sys/ioctl.h', 'sys/ipc.h', 'sys/mman.h', 'sys/mount.h', 'sys/msg.h', 'sys/resource.h', 'sys/select.h', 'sys/sem.h', 'sys/sendfile.h', 'sys/shm.h', 'sys/socket.h', 'sys/stat.h', 'sys/statvfs.h', 'sys/time.h', 'sys/times.h', 'sys/types.h', 'sys/uio.h', 'sys/un.h', 'sys/user.h', 'sys/utsname.h', 'sys/wait.h', 'sysexits.h', 'syslog.h', 'tar.h', 'termios.h', 'ulimit.h', 'unistd.h', 'utime.h', 'utmpx.h', 'wait.h', 'wordexp.h', ] }% % for header in headers: #if __has_include(<${header}>) #include <${header}> #endif % end