Merge "Improve the documentation for syncing upstream strace."
diff --git a/Android.mk b/Android.mk
index 3c4f1c4..d8246e6 100644
--- a/Android.mk
+++ b/Android.mk
@@ -211,7 +211,7 @@
 # We don't build ioctlsort unless really necessary, because we don't check
 # in the temporary files needed to build it. This tool is only necessary
 # when updating strace's list of ioctls.
-ifneq (,$(filter ioctlsort,$(MAKECMDGOALS)))
+ifneq (,$(filter $(TARGET_OUT_EXECUTABLES)/ioctlsort,$(MAKECMDGOALS)))
 include $(CLEAR_VARS)
 LOCAL_SRC_FILES := linux/ioctlsort.c
 LOCAL_CFLAGS += -include asm/types.h -include linux/ashmem.h
diff --git a/xlat/Makemodule.am b/xlat/Makemodule.am
new file mode 100644
index 0000000..6e26672
--- /dev/null
+++ b/xlat/Makemodule.am
@@ -0,0 +1,348 @@
+XLAT_INPUT_FILES = xlat/access_flags.in xlat/aclcmds.in xlat/aclipc.in xlat/addrfams.in xlat/adjtimex_modes.in xlat/adjtimex_state.in xlat/adjtimex_status.in xlat/advise.in xlat/af_packet_types.in xlat/archvals.in xlat/at_flags.in xlat/atomic_ops.in xlat/baud_options.in xlat/blkpg_ops.in xlat/bootflags1.in xlat/bootflags2.in xlat/bootflags3.in xlat/cacheflush_scope.in xlat/capabilities.in xlat/cap_version.in xlat/clockflags.in xlat/clocknames.in xlat/clone_flags.in xlat/cpuclocknames.in xlat/delete_module_flags.in xlat/direnttypes.in xlat/domains.in xlat/epollctls.in xlat/epollevents.in xlat/epollflags.in xlat/fan_classes.in xlat/fan_event_flags.in xlat/fan_init_flags.in xlat/fan_mark_flags.in xlat/fcntlcmds.in xlat/fdflags.in xlat/fileflags.in xlat/flockcmds.in xlat/fsmagic.in xlat/futexops.in xlat/futexwakecmps.in xlat/futexwakeops.in xlat/icmpfilterflags.in xlat/if_dqblk_valid.in xlat/if_dqinfo_valid.in xlat/iffflags.in xlat/inet_protocols.in xlat/inotify_flags.in xlat/inotify_init_flags.in xlat/ioprio_class.in xlat/ioprio_who.in xlat/ipc_msg_flags.in xlat/itimer_which.in xlat/kexec_arch_values.in xlat/kexec_flags.in xlat/keyctl_commands.in xlat/key_perms.in xlat/key_reqkeys.in xlat/key_spec.in xlat/lockfcmds.in xlat/loop_crypt_type_options.in xlat/loop_flags_options.in xlat/madvise_cmds.in xlat/mbindflags.in xlat/mctl_funcs.in xlat/mctl_lockas.in xlat/mctl_sync.in xlat/mempolicyflags.in xlat/mlockall_flags.in xlat/mmap_flags.in xlat/mmap_prot.in xlat/modem_flags.in xlat/modetypes.in xlat/modflags.in xlat/module_init_flags.in xlat/mount_flags.in xlat/move_pages_flags.in xlat/mremap_flags.in xlat/msgctl_flags.in xlat/msg_flags.in xlat/msgflags.in xlat/mtd_flags_options.in xlat/mtd_mode_options.in xlat/mtd_nandecc_options.in xlat/mtd_otp_options.in xlat/mtd_type_options.in xlat/netlink_protocols.in xlat/notifyflags.in xlat/nt_descriptor_types.in xlat/open_access_modes.in xlat/open_mode_flags.in xlat/openmodessol.in xlat/perf_event_open_flags.in xlat/personality_options.in xlat/pmsgflags.in xlat/policies.in xlat/pollflags.in xlat/prctl_options.in xlat/priorities.in xlat/ptp_flags_options.in xlat/ptrace_cmds.in xlat/ptrace_setoptions_flags.in xlat/qm_which.in xlat/quotacmds.in xlat/quota_formats.in xlat/quotatypes.in xlat/resource_flags.in xlat/resources.in xlat/schedulers.in xlat/scmvals.in xlat/semctl_flags.in xlat/semop_flags.in xlat/sg_io_dxfer_direction.in xlat/shmctl_flags.in xlat/shm_flags.in xlat/shm_resource_flags.in xlat/shutdown_modes.in xlat/sigact_flags.in xlat/sigaltstack_flags.in xlat/sigbus_codes.in xlat/sigchld_codes.in xlat/sigemt_codes.in xlat/sigev_value.in xlat/sigfpe_codes.in xlat/sigill_codes.in xlat/siginfo_codes.in xlat/sigpoll_codes.in xlat/sigprocmaskcmds.in xlat/sigprof_codes.in xlat/sigsegv_codes.in xlat/sigsys_codes.in xlat/sigtrap_codes.in xlat/socketlayers.in xlat/sockipoptions.in xlat/sockipv6options.in xlat/sockipxoptions.in xlat/sockoptions.in xlat/sockpacketoptions.in xlat/sockrawoptions.in xlat/socksctpoptions.in xlat/socktcpoptions.in xlat/sock_type_flags.in xlat/socktypes.in xlat/splice_flags.in xlat/sram_alloc_flags.in xlat/swap_flags.in xlat/sync_file_range_flags.in xlat/sysctl_kern.in xlat/sysctl_net_core.in xlat/sysctl_net.in xlat/sysctl_net_ipv4_conf.in xlat/sysctl_net_ipv4.in xlat/sysctl_net_ipv4_route.in xlat/sysctl_net_ipv6.in xlat/sysctl_net_ipv6_route.in xlat/sysctl_net_unix.in xlat/sysctl_root.in xlat/sysctl_vm.in xlat/syslog_action_type.in xlat/sysmips_operations.in xlat/tcflsh_options.in xlat/tcxonc_options.in xlat/timerfdflags.in xlat/ubi_volume_props.in xlat/ubi_volume_types.in xlat/umount_flags.in xlat/usagewho.in xlat/wait4_options.in xlat/waitid_types.in xlat/whence_codes.in xlat/xattrflags.in xlat/xfs_dqblk_flags.in xlat/xfs_quota_flags.in 
+XLAT_HEADER_FILES = xlat/access_flags.h xlat/aclcmds.h xlat/aclipc.h xlat/addrfams.h xlat/adjtimex_modes.h xlat/adjtimex_state.h xlat/adjtimex_status.h xlat/advise.h xlat/af_packet_types.h xlat/archvals.h xlat/at_flags.h xlat/atomic_ops.h xlat/baud_options.h xlat/blkpg_ops.h xlat/bootflags1.h xlat/bootflags2.h xlat/bootflags3.h xlat/cacheflush_scope.h xlat/capabilities.h xlat/cap_version.h xlat/clockflags.h xlat/clocknames.h xlat/clone_flags.h xlat/cpuclocknames.h xlat/delete_module_flags.h xlat/direnttypes.h xlat/domains.h xlat/epollctls.h xlat/epollevents.h xlat/epollflags.h xlat/fan_classes.h xlat/fan_event_flags.h xlat/fan_init_flags.h xlat/fan_mark_flags.h xlat/fcntlcmds.h xlat/fdflags.h xlat/fileflags.h xlat/flockcmds.h xlat/fsmagic.h xlat/futexops.h xlat/futexwakecmps.h xlat/futexwakeops.h xlat/icmpfilterflags.h xlat/if_dqblk_valid.h xlat/if_dqinfo_valid.h xlat/iffflags.h xlat/inet_protocols.h xlat/inotify_flags.h xlat/inotify_init_flags.h xlat/ioprio_class.h xlat/ioprio_who.h xlat/ipc_msg_flags.h xlat/itimer_which.h xlat/kexec_arch_values.h xlat/kexec_flags.h xlat/keyctl_commands.h xlat/key_perms.h xlat/key_reqkeys.h xlat/key_spec.h xlat/lockfcmds.h xlat/loop_crypt_type_options.h xlat/loop_flags_options.h xlat/madvise_cmds.h xlat/mbindflags.h xlat/mctl_funcs.h xlat/mctl_lockas.h xlat/mctl_sync.h xlat/mempolicyflags.h xlat/mlockall_flags.h xlat/mmap_flags.h xlat/mmap_prot.h xlat/modem_flags.h xlat/modetypes.h xlat/modflags.h xlat/module_init_flags.h xlat/mount_flags.h xlat/move_pages_flags.h xlat/mremap_flags.h xlat/msgctl_flags.h xlat/msg_flags.h xlat/msgflags.h xlat/mtd_flags_options.h xlat/mtd_mode_options.h xlat/mtd_nandecc_options.h xlat/mtd_otp_options.h xlat/mtd_type_options.h xlat/netlink_protocols.h xlat/notifyflags.h xlat/nt_descriptor_types.h xlat/open_access_modes.h xlat/open_mode_flags.h xlat/openmodessol.h xlat/perf_event_open_flags.h xlat/personality_options.h xlat/pmsgflags.h xlat/policies.h xlat/pollflags.h xlat/prctl_options.h xlat/priorities.h xlat/ptp_flags_options.h xlat/ptrace_cmds.h xlat/ptrace_setoptions_flags.h xlat/qm_which.h xlat/quotacmds.h xlat/quota_formats.h xlat/quotatypes.h xlat/resource_flags.h xlat/resources.h xlat/schedulers.h xlat/scmvals.h xlat/semctl_flags.h xlat/semop_flags.h xlat/sg_io_dxfer_direction.h xlat/shmctl_flags.h xlat/shm_flags.h xlat/shm_resource_flags.h xlat/shutdown_modes.h xlat/sigact_flags.h xlat/sigaltstack_flags.h xlat/sigbus_codes.h xlat/sigchld_codes.h xlat/sigemt_codes.h xlat/sigev_value.h xlat/sigfpe_codes.h xlat/sigill_codes.h xlat/siginfo_codes.h xlat/sigpoll_codes.h xlat/sigprocmaskcmds.h xlat/sigprof_codes.h xlat/sigsegv_codes.h xlat/sigsys_codes.h xlat/sigtrap_codes.h xlat/socketlayers.h xlat/sockipoptions.h xlat/sockipv6options.h xlat/sockipxoptions.h xlat/sockoptions.h xlat/sockpacketoptions.h xlat/sockrawoptions.h xlat/socksctpoptions.h xlat/socktcpoptions.h xlat/sock_type_flags.h xlat/socktypes.h xlat/splice_flags.h xlat/sram_alloc_flags.h xlat/swap_flags.h xlat/sync_file_range_flags.h xlat/sysctl_kern.h xlat/sysctl_net_core.h xlat/sysctl_net.h xlat/sysctl_net_ipv4_conf.h xlat/sysctl_net_ipv4.h xlat/sysctl_net_ipv4_route.h xlat/sysctl_net_ipv6.h xlat/sysctl_net_ipv6_route.h xlat/sysctl_net_unix.h xlat/sysctl_root.h xlat/sysctl_vm.h xlat/syslog_action_type.h xlat/sysmips_operations.h xlat/tcflsh_options.h xlat/tcxonc_options.h xlat/timerfdflags.h xlat/ubi_volume_props.h xlat/ubi_volume_types.h xlat/umount_flags.h xlat/usagewho.h xlat/wait4_options.h xlat/waitid_types.h xlat/whence_codes.h xlat/xattrflags.h xlat/xfs_dqblk_flags.h xlat/xfs_quota_flags.h 
+$(top_srcdir)/xlat/access_flags.h: $(top_srcdir)/xlat/access_flags.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/aclcmds.h: $(top_srcdir)/xlat/aclcmds.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/aclipc.h: $(top_srcdir)/xlat/aclipc.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/addrfams.h: $(top_srcdir)/xlat/addrfams.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/adjtimex_modes.h: $(top_srcdir)/xlat/adjtimex_modes.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/adjtimex_state.h: $(top_srcdir)/xlat/adjtimex_state.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/adjtimex_status.h: $(top_srcdir)/xlat/adjtimex_status.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/advise.h: $(top_srcdir)/xlat/advise.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/af_packet_types.h: $(top_srcdir)/xlat/af_packet_types.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/archvals.h: $(top_srcdir)/xlat/archvals.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/at_flags.h: $(top_srcdir)/xlat/at_flags.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/atomic_ops.h: $(top_srcdir)/xlat/atomic_ops.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/baud_options.h: $(top_srcdir)/xlat/baud_options.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/blkpg_ops.h: $(top_srcdir)/xlat/blkpg_ops.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/bootflags1.h: $(top_srcdir)/xlat/bootflags1.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/bootflags2.h: $(top_srcdir)/xlat/bootflags2.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/bootflags3.h: $(top_srcdir)/xlat/bootflags3.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/cacheflush_scope.h: $(top_srcdir)/xlat/cacheflush_scope.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/capabilities.h: $(top_srcdir)/xlat/capabilities.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/cap_version.h: $(top_srcdir)/xlat/cap_version.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/clockflags.h: $(top_srcdir)/xlat/clockflags.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/clocknames.h: $(top_srcdir)/xlat/clocknames.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/clone_flags.h: $(top_srcdir)/xlat/clone_flags.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/cpuclocknames.h: $(top_srcdir)/xlat/cpuclocknames.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/delete_module_flags.h: $(top_srcdir)/xlat/delete_module_flags.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/direnttypes.h: $(top_srcdir)/xlat/direnttypes.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/domains.h: $(top_srcdir)/xlat/domains.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/epollctls.h: $(top_srcdir)/xlat/epollctls.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/epollevents.h: $(top_srcdir)/xlat/epollevents.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/epollflags.h: $(top_srcdir)/xlat/epollflags.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/fan_classes.h: $(top_srcdir)/xlat/fan_classes.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/fan_event_flags.h: $(top_srcdir)/xlat/fan_event_flags.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/fan_init_flags.h: $(top_srcdir)/xlat/fan_init_flags.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/fan_mark_flags.h: $(top_srcdir)/xlat/fan_mark_flags.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/fcntlcmds.h: $(top_srcdir)/xlat/fcntlcmds.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/fdflags.h: $(top_srcdir)/xlat/fdflags.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/fileflags.h: $(top_srcdir)/xlat/fileflags.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/flockcmds.h: $(top_srcdir)/xlat/flockcmds.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/fsmagic.h: $(top_srcdir)/xlat/fsmagic.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/futexops.h: $(top_srcdir)/xlat/futexops.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/futexwakecmps.h: $(top_srcdir)/xlat/futexwakecmps.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/futexwakeops.h: $(top_srcdir)/xlat/futexwakeops.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/icmpfilterflags.h: $(top_srcdir)/xlat/icmpfilterflags.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/if_dqblk_valid.h: $(top_srcdir)/xlat/if_dqblk_valid.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/if_dqinfo_valid.h: $(top_srcdir)/xlat/if_dqinfo_valid.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/iffflags.h: $(top_srcdir)/xlat/iffflags.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/inet_protocols.h: $(top_srcdir)/xlat/inet_protocols.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/inotify_flags.h: $(top_srcdir)/xlat/inotify_flags.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/inotify_init_flags.h: $(top_srcdir)/xlat/inotify_init_flags.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/ioprio_class.h: $(top_srcdir)/xlat/ioprio_class.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/ioprio_who.h: $(top_srcdir)/xlat/ioprio_who.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/ipc_msg_flags.h: $(top_srcdir)/xlat/ipc_msg_flags.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/itimer_which.h: $(top_srcdir)/xlat/itimer_which.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/kexec_arch_values.h: $(top_srcdir)/xlat/kexec_arch_values.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/kexec_flags.h: $(top_srcdir)/xlat/kexec_flags.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/keyctl_commands.h: $(top_srcdir)/xlat/keyctl_commands.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/key_perms.h: $(top_srcdir)/xlat/key_perms.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/key_reqkeys.h: $(top_srcdir)/xlat/key_reqkeys.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/key_spec.h: $(top_srcdir)/xlat/key_spec.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/lockfcmds.h: $(top_srcdir)/xlat/lockfcmds.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/loop_crypt_type_options.h: $(top_srcdir)/xlat/loop_crypt_type_options.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/loop_flags_options.h: $(top_srcdir)/xlat/loop_flags_options.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/madvise_cmds.h: $(top_srcdir)/xlat/madvise_cmds.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/mbindflags.h: $(top_srcdir)/xlat/mbindflags.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/mctl_funcs.h: $(top_srcdir)/xlat/mctl_funcs.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/mctl_lockas.h: $(top_srcdir)/xlat/mctl_lockas.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/mctl_sync.h: $(top_srcdir)/xlat/mctl_sync.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/mempolicyflags.h: $(top_srcdir)/xlat/mempolicyflags.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/mlockall_flags.h: $(top_srcdir)/xlat/mlockall_flags.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/mmap_flags.h: $(top_srcdir)/xlat/mmap_flags.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/mmap_prot.h: $(top_srcdir)/xlat/mmap_prot.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/modem_flags.h: $(top_srcdir)/xlat/modem_flags.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/modetypes.h: $(top_srcdir)/xlat/modetypes.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/modflags.h: $(top_srcdir)/xlat/modflags.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/module_init_flags.h: $(top_srcdir)/xlat/module_init_flags.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/mount_flags.h: $(top_srcdir)/xlat/mount_flags.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/move_pages_flags.h: $(top_srcdir)/xlat/move_pages_flags.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/mremap_flags.h: $(top_srcdir)/xlat/mremap_flags.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/msgctl_flags.h: $(top_srcdir)/xlat/msgctl_flags.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/msg_flags.h: $(top_srcdir)/xlat/msg_flags.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/msgflags.h: $(top_srcdir)/xlat/msgflags.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/mtd_flags_options.h: $(top_srcdir)/xlat/mtd_flags_options.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/mtd_mode_options.h: $(top_srcdir)/xlat/mtd_mode_options.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/mtd_nandecc_options.h: $(top_srcdir)/xlat/mtd_nandecc_options.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/mtd_otp_options.h: $(top_srcdir)/xlat/mtd_otp_options.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/mtd_type_options.h: $(top_srcdir)/xlat/mtd_type_options.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/netlink_protocols.h: $(top_srcdir)/xlat/netlink_protocols.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/notifyflags.h: $(top_srcdir)/xlat/notifyflags.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/nt_descriptor_types.h: $(top_srcdir)/xlat/nt_descriptor_types.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/open_access_modes.h: $(top_srcdir)/xlat/open_access_modes.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/open_mode_flags.h: $(top_srcdir)/xlat/open_mode_flags.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/openmodessol.h: $(top_srcdir)/xlat/openmodessol.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/perf_event_open_flags.h: $(top_srcdir)/xlat/perf_event_open_flags.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/personality_options.h: $(top_srcdir)/xlat/personality_options.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/pmsgflags.h: $(top_srcdir)/xlat/pmsgflags.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/policies.h: $(top_srcdir)/xlat/policies.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/pollflags.h: $(top_srcdir)/xlat/pollflags.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/prctl_options.h: $(top_srcdir)/xlat/prctl_options.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/priorities.h: $(top_srcdir)/xlat/priorities.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/ptp_flags_options.h: $(top_srcdir)/xlat/ptp_flags_options.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/ptrace_cmds.h: $(top_srcdir)/xlat/ptrace_cmds.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/ptrace_setoptions_flags.h: $(top_srcdir)/xlat/ptrace_setoptions_flags.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/qm_which.h: $(top_srcdir)/xlat/qm_which.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/quotacmds.h: $(top_srcdir)/xlat/quotacmds.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/quota_formats.h: $(top_srcdir)/xlat/quota_formats.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/quotatypes.h: $(top_srcdir)/xlat/quotatypes.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/resource_flags.h: $(top_srcdir)/xlat/resource_flags.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/resources.h: $(top_srcdir)/xlat/resources.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/schedulers.h: $(top_srcdir)/xlat/schedulers.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/scmvals.h: $(top_srcdir)/xlat/scmvals.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/semctl_flags.h: $(top_srcdir)/xlat/semctl_flags.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/semop_flags.h: $(top_srcdir)/xlat/semop_flags.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/sg_io_dxfer_direction.h: $(top_srcdir)/xlat/sg_io_dxfer_direction.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/shmctl_flags.h: $(top_srcdir)/xlat/shmctl_flags.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/shm_flags.h: $(top_srcdir)/xlat/shm_flags.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/shm_resource_flags.h: $(top_srcdir)/xlat/shm_resource_flags.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/shutdown_modes.h: $(top_srcdir)/xlat/shutdown_modes.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/sigact_flags.h: $(top_srcdir)/xlat/sigact_flags.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/sigaltstack_flags.h: $(top_srcdir)/xlat/sigaltstack_flags.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/sigbus_codes.h: $(top_srcdir)/xlat/sigbus_codes.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/sigchld_codes.h: $(top_srcdir)/xlat/sigchld_codes.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/sigemt_codes.h: $(top_srcdir)/xlat/sigemt_codes.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/sigev_value.h: $(top_srcdir)/xlat/sigev_value.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/sigfpe_codes.h: $(top_srcdir)/xlat/sigfpe_codes.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/sigill_codes.h: $(top_srcdir)/xlat/sigill_codes.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/siginfo_codes.h: $(top_srcdir)/xlat/siginfo_codes.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/sigpoll_codes.h: $(top_srcdir)/xlat/sigpoll_codes.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/sigprocmaskcmds.h: $(top_srcdir)/xlat/sigprocmaskcmds.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/sigprof_codes.h: $(top_srcdir)/xlat/sigprof_codes.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/sigsegv_codes.h: $(top_srcdir)/xlat/sigsegv_codes.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/sigsys_codes.h: $(top_srcdir)/xlat/sigsys_codes.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/sigtrap_codes.h: $(top_srcdir)/xlat/sigtrap_codes.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/socketlayers.h: $(top_srcdir)/xlat/socketlayers.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/sockipoptions.h: $(top_srcdir)/xlat/sockipoptions.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/sockipv6options.h: $(top_srcdir)/xlat/sockipv6options.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/sockipxoptions.h: $(top_srcdir)/xlat/sockipxoptions.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/sockoptions.h: $(top_srcdir)/xlat/sockoptions.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/sockpacketoptions.h: $(top_srcdir)/xlat/sockpacketoptions.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/sockrawoptions.h: $(top_srcdir)/xlat/sockrawoptions.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/socksctpoptions.h: $(top_srcdir)/xlat/socksctpoptions.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/socktcpoptions.h: $(top_srcdir)/xlat/socktcpoptions.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/sock_type_flags.h: $(top_srcdir)/xlat/sock_type_flags.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/socktypes.h: $(top_srcdir)/xlat/socktypes.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/splice_flags.h: $(top_srcdir)/xlat/splice_flags.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/sram_alloc_flags.h: $(top_srcdir)/xlat/sram_alloc_flags.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/swap_flags.h: $(top_srcdir)/xlat/swap_flags.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/sync_file_range_flags.h: $(top_srcdir)/xlat/sync_file_range_flags.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/sysctl_kern.h: $(top_srcdir)/xlat/sysctl_kern.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/sysctl_net_core.h: $(top_srcdir)/xlat/sysctl_net_core.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/sysctl_net.h: $(top_srcdir)/xlat/sysctl_net.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/sysctl_net_ipv4_conf.h: $(top_srcdir)/xlat/sysctl_net_ipv4_conf.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/sysctl_net_ipv4.h: $(top_srcdir)/xlat/sysctl_net_ipv4.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/sysctl_net_ipv4_route.h: $(top_srcdir)/xlat/sysctl_net_ipv4_route.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/sysctl_net_ipv6.h: $(top_srcdir)/xlat/sysctl_net_ipv6.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/sysctl_net_ipv6_route.h: $(top_srcdir)/xlat/sysctl_net_ipv6_route.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/sysctl_net_unix.h: $(top_srcdir)/xlat/sysctl_net_unix.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/sysctl_root.h: $(top_srcdir)/xlat/sysctl_root.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/sysctl_vm.h: $(top_srcdir)/xlat/sysctl_vm.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/syslog_action_type.h: $(top_srcdir)/xlat/syslog_action_type.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/sysmips_operations.h: $(top_srcdir)/xlat/sysmips_operations.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/tcflsh_options.h: $(top_srcdir)/xlat/tcflsh_options.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/tcxonc_options.h: $(top_srcdir)/xlat/tcxonc_options.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/timerfdflags.h: $(top_srcdir)/xlat/timerfdflags.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/ubi_volume_props.h: $(top_srcdir)/xlat/ubi_volume_props.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/ubi_volume_types.h: $(top_srcdir)/xlat/ubi_volume_types.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/umount_flags.h: $(top_srcdir)/xlat/umount_flags.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/usagewho.h: $(top_srcdir)/xlat/usagewho.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/wait4_options.h: $(top_srcdir)/xlat/wait4_options.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/waitid_types.h: $(top_srcdir)/xlat/waitid_types.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/whence_codes.h: $(top_srcdir)/xlat/whence_codes.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/xattrflags.h: $(top_srcdir)/xlat/xattrflags.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/xfs_dqblk_flags.h: $(top_srcdir)/xlat/xfs_dqblk_flags.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
+$(top_srcdir)/xlat/xfs_quota_flags.h: $(top_srcdir)/xlat/xfs_quota_flags.in $(top_srcdir)/xlat/gen.sh
+	$(AM_V_GEN)$(top_srcdir)/xlat/gen.sh $< $@
diff --git a/xlat/access_flags.h b/xlat/access_flags.h
new file mode 100644
index 0000000..afce1ef
--- /dev/null
+++ b/xlat/access_flags.h
@@ -0,0 +1,23 @@
+/* Generated by ./xlat/gen.sh from ./xlat/access_flags.in; do not edit. */
+
+static const struct xlat access_flags[] = {
+#if defined(F_OK) || (defined(HAVE_DECL_F_OK) && HAVE_DECL_F_OK)
+	XLAT(F_OK),
+#endif
+#if defined(R_OK) || (defined(HAVE_DECL_R_OK) && HAVE_DECL_R_OK)
+	XLAT(R_OK),
+#endif
+#if defined(W_OK) || (defined(HAVE_DECL_W_OK) && HAVE_DECL_W_OK)
+	XLAT(W_OK),
+#endif
+#if defined(X_OK) || (defined(HAVE_DECL_X_OK) && HAVE_DECL_X_OK)
+	XLAT(X_OK),
+#endif
+#if defined(EFF_ONLY_OK) || (defined(HAVE_DECL_EFF_ONLY_OK) && HAVE_DECL_EFF_ONLY_OK)
+	XLAT(EFF_ONLY_OK),
+#endif
+#if defined(EX_OK) || (defined(HAVE_DECL_EX_OK) && HAVE_DECL_EX_OK)
+	XLAT(EX_OK),
+#endif
+	XLAT_END
+};
diff --git a/xlat/aclcmds.h b/xlat/aclcmds.h
new file mode 100644
index 0000000..d12302a
--- /dev/null
+++ b/xlat/aclcmds.h
@@ -0,0 +1,23 @@
+/* Generated by ./xlat/gen.sh from ./xlat/aclcmds.in; do not edit. */
+
+static const struct xlat aclcmds[] = {
+#if defined(SETACL) || (defined(HAVE_DECL_SETACL) && HAVE_DECL_SETACL)
+	XLAT(SETACL),
+#endif
+#if defined(GETACL) || (defined(HAVE_DECL_GETACL) && HAVE_DECL_GETACL)
+	XLAT(GETACL),
+#endif
+#if defined(GETACLCNT) || (defined(HAVE_DECL_GETACLCNT) && HAVE_DECL_GETACLCNT)
+	XLAT(GETACLCNT),
+#endif
+#if defined(ACL_GET) || (defined(HAVE_DECL_ACL_GET) && HAVE_DECL_ACL_GET)
+	XLAT(ACL_GET),
+#endif
+#if defined(ACL_SET) || (defined(HAVE_DECL_ACL_SET) && HAVE_DECL_ACL_SET)
+	XLAT(ACL_SET),
+#endif
+#if defined(ACL_CNT) || (defined(HAVE_DECL_ACL_CNT) && HAVE_DECL_ACL_CNT)
+	XLAT(ACL_CNT),
+#endif
+	XLAT_END
+};
diff --git a/xlat/aclipc.h b/xlat/aclipc.h
new file mode 100644
index 0000000..82b7949
--- /dev/null
+++ b/xlat/aclipc.h
@@ -0,0 +1,14 @@
+/* Generated by ./xlat/gen.sh from ./xlat/aclipc.in; do not edit. */
+
+static const struct xlat aclipc[] = {
+#if defined(IPC_SHM) || (defined(HAVE_DECL_IPC_SHM) && HAVE_DECL_IPC_SHM)
+	XLAT(IPC_SHM),
+#endif
+#if defined(IPC_SEM) || (defined(HAVE_DECL_IPC_SEM) && HAVE_DECL_IPC_SEM)
+	XLAT(IPC_SEM),
+#endif
+#if defined(IPC_MSG) || (defined(HAVE_DECL_IPC_MSG) && HAVE_DECL_IPC_MSG)
+	XLAT(IPC_MSG),
+#endif
+	XLAT_END
+};
diff --git a/xlat/addrfams.h b/xlat/addrfams.h
new file mode 100644
index 0000000..c3489c5
--- /dev/null
+++ b/xlat/addrfams.h
@@ -0,0 +1,128 @@
+/* Generated by ./xlat/gen.sh from ./xlat/addrfams.in; do not edit. */
+
+const struct xlat addrfams[] = {
+#if defined(AF_UNSPEC) || (defined(HAVE_DECL_AF_UNSPEC) && HAVE_DECL_AF_UNSPEC)
+	XLAT(AF_UNSPEC),
+#endif
+#if defined(AF_LOCAL) || (defined(HAVE_DECL_AF_LOCAL) && HAVE_DECL_AF_LOCAL)
+	XLAT(AF_LOCAL),
+#endif
+#if defined(AF_UNIX) || (defined(HAVE_DECL_AF_UNIX) && HAVE_DECL_AF_UNIX)
+	XLAT(AF_UNIX),
+#endif
+#if defined(AF_INET) || (defined(HAVE_DECL_AF_INET) && HAVE_DECL_AF_INET)
+	XLAT(AF_INET),
+#endif
+#if defined(AF_AX25) || (defined(HAVE_DECL_AF_AX25) && HAVE_DECL_AF_AX25)
+	XLAT(AF_AX25),
+#endif
+#if defined(AF_IPX) || (defined(HAVE_DECL_AF_IPX) && HAVE_DECL_AF_IPX)
+	XLAT(AF_IPX),
+#endif
+#if defined(AF_APPLETALK) || (defined(HAVE_DECL_AF_APPLETALK) && HAVE_DECL_AF_APPLETALK)
+	XLAT(AF_APPLETALK),
+#endif
+#if defined(AF_NETROM) || (defined(HAVE_DECL_AF_NETROM) && HAVE_DECL_AF_NETROM)
+	XLAT(AF_NETROM),
+#endif
+#if defined(AF_BRIDGE) || (defined(HAVE_DECL_AF_BRIDGE) && HAVE_DECL_AF_BRIDGE)
+	XLAT(AF_BRIDGE),
+#endif
+#if defined(AF_ATMPVC) || (defined(HAVE_DECL_AF_ATMPVC) && HAVE_DECL_AF_ATMPVC)
+	XLAT(AF_ATMPVC),
+#endif
+#if defined(AF_X25) || (defined(HAVE_DECL_AF_X25) && HAVE_DECL_AF_X25)
+	XLAT(AF_X25),
+#endif
+#if defined(AF_INET6) || (defined(HAVE_DECL_AF_INET6) && HAVE_DECL_AF_INET6)
+	XLAT(AF_INET6),
+#endif
+#if defined(AF_ROSE) || (defined(HAVE_DECL_AF_ROSE) && HAVE_DECL_AF_ROSE)
+	XLAT(AF_ROSE),
+#endif
+#if defined(AF_DECnet) || (defined(HAVE_DECL_AF_DECnet) && HAVE_DECL_AF_DECnet)
+	XLAT(AF_DECnet),
+#endif
+#if defined(AF_NETBEUI) || (defined(HAVE_DECL_AF_NETBEUI) && HAVE_DECL_AF_NETBEUI)
+	XLAT(AF_NETBEUI),
+#endif
+#if defined(AF_SECURITY) || (defined(HAVE_DECL_AF_SECURITY) && HAVE_DECL_AF_SECURITY)
+	XLAT(AF_SECURITY),
+#endif
+#if defined(AF_KEY) || (defined(HAVE_DECL_AF_KEY) && HAVE_DECL_AF_KEY)
+	XLAT(AF_KEY),
+#endif
+#if defined(AF_NETLINK) || (defined(HAVE_DECL_AF_NETLINK) && HAVE_DECL_AF_NETLINK)
+	XLAT(AF_NETLINK),
+#endif
+#if defined(AF_ROUTE) || (defined(HAVE_DECL_AF_ROUTE) && HAVE_DECL_AF_ROUTE)
+	XLAT(AF_ROUTE),
+#endif
+#if defined(AF_PACKET) || (defined(HAVE_DECL_AF_PACKET) && HAVE_DECL_AF_PACKET)
+	XLAT(AF_PACKET),
+#endif
+#if defined(AF_ASH) || (defined(HAVE_DECL_AF_ASH) && HAVE_DECL_AF_ASH)
+	XLAT(AF_ASH),
+#endif
+#if defined(AF_ECONET) || (defined(HAVE_DECL_AF_ECONET) && HAVE_DECL_AF_ECONET)
+	XLAT(AF_ECONET),
+#endif
+#if defined(AF_ATMSVC) || (defined(HAVE_DECL_AF_ATMSVC) && HAVE_DECL_AF_ATMSVC)
+	XLAT(AF_ATMSVC),
+#endif
+#if defined(AF_RDS) || (defined(HAVE_DECL_AF_RDS) && HAVE_DECL_AF_RDS)
+	XLAT(AF_RDS),
+#endif
+#if defined(AF_SNA) || (defined(HAVE_DECL_AF_SNA) && HAVE_DECL_AF_SNA)
+	XLAT(AF_SNA),
+#endif
+#if defined(AF_IRDA) || (defined(HAVE_DECL_AF_IRDA) && HAVE_DECL_AF_IRDA)
+	XLAT(AF_IRDA),
+#endif
+#if defined(AF_PPPOX) || (defined(HAVE_DECL_AF_PPPOX) && HAVE_DECL_AF_PPPOX)
+	XLAT(AF_PPPOX),
+#endif
+#if defined(AF_WANPIPE) || (defined(HAVE_DECL_AF_WANPIPE) && HAVE_DECL_AF_WANPIPE)
+	XLAT(AF_WANPIPE),
+#endif
+#if defined(AF_LLC) || (defined(HAVE_DECL_AF_LLC) && HAVE_DECL_AF_LLC)
+	XLAT(AF_LLC),
+#endif
+#if defined(AF_CAN) || (defined(HAVE_DECL_AF_CAN) && HAVE_DECL_AF_CAN)
+	XLAT(AF_CAN),
+#endif
+#if defined(AF_TIPC) || (defined(HAVE_DECL_AF_TIPC) && HAVE_DECL_AF_TIPC)
+	XLAT(AF_TIPC),
+#endif
+#if defined(AF_BLUETOOTH) || (defined(HAVE_DECL_AF_BLUETOOTH) && HAVE_DECL_AF_BLUETOOTH)
+	XLAT(AF_BLUETOOTH),
+#endif
+#if defined(AF_IUCV) || (defined(HAVE_DECL_AF_IUCV) && HAVE_DECL_AF_IUCV)
+	XLAT(AF_IUCV),
+#endif
+#if defined(AF_RXRPC) || (defined(HAVE_DECL_AF_RXRPC) && HAVE_DECL_AF_RXRPC)
+	XLAT(AF_RXRPC),
+#endif
+#if defined(AF_ISDN) || (defined(HAVE_DECL_AF_ISDN) && HAVE_DECL_AF_ISDN)
+	XLAT(AF_ISDN),
+#endif
+#if defined(AF_PHONET) || (defined(HAVE_DECL_AF_PHONET) && HAVE_DECL_AF_PHONET)
+	XLAT(AF_PHONET),
+#endif
+#if defined(AF_IEEE802154) || (defined(HAVE_DECL_AF_IEEE802154) && HAVE_DECL_AF_IEEE802154)
+	XLAT(AF_IEEE802154),
+#endif
+#if defined(AF_CAIF) || (defined(HAVE_DECL_AF_CAIF) && HAVE_DECL_AF_CAIF)
+	XLAT(AF_CAIF),
+#endif
+#if defined(AF_ALG) || (defined(HAVE_DECL_AF_ALG) && HAVE_DECL_AF_ALG)
+	XLAT(AF_ALG),
+#endif
+#if defined(AF_NFC) || (defined(HAVE_DECL_AF_NFC) && HAVE_DECL_AF_NFC)
+	XLAT(AF_NFC),
+#endif
+#if defined(AF_VSOCK) || (defined(HAVE_DECL_AF_VSOCK) && HAVE_DECL_AF_VSOCK)
+	XLAT(AF_VSOCK),
+#endif
+	XLAT_END
+};
diff --git a/xlat/adjtimex_modes.h b/xlat/adjtimex_modes.h
new file mode 100644
index 0000000..37461f8
--- /dev/null
+++ b/xlat/adjtimex_modes.h
@@ -0,0 +1,45 @@
+/* Generated by ./xlat/gen.sh from ./xlat/adjtimex_modes.in; do not edit. */
+
+static const struct xlat adjtimex_modes[] = {
+	XLAT(0),
+#if defined(ADJ_OFFSET) || (defined(HAVE_DECL_ADJ_OFFSET) && HAVE_DECL_ADJ_OFFSET)
+	XLAT(ADJ_OFFSET),
+#endif
+#if defined(ADJ_FREQUENCY) || (defined(HAVE_DECL_ADJ_FREQUENCY) && HAVE_DECL_ADJ_FREQUENCY)
+	XLAT(ADJ_FREQUENCY),
+#endif
+#if defined(ADJ_MAXERROR) || (defined(HAVE_DECL_ADJ_MAXERROR) && HAVE_DECL_ADJ_MAXERROR)
+	XLAT(ADJ_MAXERROR),
+#endif
+#if defined(ADJ_ESTERROR) || (defined(HAVE_DECL_ADJ_ESTERROR) && HAVE_DECL_ADJ_ESTERROR)
+	XLAT(ADJ_ESTERROR),
+#endif
+#if defined(ADJ_STATUS) || (defined(HAVE_DECL_ADJ_STATUS) && HAVE_DECL_ADJ_STATUS)
+	XLAT(ADJ_STATUS),
+#endif
+#if defined(ADJ_TIMECONST) || (defined(HAVE_DECL_ADJ_TIMECONST) && HAVE_DECL_ADJ_TIMECONST)
+	XLAT(ADJ_TIMECONST),
+#endif
+#if defined(ADJ_TAI) || (defined(HAVE_DECL_ADJ_TAI) && HAVE_DECL_ADJ_TAI)
+	XLAT(ADJ_TAI),
+#endif
+#if defined(ADJ_SETOFFSET) || (defined(HAVE_DECL_ADJ_SETOFFSET) && HAVE_DECL_ADJ_SETOFFSET)
+	XLAT(ADJ_SETOFFSET),
+#endif
+#if defined(ADJ_MICRO) || (defined(HAVE_DECL_ADJ_MICRO) && HAVE_DECL_ADJ_MICRO)
+	XLAT(ADJ_MICRO),
+#endif
+#if defined(ADJ_NANO) || (defined(HAVE_DECL_ADJ_NANO) && HAVE_DECL_ADJ_NANO)
+	XLAT(ADJ_NANO),
+#endif
+#if defined(ADJ_TICK) || (defined(HAVE_DECL_ADJ_TICK) && HAVE_DECL_ADJ_TICK)
+	XLAT(ADJ_TICK),
+#endif
+#if defined(ADJ_OFFSET_SINGLESHOT) || (defined(HAVE_DECL_ADJ_OFFSET_SINGLESHOT) && HAVE_DECL_ADJ_OFFSET_SINGLESHOT)
+	XLAT(ADJ_OFFSET_SINGLESHOT),
+#endif
+#if defined(ADJ_OFFSET_SS_READ) || (defined(HAVE_DECL_ADJ_OFFSET_SS_READ) && HAVE_DECL_ADJ_OFFSET_SS_READ)
+	XLAT(ADJ_OFFSET_SS_READ),
+#endif
+	XLAT_END
+};
diff --git a/xlat/adjtimex_state.h b/xlat/adjtimex_state.h
new file mode 100644
index 0000000..ff31449
--- /dev/null
+++ b/xlat/adjtimex_state.h
@@ -0,0 +1,23 @@
+/* Generated by ./xlat/gen.sh from ./xlat/adjtimex_state.in; do not edit. */
+
+static const struct xlat adjtimex_state[] = {
+#if defined(TIME_OK) || (defined(HAVE_DECL_TIME_OK) && HAVE_DECL_TIME_OK)
+	XLAT(TIME_OK),
+#endif
+#if defined(TIME_INS) || (defined(HAVE_DECL_TIME_INS) && HAVE_DECL_TIME_INS)
+	XLAT(TIME_INS),
+#endif
+#if defined(TIME_DEL) || (defined(HAVE_DECL_TIME_DEL) && HAVE_DECL_TIME_DEL)
+	XLAT(TIME_DEL),
+#endif
+#if defined(TIME_OOP) || (defined(HAVE_DECL_TIME_OOP) && HAVE_DECL_TIME_OOP)
+	XLAT(TIME_OOP),
+#endif
+#if defined(TIME_WAIT) || (defined(HAVE_DECL_TIME_WAIT) && HAVE_DECL_TIME_WAIT)
+	XLAT(TIME_WAIT),
+#endif
+#if defined(TIME_ERROR) || (defined(HAVE_DECL_TIME_ERROR) && HAVE_DECL_TIME_ERROR)
+	XLAT(TIME_ERROR),
+#endif
+	XLAT_END
+};
diff --git a/xlat/adjtimex_status.h b/xlat/adjtimex_status.h
new file mode 100644
index 0000000..f1a7c99
--- /dev/null
+++ b/xlat/adjtimex_status.h
@@ -0,0 +1,53 @@
+/* Generated by ./xlat/gen.sh from ./xlat/adjtimex_status.in; do not edit. */
+
+static const struct xlat adjtimex_status[] = {
+#if defined(STA_PLL) || (defined(HAVE_DECL_STA_PLL) && HAVE_DECL_STA_PLL)
+	XLAT(STA_PLL),
+#endif
+#if defined(STA_PPSFREQ) || (defined(HAVE_DECL_STA_PPSFREQ) && HAVE_DECL_STA_PPSFREQ)
+	XLAT(STA_PPSFREQ),
+#endif
+#if defined(STA_PPSTIME) || (defined(HAVE_DECL_STA_PPSTIME) && HAVE_DECL_STA_PPSTIME)
+	XLAT(STA_PPSTIME),
+#endif
+#if defined(STA_FLL) || (defined(HAVE_DECL_STA_FLL) && HAVE_DECL_STA_FLL)
+	XLAT(STA_FLL),
+#endif
+#if defined(STA_INS) || (defined(HAVE_DECL_STA_INS) && HAVE_DECL_STA_INS)
+	XLAT(STA_INS),
+#endif
+#if defined(STA_DEL) || (defined(HAVE_DECL_STA_DEL) && HAVE_DECL_STA_DEL)
+	XLAT(STA_DEL),
+#endif
+#if defined(STA_UNSYNC) || (defined(HAVE_DECL_STA_UNSYNC) && HAVE_DECL_STA_UNSYNC)
+	XLAT(STA_UNSYNC),
+#endif
+#if defined(STA_FREQHOLD) || (defined(HAVE_DECL_STA_FREQHOLD) && HAVE_DECL_STA_FREQHOLD)
+	XLAT(STA_FREQHOLD),
+#endif
+#if defined(STA_PPSSIGNAL) || (defined(HAVE_DECL_STA_PPSSIGNAL) && HAVE_DECL_STA_PPSSIGNAL)
+	XLAT(STA_PPSSIGNAL),
+#endif
+#if defined(STA_PPSJITTER) || (defined(HAVE_DECL_STA_PPSJITTER) && HAVE_DECL_STA_PPSJITTER)
+	XLAT(STA_PPSJITTER),
+#endif
+#if defined(STA_PPSWANDER) || (defined(HAVE_DECL_STA_PPSWANDER) && HAVE_DECL_STA_PPSWANDER)
+	XLAT(STA_PPSWANDER),
+#endif
+#if defined(STA_PPSERROR) || (defined(HAVE_DECL_STA_PPSERROR) && HAVE_DECL_STA_PPSERROR)
+	XLAT(STA_PPSERROR),
+#endif
+#if defined(STA_CLOCKERR) || (defined(HAVE_DECL_STA_CLOCKERR) && HAVE_DECL_STA_CLOCKERR)
+	XLAT(STA_CLOCKERR),
+#endif
+#if defined(STA_NANO) || (defined(HAVE_DECL_STA_NANO) && HAVE_DECL_STA_NANO)
+	XLAT(STA_NANO),
+#endif
+#if defined(STA_MODE) || (defined(HAVE_DECL_STA_MODE) && HAVE_DECL_STA_MODE)
+	XLAT(STA_MODE),
+#endif
+#if defined(STA_CLK) || (defined(HAVE_DECL_STA_CLK) && HAVE_DECL_STA_CLK)
+	XLAT(STA_CLK),
+#endif
+	XLAT_END
+};
diff --git a/xlat/advise.h b/xlat/advise.h
new file mode 100644
index 0000000..58e9bd8
--- /dev/null
+++ b/xlat/advise.h
@@ -0,0 +1,23 @@
+/* Generated by ./xlat/gen.sh from ./xlat/advise.in; do not edit. */
+
+static const struct xlat advise[] = {
+#if defined(POSIX_FADV_NORMAL) || (defined(HAVE_DECL_POSIX_FADV_NORMAL) && HAVE_DECL_POSIX_FADV_NORMAL)
+	XLAT(POSIX_FADV_NORMAL),
+#endif
+#if defined(POSIX_FADV_RANDOM) || (defined(HAVE_DECL_POSIX_FADV_RANDOM) && HAVE_DECL_POSIX_FADV_RANDOM)
+	XLAT(POSIX_FADV_RANDOM),
+#endif
+#if defined(POSIX_FADV_SEQUENTIAL) || (defined(HAVE_DECL_POSIX_FADV_SEQUENTIAL) && HAVE_DECL_POSIX_FADV_SEQUENTIAL)
+	XLAT(POSIX_FADV_SEQUENTIAL),
+#endif
+#if defined(POSIX_FADV_WILLNEED) || (defined(HAVE_DECL_POSIX_FADV_WILLNEED) && HAVE_DECL_POSIX_FADV_WILLNEED)
+	XLAT(POSIX_FADV_WILLNEED),
+#endif
+#if defined(POSIX_FADV_DONTNEED) || (defined(HAVE_DECL_POSIX_FADV_DONTNEED) && HAVE_DECL_POSIX_FADV_DONTNEED)
+	XLAT(POSIX_FADV_DONTNEED),
+#endif
+#if defined(POSIX_FADV_NOREUSE) || (defined(HAVE_DECL_POSIX_FADV_NOREUSE) && HAVE_DECL_POSIX_FADV_NOREUSE)
+	XLAT(POSIX_FADV_NOREUSE),
+#endif
+	XLAT_END
+};
diff --git a/xlat/af_packet_types.h b/xlat/af_packet_types.h
new file mode 100644
index 0000000..64eeff2
--- /dev/null
+++ b/xlat/af_packet_types.h
@@ -0,0 +1,26 @@
+/* Generated by ./xlat/gen.sh from ./xlat/af_packet_types.in; do not edit. */
+
+static const struct xlat af_packet_types[] = {
+#if defined(PACKET_HOST) || (defined(HAVE_DECL_PACKET_HOST) && HAVE_DECL_PACKET_HOST)
+	XLAT(PACKET_HOST),
+#endif
+#if defined(PACKET_BROADCAST) || (defined(HAVE_DECL_PACKET_BROADCAST) && HAVE_DECL_PACKET_BROADCAST)
+	XLAT(PACKET_BROADCAST),
+#endif
+#if defined(PACKET_MULTICAST) || (defined(HAVE_DECL_PACKET_MULTICAST) && HAVE_DECL_PACKET_MULTICAST)
+	XLAT(PACKET_MULTICAST),
+#endif
+#if defined(PACKET_OTHERHOST) || (defined(HAVE_DECL_PACKET_OTHERHOST) && HAVE_DECL_PACKET_OTHERHOST)
+	XLAT(PACKET_OTHERHOST),
+#endif
+#if defined(PACKET_OUTGOING) || (defined(HAVE_DECL_PACKET_OUTGOING) && HAVE_DECL_PACKET_OUTGOING)
+	XLAT(PACKET_OUTGOING),
+#endif
+#if defined(PACKET_LOOPBACK) || (defined(HAVE_DECL_PACKET_LOOPBACK) && HAVE_DECL_PACKET_LOOPBACK)
+	XLAT(PACKET_LOOPBACK),
+#endif
+#if defined(PACKET_FASTROUTE) || (defined(HAVE_DECL_PACKET_FASTROUTE) && HAVE_DECL_PACKET_FASTROUTE)
+	XLAT(PACKET_FASTROUTE),
+#endif
+	XLAT_END
+};
diff --git a/xlat/archvals.h b/xlat/archvals.h
new file mode 100644
index 0000000..6e17eb8
--- /dev/null
+++ b/xlat/archvals.h
@@ -0,0 +1,17 @@
+/* Generated by ./xlat/gen.sh from ./xlat/archvals.in; do not edit. */
+
+static const struct xlat archvals[] = {
+#if defined(ARCH_SET_GS) || (defined(HAVE_DECL_ARCH_SET_GS) && HAVE_DECL_ARCH_SET_GS)
+	XLAT(ARCH_SET_GS),
+#endif
+#if defined(ARCH_SET_FS) || (defined(HAVE_DECL_ARCH_SET_FS) && HAVE_DECL_ARCH_SET_FS)
+	XLAT(ARCH_SET_FS),
+#endif
+#if defined(ARCH_GET_FS) || (defined(HAVE_DECL_ARCH_GET_FS) && HAVE_DECL_ARCH_GET_FS)
+	XLAT(ARCH_GET_FS),
+#endif
+#if defined(ARCH_GET_GS) || (defined(HAVE_DECL_ARCH_GET_GS) && HAVE_DECL_ARCH_GET_GS)
+	XLAT(ARCH_GET_GS),
+#endif
+	XLAT_END
+};
diff --git a/xlat/at_flags.h b/xlat/at_flags.h
new file mode 100644
index 0000000..cbee3d2
--- /dev/null
+++ b/xlat/at_flags.h
@@ -0,0 +1,20 @@
+/* Generated by ./xlat/gen.sh from ./xlat/at_flags.in; do not edit. */
+
+static const struct xlat at_flags[] = {
+#if defined(AT_SYMLINK_NOFOLLOW) || (defined(HAVE_DECL_AT_SYMLINK_NOFOLLOW) && HAVE_DECL_AT_SYMLINK_NOFOLLOW)
+	XLAT(AT_SYMLINK_NOFOLLOW),
+#endif
+#if defined(AT_REMOVEDIR) || (defined(HAVE_DECL_AT_REMOVEDIR) && HAVE_DECL_AT_REMOVEDIR)
+	XLAT(AT_REMOVEDIR),
+#endif
+#if defined(AT_SYMLINK_FOLLOW) || (defined(HAVE_DECL_AT_SYMLINK_FOLLOW) && HAVE_DECL_AT_SYMLINK_FOLLOW)
+	XLAT(AT_SYMLINK_FOLLOW),
+#endif
+#if defined(AT_NO_AUTOMOUNT) || (defined(HAVE_DECL_AT_NO_AUTOMOUNT) && HAVE_DECL_AT_NO_AUTOMOUNT)
+	XLAT(AT_NO_AUTOMOUNT),
+#endif
+#if defined(AT_EMPTY_PATH) || (defined(HAVE_DECL_AT_EMPTY_PATH) && HAVE_DECL_AT_EMPTY_PATH)
+	XLAT(AT_EMPTY_PATH),
+#endif
+	XLAT_END
+};
diff --git a/xlat/atomic_ops.h b/xlat/atomic_ops.h
new file mode 100644
index 0000000..83c3a60
--- /dev/null
+++ b/xlat/atomic_ops.h
@@ -0,0 +1,14 @@
+/* Generated by ./xlat/gen.sh from ./xlat/atomic_ops.in; do not edit. */
+
+static const struct xlat atomic_ops[] = {
+{ OR1K_ATOMIC_SWAP,		"SWAP"		},
+{ OR1K_ATOMIC_CMPXCHG,		"CMPXCHG"	},
+{ OR1K_ATOMIC_XCHG,		"XCHG"		},
+{ OR1K_ATOMIC_ADD,		"ADD"		},
+{ OR1K_ATOMIC_DECPOS,		"DECPOS"	},
+{ OR1K_ATOMIC_AND,		"AND"		},
+{ OR1K_ATOMIC_OR,		"OR"		},
+{ OR1K_ATOMIC_UMAX,		"UMAX"		},
+{ OR1K_ATOMIC_UMIN,		"UMIN"		},
+	XLAT_END
+};
diff --git a/xlat/baud_options.h b/xlat/baud_options.h
new file mode 100644
index 0000000..aff9b85
--- /dev/null
+++ b/xlat/baud_options.h
@@ -0,0 +1,104 @@
+/* Generated by ./xlat/gen.sh from ./xlat/baud_options.in; do not edit. */
+
+static const struct xlat baud_options[] = {
+#if defined(B0) || (defined(HAVE_DECL_B0) && HAVE_DECL_B0)
+	XLAT(B0),
+#endif
+#if defined(B50) || (defined(HAVE_DECL_B50) && HAVE_DECL_B50)
+	XLAT(B50),
+#endif
+#if defined(B75) || (defined(HAVE_DECL_B75) && HAVE_DECL_B75)
+	XLAT(B75),
+#endif
+#if defined(B110) || (defined(HAVE_DECL_B110) && HAVE_DECL_B110)
+	XLAT(B110),
+#endif
+#if defined(B134) || (defined(HAVE_DECL_B134) && HAVE_DECL_B134)
+	XLAT(B134),
+#endif
+#if defined(B150) || (defined(HAVE_DECL_B150) && HAVE_DECL_B150)
+	XLAT(B150),
+#endif
+#if defined(B200) || (defined(HAVE_DECL_B200) && HAVE_DECL_B200)
+	XLAT(B200),
+#endif
+#if defined(B300) || (defined(HAVE_DECL_B300) && HAVE_DECL_B300)
+	XLAT(B300),
+#endif
+#if defined(B600) || (defined(HAVE_DECL_B600) && HAVE_DECL_B600)
+	XLAT(B600),
+#endif
+#if defined(B1200) || (defined(HAVE_DECL_B1200) && HAVE_DECL_B1200)
+	XLAT(B1200),
+#endif
+#if defined(B1800) || (defined(HAVE_DECL_B1800) && HAVE_DECL_B1800)
+	XLAT(B1800),
+#endif
+#if defined(B2400) || (defined(HAVE_DECL_B2400) && HAVE_DECL_B2400)
+	XLAT(B2400),
+#endif
+#if defined(B4800) || (defined(HAVE_DECL_B4800) && HAVE_DECL_B4800)
+	XLAT(B4800),
+#endif
+#if defined(B9600) || (defined(HAVE_DECL_B9600) && HAVE_DECL_B9600)
+	XLAT(B9600),
+#endif
+#if defined(B19200) || (defined(HAVE_DECL_B19200) && HAVE_DECL_B19200)
+	XLAT(B19200),
+#endif
+#if defined(B38400) || (defined(HAVE_DECL_B38400) && HAVE_DECL_B38400)
+	XLAT(B38400),
+#endif
+#if defined(B57600) || (defined(HAVE_DECL_B57600) && HAVE_DECL_B57600)
+	XLAT(B57600),
+#endif
+#if defined(B115200) || (defined(HAVE_DECL_B115200) && HAVE_DECL_B115200)
+	XLAT(B115200),
+#endif
+#if defined(B230400) || (defined(HAVE_DECL_B230400) && HAVE_DECL_B230400)
+	XLAT(B230400),
+#endif
+#if defined(B460800) || (defined(HAVE_DECL_B460800) && HAVE_DECL_B460800)
+	XLAT(B460800),
+#endif
+#if defined(B500000) || (defined(HAVE_DECL_B500000) && HAVE_DECL_B500000)
+	XLAT(B500000),
+#endif
+#if defined(B576000) || (defined(HAVE_DECL_B576000) && HAVE_DECL_B576000)
+	XLAT(B576000),
+#endif
+#if defined(B921600) || (defined(HAVE_DECL_B921600) && HAVE_DECL_B921600)
+	XLAT(B921600),
+#endif
+#if defined(B1000000) || (defined(HAVE_DECL_B1000000) && HAVE_DECL_B1000000)
+	XLAT(B1000000),
+#endif
+#if defined(B1152000) || (defined(HAVE_DECL_B1152000) && HAVE_DECL_B1152000)
+	XLAT(B1152000),
+#endif
+#if defined(B1500000) || (defined(HAVE_DECL_B1500000) && HAVE_DECL_B1500000)
+	XLAT(B1500000),
+#endif
+#if defined(B2000000) || (defined(HAVE_DECL_B2000000) && HAVE_DECL_B2000000)
+	XLAT(B2000000),
+#endif
+#if defined(B2500000) || (defined(HAVE_DECL_B2500000) && HAVE_DECL_B2500000)
+	XLAT(B2500000),
+#endif
+#if defined(B3000000) || (defined(HAVE_DECL_B3000000) && HAVE_DECL_B3000000)
+	XLAT(B3000000),
+#endif
+#if defined(B3500000) || (defined(HAVE_DECL_B3500000) && HAVE_DECL_B3500000)
+	XLAT(B3500000),
+#endif
+#if defined(B4000000) || (defined(HAVE_DECL_B4000000) && HAVE_DECL_B4000000)
+	XLAT(B4000000),
+#endif
+#if defined(EXTA) || (defined(HAVE_DECL_EXTA) && HAVE_DECL_EXTA)
+	XLAT(EXTA),
+#endif
+#if defined(EXTB) || (defined(HAVE_DECL_EXTB) && HAVE_DECL_EXTB)
+	XLAT(EXTB),
+#endif
+	XLAT_END
+};
diff --git a/xlat/blkpg_ops.h b/xlat/blkpg_ops.h
new file mode 100644
index 0000000..cde1315
--- /dev/null
+++ b/xlat/blkpg_ops.h
@@ -0,0 +1,11 @@
+/* Generated by ./xlat/gen.sh from ./xlat/blkpg_ops.in; do not edit. */
+
+static const struct xlat blkpg_ops[] = {
+#if defined(BLKPG_ADD_PARTITION) || (defined(HAVE_DECL_BLKPG_ADD_PARTITION) && HAVE_DECL_BLKPG_ADD_PARTITION)
+	XLAT(BLKPG_ADD_PARTITION),
+#endif
+#if defined(BLKPG_DEL_PARTITION) || (defined(HAVE_DECL_BLKPG_DEL_PARTITION) && HAVE_DECL_BLKPG_DEL_PARTITION)
+	XLAT(BLKPG_DEL_PARTITION),
+#endif
+	XLAT_END
+};
diff --git a/xlat/bootflags1.h b/xlat/bootflags1.h
new file mode 100644
index 0000000..05a01b2
--- /dev/null
+++ b/xlat/bootflags1.h
@@ -0,0 +1,8 @@
+/* Generated by ./xlat/gen.sh from ./xlat/bootflags1.in; do not edit. */
+
+static const struct xlat bootflags1[] = {
+#if defined(LINUX_REBOOT_MAGIC1) || (defined(HAVE_DECL_LINUX_REBOOT_MAGIC1) && HAVE_DECL_LINUX_REBOOT_MAGIC1)
+	XLAT(LINUX_REBOOT_MAGIC1),
+#endif
+	XLAT_END
+};
diff --git a/xlat/bootflags2.h b/xlat/bootflags2.h
new file mode 100644
index 0000000..f240510
--- /dev/null
+++ b/xlat/bootflags2.h
@@ -0,0 +1,17 @@
+/* Generated by ./xlat/gen.sh from ./xlat/bootflags2.in; do not edit. */
+
+static const struct xlat bootflags2[] = {
+#if defined(LINUX_REBOOT_MAGIC2) || (defined(HAVE_DECL_LINUX_REBOOT_MAGIC2) && HAVE_DECL_LINUX_REBOOT_MAGIC2)
+	XLAT(LINUX_REBOOT_MAGIC2),
+#endif
+#if defined(LINUX_REBOOT_MAGIC2A) || (defined(HAVE_DECL_LINUX_REBOOT_MAGIC2A) && HAVE_DECL_LINUX_REBOOT_MAGIC2A)
+	XLAT(LINUX_REBOOT_MAGIC2A),
+#endif
+#if defined(LINUX_REBOOT_MAGIC2B) || (defined(HAVE_DECL_LINUX_REBOOT_MAGIC2B) && HAVE_DECL_LINUX_REBOOT_MAGIC2B)
+	XLAT(LINUX_REBOOT_MAGIC2B),
+#endif
+#if defined(LINUX_REBOOT_MAGIC2C) || (defined(HAVE_DECL_LINUX_REBOOT_MAGIC2C) && HAVE_DECL_LINUX_REBOOT_MAGIC2C)
+	XLAT(LINUX_REBOOT_MAGIC2C),
+#endif
+	XLAT_END
+};
diff --git a/xlat/bootflags3.h b/xlat/bootflags3.h
new file mode 100644
index 0000000..5f50120
--- /dev/null
+++ b/xlat/bootflags3.h
@@ -0,0 +1,29 @@
+/* Generated by ./xlat/gen.sh from ./xlat/bootflags3.in; do not edit. */
+
+static const struct xlat bootflags3[] = {
+#if defined(LINUX_REBOOT_CMD_RESTART) || (defined(HAVE_DECL_LINUX_REBOOT_CMD_RESTART) && HAVE_DECL_LINUX_REBOOT_CMD_RESTART)
+	XLAT(LINUX_REBOOT_CMD_RESTART),
+#endif
+#if defined(LINUX_REBOOT_CMD_HALT) || (defined(HAVE_DECL_LINUX_REBOOT_CMD_HALT) && HAVE_DECL_LINUX_REBOOT_CMD_HALT)
+	XLAT(LINUX_REBOOT_CMD_HALT),
+#endif
+#if defined(LINUX_REBOOT_CMD_CAD_ON) || (defined(HAVE_DECL_LINUX_REBOOT_CMD_CAD_ON) && HAVE_DECL_LINUX_REBOOT_CMD_CAD_ON)
+	XLAT(LINUX_REBOOT_CMD_CAD_ON),
+#endif
+#if defined(LINUX_REBOOT_CMD_CAD_OFF) || (defined(HAVE_DECL_LINUX_REBOOT_CMD_CAD_OFF) && HAVE_DECL_LINUX_REBOOT_CMD_CAD_OFF)
+	XLAT(LINUX_REBOOT_CMD_CAD_OFF),
+#endif
+#if defined(LINUX_REBOOT_CMD_POWER_OFF) || (defined(HAVE_DECL_LINUX_REBOOT_CMD_POWER_OFF) && HAVE_DECL_LINUX_REBOOT_CMD_POWER_OFF)
+	XLAT(LINUX_REBOOT_CMD_POWER_OFF),
+#endif
+#if defined(LINUX_REBOOT_CMD_RESTART2) || (defined(HAVE_DECL_LINUX_REBOOT_CMD_RESTART2) && HAVE_DECL_LINUX_REBOOT_CMD_RESTART2)
+	XLAT(LINUX_REBOOT_CMD_RESTART2),
+#endif
+#if defined(LINUX_REBOOT_CMD_SW_SUSPEND) || (defined(HAVE_DECL_LINUX_REBOOT_CMD_SW_SUSPEND) && HAVE_DECL_LINUX_REBOOT_CMD_SW_SUSPEND)
+	XLAT(LINUX_REBOOT_CMD_SW_SUSPEND),
+#endif
+#if defined(LINUX_REBOOT_CMD_KEXEC) || (defined(HAVE_DECL_LINUX_REBOOT_CMD_KEXEC) && HAVE_DECL_LINUX_REBOOT_CMD_KEXEC)
+	XLAT(LINUX_REBOOT_CMD_KEXEC),
+#endif
+	XLAT_END
+};
diff --git a/xlat/cacheflush_scope.h b/xlat/cacheflush_scope.h
new file mode 100644
index 0000000..62459f5
--- /dev/null
+++ b/xlat/cacheflush_scope.h
@@ -0,0 +1,14 @@
+/* Generated by ./xlat/gen.sh from ./xlat/cacheflush_scope.in; do not edit. */
+
+static const struct xlat cacheflush_scope[] = {
+#if defined(FLUSH_SCOPE_LINE) || (defined(HAVE_DECL_FLUSH_SCOPE_LINE) && HAVE_DECL_FLUSH_SCOPE_LINE)
+	XLAT(FLUSH_SCOPE_LINE),
+#endif
+#if defined(FLUSH_SCOPE_PAGE) || (defined(HAVE_DECL_FLUSH_SCOPE_PAGE) && HAVE_DECL_FLUSH_SCOPE_PAGE)
+	XLAT(FLUSH_SCOPE_PAGE),
+#endif
+#if defined(FLUSH_SCOPE_ALL) || (defined(HAVE_DECL_FLUSH_SCOPE_ALL) && HAVE_DECL_FLUSH_SCOPE_ALL)
+	XLAT(FLUSH_SCOPE_ALL),
+#endif
+	XLAT_END
+};
diff --git a/xlat/cap_version.h b/xlat/cap_version.h
new file mode 100644
index 0000000..408e550
--- /dev/null
+++ b/xlat/cap_version.h
@@ -0,0 +1,14 @@
+/* Generated by ./xlat/gen.sh from ./xlat/cap_version.in; do not edit. */
+
+static const struct xlat cap_version[] = {
+#if defined(_LINUX_CAPABILITY_VERSION_1) || (defined(HAVE_DECL__LINUX_CAPABILITY_VERSION_1) && HAVE_DECL__LINUX_CAPABILITY_VERSION_1)
+	XLAT(_LINUX_CAPABILITY_VERSION_1),
+#endif
+#if defined(_LINUX_CAPABILITY_VERSION_2) || (defined(HAVE_DECL__LINUX_CAPABILITY_VERSION_2) && HAVE_DECL__LINUX_CAPABILITY_VERSION_2)
+	XLAT(_LINUX_CAPABILITY_VERSION_2),
+#endif
+#if defined(_LINUX_CAPABILITY_VERSION_3) || (defined(HAVE_DECL__LINUX_CAPABILITY_VERSION_3) && HAVE_DECL__LINUX_CAPABILITY_VERSION_3)
+	XLAT(_LINUX_CAPABILITY_VERSION_3),
+#endif
+	XLAT_END
+};
diff --git a/xlat/capabilities.h b/xlat/capabilities.h
new file mode 100644
index 0000000..4e4cfad
--- /dev/null
+++ b/xlat/capabilities.h
@@ -0,0 +1,101 @@
+/* Generated by ./xlat/gen.sh from ./xlat/capabilities.in; do not edit. */
+
+static const struct xlat capabilities[] = {
+#if defined(CAP_CHOWN) || (defined(HAVE_DECL_CAP_CHOWN) && HAVE_DECL_CAP_CHOWN)
+	{ 1<<CAP_CHOWN, "CAP_CHOWN" },
+#endif
+#if defined(CAP_DAC_OVERRIDE) || (defined(HAVE_DECL_CAP_DAC_OVERRIDE) && HAVE_DECL_CAP_DAC_OVERRIDE)
+	{ 1<<CAP_DAC_OVERRIDE, "CAP_DAC_OVERRIDE" },
+#endif
+#if defined(CAP_DAC_READ_SEARCH) || (defined(HAVE_DECL_CAP_DAC_READ_SEARCH) && HAVE_DECL_CAP_DAC_READ_SEARCH)
+	{ 1<<CAP_DAC_READ_SEARCH, "CAP_DAC_READ_SEARCH" },
+#endif
+#if defined(CAP_FOWNER) || (defined(HAVE_DECL_CAP_FOWNER) && HAVE_DECL_CAP_FOWNER)
+	{ 1<<CAP_FOWNER, "CAP_FOWNER" },
+#endif
+#if defined(CAP_FSETID) || (defined(HAVE_DECL_CAP_FSETID) && HAVE_DECL_CAP_FSETID)
+	{ 1<<CAP_FSETID, "CAP_FSETID" },
+#endif
+#if defined(CAP_KILL) || (defined(HAVE_DECL_CAP_KILL) && HAVE_DECL_CAP_KILL)
+	{ 1<<CAP_KILL, "CAP_KILL" },
+#endif
+#if defined(CAP_SETGID) || (defined(HAVE_DECL_CAP_SETGID) && HAVE_DECL_CAP_SETGID)
+	{ 1<<CAP_SETGID, "CAP_SETGID" },
+#endif
+#if defined(CAP_SETUID) || (defined(HAVE_DECL_CAP_SETUID) && HAVE_DECL_CAP_SETUID)
+	{ 1<<CAP_SETUID, "CAP_SETUID" },
+#endif
+#if defined(CAP_SETPCAP) || (defined(HAVE_DECL_CAP_SETPCAP) && HAVE_DECL_CAP_SETPCAP)
+	{ 1<<CAP_SETPCAP, "CAP_SETPCAP" },
+#endif
+#if defined(CAP_LINUX_IMMUTABLE) || (defined(HAVE_DECL_CAP_LINUX_IMMUTABLE) && HAVE_DECL_CAP_LINUX_IMMUTABLE)
+	{ 1<<CAP_LINUX_IMMUTABLE, "CAP_LINUX_IMMUTABLE" },
+#endif
+#if defined(CAP_NET_BIND_SERVICE) || (defined(HAVE_DECL_CAP_NET_BIND_SERVICE) && HAVE_DECL_CAP_NET_BIND_SERVICE)
+	{ 1<<CAP_NET_BIND_SERVICE, "CAP_NET_BIND_SERVICE" },
+#endif
+#if defined(CAP_NET_BROADCAST) || (defined(HAVE_DECL_CAP_NET_BROADCAST) && HAVE_DECL_CAP_NET_BROADCAST)
+	{ 1<<CAP_NET_BROADCAST, "CAP_NET_BROADCAST" },
+#endif
+#if defined(CAP_NET_ADMIN) || (defined(HAVE_DECL_CAP_NET_ADMIN) && HAVE_DECL_CAP_NET_ADMIN)
+	{ 1<<CAP_NET_ADMIN, "CAP_NET_ADMIN" },
+#endif
+#if defined(CAP_NET_RAW) || (defined(HAVE_DECL_CAP_NET_RAW) && HAVE_DECL_CAP_NET_RAW)
+	{ 1<<CAP_NET_RAW, "CAP_NET_RAW" },
+#endif
+#if defined(CAP_IPC_LOCK) || (defined(HAVE_DECL_CAP_IPC_LOCK) && HAVE_DECL_CAP_IPC_LOCK)
+	{ 1<<CAP_IPC_LOCK, "CAP_IPC_LOCK" },
+#endif
+#if defined(CAP_IPC_OWNER) || (defined(HAVE_DECL_CAP_IPC_OWNER) && HAVE_DECL_CAP_IPC_OWNER)
+	{ 1<<CAP_IPC_OWNER, "CAP_IPC_OWNER" },
+#endif
+#if defined(CAP_SYS_MODULE) || (defined(HAVE_DECL_CAP_SYS_MODULE) && HAVE_DECL_CAP_SYS_MODULE)
+	{ 1<<CAP_SYS_MODULE, "CAP_SYS_MODULE" },
+#endif
+#if defined(CAP_SYS_RAWIO) || (defined(HAVE_DECL_CAP_SYS_RAWIO) && HAVE_DECL_CAP_SYS_RAWIO)
+	{ 1<<CAP_SYS_RAWIO, "CAP_SYS_RAWIO" },
+#endif
+#if defined(CAP_SYS_CHROOT) || (defined(HAVE_DECL_CAP_SYS_CHROOT) && HAVE_DECL_CAP_SYS_CHROOT)
+	{ 1<<CAP_SYS_CHROOT, "CAP_SYS_CHROOT" },
+#endif
+#if defined(CAP_SYS_PTRACE) || (defined(HAVE_DECL_CAP_SYS_PTRACE) && HAVE_DECL_CAP_SYS_PTRACE)
+	{ 1<<CAP_SYS_PTRACE, "CAP_SYS_PTRACE" },
+#endif
+#if defined(CAP_SYS_PACCT) || (defined(HAVE_DECL_CAP_SYS_PACCT) && HAVE_DECL_CAP_SYS_PACCT)
+	{ 1<<CAP_SYS_PACCT, "CAP_SYS_PACCT" },
+#endif
+#if defined(CAP_SYS_ADMIN) || (defined(HAVE_DECL_CAP_SYS_ADMIN) && HAVE_DECL_CAP_SYS_ADMIN)
+	{ 1<<CAP_SYS_ADMIN, "CAP_SYS_ADMIN" },
+#endif
+#if defined(CAP_SYS_BOOT) || (defined(HAVE_DECL_CAP_SYS_BOOT) && HAVE_DECL_CAP_SYS_BOOT)
+	{ 1<<CAP_SYS_BOOT, "CAP_SYS_BOOT" },
+#endif
+#if defined(CAP_SYS_NICE) || (defined(HAVE_DECL_CAP_SYS_NICE) && HAVE_DECL_CAP_SYS_NICE)
+	{ 1<<CAP_SYS_NICE, "CAP_SYS_NICE" },
+#endif
+#if defined(CAP_SYS_RESOURCE) || (defined(HAVE_DECL_CAP_SYS_RESOURCE) && HAVE_DECL_CAP_SYS_RESOURCE)
+	{ 1<<CAP_SYS_RESOURCE, "CAP_SYS_RESOURCE" },
+#endif
+#if defined(CAP_SYS_TIME) || (defined(HAVE_DECL_CAP_SYS_TIME) && HAVE_DECL_CAP_SYS_TIME)
+	{ 1<<CAP_SYS_TIME, "CAP_SYS_TIME" },
+#endif
+#if defined(CAP_SYS_TTY_CONFIG) || (defined(HAVE_DECL_CAP_SYS_TTY_CONFIG) && HAVE_DECL_CAP_SYS_TTY_CONFIG)
+	{ 1<<CAP_SYS_TTY_CONFIG, "CAP_SYS_TTY_CONFIG" },
+#endif
+#if defined(CAP_MKNOD) || (defined(HAVE_DECL_CAP_MKNOD) && HAVE_DECL_CAP_MKNOD)
+	{ 1<<CAP_MKNOD, "CAP_MKNOD" },
+#endif
+#if defined(CAP_LEASE) || (defined(HAVE_DECL_CAP_LEASE) && HAVE_DECL_CAP_LEASE)
+	{ 1<<CAP_LEASE, "CAP_LEASE" },
+#endif
+#if defined(CAP_AUDIT_WRITE) || (defined(HAVE_DECL_CAP_AUDIT_WRITE) && HAVE_DECL_CAP_AUDIT_WRITE)
+	{ 1<<CAP_AUDIT_WRITE, "CAP_AUDIT_WRITE" },
+#endif
+#if defined(CAP_AUDIT_CONTROL) || (defined(HAVE_DECL_CAP_AUDIT_CONTROL) && HAVE_DECL_CAP_AUDIT_CONTROL)
+	{ 1<<CAP_AUDIT_CONTROL, "CAP_AUDIT_CONTROL" },
+#endif
+#if defined(CAP_SETFCAP) || (defined(HAVE_DECL_CAP_SETFCAP) && HAVE_DECL_CAP_SETFCAP)
+	{ 1<<CAP_SETFCAP, "CAP_SETFCAP" },
+#endif
+	XLAT_END
+};
diff --git a/xlat/clockflags.h b/xlat/clockflags.h
new file mode 100644
index 0000000..91dc44d
--- /dev/null
+++ b/xlat/clockflags.h
@@ -0,0 +1,8 @@
+/* Generated by ./xlat/gen.sh from ./xlat/clockflags.in; do not edit. */
+
+static const struct xlat clockflags[] = {
+#if defined(TIMER_ABSTIME) || (defined(HAVE_DECL_TIMER_ABSTIME) && HAVE_DECL_TIMER_ABSTIME)
+	XLAT(TIMER_ABSTIME),
+#endif
+	XLAT_END
+};
diff --git a/xlat/clocknames.h b/xlat/clocknames.h
new file mode 100644
index 0000000..17ff470
--- /dev/null
+++ b/xlat/clocknames.h
@@ -0,0 +1,41 @@
+/* Generated by ./xlat/gen.sh from ./xlat/clocknames.in; do not edit. */
+
+static const struct xlat clocknames[] = {
+#if defined(CLOCK_REALTIME) || (defined(HAVE_DECL_CLOCK_REALTIME) && HAVE_DECL_CLOCK_REALTIME)
+	XLAT(CLOCK_REALTIME),
+#endif
+#if defined(CLOCK_MONOTONIC) || (defined(HAVE_DECL_CLOCK_MONOTONIC) && HAVE_DECL_CLOCK_MONOTONIC)
+	XLAT(CLOCK_MONOTONIC),
+#endif
+#if defined(CLOCK_PROCESS_CPUTIME_ID) || (defined(HAVE_DECL_CLOCK_PROCESS_CPUTIME_ID) && HAVE_DECL_CLOCK_PROCESS_CPUTIME_ID)
+	XLAT(CLOCK_PROCESS_CPUTIME_ID),
+#endif
+#if defined(CLOCK_THREAD_CPUTIME_ID) || (defined(HAVE_DECL_CLOCK_THREAD_CPUTIME_ID) && HAVE_DECL_CLOCK_THREAD_CPUTIME_ID)
+	XLAT(CLOCK_THREAD_CPUTIME_ID),
+#endif
+#if defined(CLOCK_MONOTONIC_RAW) || (defined(HAVE_DECL_CLOCK_MONOTONIC_RAW) && HAVE_DECL_CLOCK_MONOTONIC_RAW)
+	XLAT(CLOCK_MONOTONIC_RAW),
+#endif
+#if defined(CLOCK_REALTIME_COARSE) || (defined(HAVE_DECL_CLOCK_REALTIME_COARSE) && HAVE_DECL_CLOCK_REALTIME_COARSE)
+	XLAT(CLOCK_REALTIME_COARSE),
+#endif
+#if defined(CLOCK_MONOTONIC_COARSE) || (defined(HAVE_DECL_CLOCK_MONOTONIC_COARSE) && HAVE_DECL_CLOCK_MONOTONIC_COARSE)
+	XLAT(CLOCK_MONOTONIC_COARSE),
+#endif
+#if defined(CLOCK_BOOTTIME) || (defined(HAVE_DECL_CLOCK_BOOTTIME) && HAVE_DECL_CLOCK_BOOTTIME)
+	XLAT(CLOCK_BOOTTIME),
+#endif
+#if defined(CLOCK_REALTIME_ALARM) || (defined(HAVE_DECL_CLOCK_REALTIME_ALARM) && HAVE_DECL_CLOCK_REALTIME_ALARM)
+	XLAT(CLOCK_REALTIME_ALARM),
+#endif
+#if defined(CLOCK_BOOTTIME_ALARM) || (defined(HAVE_DECL_CLOCK_BOOTTIME_ALARM) && HAVE_DECL_CLOCK_BOOTTIME_ALARM)
+	XLAT(CLOCK_BOOTTIME_ALARM),
+#endif
+#if defined(CLOCK_SGI_CYCLE) || (defined(HAVE_DECL_CLOCK_SGI_CYCLE) && HAVE_DECL_CLOCK_SGI_CYCLE)
+	XLAT(CLOCK_SGI_CYCLE),
+#endif
+#if defined(CLOCK_TAI) || (defined(HAVE_DECL_CLOCK_TAI) && HAVE_DECL_CLOCK_TAI)
+	XLAT(CLOCK_TAI),
+#endif
+	XLAT_END
+};
diff --git a/xlat/clone_flags.h b/xlat/clone_flags.h
new file mode 100644
index 0000000..4a1a8b8
--- /dev/null
+++ b/xlat/clone_flags.h
@@ -0,0 +1,74 @@
+/* Generated by ./xlat/gen.sh from ./xlat/clone_flags.in; do not edit. */
+
+static const struct xlat clone_flags[] = {
+#if defined(CLONE_VM) || (defined(HAVE_DECL_CLONE_VM) && HAVE_DECL_CLONE_VM)
+	XLAT(CLONE_VM),
+#endif
+#if defined(CLONE_FS) || (defined(HAVE_DECL_CLONE_FS) && HAVE_DECL_CLONE_FS)
+	XLAT(CLONE_FS),
+#endif
+#if defined(CLONE_FILES) || (defined(HAVE_DECL_CLONE_FILES) && HAVE_DECL_CLONE_FILES)
+	XLAT(CLONE_FILES),
+#endif
+#if defined(CLONE_SIGHAND) || (defined(HAVE_DECL_CLONE_SIGHAND) && HAVE_DECL_CLONE_SIGHAND)
+	XLAT(CLONE_SIGHAND),
+#endif
+#if defined(CLONE_IDLETASK) || (defined(HAVE_DECL_CLONE_IDLETASK) && HAVE_DECL_CLONE_IDLETASK)
+	XLAT(CLONE_IDLETASK),
+#endif
+#if defined(CLONE_PTRACE) || (defined(HAVE_DECL_CLONE_PTRACE) && HAVE_DECL_CLONE_PTRACE)
+	XLAT(CLONE_PTRACE),
+#endif
+#if defined(CLONE_VFORK) || (defined(HAVE_DECL_CLONE_VFORK) && HAVE_DECL_CLONE_VFORK)
+	XLAT(CLONE_VFORK),
+#endif
+#if defined(CLONE_PARENT) || (defined(HAVE_DECL_CLONE_PARENT) && HAVE_DECL_CLONE_PARENT)
+	XLAT(CLONE_PARENT),
+#endif
+#if defined(CLONE_THREAD) || (defined(HAVE_DECL_CLONE_THREAD) && HAVE_DECL_CLONE_THREAD)
+	XLAT(CLONE_THREAD),
+#endif
+#if defined(CLONE_NEWNS) || (defined(HAVE_DECL_CLONE_NEWNS) && HAVE_DECL_CLONE_NEWNS)
+	XLAT(CLONE_NEWNS),
+#endif
+#if defined(CLONE_SYSVSEM) || (defined(HAVE_DECL_CLONE_SYSVSEM) && HAVE_DECL_CLONE_SYSVSEM)
+	XLAT(CLONE_SYSVSEM),
+#endif
+#if defined(CLONE_SETTLS) || (defined(HAVE_DECL_CLONE_SETTLS) && HAVE_DECL_CLONE_SETTLS)
+	XLAT(CLONE_SETTLS),
+#endif
+#if defined(CLONE_PARENT_SETTID) || (defined(HAVE_DECL_CLONE_PARENT_SETTID) && HAVE_DECL_CLONE_PARENT_SETTID)
+	XLAT(CLONE_PARENT_SETTID),
+#endif
+#if defined(CLONE_CHILD_CLEARTID) || (defined(HAVE_DECL_CLONE_CHILD_CLEARTID) && HAVE_DECL_CLONE_CHILD_CLEARTID)
+	XLAT(CLONE_CHILD_CLEARTID),
+#endif
+#if defined(CLONE_UNTRACED) || (defined(HAVE_DECL_CLONE_UNTRACED) && HAVE_DECL_CLONE_UNTRACED)
+	XLAT(CLONE_UNTRACED),
+#endif
+#if defined(CLONE_CHILD_SETTID) || (defined(HAVE_DECL_CLONE_CHILD_SETTID) && HAVE_DECL_CLONE_CHILD_SETTID)
+	XLAT(CLONE_CHILD_SETTID),
+#endif
+#if defined(CLONE_STOPPED) || (defined(HAVE_DECL_CLONE_STOPPED) && HAVE_DECL_CLONE_STOPPED)
+	XLAT(CLONE_STOPPED),
+#endif
+#if defined(CLONE_NEWUTS) || (defined(HAVE_DECL_CLONE_NEWUTS) && HAVE_DECL_CLONE_NEWUTS)
+	XLAT(CLONE_NEWUTS),
+#endif
+#if defined(CLONE_NEWIPC) || (defined(HAVE_DECL_CLONE_NEWIPC) && HAVE_DECL_CLONE_NEWIPC)
+	XLAT(CLONE_NEWIPC),
+#endif
+#if defined(CLONE_NEWUSER) || (defined(HAVE_DECL_CLONE_NEWUSER) && HAVE_DECL_CLONE_NEWUSER)
+	XLAT(CLONE_NEWUSER),
+#endif
+#if defined(CLONE_NEWPID) || (defined(HAVE_DECL_CLONE_NEWPID) && HAVE_DECL_CLONE_NEWPID)
+	XLAT(CLONE_NEWPID),
+#endif
+#if defined(CLONE_NEWNET) || (defined(HAVE_DECL_CLONE_NEWNET) && HAVE_DECL_CLONE_NEWNET)
+	XLAT(CLONE_NEWNET),
+#endif
+#if defined(CLONE_IO) || (defined(HAVE_DECL_CLONE_IO) && HAVE_DECL_CLONE_IO)
+	XLAT(CLONE_IO),
+#endif
+	XLAT_END
+};
diff --git a/xlat/cpuclocknames.h b/xlat/cpuclocknames.h
new file mode 100644
index 0000000..c985758
--- /dev/null
+++ b/xlat/cpuclocknames.h
@@ -0,0 +1,14 @@
+/* Generated by ./xlat/gen.sh from ./xlat/cpuclocknames.in; do not edit. */
+
+static const struct xlat cpuclocknames[] = {
+#if defined(CPUCLOCK_PROF) || (defined(HAVE_DECL_CPUCLOCK_PROF) && HAVE_DECL_CPUCLOCK_PROF)
+	XLAT(CPUCLOCK_PROF),
+#endif
+#if defined(CPUCLOCK_VIRT) || (defined(HAVE_DECL_CPUCLOCK_VIRT) && HAVE_DECL_CPUCLOCK_VIRT)
+	XLAT(CPUCLOCK_VIRT),
+#endif
+#if defined(CPUCLOCK_SCHED) || (defined(HAVE_DECL_CPUCLOCK_SCHED) && HAVE_DECL_CPUCLOCK_SCHED)
+	XLAT(CPUCLOCK_SCHED),
+#endif
+	XLAT_END
+};
diff --git a/xlat/delete_module_flags.h b/xlat/delete_module_flags.h
new file mode 100644
index 0000000..484cbcf
--- /dev/null
+++ b/xlat/delete_module_flags.h
@@ -0,0 +1,11 @@
+/* Generated by ./xlat/gen.sh from ./xlat/delete_module_flags.in; do not edit. */
+
+static const struct xlat delete_module_flags[] = {
+#if defined(O_NONBLOCK) || (defined(HAVE_DECL_O_NONBLOCK) && HAVE_DECL_O_NONBLOCK)
+	XLAT(O_NONBLOCK),
+#endif
+#if defined(O_TRUNC) || (defined(HAVE_DECL_O_TRUNC) && HAVE_DECL_O_TRUNC)
+	XLAT(O_TRUNC),
+#endif
+	XLAT_END
+};
diff --git a/xlat/direnttypes.h b/xlat/direnttypes.h
new file mode 100644
index 0000000..1888810
--- /dev/null
+++ b/xlat/direnttypes.h
@@ -0,0 +1,32 @@
+/* Generated by ./xlat/gen.sh from ./xlat/direnttypes.in; do not edit. */
+
+static const struct xlat direnttypes[] = {
+#if defined(DT_UNKNOWN) || (defined(HAVE_DECL_DT_UNKNOWN) && HAVE_DECL_DT_UNKNOWN)
+	XLAT(DT_UNKNOWN),
+#endif
+#if defined(DT_FIFO) || (defined(HAVE_DECL_DT_FIFO) && HAVE_DECL_DT_FIFO)
+	XLAT(DT_FIFO),
+#endif
+#if defined(DT_CHR) || (defined(HAVE_DECL_DT_CHR) && HAVE_DECL_DT_CHR)
+	XLAT(DT_CHR),
+#endif
+#if defined(DT_DIR) || (defined(HAVE_DECL_DT_DIR) && HAVE_DECL_DT_DIR)
+	XLAT(DT_DIR),
+#endif
+#if defined(DT_BLK) || (defined(HAVE_DECL_DT_BLK) && HAVE_DECL_DT_BLK)
+	XLAT(DT_BLK),
+#endif
+#if defined(DT_REG) || (defined(HAVE_DECL_DT_REG) && HAVE_DECL_DT_REG)
+	XLAT(DT_REG),
+#endif
+#if defined(DT_LNK) || (defined(HAVE_DECL_DT_LNK) && HAVE_DECL_DT_LNK)
+	XLAT(DT_LNK),
+#endif
+#if defined(DT_SOCK) || (defined(HAVE_DECL_DT_SOCK) && HAVE_DECL_DT_SOCK)
+	XLAT(DT_SOCK),
+#endif
+#if defined(DT_WHT) || (defined(HAVE_DECL_DT_WHT) && HAVE_DECL_DT_WHT)
+	XLAT(DT_WHT),
+#endif
+	XLAT_END
+};
diff --git a/xlat/domains.h b/xlat/domains.h
new file mode 100644
index 0000000..b0704f6
--- /dev/null
+++ b/xlat/domains.h
@@ -0,0 +1,128 @@
+/* Generated by ./xlat/gen.sh from ./xlat/domains.in; do not edit. */
+
+static const struct xlat domains[] = {
+#if defined(PF_UNSPEC) || (defined(HAVE_DECL_PF_UNSPEC) && HAVE_DECL_PF_UNSPEC)
+	XLAT(PF_UNSPEC),
+#endif
+#if defined(PF_LOCAL) || (defined(HAVE_DECL_PF_LOCAL) && HAVE_DECL_PF_LOCAL)
+	XLAT(PF_LOCAL),
+#endif
+#if defined(PF_UNIX) || (defined(HAVE_DECL_PF_UNIX) && HAVE_DECL_PF_UNIX)
+	XLAT(PF_UNIX),
+#endif
+#if defined(PF_INET) || (defined(HAVE_DECL_PF_INET) && HAVE_DECL_PF_INET)
+	XLAT(PF_INET),
+#endif
+#if defined(PF_AX25) || (defined(HAVE_DECL_PF_AX25) && HAVE_DECL_PF_AX25)
+	XLAT(PF_AX25),
+#endif
+#if defined(PF_IPX) || (defined(HAVE_DECL_PF_IPX) && HAVE_DECL_PF_IPX)
+	XLAT(PF_IPX),
+#endif
+#if defined(PF_APPLETALK) || (defined(HAVE_DECL_PF_APPLETALK) && HAVE_DECL_PF_APPLETALK)
+	XLAT(PF_APPLETALK),
+#endif
+#if defined(PF_NETROM) || (defined(HAVE_DECL_PF_NETROM) && HAVE_DECL_PF_NETROM)
+	XLAT(PF_NETROM),
+#endif
+#if defined(PF_BRIDGE) || (defined(HAVE_DECL_PF_BRIDGE) && HAVE_DECL_PF_BRIDGE)
+	XLAT(PF_BRIDGE),
+#endif
+#if defined(PF_ATMPVC) || (defined(HAVE_DECL_PF_ATMPVC) && HAVE_DECL_PF_ATMPVC)
+	XLAT(PF_ATMPVC),
+#endif
+#if defined(PF_X25) || (defined(HAVE_DECL_PF_X25) && HAVE_DECL_PF_X25)
+	XLAT(PF_X25),
+#endif
+#if defined(PF_INET6) || (defined(HAVE_DECL_PF_INET6) && HAVE_DECL_PF_INET6)
+	XLAT(PF_INET6),
+#endif
+#if defined(PF_ROSE) || (defined(HAVE_DECL_PF_ROSE) && HAVE_DECL_PF_ROSE)
+	XLAT(PF_ROSE),
+#endif
+#if defined(PF_DECnet) || (defined(HAVE_DECL_PF_DECnet) && HAVE_DECL_PF_DECnet)
+	XLAT(PF_DECnet),
+#endif
+#if defined(PF_NETBEUI) || (defined(HAVE_DECL_PF_NETBEUI) && HAVE_DECL_PF_NETBEUI)
+	XLAT(PF_NETBEUI),
+#endif
+#if defined(PF_SECURITY) || (defined(HAVE_DECL_PF_SECURITY) && HAVE_DECL_PF_SECURITY)
+	XLAT(PF_SECURITY),
+#endif
+#if defined(PF_KEY) || (defined(HAVE_DECL_PF_KEY) && HAVE_DECL_PF_KEY)
+	XLAT(PF_KEY),
+#endif
+#if defined(PF_NETLINK) || (defined(HAVE_DECL_PF_NETLINK) && HAVE_DECL_PF_NETLINK)
+	XLAT(PF_NETLINK),
+#endif
+#if defined(PF_ROUTE) || (defined(HAVE_DECL_PF_ROUTE) && HAVE_DECL_PF_ROUTE)
+	XLAT(PF_ROUTE),
+#endif
+#if defined(PF_PACKET) || (defined(HAVE_DECL_PF_PACKET) && HAVE_DECL_PF_PACKET)
+	XLAT(PF_PACKET),
+#endif
+#if defined(PF_ASH) || (defined(HAVE_DECL_PF_ASH) && HAVE_DECL_PF_ASH)
+	XLAT(PF_ASH),
+#endif
+#if defined(PF_ECONET) || (defined(HAVE_DECL_PF_ECONET) && HAVE_DECL_PF_ECONET)
+	XLAT(PF_ECONET),
+#endif
+#if defined(PF_ATMSVC) || (defined(HAVE_DECL_PF_ATMSVC) && HAVE_DECL_PF_ATMSVC)
+	XLAT(PF_ATMSVC),
+#endif
+#if defined(PF_RDS) || (defined(HAVE_DECL_PF_RDS) && HAVE_DECL_PF_RDS)
+	XLAT(PF_RDS),
+#endif
+#if defined(PF_SNA) || (defined(HAVE_DECL_PF_SNA) && HAVE_DECL_PF_SNA)
+	XLAT(PF_SNA),
+#endif
+#if defined(PF_IRDA) || (defined(HAVE_DECL_PF_IRDA) && HAVE_DECL_PF_IRDA)
+	XLAT(PF_IRDA),
+#endif
+#if defined(PF_PPPOX) || (defined(HAVE_DECL_PF_PPPOX) && HAVE_DECL_PF_PPPOX)
+	XLAT(PF_PPPOX),
+#endif
+#if defined(PF_WANPIPE) || (defined(HAVE_DECL_PF_WANPIPE) && HAVE_DECL_PF_WANPIPE)
+	XLAT(PF_WANPIPE),
+#endif
+#if defined(PF_LLC) || (defined(HAVE_DECL_PF_LLC) && HAVE_DECL_PF_LLC)
+	XLAT(PF_LLC),
+#endif
+#if defined(PF_CAN) || (defined(HAVE_DECL_PF_CAN) && HAVE_DECL_PF_CAN)
+	XLAT(PF_CAN),
+#endif
+#if defined(PF_TIPC) || (defined(HAVE_DECL_PF_TIPC) && HAVE_DECL_PF_TIPC)
+	XLAT(PF_TIPC),
+#endif
+#if defined(PF_BLUETOOTH) || (defined(HAVE_DECL_PF_BLUETOOTH) && HAVE_DECL_PF_BLUETOOTH)
+	XLAT(PF_BLUETOOTH),
+#endif
+#if defined(PF_IUCV) || (defined(HAVE_DECL_PF_IUCV) && HAVE_DECL_PF_IUCV)
+	XLAT(PF_IUCV),
+#endif
+#if defined(PF_RXRPC) || (defined(HAVE_DECL_PF_RXRPC) && HAVE_DECL_PF_RXRPC)
+	XLAT(PF_RXRPC),
+#endif
+#if defined(PF_ISDN) || (defined(HAVE_DECL_PF_ISDN) && HAVE_DECL_PF_ISDN)
+	XLAT(PF_ISDN),
+#endif
+#if defined(PF_PHONET) || (defined(HAVE_DECL_PF_PHONET) && HAVE_DECL_PF_PHONET)
+	XLAT(PF_PHONET),
+#endif
+#if defined(PF_IEEE802154) || (defined(HAVE_DECL_PF_IEEE802154) && HAVE_DECL_PF_IEEE802154)
+	XLAT(PF_IEEE802154),
+#endif
+#if defined(PF_CAIF) || (defined(HAVE_DECL_PF_CAIF) && HAVE_DECL_PF_CAIF)
+	XLAT(PF_CAIF),
+#endif
+#if defined(PF_ALG) || (defined(HAVE_DECL_PF_ALG) && HAVE_DECL_PF_ALG)
+	XLAT(PF_ALG),
+#endif
+#if defined(PF_NFC) || (defined(HAVE_DECL_PF_NFC) && HAVE_DECL_PF_NFC)
+	XLAT(PF_NFC),
+#endif
+#if defined(PF_VSOCK) || (defined(HAVE_DECL_PF_VSOCK) && HAVE_DECL_PF_VSOCK)
+	XLAT(PF_VSOCK),
+#endif
+	XLAT_END
+};
diff --git a/xlat/epollctls.h b/xlat/epollctls.h
new file mode 100644
index 0000000..e4ccff7
--- /dev/null
+++ b/xlat/epollctls.h
@@ -0,0 +1,14 @@
+/* Generated by ./xlat/gen.sh from ./xlat/epollctls.in; do not edit. */
+
+static const struct xlat epollctls[] = {
+#if defined(EPOLL_CTL_ADD) || (defined(HAVE_DECL_EPOLL_CTL_ADD) && HAVE_DECL_EPOLL_CTL_ADD)
+	XLAT(EPOLL_CTL_ADD),
+#endif
+#if defined(EPOLL_CTL_MOD) || (defined(HAVE_DECL_EPOLL_CTL_MOD) && HAVE_DECL_EPOLL_CTL_MOD)
+	XLAT(EPOLL_CTL_MOD),
+#endif
+#if defined(EPOLL_CTL_DEL) || (defined(HAVE_DECL_EPOLL_CTL_DEL) && HAVE_DECL_EPOLL_CTL_DEL)
+	XLAT(EPOLL_CTL_DEL),
+#endif
+	XLAT_END
+};
diff --git a/xlat/epollevents.h b/xlat/epollevents.h
new file mode 100644
index 0000000..899cbd9
--- /dev/null
+++ b/xlat/epollevents.h
@@ -0,0 +1,44 @@
+/* Generated by ./xlat/gen.sh from ./xlat/epollevents.in; do not edit. */
+
+static const struct xlat epollevents[] = {
+#if defined(EPOLLIN) || (defined(HAVE_DECL_EPOLLIN) && HAVE_DECL_EPOLLIN)
+	XLAT(EPOLLIN),
+#endif
+#if defined(EPOLLPRI) || (defined(HAVE_DECL_EPOLLPRI) && HAVE_DECL_EPOLLPRI)
+	XLAT(EPOLLPRI),
+#endif
+#if defined(EPOLLOUT) || (defined(HAVE_DECL_EPOLLOUT) && HAVE_DECL_EPOLLOUT)
+	XLAT(EPOLLOUT),
+#endif
+#if defined(EPOLLRDNORM) || (defined(HAVE_DECL_EPOLLRDNORM) && HAVE_DECL_EPOLLRDNORM)
+	XLAT(EPOLLRDNORM),
+#endif
+#if defined(EPOLLRDBAND) || (defined(HAVE_DECL_EPOLLRDBAND) && HAVE_DECL_EPOLLRDBAND)
+	XLAT(EPOLLRDBAND),
+#endif
+#if defined(EPOLLWRNORM) || (defined(HAVE_DECL_EPOLLWRNORM) && HAVE_DECL_EPOLLWRNORM)
+	XLAT(EPOLLWRNORM),
+#endif
+#if defined(EPOLLWRBAND) || (defined(HAVE_DECL_EPOLLWRBAND) && HAVE_DECL_EPOLLWRBAND)
+	XLAT(EPOLLWRBAND),
+#endif
+#if defined(EPOLLMSG) || (defined(HAVE_DECL_EPOLLMSG) && HAVE_DECL_EPOLLMSG)
+	XLAT(EPOLLMSG),
+#endif
+#if defined(EPOLLERR) || (defined(HAVE_DECL_EPOLLERR) && HAVE_DECL_EPOLLERR)
+	XLAT(EPOLLERR),
+#endif
+#if defined(EPOLLHUP) || (defined(HAVE_DECL_EPOLLHUP) && HAVE_DECL_EPOLLHUP)
+	XLAT(EPOLLHUP),
+#endif
+#if defined(EPOLLRDHUP) || (defined(HAVE_DECL_EPOLLRDHUP) && HAVE_DECL_EPOLLRDHUP)
+	XLAT(EPOLLRDHUP),
+#endif
+#if defined(EPOLLONESHOT) || (defined(HAVE_DECL_EPOLLONESHOT) && HAVE_DECL_EPOLLONESHOT)
+	XLAT(EPOLLONESHOT),
+#endif
+#if defined(EPOLLET) || (defined(HAVE_DECL_EPOLLET) && HAVE_DECL_EPOLLET)
+	XLAT(EPOLLET),
+#endif
+	XLAT_END
+};
diff --git a/xlat/epollflags.h b/xlat/epollflags.h
new file mode 100644
index 0000000..eb20235
--- /dev/null
+++ b/xlat/epollflags.h
@@ -0,0 +1,11 @@
+/* Generated by ./xlat/gen.sh from ./xlat/epollflags.in; do not edit. */
+
+static const struct xlat epollflags[] = {
+#if defined(EPOLL_CLOEXEC) || (defined(HAVE_DECL_EPOLL_CLOEXEC) && HAVE_DECL_EPOLL_CLOEXEC)
+	XLAT(EPOLL_CLOEXEC),
+#endif
+#if defined(EPOLL_NONBLOCK) || (defined(HAVE_DECL_EPOLL_NONBLOCK) && HAVE_DECL_EPOLL_NONBLOCK)
+	XLAT(EPOLL_NONBLOCK),
+#endif
+	XLAT_END
+};
diff --git a/xlat/fan_classes.h b/xlat/fan_classes.h
new file mode 100644
index 0000000..d1dc17a
--- /dev/null
+++ b/xlat/fan_classes.h
@@ -0,0 +1,14 @@
+/* Generated by ./xlat/gen.sh from ./xlat/fan_classes.in; do not edit. */
+
+static const struct xlat fan_classes[] = {
+#if defined(FAN_CLASS_NOTIF) || (defined(HAVE_DECL_FAN_CLASS_NOTIF) && HAVE_DECL_FAN_CLASS_NOTIF)
+	XLAT(FAN_CLASS_NOTIF),
+#endif
+#if defined(FAN_CLASS_CONTENT) || (defined(HAVE_DECL_FAN_CLASS_CONTENT) && HAVE_DECL_FAN_CLASS_CONTENT)
+	XLAT(FAN_CLASS_CONTENT),
+#endif
+#if defined(FAN_CLASS_PRE_CONTENT) || (defined(HAVE_DECL_FAN_CLASS_PRE_CONTENT) && HAVE_DECL_FAN_CLASS_PRE_CONTENT)
+	XLAT(FAN_CLASS_PRE_CONTENT),
+#endif
+	XLAT_END
+};
diff --git a/xlat/fan_event_flags.h b/xlat/fan_event_flags.h
new file mode 100644
index 0000000..22a1529
--- /dev/null
+++ b/xlat/fan_event_flags.h
@@ -0,0 +1,38 @@
+/* Generated by ./xlat/gen.sh from ./xlat/fan_event_flags.in; do not edit. */
+
+static const struct xlat fan_event_flags[] = {
+#if defined(FAN_ACCESS) || (defined(HAVE_DECL_FAN_ACCESS) && HAVE_DECL_FAN_ACCESS)
+	XLAT(FAN_ACCESS),
+#endif
+#if defined(FAN_MODIFY) || (defined(HAVE_DECL_FAN_MODIFY) && HAVE_DECL_FAN_MODIFY)
+	XLAT(FAN_MODIFY),
+#endif
+#if defined(FAN_CLOSE) || (defined(HAVE_DECL_FAN_CLOSE) && HAVE_DECL_FAN_CLOSE)
+	XLAT(FAN_CLOSE),
+#endif
+#if defined(FAN_CLOSE_WRITE) || (defined(HAVE_DECL_FAN_CLOSE_WRITE) && HAVE_DECL_FAN_CLOSE_WRITE)
+	XLAT(FAN_CLOSE_WRITE),
+#endif
+#if defined(FAN_CLOSE_NOWRITE) || (defined(HAVE_DECL_FAN_CLOSE_NOWRITE) && HAVE_DECL_FAN_CLOSE_NOWRITE)
+	XLAT(FAN_CLOSE_NOWRITE),
+#endif
+#if defined(FAN_OPEN) || (defined(HAVE_DECL_FAN_OPEN) && HAVE_DECL_FAN_OPEN)
+	XLAT(FAN_OPEN),
+#endif
+#if defined(FAN_Q_OVERFLOW) || (defined(HAVE_DECL_FAN_Q_OVERFLOW) && HAVE_DECL_FAN_Q_OVERFLOW)
+	XLAT(FAN_Q_OVERFLOW),
+#endif
+#if defined(FAN_OPEN_PERM) || (defined(HAVE_DECL_FAN_OPEN_PERM) && HAVE_DECL_FAN_OPEN_PERM)
+	XLAT(FAN_OPEN_PERM),
+#endif
+#if defined(FAN_ACCESS_PERM) || (defined(HAVE_DECL_FAN_ACCESS_PERM) && HAVE_DECL_FAN_ACCESS_PERM)
+	XLAT(FAN_ACCESS_PERM),
+#endif
+#if defined(FAN_ONDIR) || (defined(HAVE_DECL_FAN_ONDIR) && HAVE_DECL_FAN_ONDIR)
+	XLAT(FAN_ONDIR),
+#endif
+#if defined(FAN_EVENT_ON_CHILD) || (defined(HAVE_DECL_FAN_EVENT_ON_CHILD) && HAVE_DECL_FAN_EVENT_ON_CHILD)
+	XLAT(FAN_EVENT_ON_CHILD),
+#endif
+	XLAT_END
+};
diff --git a/xlat/fan_init_flags.h b/xlat/fan_init_flags.h
new file mode 100644
index 0000000..b4873e5
--- /dev/null
+++ b/xlat/fan_init_flags.h
@@ -0,0 +1,17 @@
+/* Generated by ./xlat/gen.sh from ./xlat/fan_init_flags.in; do not edit. */
+
+static const struct xlat fan_init_flags[] = {
+#if defined(FAN_CLOEXEC) || (defined(HAVE_DECL_FAN_CLOEXEC) && HAVE_DECL_FAN_CLOEXEC)
+	XLAT(FAN_CLOEXEC),
+#endif
+#if defined(FAN_NONBLOCK) || (defined(HAVE_DECL_FAN_NONBLOCK) && HAVE_DECL_FAN_NONBLOCK)
+	XLAT(FAN_NONBLOCK),
+#endif
+#if defined(FAN_UNLIMITED_QUEUE) || (defined(HAVE_DECL_FAN_UNLIMITED_QUEUE) && HAVE_DECL_FAN_UNLIMITED_QUEUE)
+	XLAT(FAN_UNLIMITED_QUEUE),
+#endif
+#if defined(FAN_UNLIMITED_MARKS) || (defined(HAVE_DECL_FAN_UNLIMITED_MARKS) && HAVE_DECL_FAN_UNLIMITED_MARKS)
+	XLAT(FAN_UNLIMITED_MARKS),
+#endif
+	XLAT_END
+};
diff --git a/xlat/fan_mark_flags.h b/xlat/fan_mark_flags.h
new file mode 100644
index 0000000..5ab20d8
--- /dev/null
+++ b/xlat/fan_mark_flags.h
@@ -0,0 +1,29 @@
+/* Generated by ./xlat/gen.sh from ./xlat/fan_mark_flags.in; do not edit. */
+
+static const struct xlat fan_mark_flags[] = {
+#if defined(FAN_MARK_ADD) || (defined(HAVE_DECL_FAN_MARK_ADD) && HAVE_DECL_FAN_MARK_ADD)
+	XLAT(FAN_MARK_ADD),
+#endif
+#if defined(FAN_MARK_REMOVE) || (defined(HAVE_DECL_FAN_MARK_REMOVE) && HAVE_DECL_FAN_MARK_REMOVE)
+	XLAT(FAN_MARK_REMOVE),
+#endif
+#if defined(FAN_MARK_DONT_FOLLOW) || (defined(HAVE_DECL_FAN_MARK_DONT_FOLLOW) && HAVE_DECL_FAN_MARK_DONT_FOLLOW)
+	XLAT(FAN_MARK_DONT_FOLLOW),
+#endif
+#if defined(FAN_MARK_ONLYDIR) || (defined(HAVE_DECL_FAN_MARK_ONLYDIR) && HAVE_DECL_FAN_MARK_ONLYDIR)
+	XLAT(FAN_MARK_ONLYDIR),
+#endif
+#if defined(FAN_MARK_MOUNT) || (defined(HAVE_DECL_FAN_MARK_MOUNT) && HAVE_DECL_FAN_MARK_MOUNT)
+	XLAT(FAN_MARK_MOUNT),
+#endif
+#if defined(FAN_MARK_IGNORED_MASK) || (defined(HAVE_DECL_FAN_MARK_IGNORED_MASK) && HAVE_DECL_FAN_MARK_IGNORED_MASK)
+	XLAT(FAN_MARK_IGNORED_MASK),
+#endif
+#if defined(FAN_MARK_IGNORED_SURV_MODIFY) || (defined(HAVE_DECL_FAN_MARK_IGNORED_SURV_MODIFY) && HAVE_DECL_FAN_MARK_IGNORED_SURV_MODIFY)
+	XLAT(FAN_MARK_IGNORED_SURV_MODIFY),
+#endif
+#if defined(FAN_MARK_FLUSH) || (defined(HAVE_DECL_FAN_MARK_FLUSH) && HAVE_DECL_FAN_MARK_FLUSH)
+	XLAT(FAN_MARK_FLUSH),
+#endif
+	XLAT_END
+};
diff --git a/xlat/fcntlcmds.h b/xlat/fcntlcmds.h
new file mode 100644
index 0000000..5a170fd
--- /dev/null
+++ b/xlat/fcntlcmds.h
@@ -0,0 +1,125 @@
+/* Generated by ./xlat/gen.sh from ./xlat/fcntlcmds.in; do not edit. */
+
+static const struct xlat fcntlcmds[] = {
+#if defined(F_DUPFD) || (defined(HAVE_DECL_F_DUPFD) && HAVE_DECL_F_DUPFD)
+	XLAT(F_DUPFD),
+#endif
+#if defined(F_GETFD) || (defined(HAVE_DECL_F_GETFD) && HAVE_DECL_F_GETFD)
+	XLAT(F_GETFD),
+#endif
+#if defined(F_SETFD) || (defined(HAVE_DECL_F_SETFD) && HAVE_DECL_F_SETFD)
+	XLAT(F_SETFD),
+#endif
+#if defined(F_GETFL) || (defined(HAVE_DECL_F_GETFL) && HAVE_DECL_F_GETFL)
+	XLAT(F_GETFL),
+#endif
+#if defined(F_SETFL) || (defined(HAVE_DECL_F_SETFL) && HAVE_DECL_F_SETFL)
+	XLAT(F_SETFL),
+#endif
+#if defined(F_GETLK) || (defined(HAVE_DECL_F_GETLK) && HAVE_DECL_F_GETLK)
+	XLAT(F_GETLK),
+#endif
+#if defined(F_SETLK) || (defined(HAVE_DECL_F_SETLK) && HAVE_DECL_F_SETLK)
+	XLAT(F_SETLK),
+#endif
+#if defined(F_SETLKW) || (defined(HAVE_DECL_F_SETLKW) && HAVE_DECL_F_SETLKW)
+	XLAT(F_SETLKW),
+#endif
+#if defined(F_GETOWN) || (defined(HAVE_DECL_F_GETOWN) && HAVE_DECL_F_GETOWN)
+	XLAT(F_GETOWN),
+#endif
+#if defined(F_SETOWN) || (defined(HAVE_DECL_F_SETOWN) && HAVE_DECL_F_SETOWN)
+	XLAT(F_SETOWN),
+#endif
+#if defined(F_RSETLK) || (defined(HAVE_DECL_F_RSETLK) && HAVE_DECL_F_RSETLK)
+	XLAT(F_RSETLK),
+#endif
+#if defined(F_RSETLKW) || (defined(HAVE_DECL_F_RSETLKW) && HAVE_DECL_F_RSETLKW)
+	XLAT(F_RSETLKW),
+#endif
+#if defined(F_RGETLK) || (defined(HAVE_DECL_F_RGETLK) && HAVE_DECL_F_RGETLK)
+	XLAT(F_RGETLK),
+#endif
+#if defined(F_CNVT) || (defined(HAVE_DECL_F_CNVT) && HAVE_DECL_F_CNVT)
+	XLAT(F_CNVT),
+#endif
+#if defined(F_SETSIG) || (defined(HAVE_DECL_F_SETSIG) && HAVE_DECL_F_SETSIG)
+	XLAT(F_SETSIG),
+#endif
+#if defined(F_GETSIG) || (defined(HAVE_DECL_F_GETSIG) && HAVE_DECL_F_GETSIG)
+	XLAT(F_GETSIG),
+#endif
+#if defined(F_CHKFL) || (defined(HAVE_DECL_F_CHKFL) && HAVE_DECL_F_CHKFL)
+	XLAT(F_CHKFL),
+#endif
+#if defined(F_DUP2FD) || (defined(HAVE_DECL_F_DUP2FD) && HAVE_DECL_F_DUP2FD)
+	XLAT(F_DUP2FD),
+#endif
+#if defined(F_ALLOCSP) || (defined(HAVE_DECL_F_ALLOCSP) && HAVE_DECL_F_ALLOCSP)
+	XLAT(F_ALLOCSP),
+#endif
+#if defined(F_ISSTREAM) || (defined(HAVE_DECL_F_ISSTREAM) && HAVE_DECL_F_ISSTREAM)
+	XLAT(F_ISSTREAM),
+#endif
+#if defined(F_PRIV) || (defined(HAVE_DECL_F_PRIV) && HAVE_DECL_F_PRIV)
+	XLAT(F_PRIV),
+#endif
+#if defined(F_NPRIV) || (defined(HAVE_DECL_F_NPRIV) && HAVE_DECL_F_NPRIV)
+	XLAT(F_NPRIV),
+#endif
+#if defined(F_QUOTACL) || (defined(HAVE_DECL_F_QUOTACL) && HAVE_DECL_F_QUOTACL)
+	XLAT(F_QUOTACL),
+#endif
+#if defined(F_BLOCKS) || (defined(HAVE_DECL_F_BLOCKS) && HAVE_DECL_F_BLOCKS)
+	XLAT(F_BLOCKS),
+#endif
+#if defined(F_BLKSIZE) || (defined(HAVE_DECL_F_BLKSIZE) && HAVE_DECL_F_BLKSIZE)
+	XLAT(F_BLKSIZE),
+#endif
+#if defined(F_GETOWN) || (defined(HAVE_DECL_F_GETOWN) && HAVE_DECL_F_GETOWN)
+	XLAT(F_GETOWN),
+#endif
+#if defined(F_SETOWN) || (defined(HAVE_DECL_F_SETOWN) && HAVE_DECL_F_SETOWN)
+	XLAT(F_SETOWN),
+#endif
+#if defined(F_REVOKE) || (defined(HAVE_DECL_F_REVOKE) && HAVE_DECL_F_REVOKE)
+	XLAT(F_REVOKE),
+#endif
+#if defined(F_SETLK) || (defined(HAVE_DECL_F_SETLK) && HAVE_DECL_F_SETLK)
+	XLAT(F_SETLK),
+#endif
+#if defined(F_SETLKW) || (defined(HAVE_DECL_F_SETLKW) && HAVE_DECL_F_SETLKW)
+	XLAT(F_SETLKW),
+#endif
+#if defined(F_GETLK) || (defined(HAVE_DECL_F_GETLK) && HAVE_DECL_F_GETLK)
+	XLAT(F_GETLK),
+#endif
+#if defined(F_SETLK64) || (defined(HAVE_DECL_F_SETLK64) && HAVE_DECL_F_SETLK64)
+	XLAT(F_SETLK64),
+#endif
+#if defined(F_SETLKW64) || (defined(HAVE_DECL_F_SETLKW64) && HAVE_DECL_F_SETLKW64)
+	XLAT(F_SETLKW64),
+#endif
+#if defined(F_GETLK64) || (defined(HAVE_DECL_F_GETLK64) && HAVE_DECL_F_GETLK64)
+	XLAT(F_GETLK64),
+#endif
+#if defined(F_SHARE) || (defined(HAVE_DECL_F_SHARE) && HAVE_DECL_F_SHARE)
+	XLAT(F_SHARE),
+#endif
+#if defined(F_UNSHARE) || (defined(HAVE_DECL_F_UNSHARE) && HAVE_DECL_F_UNSHARE)
+	XLAT(F_UNSHARE),
+#endif
+#if defined(F_SETLEASE) || (defined(HAVE_DECL_F_SETLEASE) && HAVE_DECL_F_SETLEASE)
+	XLAT(F_SETLEASE),
+#endif
+#if defined(F_GETLEASE) || (defined(HAVE_DECL_F_GETLEASE) && HAVE_DECL_F_GETLEASE)
+	XLAT(F_GETLEASE),
+#endif
+#if defined(F_NOTIFY) || (defined(HAVE_DECL_F_NOTIFY) && HAVE_DECL_F_NOTIFY)
+	XLAT(F_NOTIFY),
+#endif
+#if defined(F_DUPFD_CLOEXEC) || (defined(HAVE_DECL_F_DUPFD_CLOEXEC) && HAVE_DECL_F_DUPFD_CLOEXEC)
+	XLAT(F_DUPFD_CLOEXEC),
+#endif
+	XLAT_END
+};
diff --git a/xlat/fdflags.h b/xlat/fdflags.h
new file mode 100644
index 0000000..085eb7d
--- /dev/null
+++ b/xlat/fdflags.h
@@ -0,0 +1,8 @@
+/* Generated by ./xlat/gen.sh from ./xlat/fdflags.in; do not edit. */
+
+static const struct xlat fdflags[] = {
+#if defined(FD_CLOEXEC) || (defined(HAVE_DECL_FD_CLOEXEC) && HAVE_DECL_FD_CLOEXEC)
+	XLAT(FD_CLOEXEC),
+#endif
+	XLAT_END
+};
diff --git a/xlat/fileflags.h b/xlat/fileflags.h
new file mode 100644
index 0000000..3b47cf0
--- /dev/null
+++ b/xlat/fileflags.h
@@ -0,0 +1,5 @@
+/* Generated by ./xlat/gen.sh from ./xlat/fileflags.in; do not edit. */
+
+static const struct xlat fileflags[] = {
+	XLAT_END
+};
diff --git a/xlat/flockcmds.h b/xlat/flockcmds.h
new file mode 100644
index 0000000..1cdd912
--- /dev/null
+++ b/xlat/flockcmds.h
@@ -0,0 +1,17 @@
+/* Generated by ./xlat/gen.sh from ./xlat/flockcmds.in; do not edit. */
+
+static const struct xlat flockcmds[] = {
+#if defined(LOCK_SH) || (defined(HAVE_DECL_LOCK_SH) && HAVE_DECL_LOCK_SH)
+	XLAT(LOCK_SH),
+#endif
+#if defined(LOCK_EX) || (defined(HAVE_DECL_LOCK_EX) && HAVE_DECL_LOCK_EX)
+	XLAT(LOCK_EX),
+#endif
+#if defined(LOCK_NB) || (defined(HAVE_DECL_LOCK_NB) && HAVE_DECL_LOCK_NB)
+	XLAT(LOCK_NB),
+#endif
+#if defined(LOCK_UN) || (defined(HAVE_DECL_LOCK_UN) && HAVE_DECL_LOCK_UN)
+	XLAT(LOCK_UN),
+#endif
+	XLAT_END
+};
diff --git a/xlat/fsmagic.h b/xlat/fsmagic.h
new file mode 100644
index 0000000..ba7f450
--- /dev/null
+++ b/xlat/fsmagic.h
@@ -0,0 +1,34 @@
+/* Generated by ./xlat/gen.sh from ./xlat/fsmagic.in; do not edit. */
+
+static const struct xlat fsmagic[] = {
+{ 0x73757245,	"CODA_SUPER_MAGIC"	},
+{ 0x012ff7b7,	"COH_SUPER_MAGIC"	},
+{ 0x1373,	"DEVFS_SUPER_MAGIC"	},
+{ 0x1cd1,	"DEVPTS_SUPER_MAGIC"	},
+{ 0x414A53,	"EFS_SUPER_MAGIC"	},
+{ 0xef51,	"EXT2_OLD_SUPER_MAGIC"	},
+{ 0xef53,	"EXT2_SUPER_MAGIC"	},
+{ 0x137d,	"EXT_SUPER_MAGIC"	},
+{ 0xf995e849,	"HPFS_SUPER_MAGIC"	},
+{ 0x9660,	"ISOFS_SUPER_MAGIC"	},
+{ 0x137f,	"MINIX_SUPER_MAGIC"	},
+{ 0x138f,	"MINIX_SUPER_MAGIC2"	},
+{ 0x2468,	"MINIX2_SUPER_MAGIC"	},
+{ 0x2478,	"MINIX2_SUPER_MAGIC2"	},
+{ 0x4d44,	"MSDOS_SUPER_MAGIC"	},
+{ 0x564c,	"NCP_SUPER_MAGIC"	},
+{ 0x6969,	"NFS_SUPER_MAGIC"	},
+{ 0x9fa0,	"PROC_SUPER_MAGIC"	},
+{ 0x002f,	"QNX4_SUPER_MAGIC"	},
+{ 0x52654973,	"REISERFS_SUPER_MAGIC"	},
+{ 0x02011994,	"SHMFS_SUPER_MAGIC"	},
+{ 0x517b,	"SMB_SUPER_MAGIC"	},
+{ 0x012ff7b6,	"SYSV2_SUPER_MAGIC"	},
+{ 0x012ff7b5,	"SYSV4_SUPER_MAGIC"	},
+{ 0x00011954,	"UFS_MAGIC"		},
+{ 0x54190100,	"UFS_CIGAM"		},
+{ 0x012ff7b4,	"XENIX_SUPER_MAGIC"	},
+{ 0x012fd16d,	"XIAFS_SUPER_MAGIC"	},
+{ 0x62656572,	"SYSFS_MAGIC"		},
+	XLAT_END
+};
diff --git a/xlat/futexops.h b/xlat/futexops.h
new file mode 100644
index 0000000..f130bca
--- /dev/null
+++ b/xlat/futexops.h
@@ -0,0 +1,95 @@
+/* Generated by ./xlat/gen.sh from ./xlat/futexops.in; do not edit. */
+
+static const struct xlat futexops[] = {
+#if defined(FUTEX_WAIT) || (defined(HAVE_DECL_FUTEX_WAIT) && HAVE_DECL_FUTEX_WAIT)
+	XLAT(FUTEX_WAIT),
+#endif
+#if defined(FUTEX_WAKE) || (defined(HAVE_DECL_FUTEX_WAKE) && HAVE_DECL_FUTEX_WAKE)
+	XLAT(FUTEX_WAKE),
+#endif
+#if defined(FUTEX_FD) || (defined(HAVE_DECL_FUTEX_FD) && HAVE_DECL_FUTEX_FD)
+	XLAT(FUTEX_FD),
+#endif
+#if defined(FUTEX_REQUEUE) || (defined(HAVE_DECL_FUTEX_REQUEUE) && HAVE_DECL_FUTEX_REQUEUE)
+	XLAT(FUTEX_REQUEUE),
+#endif
+#if defined(FUTEX_CMP_REQUEUE) || (defined(HAVE_DECL_FUTEX_CMP_REQUEUE) && HAVE_DECL_FUTEX_CMP_REQUEUE)
+	XLAT(FUTEX_CMP_REQUEUE),
+#endif
+#if defined(FUTEX_WAKE_OP) || (defined(HAVE_DECL_FUTEX_WAKE_OP) && HAVE_DECL_FUTEX_WAKE_OP)
+	XLAT(FUTEX_WAKE_OP),
+#endif
+#if defined(FUTEX_LOCK_PI) || (defined(HAVE_DECL_FUTEX_LOCK_PI) && HAVE_DECL_FUTEX_LOCK_PI)
+	XLAT(FUTEX_LOCK_PI),
+#endif
+#if defined(FUTEX_UNLOCK_PI) || (defined(HAVE_DECL_FUTEX_UNLOCK_PI) && HAVE_DECL_FUTEX_UNLOCK_PI)
+	XLAT(FUTEX_UNLOCK_PI),
+#endif
+#if defined(FUTEX_TRYLOCK_PI) || (defined(HAVE_DECL_FUTEX_TRYLOCK_PI) && HAVE_DECL_FUTEX_TRYLOCK_PI)
+	XLAT(FUTEX_TRYLOCK_PI),
+#endif
+#if defined(FUTEX_WAIT_BITSET) || (defined(HAVE_DECL_FUTEX_WAIT_BITSET) && HAVE_DECL_FUTEX_WAIT_BITSET)
+	XLAT(FUTEX_WAIT_BITSET),
+#endif
+#if defined(FUTEX_WAKE_BITSET) || (defined(HAVE_DECL_FUTEX_WAKE_BITSET) && HAVE_DECL_FUTEX_WAKE_BITSET)
+	XLAT(FUTEX_WAKE_BITSET),
+#endif
+#if defined(FUTEX_WAIT_REQUEUE_PI) || (defined(HAVE_DECL_FUTEX_WAIT_REQUEUE_PI) && HAVE_DECL_FUTEX_WAIT_REQUEUE_PI)
+	XLAT(FUTEX_WAIT_REQUEUE_PI),
+#endif
+#if defined(FUTEX_CMP_REQUEUE_PI) || (defined(HAVE_DECL_FUTEX_CMP_REQUEUE_PI) && HAVE_DECL_FUTEX_CMP_REQUEUE_PI)
+	XLAT(FUTEX_CMP_REQUEUE_PI),
+#endif
+#if defined(FUTEX_WAIT_PRIVATE) || (defined(HAVE_DECL_FUTEX_WAIT_PRIVATE) && HAVE_DECL_FUTEX_WAIT_PRIVATE)
+	XLAT(FUTEX_WAIT_PRIVATE),
+#endif
+#if defined(FUTEX_WAKE_PRIVATE) || (defined(HAVE_DECL_FUTEX_WAKE_PRIVATE) && HAVE_DECL_FUTEX_WAKE_PRIVATE)
+	XLAT(FUTEX_WAKE_PRIVATE),
+#endif
+#if defined(FUTEX_FD) || (defined(HAVE_DECL_FUTEX_FD) && HAVE_DECL_FUTEX_FD)
+	XLAT(FUTEX_FD|FUTEX_PRIVATE_FLAG),
+#endif
+#if defined(FUTEX_REQUEUE_PRIVATE) || (defined(HAVE_DECL_FUTEX_REQUEUE_PRIVATE) && HAVE_DECL_FUTEX_REQUEUE_PRIVATE)
+	XLAT(FUTEX_REQUEUE_PRIVATE),
+#endif
+#if defined(FUTEX_CMP_REQUEUE_PRIVATE) || (defined(HAVE_DECL_FUTEX_CMP_REQUEUE_PRIVATE) && HAVE_DECL_FUTEX_CMP_REQUEUE_PRIVATE)
+	XLAT(FUTEX_CMP_REQUEUE_PRIVATE),
+#endif
+#if defined(FUTEX_WAKE_OP_PRIVATE) || (defined(HAVE_DECL_FUTEX_WAKE_OP_PRIVATE) && HAVE_DECL_FUTEX_WAKE_OP_PRIVATE)
+	XLAT(FUTEX_WAKE_OP_PRIVATE),
+#endif
+#if defined(FUTEX_LOCK_PI_PRIVATE) || (defined(HAVE_DECL_FUTEX_LOCK_PI_PRIVATE) && HAVE_DECL_FUTEX_LOCK_PI_PRIVATE)
+	XLAT(FUTEX_LOCK_PI_PRIVATE),
+#endif
+#if defined(FUTEX_UNLOCK_PI_PRIVATE) || (defined(HAVE_DECL_FUTEX_UNLOCK_PI_PRIVATE) && HAVE_DECL_FUTEX_UNLOCK_PI_PRIVATE)
+	XLAT(FUTEX_UNLOCK_PI_PRIVATE),
+#endif
+#if defined(FUTEX_TRYLOCK_PI_PRIVATE) || (defined(HAVE_DECL_FUTEX_TRYLOCK_PI_PRIVATE) && HAVE_DECL_FUTEX_TRYLOCK_PI_PRIVATE)
+	XLAT(FUTEX_TRYLOCK_PI_PRIVATE),
+#endif
+#if defined(FUTEX_WAIT_BITSET_PRIVATE) || (defined(HAVE_DECL_FUTEX_WAIT_BITSET_PRIVATE) && HAVE_DECL_FUTEX_WAIT_BITSET_PRIVATE)
+	XLAT(FUTEX_WAIT_BITSET_PRIVATE),
+#endif
+#if defined(FUTEX_WAKE_BITSET_PRIVATE) || (defined(HAVE_DECL_FUTEX_WAKE_BITSET_PRIVATE) && HAVE_DECL_FUTEX_WAKE_BITSET_PRIVATE)
+	XLAT(FUTEX_WAKE_BITSET_PRIVATE),
+#endif
+#if defined(FUTEX_WAIT_REQUEUE_PI_PRIVATE) || (defined(HAVE_DECL_FUTEX_WAIT_REQUEUE_PI_PRIVATE) && HAVE_DECL_FUTEX_WAIT_REQUEUE_PI_PRIVATE)
+	XLAT(FUTEX_WAIT_REQUEUE_PI_PRIVATE),
+#endif
+#if defined(FUTEX_CMP_REQUEUE_PI_PRIVATE) || (defined(HAVE_DECL_FUTEX_CMP_REQUEUE_PI_PRIVATE) && HAVE_DECL_FUTEX_CMP_REQUEUE_PI_PRIVATE)
+	XLAT(FUTEX_CMP_REQUEUE_PI_PRIVATE),
+#endif
+#if defined(FUTEX_WAIT_BITSET) || (defined(HAVE_DECL_FUTEX_WAIT_BITSET) && HAVE_DECL_FUTEX_WAIT_BITSET)
+	XLAT(FUTEX_WAIT_BITSET|FUTEX_CLOCK_REALTIME),
+#endif
+#if defined(FUTEX_WAIT_BITSET_PRIVATE) || (defined(HAVE_DECL_FUTEX_WAIT_BITSET_PRIVATE) && HAVE_DECL_FUTEX_WAIT_BITSET_PRIVATE)
+	XLAT(FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME),
+#endif
+#if defined(FUTEX_WAIT_REQUEUE_PI) || (defined(HAVE_DECL_FUTEX_WAIT_REQUEUE_PI) && HAVE_DECL_FUTEX_WAIT_REQUEUE_PI)
+	XLAT(FUTEX_WAIT_REQUEUE_PI|FUTEX_CLOCK_REALTIME),
+#endif
+#if defined(FUTEX_WAIT_REQUEUE_PI_PRIVATE) || (defined(HAVE_DECL_FUTEX_WAIT_REQUEUE_PI_PRIVATE) && HAVE_DECL_FUTEX_WAIT_REQUEUE_PI_PRIVATE)
+	XLAT(FUTEX_WAIT_REQUEUE_PI_PRIVATE|FUTEX_CLOCK_REALTIME),
+#endif
+	XLAT_END
+};
diff --git a/xlat/futexwakecmps.h b/xlat/futexwakecmps.h
new file mode 100644
index 0000000..a99a6f5
--- /dev/null
+++ b/xlat/futexwakecmps.h
@@ -0,0 +1,23 @@
+/* Generated by ./xlat/gen.sh from ./xlat/futexwakecmps.in; do not edit. */
+
+static const struct xlat futexwakecmps[] = {
+#if defined(FUTEX_OP_CMP_EQ) || (defined(HAVE_DECL_FUTEX_OP_CMP_EQ) && HAVE_DECL_FUTEX_OP_CMP_EQ)
+	XLAT(FUTEX_OP_CMP_EQ),
+#endif
+#if defined(FUTEX_OP_CMP_NE) || (defined(HAVE_DECL_FUTEX_OP_CMP_NE) && HAVE_DECL_FUTEX_OP_CMP_NE)
+	XLAT(FUTEX_OP_CMP_NE),
+#endif
+#if defined(FUTEX_OP_CMP_LT) || (defined(HAVE_DECL_FUTEX_OP_CMP_LT) && HAVE_DECL_FUTEX_OP_CMP_LT)
+	XLAT(FUTEX_OP_CMP_LT),
+#endif
+#if defined(FUTEX_OP_CMP_LE) || (defined(HAVE_DECL_FUTEX_OP_CMP_LE) && HAVE_DECL_FUTEX_OP_CMP_LE)
+	XLAT(FUTEX_OP_CMP_LE),
+#endif
+#if defined(FUTEX_OP_CMP_GT) || (defined(HAVE_DECL_FUTEX_OP_CMP_GT) && HAVE_DECL_FUTEX_OP_CMP_GT)
+	XLAT(FUTEX_OP_CMP_GT),
+#endif
+#if defined(FUTEX_OP_CMP_GE) || (defined(HAVE_DECL_FUTEX_OP_CMP_GE) && HAVE_DECL_FUTEX_OP_CMP_GE)
+	XLAT(FUTEX_OP_CMP_GE),
+#endif
+	XLAT_END
+};
diff --git a/xlat/futexwakeops.h b/xlat/futexwakeops.h
new file mode 100644
index 0000000..e0a0f40
--- /dev/null
+++ b/xlat/futexwakeops.h
@@ -0,0 +1,20 @@
+/* Generated by ./xlat/gen.sh from ./xlat/futexwakeops.in; do not edit. */
+
+static const struct xlat futexwakeops[] = {
+#if defined(FUTEX_OP_SET) || (defined(HAVE_DECL_FUTEX_OP_SET) && HAVE_DECL_FUTEX_OP_SET)
+	XLAT(FUTEX_OP_SET),
+#endif
+#if defined(FUTEX_OP_ADD) || (defined(HAVE_DECL_FUTEX_OP_ADD) && HAVE_DECL_FUTEX_OP_ADD)
+	XLAT(FUTEX_OP_ADD),
+#endif
+#if defined(FUTEX_OP_OR) || (defined(HAVE_DECL_FUTEX_OP_OR) && HAVE_DECL_FUTEX_OP_OR)
+	XLAT(FUTEX_OP_OR),
+#endif
+#if defined(FUTEX_OP_ANDN) || (defined(HAVE_DECL_FUTEX_OP_ANDN) && HAVE_DECL_FUTEX_OP_ANDN)
+	XLAT(FUTEX_OP_ANDN),
+#endif
+#if defined(FUTEX_OP_XOR) || (defined(HAVE_DECL_FUTEX_OP_XOR) && HAVE_DECL_FUTEX_OP_XOR)
+	XLAT(FUTEX_OP_XOR),
+#endif
+	XLAT_END
+};
diff --git a/xlat/icmpfilterflags.h b/xlat/icmpfilterflags.h
new file mode 100644
index 0000000..872438c
--- /dev/null
+++ b/xlat/icmpfilterflags.h
@@ -0,0 +1,44 @@
+/* Generated by ./xlat/gen.sh from ./xlat/icmpfilterflags.in; do not edit. */
+
+static const struct xlat icmpfilterflags[] = {
+#if defined(ICMP_ECHOREPLY) || (defined(HAVE_DECL_ICMP_ECHOREPLY) && HAVE_DECL_ICMP_ECHOREPLY)
+	{ 1<<ICMP_ECHOREPLY, "ICMP_ECHOREPLY" },
+#endif
+#if defined(ICMP_DEST_UNREACH) || (defined(HAVE_DECL_ICMP_DEST_UNREACH) && HAVE_DECL_ICMP_DEST_UNREACH)
+	{ 1<<ICMP_DEST_UNREACH, "ICMP_DEST_UNREACH" },
+#endif
+#if defined(ICMP_SOURCE_QUENCH) || (defined(HAVE_DECL_ICMP_SOURCE_QUENCH) && HAVE_DECL_ICMP_SOURCE_QUENCH)
+	{ 1<<ICMP_SOURCE_QUENCH, "ICMP_SOURCE_QUENCH" },
+#endif
+#if defined(ICMP_REDIRECT) || (defined(HAVE_DECL_ICMP_REDIRECT) && HAVE_DECL_ICMP_REDIRECT)
+	{ 1<<ICMP_REDIRECT, "ICMP_REDIRECT" },
+#endif
+#if defined(ICMP_ECHO) || (defined(HAVE_DECL_ICMP_ECHO) && HAVE_DECL_ICMP_ECHO)
+	{ 1<<ICMP_ECHO, "ICMP_ECHO" },
+#endif
+#if defined(ICMP_TIME_EXCEEDED) || (defined(HAVE_DECL_ICMP_TIME_EXCEEDED) && HAVE_DECL_ICMP_TIME_EXCEEDED)
+	{ 1<<ICMP_TIME_EXCEEDED, "ICMP_TIME_EXCEEDED" },
+#endif
+#if defined(ICMP_PARAMETERPROB) || (defined(HAVE_DECL_ICMP_PARAMETERPROB) && HAVE_DECL_ICMP_PARAMETERPROB)
+	{ 1<<ICMP_PARAMETERPROB, "ICMP_PARAMETERPROB" },
+#endif
+#if defined(ICMP_TIMESTAMP) || (defined(HAVE_DECL_ICMP_TIMESTAMP) && HAVE_DECL_ICMP_TIMESTAMP)
+	{ 1<<ICMP_TIMESTAMP, "ICMP_TIMESTAMP" },
+#endif
+#if defined(ICMP_TIMESTAMPREPLY) || (defined(HAVE_DECL_ICMP_TIMESTAMPREPLY) && HAVE_DECL_ICMP_TIMESTAMPREPLY)
+	{ 1<<ICMP_TIMESTAMPREPLY, "ICMP_TIMESTAMPREPLY" },
+#endif
+#if defined(ICMP_INFO_REQUEST) || (defined(HAVE_DECL_ICMP_INFO_REQUEST) && HAVE_DECL_ICMP_INFO_REQUEST)
+	{ 1<<ICMP_INFO_REQUEST, "ICMP_INFO_REQUEST" },
+#endif
+#if defined(ICMP_INFO_REPLY) || (defined(HAVE_DECL_ICMP_INFO_REPLY) && HAVE_DECL_ICMP_INFO_REPLY)
+	{ 1<<ICMP_INFO_REPLY, "ICMP_INFO_REPLY" },
+#endif
+#if defined(ICMP_ADDRESS) || (defined(HAVE_DECL_ICMP_ADDRESS) && HAVE_DECL_ICMP_ADDRESS)
+	{ 1<<ICMP_ADDRESS, "ICMP_ADDRESS" },
+#endif
+#if defined(ICMP_ADDRESSREPLY) || (defined(HAVE_DECL_ICMP_ADDRESSREPLY) && HAVE_DECL_ICMP_ADDRESSREPLY)
+	{ 1<<ICMP_ADDRESSREPLY, "ICMP_ADDRESSREPLY" },
+#endif
+	XLAT_END
+};
diff --git a/xlat/if_dqblk_valid.h b/xlat/if_dqblk_valid.h
new file mode 100644
index 0000000..2de9378
--- /dev/null
+++ b/xlat/if_dqblk_valid.h
@@ -0,0 +1,23 @@
+/* Generated by ./xlat/gen.sh from ./xlat/if_dqblk_valid.in; do not edit. */
+
+static const struct xlat if_dqblk_valid[] = {
+#if defined(QIF_BLIMITS) || (defined(HAVE_DECL_QIF_BLIMITS) && HAVE_DECL_QIF_BLIMITS)
+	XLAT(QIF_BLIMITS),
+#endif
+#if defined(QIF_SPACE) || (defined(HAVE_DECL_QIF_SPACE) && HAVE_DECL_QIF_SPACE)
+	XLAT(QIF_SPACE),
+#endif
+#if defined(QIF_ILIMITS) || (defined(HAVE_DECL_QIF_ILIMITS) && HAVE_DECL_QIF_ILIMITS)
+	XLAT(QIF_ILIMITS),
+#endif
+#if defined(QIF_INODES) || (defined(HAVE_DECL_QIF_INODES) && HAVE_DECL_QIF_INODES)
+	XLAT(QIF_INODES),
+#endif
+#if defined(QIF_BTIME) || (defined(HAVE_DECL_QIF_BTIME) && HAVE_DECL_QIF_BTIME)
+	XLAT(QIF_BTIME),
+#endif
+#if defined(QIF_ITIME) || (defined(HAVE_DECL_QIF_ITIME) && HAVE_DECL_QIF_ITIME)
+	XLAT(QIF_ITIME),
+#endif
+	XLAT_END
+};
diff --git a/xlat/if_dqinfo_valid.h b/xlat/if_dqinfo_valid.h
new file mode 100644
index 0000000..d330267
--- /dev/null
+++ b/xlat/if_dqinfo_valid.h
@@ -0,0 +1,14 @@
+/* Generated by ./xlat/gen.sh from ./xlat/if_dqinfo_valid.in; do not edit. */
+
+static const struct xlat if_dqinfo_valid[] = {
+#if defined(IIF_BGRACE) || (defined(HAVE_DECL_IIF_BGRACE) && HAVE_DECL_IIF_BGRACE)
+	XLAT(IIF_BGRACE),
+#endif
+#if defined(IIF_IGRACE) || (defined(HAVE_DECL_IIF_IGRACE) && HAVE_DECL_IIF_IGRACE)
+	XLAT(IIF_IGRACE),
+#endif
+#if defined(IIF_FLAGS) || (defined(HAVE_DECL_IIF_FLAGS) && HAVE_DECL_IIF_FLAGS)
+	XLAT(IIF_FLAGS),
+#endif
+	XLAT_END
+};
diff --git a/xlat/iffflags.h b/xlat/iffflags.h
new file mode 100644
index 0000000..0b9de3f
--- /dev/null
+++ b/xlat/iffflags.h
@@ -0,0 +1,50 @@
+/* Generated by ./xlat/gen.sh from ./xlat/iffflags.in; do not edit. */
+
+static const struct xlat iffflags[] = {
+#if defined(IFF_UP) || (defined(HAVE_DECL_IFF_UP) && HAVE_DECL_IFF_UP)
+	XLAT(IFF_UP),
+#endif
+#if defined(IFF_BROADCAST) || (defined(HAVE_DECL_IFF_BROADCAST) && HAVE_DECL_IFF_BROADCAST)
+	XLAT(IFF_BROADCAST),
+#endif
+#if defined(IFF_DEBUG) || (defined(HAVE_DECL_IFF_DEBUG) && HAVE_DECL_IFF_DEBUG)
+	XLAT(IFF_DEBUG),
+#endif
+#if defined(IFF_LOOPBACK) || (defined(HAVE_DECL_IFF_LOOPBACK) && HAVE_DECL_IFF_LOOPBACK)
+	XLAT(IFF_LOOPBACK),
+#endif
+#if defined(IFF_POINTOPOINT) || (defined(HAVE_DECL_IFF_POINTOPOINT) && HAVE_DECL_IFF_POINTOPOINT)
+	XLAT(IFF_POINTOPOINT),
+#endif
+#if defined(IFF_NOTRAILERS) || (defined(HAVE_DECL_IFF_NOTRAILERS) && HAVE_DECL_IFF_NOTRAILERS)
+	XLAT(IFF_NOTRAILERS),
+#endif
+#if defined(IFF_RUNNING) || (defined(HAVE_DECL_IFF_RUNNING) && HAVE_DECL_IFF_RUNNING)
+	XLAT(IFF_RUNNING),
+#endif
+#if defined(IFF_NOARP) || (defined(HAVE_DECL_IFF_NOARP) && HAVE_DECL_IFF_NOARP)
+	XLAT(IFF_NOARP),
+#endif
+#if defined(IFF_PROMISC) || (defined(HAVE_DECL_IFF_PROMISC) && HAVE_DECL_IFF_PROMISC)
+	XLAT(IFF_PROMISC),
+#endif
+#if defined(IFF_ALLMULTI) || (defined(HAVE_DECL_IFF_ALLMULTI) && HAVE_DECL_IFF_ALLMULTI)
+	XLAT(IFF_ALLMULTI),
+#endif
+#if defined(IFF_MASTER) || (defined(HAVE_DECL_IFF_MASTER) && HAVE_DECL_IFF_MASTER)
+	XLAT(IFF_MASTER),
+#endif
+#if defined(IFF_SLAVE) || (defined(HAVE_DECL_IFF_SLAVE) && HAVE_DECL_IFF_SLAVE)
+	XLAT(IFF_SLAVE),
+#endif
+#if defined(IFF_MULTICAST) || (defined(HAVE_DECL_IFF_MULTICAST) && HAVE_DECL_IFF_MULTICAST)
+	XLAT(IFF_MULTICAST),
+#endif
+#if defined(IFF_PORTSEL) || (defined(HAVE_DECL_IFF_PORTSEL) && HAVE_DECL_IFF_PORTSEL)
+	XLAT(IFF_PORTSEL),
+#endif
+#if defined(IFF_AUTOMEDIA) || (defined(HAVE_DECL_IFF_AUTOMEDIA) && HAVE_DECL_IFF_AUTOMEDIA)
+	XLAT(IFF_AUTOMEDIA),
+#endif
+	XLAT_END
+};
diff --git a/xlat/inet_protocols.h b/xlat/inet_protocols.h
new file mode 100644
index 0000000..54ed5f7
--- /dev/null
+++ b/xlat/inet_protocols.h
@@ -0,0 +1,101 @@
+/* Generated by ./xlat/gen.sh from ./xlat/inet_protocols.in; do not edit. */
+
+static const struct xlat inet_protocols[] = {
+#if defined(IPPROTO_IP) || (defined(HAVE_DECL_IPPROTO_IP) && HAVE_DECL_IPPROTO_IP)
+	XLAT(IPPROTO_IP),
+#endif
+#if defined(IPPROTO_ICMP) || (defined(HAVE_DECL_IPPROTO_ICMP) && HAVE_DECL_IPPROTO_ICMP)
+	XLAT(IPPROTO_ICMP),
+#endif
+#if defined(IPPROTO_TCP) || (defined(HAVE_DECL_IPPROTO_TCP) && HAVE_DECL_IPPROTO_TCP)
+	XLAT(IPPROTO_TCP),
+#endif
+#if defined(IPPROTO_UDP) || (defined(HAVE_DECL_IPPROTO_UDP) && HAVE_DECL_IPPROTO_UDP)
+	XLAT(IPPROTO_UDP),
+#endif
+#if defined(IPPROTO_IGMP) || (defined(HAVE_DECL_IPPROTO_IGMP) && HAVE_DECL_IPPROTO_IGMP)
+	XLAT(IPPROTO_IGMP),
+#endif
+#if defined(IPPROTO_GGP) || (defined(HAVE_DECL_IPPROTO_GGP) && HAVE_DECL_IPPROTO_GGP)
+	XLAT(IPPROTO_GGP),
+#endif
+#if defined(IPPROTO_IPIP) || (defined(HAVE_DECL_IPPROTO_IPIP) && HAVE_DECL_IPPROTO_IPIP)
+	XLAT(IPPROTO_IPIP),
+#endif
+#if defined(IPPROTO_EGP) || (defined(HAVE_DECL_IPPROTO_EGP) && HAVE_DECL_IPPROTO_EGP)
+	XLAT(IPPROTO_EGP),
+#endif
+#if defined(IPPROTO_PUP) || (defined(HAVE_DECL_IPPROTO_PUP) && HAVE_DECL_IPPROTO_PUP)
+	XLAT(IPPROTO_PUP),
+#endif
+#if defined(IPPROTO_IDP) || (defined(HAVE_DECL_IPPROTO_IDP) && HAVE_DECL_IPPROTO_IDP)
+	XLAT(IPPROTO_IDP),
+#endif
+#if defined(IPPROTO_TP) || (defined(HAVE_DECL_IPPROTO_TP) && HAVE_DECL_IPPROTO_TP)
+	XLAT(IPPROTO_TP),
+#endif
+#if defined(IPPROTO_DCCP) || (defined(HAVE_DECL_IPPROTO_DCCP) && HAVE_DECL_IPPROTO_DCCP)
+	XLAT(IPPROTO_DCCP),
+#endif
+#if defined(IPPROTO_IPV6) || (defined(HAVE_DECL_IPPROTO_IPV6) && HAVE_DECL_IPPROTO_IPV6)
+	XLAT(IPPROTO_IPV6),
+#endif
+#if defined(IPPROTO_ROUTING) || (defined(HAVE_DECL_IPPROTO_ROUTING) && HAVE_DECL_IPPROTO_ROUTING)
+	XLAT(IPPROTO_ROUTING),
+#endif
+#if defined(IPPROTO_FRAGMENT) || (defined(HAVE_DECL_IPPROTO_FRAGMENT) && HAVE_DECL_IPPROTO_FRAGMENT)
+	XLAT(IPPROTO_FRAGMENT),
+#endif
+#if defined(IPPROTO_RSVP) || (defined(HAVE_DECL_IPPROTO_RSVP) && HAVE_DECL_IPPROTO_RSVP)
+	XLAT(IPPROTO_RSVP),
+#endif
+#if defined(IPPROTO_GRE) || (defined(HAVE_DECL_IPPROTO_GRE) && HAVE_DECL_IPPROTO_GRE)
+	XLAT(IPPROTO_GRE),
+#endif
+#if defined(IPPROTO_ESP) || (defined(HAVE_DECL_IPPROTO_ESP) && HAVE_DECL_IPPROTO_ESP)
+	XLAT(IPPROTO_ESP),
+#endif
+#if defined(IPPROTO_AH) || (defined(HAVE_DECL_IPPROTO_AH) && HAVE_DECL_IPPROTO_AH)
+	XLAT(IPPROTO_AH),
+#endif
+#if defined(IPPROTO_ICMPV6) || (defined(HAVE_DECL_IPPROTO_ICMPV6) && HAVE_DECL_IPPROTO_ICMPV6)
+	XLAT(IPPROTO_ICMPV6),
+#endif
+#if defined(IPPROTO_NONE) || (defined(HAVE_DECL_IPPROTO_NONE) && HAVE_DECL_IPPROTO_NONE)
+	XLAT(IPPROTO_NONE),
+#endif
+#if defined(IPPROTO_DSTOPTS) || (defined(HAVE_DECL_IPPROTO_DSTOPTS) && HAVE_DECL_IPPROTO_DSTOPTS)
+	XLAT(IPPROTO_DSTOPTS),
+#endif
+#if defined(IPPROTO_HELLO) || (defined(HAVE_DECL_IPPROTO_HELLO) && HAVE_DECL_IPPROTO_HELLO)
+	XLAT(IPPROTO_HELLO),
+#endif
+#if defined(IPPROTO_ND) || (defined(HAVE_DECL_IPPROTO_ND) && HAVE_DECL_IPPROTO_ND)
+	XLAT(IPPROTO_ND),
+#endif
+#if defined(IPPROTO_MTP) || (defined(HAVE_DECL_IPPROTO_MTP) && HAVE_DECL_IPPROTO_MTP)
+	XLAT(IPPROTO_MTP),
+#endif
+#if defined(IPPROTO_ENCAP) || (defined(HAVE_DECL_IPPROTO_ENCAP) && HAVE_DECL_IPPROTO_ENCAP)
+	XLAT(IPPROTO_ENCAP),
+#endif
+#if defined(IPPROTO_PIM) || (defined(HAVE_DECL_IPPROTO_PIM) && HAVE_DECL_IPPROTO_PIM)
+	XLAT(IPPROTO_PIM),
+#endif
+#if defined(IPPROTO_COMP) || (defined(HAVE_DECL_IPPROTO_COMP) && HAVE_DECL_IPPROTO_COMP)
+	XLAT(IPPROTO_COMP),
+#endif
+#if defined(IPPROTO_SCTP) || (defined(HAVE_DECL_IPPROTO_SCTP) && HAVE_DECL_IPPROTO_SCTP)
+	XLAT(IPPROTO_SCTP),
+#endif
+#if defined(IPPROTO_UDPLITE) || (defined(HAVE_DECL_IPPROTO_UDPLITE) && HAVE_DECL_IPPROTO_UDPLITE)
+	XLAT(IPPROTO_UDPLITE),
+#endif
+#if defined(IPPROTO_RAW) || (defined(HAVE_DECL_IPPROTO_RAW) && HAVE_DECL_IPPROTO_RAW)
+	XLAT(IPPROTO_RAW),
+#endif
+#if defined(IPPROTO_MAX) || (defined(HAVE_DECL_IPPROTO_MAX) && HAVE_DECL_IPPROTO_MAX)
+	XLAT(IPPROTO_MAX),
+#endif
+	XLAT_END
+};
diff --git a/xlat/inotify_flags.h b/xlat/inotify_flags.h
new file mode 100644
index 0000000..847222d
--- /dev/null
+++ b/xlat/inotify_flags.h
@@ -0,0 +1,74 @@
+/* Generated by ./xlat/gen.sh from ./xlat/inotify_flags.in; do not edit. */
+
+static const struct xlat inotify_flags[] = {
+#if defined(IN_ACCESS) || (defined(HAVE_DECL_IN_ACCESS) && HAVE_DECL_IN_ACCESS)
+	XLAT(IN_ACCESS),
+#endif
+#if defined(IN_MODIFY) || (defined(HAVE_DECL_IN_MODIFY) && HAVE_DECL_IN_MODIFY)
+	XLAT(IN_MODIFY),
+#endif
+#if defined(IN_ATTRIB) || (defined(HAVE_DECL_IN_ATTRIB) && HAVE_DECL_IN_ATTRIB)
+	XLAT(IN_ATTRIB),
+#endif
+#if defined(IN_CLOSE) || (defined(HAVE_DECL_IN_CLOSE) && HAVE_DECL_IN_CLOSE)
+	XLAT(IN_CLOSE),
+#endif
+#if defined(IN_CLOSE_WRITE) || (defined(HAVE_DECL_IN_CLOSE_WRITE) && HAVE_DECL_IN_CLOSE_WRITE)
+	XLAT(IN_CLOSE_WRITE),
+#endif
+#if defined(IN_CLOSE_NOWRITE) || (defined(HAVE_DECL_IN_CLOSE_NOWRITE) && HAVE_DECL_IN_CLOSE_NOWRITE)
+	XLAT(IN_CLOSE_NOWRITE),
+#endif
+#if defined(IN_OPEN) || (defined(HAVE_DECL_IN_OPEN) && HAVE_DECL_IN_OPEN)
+	XLAT(IN_OPEN),
+#endif
+#if defined(IN_MOVE) || (defined(HAVE_DECL_IN_MOVE) && HAVE_DECL_IN_MOVE)
+	XLAT(IN_MOVE),
+#endif
+#if defined(IN_MOVED_FROM) || (defined(HAVE_DECL_IN_MOVED_FROM) && HAVE_DECL_IN_MOVED_FROM)
+	XLAT(IN_MOVED_FROM),
+#endif
+#if defined(IN_MOVED_TO) || (defined(HAVE_DECL_IN_MOVED_TO) && HAVE_DECL_IN_MOVED_TO)
+	XLAT(IN_MOVED_TO),
+#endif
+#if defined(IN_CREATE) || (defined(HAVE_DECL_IN_CREATE) && HAVE_DECL_IN_CREATE)
+	XLAT(IN_CREATE),
+#endif
+#if defined(IN_DELETE) || (defined(HAVE_DECL_IN_DELETE) && HAVE_DECL_IN_DELETE)
+	XLAT(IN_DELETE),
+#endif
+#if defined(IN_DELETE_SELF) || (defined(HAVE_DECL_IN_DELETE_SELF) && HAVE_DECL_IN_DELETE_SELF)
+	XLAT(IN_DELETE_SELF),
+#endif
+#if defined(IN_MOVE_SELF) || (defined(HAVE_DECL_IN_MOVE_SELF) && HAVE_DECL_IN_MOVE_SELF)
+	XLAT(IN_MOVE_SELF),
+#endif
+#if defined(IN_UNMOUNT) || (defined(HAVE_DECL_IN_UNMOUNT) && HAVE_DECL_IN_UNMOUNT)
+	XLAT(IN_UNMOUNT),
+#endif
+#if defined(IN_Q_OVERFLOW) || (defined(HAVE_DECL_IN_Q_OVERFLOW) && HAVE_DECL_IN_Q_OVERFLOW)
+	XLAT(IN_Q_OVERFLOW),
+#endif
+#if defined(IN_IGNORED) || (defined(HAVE_DECL_IN_IGNORED) && HAVE_DECL_IN_IGNORED)
+	XLAT(IN_IGNORED),
+#endif
+#if defined(IN_ONLYDIR) || (defined(HAVE_DECL_IN_ONLYDIR) && HAVE_DECL_IN_ONLYDIR)
+	XLAT(IN_ONLYDIR),
+#endif
+#if defined(IN_DONT_FOLLOW) || (defined(HAVE_DECL_IN_DONT_FOLLOW) && HAVE_DECL_IN_DONT_FOLLOW)
+	XLAT(IN_DONT_FOLLOW),
+#endif
+#if defined(IN_EXCL_UNLINK) || (defined(HAVE_DECL_IN_EXCL_UNLINK) && HAVE_DECL_IN_EXCL_UNLINK)
+	XLAT(IN_EXCL_UNLINK),
+#endif
+#if defined(IN_MASK_ADD) || (defined(HAVE_DECL_IN_MASK_ADD) && HAVE_DECL_IN_MASK_ADD)
+	XLAT(IN_MASK_ADD),
+#endif
+#if defined(IN_ISDIR) || (defined(HAVE_DECL_IN_ISDIR) && HAVE_DECL_IN_ISDIR)
+	XLAT(IN_ISDIR),
+#endif
+#if defined(IN_ONESHOT) || (defined(HAVE_DECL_IN_ONESHOT) && HAVE_DECL_IN_ONESHOT)
+	XLAT(IN_ONESHOT),
+#endif
+	XLAT_END
+};
diff --git a/xlat/inotify_init_flags.h b/xlat/inotify_init_flags.h
new file mode 100644
index 0000000..ce0e0af
--- /dev/null
+++ b/xlat/inotify_init_flags.h
@@ -0,0 +1,11 @@
+/* Generated by ./xlat/gen.sh from ./xlat/inotify_init_flags.in; do not edit. */
+
+static const struct xlat inotify_init_flags[] = {
+#if defined(O_NONBLOCK) || (defined(HAVE_DECL_O_NONBLOCK) && HAVE_DECL_O_NONBLOCK)
+	XLAT(O_NONBLOCK),
+#endif
+#if defined(O_CLOEXEC) || (defined(HAVE_DECL_O_CLOEXEC) && HAVE_DECL_O_CLOEXEC)
+	XLAT(O_CLOEXEC),
+#endif
+	XLAT_END
+};
diff --git a/xlat/ioprio_class.h b/xlat/ioprio_class.h
new file mode 100644
index 0000000..5a4d8cc
--- /dev/null
+++ b/xlat/ioprio_class.h
@@ -0,0 +1,9 @@
+/* Generated by ./xlat/gen.sh from ./xlat/ioprio_class.in; do not edit. */
+
+static const struct xlat ioprio_class[] = {
+	XLAT(IOPRIO_CLASS_NONE),
+	XLAT(IOPRIO_CLASS_RT),
+	XLAT(IOPRIO_CLASS_BE),
+	XLAT(IOPRIO_CLASS_IDLE),
+	XLAT_END
+};
diff --git a/xlat/ioprio_who.h b/xlat/ioprio_who.h
new file mode 100644
index 0000000..c23f591
--- /dev/null
+++ b/xlat/ioprio_who.h
@@ -0,0 +1,8 @@
+/* Generated by ./xlat/gen.sh from ./xlat/ioprio_who.in; do not edit. */
+
+static const struct xlat ioprio_who[] = {
+	XLAT(IOPRIO_WHO_PROCESS),
+	XLAT(IOPRIO_WHO_PGRP),
+	XLAT(IOPRIO_WHO_USER),
+	XLAT_END
+};
diff --git a/xlat/ipc_msg_flags.h b/xlat/ipc_msg_flags.h
new file mode 100644
index 0000000..b01671b
--- /dev/null
+++ b/xlat/ipc_msg_flags.h
@@ -0,0 +1,14 @@
+/* Generated by ./xlat/gen.sh from ./xlat/ipc_msg_flags.in; do not edit. */
+
+static const struct xlat ipc_msg_flags[] = {
+#if defined(MSG_NOERROR) || (defined(HAVE_DECL_MSG_NOERROR) && HAVE_DECL_MSG_NOERROR)
+	XLAT(MSG_NOERROR),
+#endif
+#if defined(MSG_EXCEPT) || (defined(HAVE_DECL_MSG_EXCEPT) && HAVE_DECL_MSG_EXCEPT)
+	XLAT(MSG_EXCEPT),
+#endif
+#if defined(IPC_NOWAIT) || (defined(HAVE_DECL_IPC_NOWAIT) && HAVE_DECL_IPC_NOWAIT)
+	XLAT(IPC_NOWAIT),
+#endif
+	XLAT_END
+};
diff --git a/xlat/itimer_which.h b/xlat/itimer_which.h
new file mode 100644
index 0000000..8b001eb
--- /dev/null
+++ b/xlat/itimer_which.h
@@ -0,0 +1,14 @@
+/* Generated by ./xlat/gen.sh from ./xlat/itimer_which.in; do not edit. */
+
+static const struct xlat itimer_which[] = {
+#if defined(ITIMER_REAL) || (defined(HAVE_DECL_ITIMER_REAL) && HAVE_DECL_ITIMER_REAL)
+	XLAT(ITIMER_REAL),
+#endif
+#if defined(ITIMER_VIRTUAL) || (defined(HAVE_DECL_ITIMER_VIRTUAL) && HAVE_DECL_ITIMER_VIRTUAL)
+	XLAT(ITIMER_VIRTUAL),
+#endif
+#if defined(ITIMER_PROF) || (defined(HAVE_DECL_ITIMER_PROF) && HAVE_DECL_ITIMER_PROF)
+	XLAT(ITIMER_PROF),
+#endif
+	XLAT_END
+};
diff --git a/xlat/kexec_arch_values.h b/xlat/kexec_arch_values.h
new file mode 100644
index 0000000..c702768
--- /dev/null
+++ b/xlat/kexec_arch_values.h
@@ -0,0 +1,38 @@
+/* Generated by ./xlat/gen.sh from ./xlat/kexec_arch_values.in; do not edit. */
+
+static const struct xlat kexec_arch_values[] = {
+#if defined(KEXEC_ARCH_DEFAULT) || (defined(HAVE_DECL_KEXEC_ARCH_DEFAULT) && HAVE_DECL_KEXEC_ARCH_DEFAULT)
+	XLAT(KEXEC_ARCH_DEFAULT),
+#endif
+#if defined(KEXEC_ARCH_386) || (defined(HAVE_DECL_KEXEC_ARCH_386) && HAVE_DECL_KEXEC_ARCH_386)
+	XLAT(KEXEC_ARCH_386),
+#endif
+#if defined(KEXEC_ARCH_X86_64) || (defined(HAVE_DECL_KEXEC_ARCH_X86_64) && HAVE_DECL_KEXEC_ARCH_X86_64)
+	XLAT(KEXEC_ARCH_X86_64),
+#endif
+#if defined(KEXEC_ARCH_PPC) || (defined(HAVE_DECL_KEXEC_ARCH_PPC) && HAVE_DECL_KEXEC_ARCH_PPC)
+	XLAT(KEXEC_ARCH_PPC),
+#endif
+#if defined(KEXEC_ARCH_PPC64) || (defined(HAVE_DECL_KEXEC_ARCH_PPC64) && HAVE_DECL_KEXEC_ARCH_PPC64)
+	XLAT(KEXEC_ARCH_PPC64),
+#endif
+#if defined(KEXEC_ARCH_IA_64) || (defined(HAVE_DECL_KEXEC_ARCH_IA_64) && HAVE_DECL_KEXEC_ARCH_IA_64)
+	XLAT(KEXEC_ARCH_IA_64),
+#endif
+#if defined(KEXEC_ARCH_ARM) || (defined(HAVE_DECL_KEXEC_ARCH_ARM) && HAVE_DECL_KEXEC_ARCH_ARM)
+	XLAT(KEXEC_ARCH_ARM),
+#endif
+#if defined(KEXEC_ARCH_S390) || (defined(HAVE_DECL_KEXEC_ARCH_S390) && HAVE_DECL_KEXEC_ARCH_S390)
+	XLAT(KEXEC_ARCH_S390),
+#endif
+#if defined(KEXEC_ARCH_SH) || (defined(HAVE_DECL_KEXEC_ARCH_SH) && HAVE_DECL_KEXEC_ARCH_SH)
+	XLAT(KEXEC_ARCH_SH),
+#endif
+#if defined(KEXEC_ARCH_MIPS_LE) || (defined(HAVE_DECL_KEXEC_ARCH_MIPS_LE) && HAVE_DECL_KEXEC_ARCH_MIPS_LE)
+	XLAT(KEXEC_ARCH_MIPS_LE),
+#endif
+#if defined(KEXEC_ARCH_MIPS) || (defined(HAVE_DECL_KEXEC_ARCH_MIPS) && HAVE_DECL_KEXEC_ARCH_MIPS)
+	XLAT(KEXEC_ARCH_MIPS),
+#endif
+	XLAT_END
+};
diff --git a/xlat/kexec_flags.h b/xlat/kexec_flags.h
new file mode 100644
index 0000000..e43ebff
--- /dev/null
+++ b/xlat/kexec_flags.h
@@ -0,0 +1,11 @@
+/* Generated by ./xlat/gen.sh from ./xlat/kexec_flags.in; do not edit. */
+
+static const struct xlat kexec_flags[] = {
+#if defined(KEXEC_ON_CRASH) || (defined(HAVE_DECL_KEXEC_ON_CRASH) && HAVE_DECL_KEXEC_ON_CRASH)
+	XLAT(KEXEC_ON_CRASH),
+#endif
+#if defined(KEXEC_PRESERVE_CONTEXT) || (defined(HAVE_DECL_KEXEC_PRESERVE_CONTEXT) && HAVE_DECL_KEXEC_PRESERVE_CONTEXT)
+	XLAT(KEXEC_PRESERVE_CONTEXT),
+#endif
+	XLAT_END
+};
diff --git a/xlat/key_perms.h b/xlat/key_perms.h
new file mode 100644
index 0000000..5cba3a0
--- /dev/null
+++ b/xlat/key_perms.h
@@ -0,0 +1,89 @@
+/* Generated by ./xlat/gen.sh from ./xlat/key_perms.in; do not edit. */
+
+static const struct xlat key_perms[] = {
+#if defined(KEY_POS_VIEW) || (defined(HAVE_DECL_KEY_POS_VIEW) && HAVE_DECL_KEY_POS_VIEW)
+	XLAT(KEY_POS_VIEW),
+#endif
+#if defined(KEY_POS_READ) || (defined(HAVE_DECL_KEY_POS_READ) && HAVE_DECL_KEY_POS_READ)
+	XLAT(KEY_POS_READ),
+#endif
+#if defined(KEY_POS_WRITE) || (defined(HAVE_DECL_KEY_POS_WRITE) && HAVE_DECL_KEY_POS_WRITE)
+	XLAT(KEY_POS_WRITE),
+#endif
+#if defined(KEY_POS_SEARCH) || (defined(HAVE_DECL_KEY_POS_SEARCH) && HAVE_DECL_KEY_POS_SEARCH)
+	XLAT(KEY_POS_SEARCH),
+#endif
+#if defined(KEY_POS_LINK) || (defined(HAVE_DECL_KEY_POS_LINK) && HAVE_DECL_KEY_POS_LINK)
+	XLAT(KEY_POS_LINK),
+#endif
+#if defined(KEY_POS_SETATTR) || (defined(HAVE_DECL_KEY_POS_SETATTR) && HAVE_DECL_KEY_POS_SETATTR)
+	XLAT(KEY_POS_SETATTR),
+#endif
+#if defined(KEY_POS_ALL) || (defined(HAVE_DECL_KEY_POS_ALL) && HAVE_DECL_KEY_POS_ALL)
+	XLAT(KEY_POS_ALL),
+#endif
+#if defined(KEY_USR_VIEW) || (defined(HAVE_DECL_KEY_USR_VIEW) && HAVE_DECL_KEY_USR_VIEW)
+	XLAT(KEY_USR_VIEW),
+#endif
+#if defined(KEY_USR_READ) || (defined(HAVE_DECL_KEY_USR_READ) && HAVE_DECL_KEY_USR_READ)
+	XLAT(KEY_USR_READ),
+#endif
+#if defined(KEY_USR_WRITE) || (defined(HAVE_DECL_KEY_USR_WRITE) && HAVE_DECL_KEY_USR_WRITE)
+	XLAT(KEY_USR_WRITE),
+#endif
+#if defined(KEY_USR_SEARCH) || (defined(HAVE_DECL_KEY_USR_SEARCH) && HAVE_DECL_KEY_USR_SEARCH)
+	XLAT(KEY_USR_SEARCH),
+#endif
+#if defined(KEY_USR_LINK) || (defined(HAVE_DECL_KEY_USR_LINK) && HAVE_DECL_KEY_USR_LINK)
+	XLAT(KEY_USR_LINK),
+#endif
+#if defined(KEY_USR_SETATTR) || (defined(HAVE_DECL_KEY_USR_SETATTR) && HAVE_DECL_KEY_USR_SETATTR)
+	XLAT(KEY_USR_SETATTR),
+#endif
+#if defined(KEY_USR_ALL) || (defined(HAVE_DECL_KEY_USR_ALL) && HAVE_DECL_KEY_USR_ALL)
+	XLAT(KEY_USR_ALL),
+#endif
+#if defined(KEY_GRP_VIEW) || (defined(HAVE_DECL_KEY_GRP_VIEW) && HAVE_DECL_KEY_GRP_VIEW)
+	XLAT(KEY_GRP_VIEW),
+#endif
+#if defined(KEY_GRP_READ) || (defined(HAVE_DECL_KEY_GRP_READ) && HAVE_DECL_KEY_GRP_READ)
+	XLAT(KEY_GRP_READ),
+#endif
+#if defined(KEY_GRP_WRITE) || (defined(HAVE_DECL_KEY_GRP_WRITE) && HAVE_DECL_KEY_GRP_WRITE)
+	XLAT(KEY_GRP_WRITE),
+#endif
+#if defined(KEY_GRP_SEARCH) || (defined(HAVE_DECL_KEY_GRP_SEARCH) && HAVE_DECL_KEY_GRP_SEARCH)
+	XLAT(KEY_GRP_SEARCH),
+#endif
+#if defined(KEY_GRP_LINK) || (defined(HAVE_DECL_KEY_GRP_LINK) && HAVE_DECL_KEY_GRP_LINK)
+	XLAT(KEY_GRP_LINK),
+#endif
+#if defined(KEY_GRP_SETATTR) || (defined(HAVE_DECL_KEY_GRP_SETATTR) && HAVE_DECL_KEY_GRP_SETATTR)
+	XLAT(KEY_GRP_SETATTR),
+#endif
+#if defined(KEY_GRP_ALL) || (defined(HAVE_DECL_KEY_GRP_ALL) && HAVE_DECL_KEY_GRP_ALL)
+	XLAT(KEY_GRP_ALL),
+#endif
+#if defined(KEY_OTH_VIEW) || (defined(HAVE_DECL_KEY_OTH_VIEW) && HAVE_DECL_KEY_OTH_VIEW)
+	XLAT(KEY_OTH_VIEW),
+#endif
+#if defined(KEY_OTH_READ) || (defined(HAVE_DECL_KEY_OTH_READ) && HAVE_DECL_KEY_OTH_READ)
+	XLAT(KEY_OTH_READ),
+#endif
+#if defined(KEY_OTH_WRITE) || (defined(HAVE_DECL_KEY_OTH_WRITE) && HAVE_DECL_KEY_OTH_WRITE)
+	XLAT(KEY_OTH_WRITE),
+#endif
+#if defined(KEY_OTH_SEARCH) || (defined(HAVE_DECL_KEY_OTH_SEARCH) && HAVE_DECL_KEY_OTH_SEARCH)
+	XLAT(KEY_OTH_SEARCH),
+#endif
+#if defined(KEY_OTH_LINK) || (defined(HAVE_DECL_KEY_OTH_LINK) && HAVE_DECL_KEY_OTH_LINK)
+	XLAT(KEY_OTH_LINK),
+#endif
+#if defined(KEY_OTH_SETATTR) || (defined(HAVE_DECL_KEY_OTH_SETATTR) && HAVE_DECL_KEY_OTH_SETATTR)
+	XLAT(KEY_OTH_SETATTR),
+#endif
+#if defined(KEY_OTH_ALL) || (defined(HAVE_DECL_KEY_OTH_ALL) && HAVE_DECL_KEY_OTH_ALL)
+	XLAT(KEY_OTH_ALL),
+#endif
+	XLAT_END
+};
diff --git a/xlat/key_reqkeys.h b/xlat/key_reqkeys.h
new file mode 100644
index 0000000..fd4ac0a
--- /dev/null
+++ b/xlat/key_reqkeys.h
@@ -0,0 +1,32 @@
+/* Generated by ./xlat/gen.sh from ./xlat/key_reqkeys.in; do not edit. */
+
+static const struct xlat key_reqkeys[] = {
+#if defined(KEY_REQKEY_DEFL_NO_CHANGE) || (defined(HAVE_DECL_KEY_REQKEY_DEFL_NO_CHANGE) && HAVE_DECL_KEY_REQKEY_DEFL_NO_CHANGE)
+	XLAT(KEY_REQKEY_DEFL_NO_CHANGE),
+#endif
+#if defined(KEY_REQKEY_DEFL_DEFAULT) || (defined(HAVE_DECL_KEY_REQKEY_DEFL_DEFAULT) && HAVE_DECL_KEY_REQKEY_DEFL_DEFAULT)
+	XLAT(KEY_REQKEY_DEFL_DEFAULT),
+#endif
+#if defined(KEY_REQKEY_DEFL_THREAD_KEYRING) || (defined(HAVE_DECL_KEY_REQKEY_DEFL_THREAD_KEYRING) && HAVE_DECL_KEY_REQKEY_DEFL_THREAD_KEYRING)
+	XLAT(KEY_REQKEY_DEFL_THREAD_KEYRING),
+#endif
+#if defined(KEY_REQKEY_DEFL_PROCESS_KEYRING) || (defined(HAVE_DECL_KEY_REQKEY_DEFL_PROCESS_KEYRING) && HAVE_DECL_KEY_REQKEY_DEFL_PROCESS_KEYRING)
+	XLAT(KEY_REQKEY_DEFL_PROCESS_KEYRING),
+#endif
+#if defined(KEY_REQKEY_DEFL_SESSION_KEYRING) || (defined(HAVE_DECL_KEY_REQKEY_DEFL_SESSION_KEYRING) && HAVE_DECL_KEY_REQKEY_DEFL_SESSION_KEYRING)
+	XLAT(KEY_REQKEY_DEFL_SESSION_KEYRING),
+#endif
+#if defined(KEY_REQKEY_DEFL_USER_KEYRING) || (defined(HAVE_DECL_KEY_REQKEY_DEFL_USER_KEYRING) && HAVE_DECL_KEY_REQKEY_DEFL_USER_KEYRING)
+	XLAT(KEY_REQKEY_DEFL_USER_KEYRING),
+#endif
+#if defined(KEY_REQKEY_DEFL_USER_SESSION_KEYRING) || (defined(HAVE_DECL_KEY_REQKEY_DEFL_USER_SESSION_KEYRING) && HAVE_DECL_KEY_REQKEY_DEFL_USER_SESSION_KEYRING)
+	XLAT(KEY_REQKEY_DEFL_USER_SESSION_KEYRING),
+#endif
+#if defined(KEY_REQKEY_DEFL_GROUP_KEYRING) || (defined(HAVE_DECL_KEY_REQKEY_DEFL_GROUP_KEYRING) && HAVE_DECL_KEY_REQKEY_DEFL_GROUP_KEYRING)
+	XLAT(KEY_REQKEY_DEFL_GROUP_KEYRING),
+#endif
+#if defined(KEY_REQKEY_DEFL_REQUESTOR_KEYRING) || (defined(HAVE_DECL_KEY_REQKEY_DEFL_REQUESTOR_KEYRING) && HAVE_DECL_KEY_REQKEY_DEFL_REQUESTOR_KEYRING)
+	XLAT(KEY_REQKEY_DEFL_REQUESTOR_KEYRING),
+#endif
+	XLAT_END
+};
diff --git a/xlat/key_spec.h b/xlat/key_spec.h
new file mode 100644
index 0000000..71c6fc1
--- /dev/null
+++ b/xlat/key_spec.h
@@ -0,0 +1,29 @@
+/* Generated by ./xlat/gen.sh from ./xlat/key_spec.in; do not edit. */
+
+static const struct xlat key_spec[] = {
+#if defined(KEY_SPEC_THREAD_KEYRING) || (defined(HAVE_DECL_KEY_SPEC_THREAD_KEYRING) && HAVE_DECL_KEY_SPEC_THREAD_KEYRING)
+	XLAT(KEY_SPEC_THREAD_KEYRING),
+#endif
+#if defined(KEY_SPEC_PROCESS_KEYRING) || (defined(HAVE_DECL_KEY_SPEC_PROCESS_KEYRING) && HAVE_DECL_KEY_SPEC_PROCESS_KEYRING)
+	XLAT(KEY_SPEC_PROCESS_KEYRING),
+#endif
+#if defined(KEY_SPEC_SESSION_KEYRING) || (defined(HAVE_DECL_KEY_SPEC_SESSION_KEYRING) && HAVE_DECL_KEY_SPEC_SESSION_KEYRING)
+	XLAT(KEY_SPEC_SESSION_KEYRING),
+#endif
+#if defined(KEY_SPEC_USER_KEYRING) || (defined(HAVE_DECL_KEY_SPEC_USER_KEYRING) && HAVE_DECL_KEY_SPEC_USER_KEYRING)
+	XLAT(KEY_SPEC_USER_KEYRING),
+#endif
+#if defined(KEY_SPEC_USER_SESSION_KEYRING) || (defined(HAVE_DECL_KEY_SPEC_USER_SESSION_KEYRING) && HAVE_DECL_KEY_SPEC_USER_SESSION_KEYRING)
+	XLAT(KEY_SPEC_USER_SESSION_KEYRING),
+#endif
+#if defined(KEY_SPEC_GROUP_KEYRING) || (defined(HAVE_DECL_KEY_SPEC_GROUP_KEYRING) && HAVE_DECL_KEY_SPEC_GROUP_KEYRING)
+	XLAT(KEY_SPEC_GROUP_KEYRING),
+#endif
+#if defined(KEY_SPEC_REQKEY_AUTH_KEY) || (defined(HAVE_DECL_KEY_SPEC_REQKEY_AUTH_KEY) && HAVE_DECL_KEY_SPEC_REQKEY_AUTH_KEY)
+	XLAT(KEY_SPEC_REQKEY_AUTH_KEY),
+#endif
+#if defined(KEY_SPEC_REQUESTOR_KEYRING) || (defined(HAVE_DECL_KEY_SPEC_REQUESTOR_KEYRING) && HAVE_DECL_KEY_SPEC_REQUESTOR_KEYRING)
+	XLAT(KEY_SPEC_REQUESTOR_KEYRING),
+#endif
+	XLAT_END
+};
diff --git a/xlat/keyctl_commands.h b/xlat/keyctl_commands.h
new file mode 100644
index 0000000..6fc7246
--- /dev/null
+++ b/xlat/keyctl_commands.h
@@ -0,0 +1,74 @@
+/* Generated by ./xlat/gen.sh from ./xlat/keyctl_commands.in; do not edit. */
+
+static const struct xlat keyctl_commands[] = {
+#if defined(KEYCTL_GET_KEYRING_ID) || (defined(HAVE_DECL_KEYCTL_GET_KEYRING_ID) && HAVE_DECL_KEYCTL_GET_KEYRING_ID)
+	XLAT(KEYCTL_GET_KEYRING_ID),
+#endif
+#if defined(KEYCTL_JOIN_SESSION_KEYRING) || (defined(HAVE_DECL_KEYCTL_JOIN_SESSION_KEYRING) && HAVE_DECL_KEYCTL_JOIN_SESSION_KEYRING)
+	XLAT(KEYCTL_JOIN_SESSION_KEYRING),
+#endif
+#if defined(KEYCTL_UPDATE) || (defined(HAVE_DECL_KEYCTL_UPDATE) && HAVE_DECL_KEYCTL_UPDATE)
+	XLAT(KEYCTL_UPDATE),
+#endif
+#if defined(KEYCTL_REVOKE) || (defined(HAVE_DECL_KEYCTL_REVOKE) && HAVE_DECL_KEYCTL_REVOKE)
+	XLAT(KEYCTL_REVOKE),
+#endif
+#if defined(KEYCTL_CHOWN) || (defined(HAVE_DECL_KEYCTL_CHOWN) && HAVE_DECL_KEYCTL_CHOWN)
+	XLAT(KEYCTL_CHOWN),
+#endif
+#if defined(KEYCTL_SETPERM) || (defined(HAVE_DECL_KEYCTL_SETPERM) && HAVE_DECL_KEYCTL_SETPERM)
+	XLAT(KEYCTL_SETPERM),
+#endif
+#if defined(KEYCTL_DESCRIBE) || (defined(HAVE_DECL_KEYCTL_DESCRIBE) && HAVE_DECL_KEYCTL_DESCRIBE)
+	XLAT(KEYCTL_DESCRIBE),
+#endif
+#if defined(KEYCTL_CLEAR) || (defined(HAVE_DECL_KEYCTL_CLEAR) && HAVE_DECL_KEYCTL_CLEAR)
+	XLAT(KEYCTL_CLEAR),
+#endif
+#if defined(KEYCTL_LINK) || (defined(HAVE_DECL_KEYCTL_LINK) && HAVE_DECL_KEYCTL_LINK)
+	XLAT(KEYCTL_LINK),
+#endif
+#if defined(KEYCTL_UNLINK) || (defined(HAVE_DECL_KEYCTL_UNLINK) && HAVE_DECL_KEYCTL_UNLINK)
+	XLAT(KEYCTL_UNLINK),
+#endif
+#if defined(KEYCTL_SEARCH) || (defined(HAVE_DECL_KEYCTL_SEARCH) && HAVE_DECL_KEYCTL_SEARCH)
+	XLAT(KEYCTL_SEARCH),
+#endif
+#if defined(KEYCTL_READ) || (defined(HAVE_DECL_KEYCTL_READ) && HAVE_DECL_KEYCTL_READ)
+	XLAT(KEYCTL_READ),
+#endif
+#if defined(KEYCTL_INSTANTIATE) || (defined(HAVE_DECL_KEYCTL_INSTANTIATE) && HAVE_DECL_KEYCTL_INSTANTIATE)
+	XLAT(KEYCTL_INSTANTIATE),
+#endif
+#if defined(KEYCTL_NEGATE) || (defined(HAVE_DECL_KEYCTL_NEGATE) && HAVE_DECL_KEYCTL_NEGATE)
+	XLAT(KEYCTL_NEGATE),
+#endif
+#if defined(KEYCTL_SET_REQKEY_KEYRING) || (defined(HAVE_DECL_KEYCTL_SET_REQKEY_KEYRING) && HAVE_DECL_KEYCTL_SET_REQKEY_KEYRING)
+	XLAT(KEYCTL_SET_REQKEY_KEYRING),
+#endif
+#if defined(KEYCTL_SET_TIMEOUT) || (defined(HAVE_DECL_KEYCTL_SET_TIMEOUT) && HAVE_DECL_KEYCTL_SET_TIMEOUT)
+	XLAT(KEYCTL_SET_TIMEOUT),
+#endif
+#if defined(KEYCTL_ASSUME_AUTHORITY) || (defined(HAVE_DECL_KEYCTL_ASSUME_AUTHORITY) && HAVE_DECL_KEYCTL_ASSUME_AUTHORITY)
+	XLAT(KEYCTL_ASSUME_AUTHORITY),
+#endif
+#if defined(KEYCTL_GET_SECURITY) || (defined(HAVE_DECL_KEYCTL_GET_SECURITY) && HAVE_DECL_KEYCTL_GET_SECURITY)
+	XLAT(KEYCTL_GET_SECURITY),
+#endif
+#if defined(KEYCTL_SESSION_TO_PARENT) || (defined(HAVE_DECL_KEYCTL_SESSION_TO_PARENT) && HAVE_DECL_KEYCTL_SESSION_TO_PARENT)
+	XLAT(KEYCTL_SESSION_TO_PARENT),
+#endif
+#if defined(KEYCTL_REJECT) || (defined(HAVE_DECL_KEYCTL_REJECT) && HAVE_DECL_KEYCTL_REJECT)
+	XLAT(KEYCTL_REJECT),
+#endif
+#if defined(KEYCTL_INSTANTIATE_IOV) || (defined(HAVE_DECL_KEYCTL_INSTANTIATE_IOV) && HAVE_DECL_KEYCTL_INSTANTIATE_IOV)
+	XLAT(KEYCTL_INSTANTIATE_IOV),
+#endif
+#if defined(KEYCTL_INVALIDATE) || (defined(HAVE_DECL_KEYCTL_INVALIDATE) && HAVE_DECL_KEYCTL_INVALIDATE)
+	XLAT(KEYCTL_INVALIDATE),
+#endif
+#if defined(KEYCTL_GET_PERSISTENT) || (defined(HAVE_DECL_KEYCTL_GET_PERSISTENT) && HAVE_DECL_KEYCTL_GET_PERSISTENT)
+	XLAT(KEYCTL_GET_PERSISTENT),
+#endif
+	XLAT_END
+};
diff --git a/xlat/lockfcmds.h b/xlat/lockfcmds.h
new file mode 100644
index 0000000..ea50d5f
--- /dev/null
+++ b/xlat/lockfcmds.h
@@ -0,0 +1,20 @@
+/* Generated by ./xlat/gen.sh from ./xlat/lockfcmds.in; do not edit. */
+
+static const struct xlat lockfcmds[] = {
+#if defined(F_RDLCK) || (defined(HAVE_DECL_F_RDLCK) && HAVE_DECL_F_RDLCK)
+	XLAT(F_RDLCK),
+#endif
+#if defined(F_WRLCK) || (defined(HAVE_DECL_F_WRLCK) && HAVE_DECL_F_WRLCK)
+	XLAT(F_WRLCK),
+#endif
+#if defined(F_UNLCK) || (defined(HAVE_DECL_F_UNLCK) && HAVE_DECL_F_UNLCK)
+	XLAT(F_UNLCK),
+#endif
+#if defined(F_EXLCK) || (defined(HAVE_DECL_F_EXLCK) && HAVE_DECL_F_EXLCK)
+	XLAT(F_EXLCK),
+#endif
+#if defined(F_SHLCK) || (defined(HAVE_DECL_F_SHLCK) && HAVE_DECL_F_SHLCK)
+	XLAT(F_SHLCK),
+#endif
+	XLAT_END
+};
diff --git a/xlat/loop_crypt_type_options.h b/xlat/loop_crypt_type_options.h
new file mode 100644
index 0000000..3b1c287
--- /dev/null
+++ b/xlat/loop_crypt_type_options.h
@@ -0,0 +1,35 @@
+/* Generated by ./xlat/gen.sh from ./xlat/loop_crypt_type_options.in; do not edit. */
+
+static const struct xlat loop_crypt_type_options[] = {
+#if defined(LO_CRYPT_NONE) || (defined(HAVE_DECL_LO_CRYPT_NONE) && HAVE_DECL_LO_CRYPT_NONE)
+	XLAT(LO_CRYPT_NONE),
+#endif
+#if defined(LO_CRYPT_XOR) || (defined(HAVE_DECL_LO_CRYPT_XOR) && HAVE_DECL_LO_CRYPT_XOR)
+	XLAT(LO_CRYPT_XOR),
+#endif
+#if defined(LO_CRYPT_DES) || (defined(HAVE_DECL_LO_CRYPT_DES) && HAVE_DECL_LO_CRYPT_DES)
+	XLAT(LO_CRYPT_DES),
+#endif
+#if defined(LO_CRYPT_FISH2) || (defined(HAVE_DECL_LO_CRYPT_FISH2) && HAVE_DECL_LO_CRYPT_FISH2)
+	XLAT(LO_CRYPT_FISH2),
+#endif
+#if defined(LO_CRYPT_BLOW) || (defined(HAVE_DECL_LO_CRYPT_BLOW) && HAVE_DECL_LO_CRYPT_BLOW)
+	XLAT(LO_CRYPT_BLOW),
+#endif
+#if defined(LO_CRYPT_CAST128) || (defined(HAVE_DECL_LO_CRYPT_CAST128) && HAVE_DECL_LO_CRYPT_CAST128)
+	XLAT(LO_CRYPT_CAST128),
+#endif
+#if defined(LO_CRYPT_IDEA) || (defined(HAVE_DECL_LO_CRYPT_IDEA) && HAVE_DECL_LO_CRYPT_IDEA)
+	XLAT(LO_CRYPT_IDEA),
+#endif
+#if defined(LO_CRYPT_DUMMY) || (defined(HAVE_DECL_LO_CRYPT_DUMMY) && HAVE_DECL_LO_CRYPT_DUMMY)
+	XLAT(LO_CRYPT_DUMMY),
+#endif
+#if defined(LO_CRYPT_SKIPJACK) || (defined(HAVE_DECL_LO_CRYPT_SKIPJACK) && HAVE_DECL_LO_CRYPT_SKIPJACK)
+	XLAT(LO_CRYPT_SKIPJACK),
+#endif
+#if defined(LO_CRYPT_CRYPTOAPI) || (defined(HAVE_DECL_LO_CRYPT_CRYPTOAPI) && HAVE_DECL_LO_CRYPT_CRYPTOAPI)
+	XLAT(LO_CRYPT_CRYPTOAPI),
+#endif
+	XLAT_END
+};
diff --git a/xlat/loop_flags_options.h b/xlat/loop_flags_options.h
new file mode 100644
index 0000000..1333714
--- /dev/null
+++ b/xlat/loop_flags_options.h
@@ -0,0 +1,14 @@
+/* Generated by ./xlat/gen.sh from ./xlat/loop_flags_options.in; do not edit. */
+
+static const struct xlat loop_flags_options[] = {
+#if defined(LO_FLAGS_READ_ONLY) || (defined(HAVE_DECL_LO_FLAGS_READ_ONLY) && HAVE_DECL_LO_FLAGS_READ_ONLY)
+	XLAT(LO_FLAGS_READ_ONLY),
+#endif
+#if defined(LO_FLAGS_AUTOCLEAR) || (defined(HAVE_DECL_LO_FLAGS_AUTOCLEAR) && HAVE_DECL_LO_FLAGS_AUTOCLEAR)
+	XLAT(LO_FLAGS_AUTOCLEAR),
+#endif
+#if defined(LO_FLAGS_PARTSCAN) || (defined(HAVE_DECL_LO_FLAGS_PARTSCAN) && HAVE_DECL_LO_FLAGS_PARTSCAN)
+	XLAT(LO_FLAGS_PARTSCAN),
+#endif
+	XLAT_END
+};
diff --git a/xlat/madvise_cmds.h b/xlat/madvise_cmds.h
new file mode 100644
index 0000000..1ff9641
--- /dev/null
+++ b/xlat/madvise_cmds.h
@@ -0,0 +1,53 @@
+/* Generated by ./xlat/gen.sh from ./xlat/madvise_cmds.in; do not edit. */
+
+static const struct xlat madvise_cmds[] = {
+#if defined(MADV_NORMAL) || (defined(HAVE_DECL_MADV_NORMAL) && HAVE_DECL_MADV_NORMAL)
+	XLAT(MADV_NORMAL),
+#endif
+#if defined(MADV_RANDOM) || (defined(HAVE_DECL_MADV_RANDOM) && HAVE_DECL_MADV_RANDOM)
+	XLAT(MADV_RANDOM),
+#endif
+#if defined(MADV_SEQUENTIAL) || (defined(HAVE_DECL_MADV_SEQUENTIAL) && HAVE_DECL_MADV_SEQUENTIAL)
+	XLAT(MADV_SEQUENTIAL),
+#endif
+#if defined(MADV_WILLNEED) || (defined(HAVE_DECL_MADV_WILLNEED) && HAVE_DECL_MADV_WILLNEED)
+	XLAT(MADV_WILLNEED),
+#endif
+#if defined(MADV_DONTNEED) || (defined(HAVE_DECL_MADV_DONTNEED) && HAVE_DECL_MADV_DONTNEED)
+	XLAT(MADV_DONTNEED),
+#endif
+#if defined(MADV_REMOVE) || (defined(HAVE_DECL_MADV_REMOVE) && HAVE_DECL_MADV_REMOVE)
+	XLAT(MADV_REMOVE),
+#endif
+#if defined(MADV_DONTFORK) || (defined(HAVE_DECL_MADV_DONTFORK) && HAVE_DECL_MADV_DONTFORK)
+	XLAT(MADV_DONTFORK),
+#endif
+#if defined(MADV_DOFORK) || (defined(HAVE_DECL_MADV_DOFORK) && HAVE_DECL_MADV_DOFORK)
+	XLAT(MADV_DOFORK),
+#endif
+#if defined(MADV_HWPOISON) || (defined(HAVE_DECL_MADV_HWPOISON) && HAVE_DECL_MADV_HWPOISON)
+	XLAT(MADV_HWPOISON),
+#endif
+#if defined(MADV_SOFT_OFFLINE) || (defined(HAVE_DECL_MADV_SOFT_OFFLINE) && HAVE_DECL_MADV_SOFT_OFFLINE)
+	XLAT(MADV_SOFT_OFFLINE),
+#endif
+#if defined(MADV_MERGEABLE) || (defined(HAVE_DECL_MADV_MERGEABLE) && HAVE_DECL_MADV_MERGEABLE)
+	XLAT(MADV_MERGEABLE),
+#endif
+#if defined(MADV_UNMERGEABLE) || (defined(HAVE_DECL_MADV_UNMERGEABLE) && HAVE_DECL_MADV_UNMERGEABLE)
+	XLAT(MADV_UNMERGEABLE),
+#endif
+#if defined(MADV_HUGEPAGE) || (defined(HAVE_DECL_MADV_HUGEPAGE) && HAVE_DECL_MADV_HUGEPAGE)
+	XLAT(MADV_HUGEPAGE),
+#endif
+#if defined(MADV_NOHUGEPAGE) || (defined(HAVE_DECL_MADV_NOHUGEPAGE) && HAVE_DECL_MADV_NOHUGEPAGE)
+	XLAT(MADV_NOHUGEPAGE),
+#endif
+#if defined(MADV_DONTDUMP) || (defined(HAVE_DECL_MADV_DONTDUMP) && HAVE_DECL_MADV_DONTDUMP)
+	XLAT(MADV_DONTDUMP),
+#endif
+#if defined(MADV_DODUMP) || (defined(HAVE_DECL_MADV_DODUMP) && HAVE_DECL_MADV_DODUMP)
+	XLAT(MADV_DODUMP),
+#endif
+	XLAT_END
+};
diff --git a/xlat/mbindflags.h b/xlat/mbindflags.h
new file mode 100644
index 0000000..b789068
--- /dev/null
+++ b/xlat/mbindflags.h
@@ -0,0 +1,14 @@
+/* Generated by ./xlat/gen.sh from ./xlat/mbindflags.in; do not edit. */
+
+static const struct xlat mbindflags[] = {
+#if defined(MPOL_MF_STRICT) || (defined(HAVE_DECL_MPOL_MF_STRICT) && HAVE_DECL_MPOL_MF_STRICT)
+	XLAT(MPOL_MF_STRICT),
+#endif
+#if defined(MPOL_MF_MOVE) || (defined(HAVE_DECL_MPOL_MF_MOVE) && HAVE_DECL_MPOL_MF_MOVE)
+	XLAT(MPOL_MF_MOVE),
+#endif
+#if defined(MPOL_MF_MOVE_ALL) || (defined(HAVE_DECL_MPOL_MF_MOVE_ALL) && HAVE_DECL_MPOL_MF_MOVE_ALL)
+	XLAT(MPOL_MF_MOVE_ALL),
+#endif
+	XLAT_END
+};
diff --git a/xlat/mctl_funcs.h b/xlat/mctl_funcs.h
new file mode 100644
index 0000000..a6075cf
--- /dev/null
+++ b/xlat/mctl_funcs.h
@@ -0,0 +1,20 @@
+/* Generated by ./xlat/gen.sh from ./xlat/mctl_funcs.in; do not edit. */
+
+static const struct xlat mctl_funcs[] = {
+#if defined(MC_LOCK) || (defined(HAVE_DECL_MC_LOCK) && HAVE_DECL_MC_LOCK)
+	XLAT(MC_LOCK),
+#endif
+#if defined(MC_LOCKAS) || (defined(HAVE_DECL_MC_LOCKAS) && HAVE_DECL_MC_LOCKAS)
+	XLAT(MC_LOCKAS),
+#endif
+#if defined(MC_SYNC) || (defined(HAVE_DECL_MC_SYNC) && HAVE_DECL_MC_SYNC)
+	XLAT(MC_SYNC),
+#endif
+#if defined(MC_UNLOCK) || (defined(HAVE_DECL_MC_UNLOCK) && HAVE_DECL_MC_UNLOCK)
+	XLAT(MC_UNLOCK),
+#endif
+#if defined(MC_UNLOCKAS) || (defined(HAVE_DECL_MC_UNLOCKAS) && HAVE_DECL_MC_UNLOCKAS)
+	XLAT(MC_UNLOCKAS),
+#endif
+	XLAT_END
+};
diff --git a/xlat/mctl_lockas.h b/xlat/mctl_lockas.h
new file mode 100644
index 0000000..647ee2d
--- /dev/null
+++ b/xlat/mctl_lockas.h
@@ -0,0 +1,11 @@
+/* Generated by ./xlat/gen.sh from ./xlat/mctl_lockas.in; do not edit. */
+
+static const struct xlat mctl_lockas[] = {
+#if defined(MCL_CURRENT) || (defined(HAVE_DECL_MCL_CURRENT) && HAVE_DECL_MCL_CURRENT)
+	XLAT(MCL_CURRENT),
+#endif
+#if defined(MCL_FUTURE) || (defined(HAVE_DECL_MCL_FUTURE) && HAVE_DECL_MCL_FUTURE)
+	XLAT(MCL_FUTURE),
+#endif
+	XLAT_END
+};
diff --git a/xlat/mctl_sync.h b/xlat/mctl_sync.h
new file mode 100644
index 0000000..bae678e
--- /dev/null
+++ b/xlat/mctl_sync.h
@@ -0,0 +1,14 @@
+/* Generated by ./xlat/gen.sh from ./xlat/mctl_sync.in; do not edit. */
+
+static const struct xlat mctl_sync[] = {
+#if defined(MS_SYNC) || (defined(HAVE_DECL_MS_SYNC) && HAVE_DECL_MS_SYNC)
+	XLAT(MS_SYNC),
+#endif
+#if defined(MS_ASYNC) || (defined(HAVE_DECL_MS_ASYNC) && HAVE_DECL_MS_ASYNC)
+	XLAT(MS_ASYNC),
+#endif
+#if defined(MS_INVALIDATE) || (defined(HAVE_DECL_MS_INVALIDATE) && HAVE_DECL_MS_INVALIDATE)
+	XLAT(MS_INVALIDATE),
+#endif
+	XLAT_END
+};
diff --git a/xlat/mempolicyflags.h b/xlat/mempolicyflags.h
new file mode 100644
index 0000000..c88f326
--- /dev/null
+++ b/xlat/mempolicyflags.h
@@ -0,0 +1,11 @@
+/* Generated by ./xlat/gen.sh from ./xlat/mempolicyflags.in; do not edit. */
+
+static const struct xlat mempolicyflags[] = {
+#if defined(MPOL_F_NODE) || (defined(HAVE_DECL_MPOL_F_NODE) && HAVE_DECL_MPOL_F_NODE)
+	XLAT(MPOL_F_NODE),
+#endif
+#if defined(MPOL_F_ADDR) || (defined(HAVE_DECL_MPOL_F_ADDR) && HAVE_DECL_MPOL_F_ADDR)
+	XLAT(MPOL_F_ADDR),
+#endif
+	XLAT_END
+};
diff --git a/xlat/mlockall_flags.h b/xlat/mlockall_flags.h
new file mode 100644
index 0000000..8cf80bb
--- /dev/null
+++ b/xlat/mlockall_flags.h
@@ -0,0 +1,11 @@
+/* Generated by ./xlat/gen.sh from ./xlat/mlockall_flags.in; do not edit. */
+
+static const struct xlat mlockall_flags[] = {
+#if defined(MCL_CURRENT) || (defined(HAVE_DECL_MCL_CURRENT) && HAVE_DECL_MCL_CURRENT)
+	XLAT(MCL_CURRENT),
+#endif
+#if defined(MCL_FUTURE) || (defined(HAVE_DECL_MCL_FUTURE) && HAVE_DECL_MCL_FUTURE)
+	XLAT(MCL_FUTURE),
+#endif
+	XLAT_END
+};
diff --git a/xlat/mmap_flags.h b/xlat/mmap_flags.h
new file mode 100644
index 0000000..91029f8
--- /dev/null
+++ b/xlat/mmap_flags.h
@@ -0,0 +1,106 @@
+/* Generated by ./xlat/gen.sh from ./xlat/mmap_flags.in; do not edit. */
+
+static const struct xlat mmap_flags[] = {
+#if defined(MAP_SHARED) || (defined(HAVE_DECL_MAP_SHARED) && HAVE_DECL_MAP_SHARED)
+	XLAT(MAP_SHARED),
+#endif
+#if defined(MAP_PRIVATE) || (defined(HAVE_DECL_MAP_PRIVATE) && HAVE_DECL_MAP_PRIVATE)
+	XLAT(MAP_PRIVATE),
+#endif
+#if defined(MAP_FIXED) || (defined(HAVE_DECL_MAP_FIXED) && HAVE_DECL_MAP_FIXED)
+	XLAT(MAP_FIXED),
+#endif
+#if defined(MAP_ANONYMOUS) || (defined(HAVE_DECL_MAP_ANONYMOUS) && HAVE_DECL_MAP_ANONYMOUS)
+	XLAT(MAP_ANONYMOUS),
+#endif
+#if defined(MAP_32BIT) || (defined(HAVE_DECL_MAP_32BIT) && HAVE_DECL_MAP_32BIT)
+	XLAT(MAP_32BIT),
+#endif
+#if defined(MAP_RENAME) || (defined(HAVE_DECL_MAP_RENAME) && HAVE_DECL_MAP_RENAME)
+	XLAT(MAP_RENAME),
+#endif
+#if defined(MAP_NORESERVE) || (defined(HAVE_DECL_MAP_NORESERVE) && HAVE_DECL_MAP_NORESERVE)
+	XLAT(MAP_NORESERVE),
+#endif
+#if defined(MAP_POPULATE) || (defined(HAVE_DECL_MAP_POPULATE) && HAVE_DECL_MAP_POPULATE)
+	XLAT(MAP_POPULATE),
+#endif
+#if defined(MAP_NONBLOCK) || (defined(HAVE_DECL_MAP_NONBLOCK) && HAVE_DECL_MAP_NONBLOCK)
+	XLAT(MAP_NONBLOCK),
+#endif
+/*
+* XXX - this was introduced in SunOS 4.x to distinguish between
+* the old pre-4.x "mmap()", which:
+*
+*	only let you map devices with an "mmap" routine (e.g.,
+*	frame buffers) in;
+*
+*	required you to specify the mapping address;
+*
+*	returned 0 on success and -1 on failure;
+*
+* memory and which, and the 4.x "mmap()" which:
+*
+*	can map plain files;
+*
+*	can be asked to pick where to map the file;
+*
+*	returns the address where it mapped the file on success
+*	and -1 on failure.
+*
+* It's not actually used in source code that calls "mmap()"; the
+* "mmap()" routine adds it for you.
+*
+* It'd be nice to come up with some way of eliminating it from
+* the flags, e.g. reporting calls *without* it as "old_mmap()"
+* and calls with it as "mmap()".
+*/
+#if defined(_MAP_NEW) || (defined(HAVE_DECL__MAP_NEW) && HAVE_DECL__MAP_NEW)
+	XLAT(_MAP_NEW),
+#endif
+#if defined(MAP_GROWSDOWN) || (defined(HAVE_DECL_MAP_GROWSDOWN) && HAVE_DECL_MAP_GROWSDOWN)
+	XLAT(MAP_GROWSDOWN),
+#endif
+#if defined(MAP_DENYWRITE) || (defined(HAVE_DECL_MAP_DENYWRITE) && HAVE_DECL_MAP_DENYWRITE)
+	XLAT(MAP_DENYWRITE),
+#endif
+#if defined(MAP_EXECUTABLE) || (defined(HAVE_DECL_MAP_EXECUTABLE) && HAVE_DECL_MAP_EXECUTABLE)
+	XLAT(MAP_EXECUTABLE),
+#endif
+#if defined(MAP_INHERIT) || (defined(HAVE_DECL_MAP_INHERIT) && HAVE_DECL_MAP_INHERIT)
+	XLAT(MAP_INHERIT),
+#endif
+#if defined(MAP_FILE) || (defined(HAVE_DECL_MAP_FILE) && HAVE_DECL_MAP_FILE)
+	XLAT(MAP_FILE),
+#endif
+#if defined(MAP_LOCKED) || (defined(HAVE_DECL_MAP_LOCKED) && HAVE_DECL_MAP_LOCKED)
+	XLAT(MAP_LOCKED),
+#endif
+/* FreeBSD ones */
+#if defined(MAP_ANON) && (!defined(MAP_ANONYMOUS) || MAP_ANON != MAP_ANONYMOUS)
+#if defined(MAP_ANON) || (defined(HAVE_DECL_MAP_ANON) && HAVE_DECL_MAP_ANON)
+	XLAT(MAP_ANON),
+#endif
+#endif
+#if defined(MAP_HASSEMAPHORE) || (defined(HAVE_DECL_MAP_HASSEMAPHORE) && HAVE_DECL_MAP_HASSEMAPHORE)
+	XLAT(MAP_HASSEMAPHORE),
+#endif
+#if defined(MAP_STACK) || (defined(HAVE_DECL_MAP_STACK) && HAVE_DECL_MAP_STACK)
+	XLAT(MAP_STACK),
+#endif
+#if defined(MAP_HUGETLB) || (defined(HAVE_DECL_MAP_HUGETLB) && HAVE_DECL_MAP_HUGETLB)
+	XLAT(MAP_HUGETLB),
+#endif
+#if defined MAP_UNINITIALIZED && MAP_UNINITIALIZED > 0
+#if defined(MAP_UNINITIALIZED) || (defined(HAVE_DECL_MAP_UNINITIALIZED) && HAVE_DECL_MAP_UNINITIALIZED)
+	XLAT(MAP_UNINITIALIZED),
+#endif
+#endif
+#if defined(MAP_NOSYNC) || (defined(HAVE_DECL_MAP_NOSYNC) && HAVE_DECL_MAP_NOSYNC)
+	XLAT(MAP_NOSYNC),
+#endif
+#if defined(MAP_NOCORE) || (defined(HAVE_DECL_MAP_NOCORE) && HAVE_DECL_MAP_NOCORE)
+	XLAT(MAP_NOCORE),
+#endif
+	XLAT_END
+};
diff --git a/xlat/mmap_prot.h b/xlat/mmap_prot.h
new file mode 100644
index 0000000..8b18690
--- /dev/null
+++ b/xlat/mmap_prot.h
@@ -0,0 +1,29 @@
+/* Generated by ./xlat/gen.sh from ./xlat/mmap_prot.in; do not edit. */
+
+static const struct xlat mmap_prot[] = {
+#if defined(PROT_NONE) || (defined(HAVE_DECL_PROT_NONE) && HAVE_DECL_PROT_NONE)
+	XLAT(PROT_NONE),
+#endif
+#if defined(PROT_READ) || (defined(HAVE_DECL_PROT_READ) && HAVE_DECL_PROT_READ)
+	XLAT(PROT_READ),
+#endif
+#if defined(PROT_WRITE) || (defined(HAVE_DECL_PROT_WRITE) && HAVE_DECL_PROT_WRITE)
+	XLAT(PROT_WRITE),
+#endif
+#if defined(PROT_EXEC) || (defined(HAVE_DECL_PROT_EXEC) && HAVE_DECL_PROT_EXEC)
+	XLAT(PROT_EXEC),
+#endif
+#if defined(PROT_SEM) || (defined(HAVE_DECL_PROT_SEM) && HAVE_DECL_PROT_SEM)
+	XLAT(PROT_SEM),
+#endif
+#if defined(PROT_GROWSDOWN) || (defined(HAVE_DECL_PROT_GROWSDOWN) && HAVE_DECL_PROT_GROWSDOWN)
+	XLAT(PROT_GROWSDOWN),
+#endif
+#if defined(PROT_GROWSUP) || (defined(HAVE_DECL_PROT_GROWSUP) && HAVE_DECL_PROT_GROWSUP)
+	XLAT(PROT_GROWSUP),
+#endif
+#if defined(PROT_SAO) || (defined(HAVE_DECL_PROT_SAO) && HAVE_DECL_PROT_SAO)
+	XLAT(PROT_SAO),
+#endif
+	XLAT_END
+};
diff --git a/xlat/modem_flags.h b/xlat/modem_flags.h
new file mode 100644
index 0000000..8678eb9
--- /dev/null
+++ b/xlat/modem_flags.h
@@ -0,0 +1,38 @@
+/* Generated by ./xlat/gen.sh from ./xlat/modem_flags.in; do not edit. */
+
+static const struct xlat modem_flags[] = {
+#if defined(TIOCM_LE) || (defined(HAVE_DECL_TIOCM_LE) && HAVE_DECL_TIOCM_LE)
+	XLAT(TIOCM_LE),
+#endif
+#if defined(TIOCM_DTR) || (defined(HAVE_DECL_TIOCM_DTR) && HAVE_DECL_TIOCM_DTR)
+	XLAT(TIOCM_DTR),
+#endif
+#if defined(TIOCM_RTS) || (defined(HAVE_DECL_TIOCM_RTS) && HAVE_DECL_TIOCM_RTS)
+	XLAT(TIOCM_RTS),
+#endif
+#if defined(TIOCM_ST) || (defined(HAVE_DECL_TIOCM_ST) && HAVE_DECL_TIOCM_ST)
+	XLAT(TIOCM_ST),
+#endif
+#if defined(TIOCM_SR) || (defined(HAVE_DECL_TIOCM_SR) && HAVE_DECL_TIOCM_SR)
+	XLAT(TIOCM_SR),
+#endif
+#if defined(TIOCM_CTS) || (defined(HAVE_DECL_TIOCM_CTS) && HAVE_DECL_TIOCM_CTS)
+	XLAT(TIOCM_CTS),
+#endif
+#if defined(TIOCM_CAR) || (defined(HAVE_DECL_TIOCM_CAR) && HAVE_DECL_TIOCM_CAR)
+	XLAT(TIOCM_CAR),
+#endif
+#if defined(TIOCM_CD) || (defined(HAVE_DECL_TIOCM_CD) && HAVE_DECL_TIOCM_CD)
+	XLAT(TIOCM_CD),
+#endif
+#if defined(TIOCM_RNG) || (defined(HAVE_DECL_TIOCM_RNG) && HAVE_DECL_TIOCM_RNG)
+	XLAT(TIOCM_RNG),
+#endif
+#if defined(TIOCM_RI) || (defined(HAVE_DECL_TIOCM_RI) && HAVE_DECL_TIOCM_RI)
+	XLAT(TIOCM_RI),
+#endif
+#if defined(TIOCM_DSR) || (defined(HAVE_DECL_TIOCM_DSR) && HAVE_DECL_TIOCM_DSR)
+	XLAT(TIOCM_DSR),
+#endif
+	XLAT_END
+};
diff --git a/xlat/modetypes.h b/xlat/modetypes.h
new file mode 100644
index 0000000..1438b02
--- /dev/null
+++ b/xlat/modetypes.h
@@ -0,0 +1,26 @@
+/* Generated by ./xlat/gen.sh from ./xlat/modetypes.in; do not edit. */
+
+static const struct xlat modetypes[] = {
+#if defined(S_IFREG) || (defined(HAVE_DECL_S_IFREG) && HAVE_DECL_S_IFREG)
+	XLAT(S_IFREG),
+#endif
+#if defined(S_IFSOCK) || (defined(HAVE_DECL_S_IFSOCK) && HAVE_DECL_S_IFSOCK)
+	XLAT(S_IFSOCK),
+#endif
+#if defined(S_IFIFO) || (defined(HAVE_DECL_S_IFIFO) && HAVE_DECL_S_IFIFO)
+	XLAT(S_IFIFO),
+#endif
+#if defined(S_IFLNK) || (defined(HAVE_DECL_S_IFLNK) && HAVE_DECL_S_IFLNK)
+	XLAT(S_IFLNK),
+#endif
+#if defined(S_IFDIR) || (defined(HAVE_DECL_S_IFDIR) && HAVE_DECL_S_IFDIR)
+	XLAT(S_IFDIR),
+#endif
+#if defined(S_IFBLK) || (defined(HAVE_DECL_S_IFBLK) && HAVE_DECL_S_IFBLK)
+	XLAT(S_IFBLK),
+#endif
+#if defined(S_IFCHR) || (defined(HAVE_DECL_S_IFCHR) && HAVE_DECL_S_IFCHR)
+	XLAT(S_IFCHR),
+#endif
+	XLAT_END
+};
diff --git a/xlat/modflags.h b/xlat/modflags.h
new file mode 100644
index 0000000..664e9c1
--- /dev/null
+++ b/xlat/modflags.h
@@ -0,0 +1,26 @@
+/* Generated by ./xlat/gen.sh from ./xlat/modflags.in; do not edit. */
+
+static const struct xlat modflags[] = {
+#if defined(MOD_UNINITIALIZED) || (defined(HAVE_DECL_MOD_UNINITIALIZED) && HAVE_DECL_MOD_UNINITIALIZED)
+	XLAT(MOD_UNINITIALIZED),
+#endif
+#if defined(MOD_RUNNING) || (defined(HAVE_DECL_MOD_RUNNING) && HAVE_DECL_MOD_RUNNING)
+	XLAT(MOD_RUNNING),
+#endif
+#if defined(MOD_DELETED) || (defined(HAVE_DECL_MOD_DELETED) && HAVE_DECL_MOD_DELETED)
+	XLAT(MOD_DELETED),
+#endif
+#if defined(MOD_AUTOCLEAN) || (defined(HAVE_DECL_MOD_AUTOCLEAN) && HAVE_DECL_MOD_AUTOCLEAN)
+	XLAT(MOD_AUTOCLEAN),
+#endif
+#if defined(MOD_VISITED) || (defined(HAVE_DECL_MOD_VISITED) && HAVE_DECL_MOD_VISITED)
+	XLAT(MOD_VISITED),
+#endif
+#if defined(MOD_USED_ONCE) || (defined(HAVE_DECL_MOD_USED_ONCE) && HAVE_DECL_MOD_USED_ONCE)
+	XLAT(MOD_USED_ONCE),
+#endif
+#if defined(MOD_JUST_FREED) || (defined(HAVE_DECL_MOD_JUST_FREED) && HAVE_DECL_MOD_JUST_FREED)
+	XLAT(MOD_JUST_FREED),
+#endif
+	XLAT_END
+};
diff --git a/xlat/module_init_flags.h b/xlat/module_init_flags.h
new file mode 100644
index 0000000..00ae3d6
--- /dev/null
+++ b/xlat/module_init_flags.h
@@ -0,0 +1,11 @@
+/* Generated by ./xlat/gen.sh from ./xlat/module_init_flags.in; do not edit. */
+
+static const struct xlat module_init_flags[] = {
+#if defined(MODULE_INIT_IGNORE_MODVERSIONS) || (defined(HAVE_DECL_MODULE_INIT_IGNORE_MODVERSIONS) && HAVE_DECL_MODULE_INIT_IGNORE_MODVERSIONS)
+	XLAT(MODULE_INIT_IGNORE_MODVERSIONS),
+#endif
+#if defined(MODULE_INIT_IGNORE_VERMAGIC) || (defined(HAVE_DECL_MODULE_INIT_IGNORE_VERMAGIC) && HAVE_DECL_MODULE_INIT_IGNORE_VERMAGIC)
+	XLAT(MODULE_INIT_IGNORE_VERMAGIC),
+#endif
+	XLAT_END
+};
diff --git a/xlat/mount_flags.h b/xlat/mount_flags.h
new file mode 100644
index 0000000..cbd8e76
--- /dev/null
+++ b/xlat/mount_flags.h
@@ -0,0 +1,86 @@
+/* Generated by ./xlat/gen.sh from ./xlat/mount_flags.in; do not edit. */
+
+static const struct xlat mount_flags[] = {
+#if defined(MS_MGC_VAL) || (defined(HAVE_DECL_MS_MGC_VAL) && HAVE_DECL_MS_MGC_VAL)
+	XLAT(MS_MGC_VAL),
+#endif
+#if defined(MS_RDONLY) || (defined(HAVE_DECL_MS_RDONLY) && HAVE_DECL_MS_RDONLY)
+	XLAT(MS_RDONLY),
+#endif
+#if defined(MS_NOSUID) || (defined(HAVE_DECL_MS_NOSUID) && HAVE_DECL_MS_NOSUID)
+	XLAT(MS_NOSUID),
+#endif
+#if defined(MS_NODEV) || (defined(HAVE_DECL_MS_NODEV) && HAVE_DECL_MS_NODEV)
+	XLAT(MS_NODEV),
+#endif
+#if defined(MS_NOEXEC) || (defined(HAVE_DECL_MS_NOEXEC) && HAVE_DECL_MS_NOEXEC)
+	XLAT(MS_NOEXEC),
+#endif
+#if defined(MS_SYNCHRONOUS) || (defined(HAVE_DECL_MS_SYNCHRONOUS) && HAVE_DECL_MS_SYNCHRONOUS)
+	XLAT(MS_SYNCHRONOUS),
+#endif
+#if defined(MS_REMOUNT) || (defined(HAVE_DECL_MS_REMOUNT) && HAVE_DECL_MS_REMOUNT)
+	XLAT(MS_REMOUNT),
+#endif
+#if defined(MS_RELATIME) || (defined(HAVE_DECL_MS_RELATIME) && HAVE_DECL_MS_RELATIME)
+	XLAT(MS_RELATIME),
+#endif
+#if defined(MS_KERNMOUNT) || (defined(HAVE_DECL_MS_KERNMOUNT) && HAVE_DECL_MS_KERNMOUNT)
+	XLAT(MS_KERNMOUNT),
+#endif
+#if defined(MS_I_VERSION) || (defined(HAVE_DECL_MS_I_VERSION) && HAVE_DECL_MS_I_VERSION)
+	XLAT(MS_I_VERSION),
+#endif
+#if defined(MS_STRICTATIME) || (defined(HAVE_DECL_MS_STRICTATIME) && HAVE_DECL_MS_STRICTATIME)
+	XLAT(MS_STRICTATIME),
+#endif
+#if defined(MS_NOSEC) || (defined(HAVE_DECL_MS_NOSEC) && HAVE_DECL_MS_NOSEC)
+	XLAT(MS_NOSEC),
+#endif
+#if defined(MS_BORN) || (defined(HAVE_DECL_MS_BORN) && HAVE_DECL_MS_BORN)
+	XLAT(MS_BORN),
+#endif
+#if defined(MS_MANDLOCK) || (defined(HAVE_DECL_MS_MANDLOCK) && HAVE_DECL_MS_MANDLOCK)
+	XLAT(MS_MANDLOCK),
+#endif
+#if defined(MS_NOATIME) || (defined(HAVE_DECL_MS_NOATIME) && HAVE_DECL_MS_NOATIME)
+	XLAT(MS_NOATIME),
+#endif
+#if defined(MS_NODIRATIME) || (defined(HAVE_DECL_MS_NODIRATIME) && HAVE_DECL_MS_NODIRATIME)
+	XLAT(MS_NODIRATIME),
+#endif
+#if defined(MS_BIND) || (defined(HAVE_DECL_MS_BIND) && HAVE_DECL_MS_BIND)
+	XLAT(MS_BIND),
+#endif
+#if defined(MS_MOVE) || (defined(HAVE_DECL_MS_MOVE) && HAVE_DECL_MS_MOVE)
+	XLAT(MS_MOVE),
+#endif
+#if defined(MS_REC) || (defined(HAVE_DECL_MS_REC) && HAVE_DECL_MS_REC)
+	XLAT(MS_REC),
+#endif
+#if defined(MS_SILENT) || (defined(HAVE_DECL_MS_SILENT) && HAVE_DECL_MS_SILENT)
+	XLAT(MS_SILENT),
+#endif
+#if defined(MS_POSIXACL) || (defined(HAVE_DECL_MS_POSIXACL) && HAVE_DECL_MS_POSIXACL)
+	XLAT(MS_POSIXACL),
+#endif
+#if defined(MS_UNBINDABLE) || (defined(HAVE_DECL_MS_UNBINDABLE) && HAVE_DECL_MS_UNBINDABLE)
+	XLAT(MS_UNBINDABLE),
+#endif
+#if defined(MS_PRIVATE) || (defined(HAVE_DECL_MS_PRIVATE) && HAVE_DECL_MS_PRIVATE)
+	XLAT(MS_PRIVATE),
+#endif
+#if defined(MS_SLAVE) || (defined(HAVE_DECL_MS_SLAVE) && HAVE_DECL_MS_SLAVE)
+	XLAT(MS_SLAVE),
+#endif
+#if defined(MS_SHARED) || (defined(HAVE_DECL_MS_SHARED) && HAVE_DECL_MS_SHARED)
+	XLAT(MS_SHARED),
+#endif
+#if defined(MS_ACTIVE) || (defined(HAVE_DECL_MS_ACTIVE) && HAVE_DECL_MS_ACTIVE)
+	XLAT(MS_ACTIVE),
+#endif
+#if defined(MS_NOUSER) || (defined(HAVE_DECL_MS_NOUSER) && HAVE_DECL_MS_NOUSER)
+	XLAT(MS_NOUSER),
+#endif
+	XLAT_END
+};
diff --git a/xlat/move_pages_flags.h b/xlat/move_pages_flags.h
new file mode 100644
index 0000000..cbdf3bc
--- /dev/null
+++ b/xlat/move_pages_flags.h
@@ -0,0 +1,11 @@
+/* Generated by ./xlat/gen.sh from ./xlat/move_pages_flags.in; do not edit. */
+
+static const struct xlat move_pages_flags[] = {
+#if defined(MPOL_MF_MOVE) || (defined(HAVE_DECL_MPOL_MF_MOVE) && HAVE_DECL_MPOL_MF_MOVE)
+	XLAT(MPOL_MF_MOVE),
+#endif
+#if defined(MPOL_MF_MOVE_ALL) || (defined(HAVE_DECL_MPOL_MF_MOVE_ALL) && HAVE_DECL_MPOL_MF_MOVE_ALL)
+	XLAT(MPOL_MF_MOVE_ALL),
+#endif
+	XLAT_END
+};
diff --git a/xlat/mremap_flags.h b/xlat/mremap_flags.h
new file mode 100644
index 0000000..3dac3a5
--- /dev/null
+++ b/xlat/mremap_flags.h
@@ -0,0 +1,11 @@
+/* Generated by ./xlat/gen.sh from ./xlat/mremap_flags.in; do not edit. */
+
+static const struct xlat mremap_flags[] = {
+#if defined(MREMAP_MAYMOVE) || (defined(HAVE_DECL_MREMAP_MAYMOVE) && HAVE_DECL_MREMAP_MAYMOVE)
+	XLAT(MREMAP_MAYMOVE),
+#endif
+#if defined(MREMAP_FIXED) || (defined(HAVE_DECL_MREMAP_FIXED) && HAVE_DECL_MREMAP_FIXED)
+	XLAT(MREMAP_FIXED),
+#endif
+	XLAT_END
+};
diff --git a/xlat/msg_flags.h b/xlat/msg_flags.h
new file mode 100644
index 0000000..e842d2d
--- /dev/null
+++ b/xlat/msg_flags.h
@@ -0,0 +1,65 @@
+/* Generated by ./xlat/gen.sh from ./xlat/msg_flags.in; do not edit. */
+
+static const struct xlat msg_flags[] = {
+#if defined(MSG_OOB) || (defined(HAVE_DECL_MSG_OOB) && HAVE_DECL_MSG_OOB)
+	XLAT(MSG_OOB),
+#endif
+#if defined(MSG_PEEK) || (defined(HAVE_DECL_MSG_PEEK) && HAVE_DECL_MSG_PEEK)
+	XLAT(MSG_PEEK),
+#endif
+#if defined(MSG_DONTROUTE) || (defined(HAVE_DECL_MSG_DONTROUTE) && HAVE_DECL_MSG_DONTROUTE)
+	XLAT(MSG_DONTROUTE),
+#endif
+#if defined(MSG_CTRUNC) || (defined(HAVE_DECL_MSG_CTRUNC) && HAVE_DECL_MSG_CTRUNC)
+	XLAT(MSG_CTRUNC),
+#endif
+#if defined(MSG_PROBE) || (defined(HAVE_DECL_MSG_PROBE) && HAVE_DECL_MSG_PROBE)
+	XLAT(MSG_PROBE),
+#endif
+#if defined(MSG_TRUNC) || (defined(HAVE_DECL_MSG_TRUNC) && HAVE_DECL_MSG_TRUNC)
+	XLAT(MSG_TRUNC),
+#endif
+#if defined(MSG_DONTWAIT) || (defined(HAVE_DECL_MSG_DONTWAIT) && HAVE_DECL_MSG_DONTWAIT)
+	XLAT(MSG_DONTWAIT),
+#endif
+#if defined(MSG_EOR) || (defined(HAVE_DECL_MSG_EOR) && HAVE_DECL_MSG_EOR)
+	XLAT(MSG_EOR),
+#endif
+#if defined(MSG_WAITALL) || (defined(HAVE_DECL_MSG_WAITALL) && HAVE_DECL_MSG_WAITALL)
+	XLAT(MSG_WAITALL),
+#endif
+#if defined(MSG_FIN) || (defined(HAVE_DECL_MSG_FIN) && HAVE_DECL_MSG_FIN)
+	XLAT(MSG_FIN),
+#endif
+#if defined(MSG_SYN) || (defined(HAVE_DECL_MSG_SYN) && HAVE_DECL_MSG_SYN)
+	XLAT(MSG_SYN),
+#endif
+#if defined(MSG_CONFIRM) || (defined(HAVE_DECL_MSG_CONFIRM) && HAVE_DECL_MSG_CONFIRM)
+	XLAT(MSG_CONFIRM),
+#endif
+#if defined(MSG_RST) || (defined(HAVE_DECL_MSG_RST) && HAVE_DECL_MSG_RST)
+	XLAT(MSG_RST),
+#endif
+#if defined(MSG_ERRQUEUE) || (defined(HAVE_DECL_MSG_ERRQUEUE) && HAVE_DECL_MSG_ERRQUEUE)
+	XLAT(MSG_ERRQUEUE),
+#endif
+#if defined(MSG_NOSIGNAL) || (defined(HAVE_DECL_MSG_NOSIGNAL) && HAVE_DECL_MSG_NOSIGNAL)
+	XLAT(MSG_NOSIGNAL),
+#endif
+#if defined(MSG_MORE) || (defined(HAVE_DECL_MSG_MORE) && HAVE_DECL_MSG_MORE)
+	XLAT(MSG_MORE),
+#endif
+#if defined(MSG_WAITFORONE) || (defined(HAVE_DECL_MSG_WAITFORONE) && HAVE_DECL_MSG_WAITFORONE)
+	XLAT(MSG_WAITFORONE),
+#endif
+#if defined(MSG_EOF) || (defined(HAVE_DECL_MSG_EOF) && HAVE_DECL_MSG_EOF)
+	XLAT(MSG_EOF),
+#endif
+#if defined(MSG_FASTOPEN) || (defined(HAVE_DECL_MSG_FASTOPEN) && HAVE_DECL_MSG_FASTOPEN)
+	XLAT(MSG_FASTOPEN),
+#endif
+#if defined(MSG_CMSG_CLOEXEC) || (defined(HAVE_DECL_MSG_CMSG_CLOEXEC) && HAVE_DECL_MSG_CMSG_CLOEXEC)
+	XLAT(MSG_CMSG_CLOEXEC),
+#endif
+	XLAT_END
+};
diff --git a/xlat/msgctl_flags.h b/xlat/msgctl_flags.h
new file mode 100644
index 0000000..72c8f7b
--- /dev/null
+++ b/xlat/msgctl_flags.h
@@ -0,0 +1,23 @@
+/* Generated by ./xlat/gen.sh from ./xlat/msgctl_flags.in; do not edit. */
+
+static const struct xlat msgctl_flags[] = {
+#if defined(IPC_RMID) || (defined(HAVE_DECL_IPC_RMID) && HAVE_DECL_IPC_RMID)
+	XLAT(IPC_RMID),
+#endif
+#if defined(IPC_SET) || (defined(HAVE_DECL_IPC_SET) && HAVE_DECL_IPC_SET)
+	XLAT(IPC_SET),
+#endif
+#if defined(IPC_STAT) || (defined(HAVE_DECL_IPC_STAT) && HAVE_DECL_IPC_STAT)
+	XLAT(IPC_STAT),
+#endif
+#if defined(IPC_INFO) || (defined(HAVE_DECL_IPC_INFO) && HAVE_DECL_IPC_INFO)
+	XLAT(IPC_INFO),
+#endif
+#if defined(MSG_STAT) || (defined(HAVE_DECL_MSG_STAT) && HAVE_DECL_MSG_STAT)
+	XLAT(MSG_STAT),
+#endif
+#if defined(MSG_INFO) || (defined(HAVE_DECL_MSG_INFO) && HAVE_DECL_MSG_INFO)
+	XLAT(MSG_INFO),
+#endif
+	XLAT_END
+};
diff --git a/xlat/msgflags.h b/xlat/msgflags.h
new file mode 100644
index 0000000..c96a35d
--- /dev/null
+++ b/xlat/msgflags.h
@@ -0,0 +1,8 @@
+/* Generated by ./xlat/gen.sh from ./xlat/msgflags.in; do not edit. */
+
+static const struct xlat msgflags[] = {
+#if defined(RS_HIPRI) || (defined(HAVE_DECL_RS_HIPRI) && HAVE_DECL_RS_HIPRI)
+	XLAT(RS_HIPRI),
+#endif
+	XLAT_END
+};
diff --git a/xlat/mtd_flags_options.h b/xlat/mtd_flags_options.h
new file mode 100644
index 0000000..da4c6a7
--- /dev/null
+++ b/xlat/mtd_flags_options.h
@@ -0,0 +1,17 @@
+/* Generated by ./xlat/gen.sh from ./xlat/mtd_flags_options.in; do not edit. */
+
+static const struct xlat mtd_flags_options[] = {
+#if defined(MTD_WRITEABLE) || (defined(HAVE_DECL_MTD_WRITEABLE) && HAVE_DECL_MTD_WRITEABLE)
+	XLAT(MTD_WRITEABLE),
+#endif
+#if defined(MTD_BIT_WRITEABLE) || (defined(HAVE_DECL_MTD_BIT_WRITEABLE) && HAVE_DECL_MTD_BIT_WRITEABLE)
+	XLAT(MTD_BIT_WRITEABLE),
+#endif
+#if defined(MTD_NO_ERASE) || (defined(HAVE_DECL_MTD_NO_ERASE) && HAVE_DECL_MTD_NO_ERASE)
+	XLAT(MTD_NO_ERASE),
+#endif
+#if defined(MTD_POWERUP_LOCK) || (defined(HAVE_DECL_MTD_POWERUP_LOCK) && HAVE_DECL_MTD_POWERUP_LOCK)
+	XLAT(MTD_POWERUP_LOCK),
+#endif
+	XLAT_END
+};
diff --git a/xlat/mtd_mode_options.h b/xlat/mtd_mode_options.h
new file mode 100644
index 0000000..c80f035
--- /dev/null
+++ b/xlat/mtd_mode_options.h
@@ -0,0 +1,8 @@
+/* Generated by ./xlat/gen.sh from ./xlat/mtd_mode_options.in; do not edit. */
+
+static const struct xlat mtd_mode_options[] = {
+	XLAT(MTD_OPS_PLACE_OOB),
+	XLAT(MTD_OPS_AUTO_OOB),
+	XLAT(MTD_OPS_RAW),
+	XLAT_END
+};
diff --git a/xlat/mtd_nandecc_options.h b/xlat/mtd_nandecc_options.h
new file mode 100644
index 0000000..3464701
--- /dev/null
+++ b/xlat/mtd_nandecc_options.h
@@ -0,0 +1,20 @@
+/* Generated by ./xlat/gen.sh from ./xlat/mtd_nandecc_options.in; do not edit. */
+
+static const struct xlat mtd_nandecc_options[] = {
+#if defined(MTD_NANDECC_OFF) || (defined(HAVE_DECL_MTD_NANDECC_OFF) && HAVE_DECL_MTD_NANDECC_OFF)
+	XLAT(MTD_NANDECC_OFF),
+#endif
+#if defined(MTD_NANDECC_PLACE) || (defined(HAVE_DECL_MTD_NANDECC_PLACE) && HAVE_DECL_MTD_NANDECC_PLACE)
+	XLAT(MTD_NANDECC_PLACE),
+#endif
+#if defined(MTD_NANDECC_AUTOPLACE) || (defined(HAVE_DECL_MTD_NANDECC_AUTOPLACE) && HAVE_DECL_MTD_NANDECC_AUTOPLACE)
+	XLAT(MTD_NANDECC_AUTOPLACE),
+#endif
+#if defined(MTD_NANDECC_PLACEONLY) || (defined(HAVE_DECL_MTD_NANDECC_PLACEONLY) && HAVE_DECL_MTD_NANDECC_PLACEONLY)
+	XLAT(MTD_NANDECC_PLACEONLY),
+#endif
+#if defined(MTD_NANDECC_AUTOPL_USR) || (defined(HAVE_DECL_MTD_NANDECC_AUTOPL_USR) && HAVE_DECL_MTD_NANDECC_AUTOPL_USR)
+	XLAT(MTD_NANDECC_AUTOPL_USR),
+#endif
+	XLAT_END
+};
diff --git a/xlat/mtd_otp_options.h b/xlat/mtd_otp_options.h
new file mode 100644
index 0000000..6cbf743
--- /dev/null
+++ b/xlat/mtd_otp_options.h
@@ -0,0 +1,14 @@
+/* Generated by ./xlat/gen.sh from ./xlat/mtd_otp_options.in; do not edit. */
+
+static const struct xlat mtd_otp_options[] = {
+#if defined(MTD_OTP_OFF) || (defined(HAVE_DECL_MTD_OTP_OFF) && HAVE_DECL_MTD_OTP_OFF)
+	XLAT(MTD_OTP_OFF),
+#endif
+#if defined(MTD_OTP_FACTORY) || (defined(HAVE_DECL_MTD_OTP_FACTORY) && HAVE_DECL_MTD_OTP_FACTORY)
+	XLAT(MTD_OTP_FACTORY),
+#endif
+#if defined(MTD_OTP_USER) || (defined(HAVE_DECL_MTD_OTP_USER) && HAVE_DECL_MTD_OTP_USER)
+	XLAT(MTD_OTP_USER),
+#endif
+	XLAT_END
+};
diff --git a/xlat/mtd_type_options.h b/xlat/mtd_type_options.h
new file mode 100644
index 0000000..404aca8
--- /dev/null
+++ b/xlat/mtd_type_options.h
@@ -0,0 +1,29 @@
+/* Generated by ./xlat/gen.sh from ./xlat/mtd_type_options.in; do not edit. */
+
+static const struct xlat mtd_type_options[] = {
+#if defined(MTD_ABSENT) || (defined(HAVE_DECL_MTD_ABSENT) && HAVE_DECL_MTD_ABSENT)
+	XLAT(MTD_ABSENT),
+#endif
+#if defined(MTD_RAM) || (defined(HAVE_DECL_MTD_RAM) && HAVE_DECL_MTD_RAM)
+	XLAT(MTD_RAM),
+#endif
+#if defined(MTD_ROM) || (defined(HAVE_DECL_MTD_ROM) && HAVE_DECL_MTD_ROM)
+	XLAT(MTD_ROM),
+#endif
+#if defined(MTD_NORFLASH) || (defined(HAVE_DECL_MTD_NORFLASH) && HAVE_DECL_MTD_NORFLASH)
+	XLAT(MTD_NORFLASH),
+#endif
+#if defined(MTD_NANDFLASH) || (defined(HAVE_DECL_MTD_NANDFLASH) && HAVE_DECL_MTD_NANDFLASH)
+	XLAT(MTD_NANDFLASH),
+#endif
+#if defined(MTD_DATAFLASH) || (defined(HAVE_DECL_MTD_DATAFLASH) && HAVE_DECL_MTD_DATAFLASH)
+	XLAT(MTD_DATAFLASH),
+#endif
+#if defined(MTD_UBIVOLUME) || (defined(HAVE_DECL_MTD_UBIVOLUME) && HAVE_DECL_MTD_UBIVOLUME)
+	XLAT(MTD_UBIVOLUME),
+#endif
+#if defined(MTD_MLCNANDFLASH) || (defined(HAVE_DECL_MTD_MLCNANDFLASH) && HAVE_DECL_MTD_MLCNANDFLASH)
+	XLAT(MTD_MLCNANDFLASH),
+#endif
+	XLAT_END
+};
diff --git a/xlat/netlink_protocols.h b/xlat/netlink_protocols.h
new file mode 100644
index 0000000..d5614f9
--- /dev/null
+++ b/xlat/netlink_protocols.h
@@ -0,0 +1,68 @@
+/* Generated by ./xlat/gen.sh from ./xlat/netlink_protocols.in; do not edit. */
+
+static const struct xlat netlink_protocols[] = {
+#if defined(NETLINK_ROUTE) || (defined(HAVE_DECL_NETLINK_ROUTE) && HAVE_DECL_NETLINK_ROUTE)
+	XLAT(NETLINK_ROUTE),
+#endif
+#if defined(NETLINK_UNUSED) || (defined(HAVE_DECL_NETLINK_UNUSED) && HAVE_DECL_NETLINK_UNUSED)
+	XLAT(NETLINK_UNUSED),
+#endif
+#if defined(NETLINK_USERSOCK) || (defined(HAVE_DECL_NETLINK_USERSOCK) && HAVE_DECL_NETLINK_USERSOCK)
+	XLAT(NETLINK_USERSOCK),
+#endif
+#if defined(NETLINK_FIREWALL) || (defined(HAVE_DECL_NETLINK_FIREWALL) && HAVE_DECL_NETLINK_FIREWALL)
+	XLAT(NETLINK_FIREWALL),
+#endif
+#if defined(NETLINK_SOCK_DIAG) || (defined(HAVE_DECL_NETLINK_SOCK_DIAG) && HAVE_DECL_NETLINK_SOCK_DIAG)
+	XLAT(NETLINK_SOCK_DIAG),
+#endif
+#if defined(NETLINK_NFLOG) || (defined(HAVE_DECL_NETLINK_NFLOG) && HAVE_DECL_NETLINK_NFLOG)
+	XLAT(NETLINK_NFLOG),
+#endif
+#if defined(NETLINK_XFRM) || (defined(HAVE_DECL_NETLINK_XFRM) && HAVE_DECL_NETLINK_XFRM)
+	XLAT(NETLINK_XFRM),
+#endif
+#if defined(NETLINK_SELINUX) || (defined(HAVE_DECL_NETLINK_SELINUX) && HAVE_DECL_NETLINK_SELINUX)
+	XLAT(NETLINK_SELINUX),
+#endif
+#if defined(NETLINK_ISCSI) || (defined(HAVE_DECL_NETLINK_ISCSI) && HAVE_DECL_NETLINK_ISCSI)
+	XLAT(NETLINK_ISCSI),
+#endif
+#if defined(NETLINK_AUDIT) || (defined(HAVE_DECL_NETLINK_AUDIT) && HAVE_DECL_NETLINK_AUDIT)
+	XLAT(NETLINK_AUDIT),
+#endif
+#if defined(NETLINK_FIB_LOOKUP) || (defined(HAVE_DECL_NETLINK_FIB_LOOKUP) && HAVE_DECL_NETLINK_FIB_LOOKUP)
+	XLAT(NETLINK_FIB_LOOKUP),
+#endif
+#if defined(NETLINK_CONNECTOR) || (defined(HAVE_DECL_NETLINK_CONNECTOR) && HAVE_DECL_NETLINK_CONNECTOR)
+	XLAT(NETLINK_CONNECTOR),
+#endif
+#if defined(NETLINK_NETFILTER) || (defined(HAVE_DECL_NETLINK_NETFILTER) && HAVE_DECL_NETLINK_NETFILTER)
+	XLAT(NETLINK_NETFILTER),
+#endif
+#if defined(NETLINK_IP6_FW) || (defined(HAVE_DECL_NETLINK_IP6_FW) && HAVE_DECL_NETLINK_IP6_FW)
+	XLAT(NETLINK_IP6_FW),
+#endif
+#if defined(NETLINK_DNRTMSG) || (defined(HAVE_DECL_NETLINK_DNRTMSG) && HAVE_DECL_NETLINK_DNRTMSG)
+	XLAT(NETLINK_DNRTMSG),
+#endif
+#if defined(NETLINK_KOBJECT_UEVENT) || (defined(HAVE_DECL_NETLINK_KOBJECT_UEVENT) && HAVE_DECL_NETLINK_KOBJECT_UEVENT)
+	XLAT(NETLINK_KOBJECT_UEVENT),
+#endif
+#if defined(NETLINK_GENERIC) || (defined(HAVE_DECL_NETLINK_GENERIC) && HAVE_DECL_NETLINK_GENERIC)
+	XLAT(NETLINK_GENERIC),
+#endif
+#if defined(NETLINK_SCSITRANSPORT) || (defined(HAVE_DECL_NETLINK_SCSITRANSPORT) && HAVE_DECL_NETLINK_SCSITRANSPORT)
+	XLAT(NETLINK_SCSITRANSPORT),
+#endif
+#if defined(NETLINK_ECRYPTFS) || (defined(HAVE_DECL_NETLINK_ECRYPTFS) && HAVE_DECL_NETLINK_ECRYPTFS)
+	XLAT(NETLINK_ECRYPTFS),
+#endif
+#if defined(NETLINK_RDMA) || (defined(HAVE_DECL_NETLINK_RDMA) && HAVE_DECL_NETLINK_RDMA)
+	XLAT(NETLINK_RDMA),
+#endif
+#if defined(NETLINK_CRYPTO) || (defined(HAVE_DECL_NETLINK_CRYPTO) && HAVE_DECL_NETLINK_CRYPTO)
+	XLAT(NETLINK_CRYPTO),
+#endif
+	XLAT_END
+};
diff --git a/xlat/notifyflags.h b/xlat/notifyflags.h
new file mode 100644
index 0000000..fe02728
--- /dev/null
+++ b/xlat/notifyflags.h
@@ -0,0 +1,26 @@
+/* Generated by ./xlat/gen.sh from ./xlat/notifyflags.in; do not edit. */
+
+static const struct xlat notifyflags[] = {
+#if defined(DN_ACCESS) || (defined(HAVE_DECL_DN_ACCESS) && HAVE_DECL_DN_ACCESS)
+	XLAT(DN_ACCESS),
+#endif
+#if defined(DN_MODIFY) || (defined(HAVE_DECL_DN_MODIFY) && HAVE_DECL_DN_MODIFY)
+	XLAT(DN_MODIFY),
+#endif
+#if defined(DN_CREATE) || (defined(HAVE_DECL_DN_CREATE) && HAVE_DECL_DN_CREATE)
+	XLAT(DN_CREATE),
+#endif
+#if defined(DN_DELETE) || (defined(HAVE_DECL_DN_DELETE) && HAVE_DECL_DN_DELETE)
+	XLAT(DN_DELETE),
+#endif
+#if defined(DN_RENAME) || (defined(HAVE_DECL_DN_RENAME) && HAVE_DECL_DN_RENAME)
+	XLAT(DN_RENAME),
+#endif
+#if defined(DN_ATTRIB) || (defined(HAVE_DECL_DN_ATTRIB) && HAVE_DECL_DN_ATTRIB)
+	XLAT(DN_ATTRIB),
+#endif
+#if defined(DN_MULTISHOT) || (defined(HAVE_DECL_DN_MULTISHOT) && HAVE_DECL_DN_MULTISHOT)
+	XLAT(DN_MULTISHOT),
+#endif
+	XLAT_END
+};
diff --git a/xlat/nt_descriptor_types.h b/xlat/nt_descriptor_types.h
new file mode 100644
index 0000000..a928b84
--- /dev/null
+++ b/xlat/nt_descriptor_types.h
@@ -0,0 +1,74 @@
+/* Generated by ./xlat/gen.sh from ./xlat/nt_descriptor_types.in; do not edit. */
+
+static const struct xlat nt_descriptor_types[] = {
+#if defined(NT_PRSTATUS) || (defined(HAVE_DECL_NT_PRSTATUS) && HAVE_DECL_NT_PRSTATUS)
+	XLAT(NT_PRSTATUS),
+#endif
+#if defined(NT_FPREGSET) || (defined(HAVE_DECL_NT_FPREGSET) && HAVE_DECL_NT_FPREGSET)
+	XLAT(NT_FPREGSET),
+#endif
+#if defined(NT_PRPSINFO) || (defined(HAVE_DECL_NT_PRPSINFO) && HAVE_DECL_NT_PRPSINFO)
+	XLAT(NT_PRPSINFO),
+#endif
+#if defined(NT_PRXREG) || (defined(HAVE_DECL_NT_PRXREG) && HAVE_DECL_NT_PRXREG)
+	XLAT(NT_PRXREG),
+#endif
+#if defined(NT_TASKSTRUCT) || (defined(HAVE_DECL_NT_TASKSTRUCT) && HAVE_DECL_NT_TASKSTRUCT)
+	XLAT(NT_TASKSTRUCT),
+#endif
+#if defined(NT_PLATFORM) || (defined(HAVE_DECL_NT_PLATFORM) && HAVE_DECL_NT_PLATFORM)
+	XLAT(NT_PLATFORM),
+#endif
+#if defined(NT_AUXV) || (defined(HAVE_DECL_NT_AUXV) && HAVE_DECL_NT_AUXV)
+	XLAT(NT_AUXV),
+#endif
+#if defined(NT_GWINDOWS) || (defined(HAVE_DECL_NT_GWINDOWS) && HAVE_DECL_NT_GWINDOWS)
+	XLAT(NT_GWINDOWS),
+#endif
+#if defined(NT_ASRS) || (defined(HAVE_DECL_NT_ASRS) && HAVE_DECL_NT_ASRS)
+	XLAT(NT_ASRS),
+#endif
+#if defined(NT_PSTATUS) || (defined(HAVE_DECL_NT_PSTATUS) && HAVE_DECL_NT_PSTATUS)
+	XLAT(NT_PSTATUS),
+#endif
+#if defined(NT_PSINFO) || (defined(HAVE_DECL_NT_PSINFO) && HAVE_DECL_NT_PSINFO)
+	XLAT(NT_PSINFO),
+#endif
+#if defined(NT_PRCRED) || (defined(HAVE_DECL_NT_PRCRED) && HAVE_DECL_NT_PRCRED)
+	XLAT(NT_PRCRED),
+#endif
+#if defined(NT_UTSNAME) || (defined(HAVE_DECL_NT_UTSNAME) && HAVE_DECL_NT_UTSNAME)
+	XLAT(NT_UTSNAME),
+#endif
+#if defined(NT_LWPSTATUS) || (defined(HAVE_DECL_NT_LWPSTATUS) && HAVE_DECL_NT_LWPSTATUS)
+	XLAT(NT_LWPSTATUS),
+#endif
+#if defined(NT_LWPSINFO) || (defined(HAVE_DECL_NT_LWPSINFO) && HAVE_DECL_NT_LWPSINFO)
+	XLAT(NT_LWPSINFO),
+#endif
+#if defined(NT_PRFPXREG) || (defined(HAVE_DECL_NT_PRFPXREG) && HAVE_DECL_NT_PRFPXREG)
+	XLAT(NT_PRFPXREG),
+#endif
+#if defined(NT_PRXFPREG) || (defined(HAVE_DECL_NT_PRXFPREG) && HAVE_DECL_NT_PRXFPREG)
+	XLAT(NT_PRXFPREG),
+#endif
+#if defined(NT_PPC_VMX) || (defined(HAVE_DECL_NT_PPC_VMX) && HAVE_DECL_NT_PPC_VMX)
+	XLAT(NT_PPC_VMX),
+#endif
+#if defined(NT_PPC_SPE) || (defined(HAVE_DECL_NT_PPC_SPE) && HAVE_DECL_NT_PPC_SPE)
+	XLAT(NT_PPC_SPE),
+#endif
+#if defined(NT_PPC_VSX) || (defined(HAVE_DECL_NT_PPC_VSX) && HAVE_DECL_NT_PPC_VSX)
+	XLAT(NT_PPC_VSX),
+#endif
+#if defined(NT_386_TLS) || (defined(HAVE_DECL_NT_386_TLS) && HAVE_DECL_NT_386_TLS)
+	XLAT(NT_386_TLS),
+#endif
+#if defined(NT_386_IOPERM) || (defined(HAVE_DECL_NT_386_IOPERM) && HAVE_DECL_NT_386_IOPERM)
+	XLAT(NT_386_IOPERM),
+#endif
+#if defined(NT_X86_XSTATE) || (defined(HAVE_DECL_NT_X86_XSTATE) && HAVE_DECL_NT_X86_XSTATE)
+	XLAT(NT_X86_XSTATE),
+#endif
+	XLAT_END
+};
diff --git a/xlat/open_access_modes.h b/xlat/open_access_modes.h
new file mode 100644
index 0000000..02deb2e
--- /dev/null
+++ b/xlat/open_access_modes.h
@@ -0,0 +1,17 @@
+/* Generated by ./xlat/gen.sh from ./xlat/open_access_modes.in; do not edit. */
+
+const struct xlat open_access_modes[] = {
+#if defined(O_RDONLY) || (defined(HAVE_DECL_O_RDONLY) && HAVE_DECL_O_RDONLY)
+	XLAT(O_RDONLY),
+#endif
+#if defined(O_WRONLY) || (defined(HAVE_DECL_O_WRONLY) && HAVE_DECL_O_WRONLY)
+	XLAT(O_WRONLY),
+#endif
+#if defined(O_RDWR) || (defined(HAVE_DECL_O_RDWR) && HAVE_DECL_O_RDWR)
+	XLAT(O_RDWR),
+#endif
+#if defined(O_ACCMODE) || (defined(HAVE_DECL_O_ACCMODE) && HAVE_DECL_O_ACCMODE)
+	XLAT(O_ACCMODE),
+#endif
+	XLAT_END
+};
diff --git a/xlat/open_mode_flags.h b/xlat/open_mode_flags.h
new file mode 100644
index 0000000..8d82a61
--- /dev/null
+++ b/xlat/open_mode_flags.h
@@ -0,0 +1,109 @@
+/* Generated by ./xlat/gen.sh from ./xlat/open_mode_flags.in; do not edit. */
+
+const struct xlat open_mode_flags[] = {
+#if defined(O_CREAT) || (defined(HAVE_DECL_O_CREAT) && HAVE_DECL_O_CREAT)
+	XLAT(O_CREAT),
+#endif
+#if defined(O_EXCL) || (defined(HAVE_DECL_O_EXCL) && HAVE_DECL_O_EXCL)
+	XLAT(O_EXCL),
+#endif
+#if defined(O_NOCTTY) || (defined(HAVE_DECL_O_NOCTTY) && HAVE_DECL_O_NOCTTY)
+	XLAT(O_NOCTTY),
+#endif
+#if defined(O_TRUNC) || (defined(HAVE_DECL_O_TRUNC) && HAVE_DECL_O_TRUNC)
+	XLAT(O_TRUNC),
+#endif
+#if defined(O_APPEND) || (defined(HAVE_DECL_O_APPEND) && HAVE_DECL_O_APPEND)
+	XLAT(O_APPEND),
+#endif
+#if defined(O_NONBLOCK) || (defined(HAVE_DECL_O_NONBLOCK) && HAVE_DECL_O_NONBLOCK)
+	XLAT(O_NONBLOCK),
+#endif
+#if defined(O_SYNC) || (defined(HAVE_DECL_O_SYNC) && HAVE_DECL_O_SYNC)
+	XLAT(O_SYNC),
+#endif
+#if defined(O_ASYNC) || (defined(HAVE_DECL_O_ASYNC) && HAVE_DECL_O_ASYNC)
+	XLAT(O_ASYNC),
+#endif
+#if defined(O_DSYNC) || (defined(HAVE_DECL_O_DSYNC) && HAVE_DECL_O_DSYNC)
+	XLAT(O_DSYNC),
+#endif
+#if defined(O_RSYNC) || (defined(HAVE_DECL_O_RSYNC) && HAVE_DECL_O_RSYNC)
+	XLAT(O_RSYNC),
+#endif
+#if defined(O_NDELAY) && (O_NDELAY != O_NONBLOCK)
+#if defined(O_NDELAY) || (defined(HAVE_DECL_O_NDELAY) && HAVE_DECL_O_NDELAY)
+	XLAT(O_NDELAY),
+#endif
+#endif
+#if defined(O_PRIV) || (defined(HAVE_DECL_O_PRIV) && HAVE_DECL_O_PRIV)
+	XLAT(O_PRIV),
+#endif
+#if defined(O_DIRECT) || (defined(HAVE_DECL_O_DIRECT) && HAVE_DECL_O_DIRECT)
+	XLAT(O_DIRECT),
+#endif
+#if defined(O_LARGEFILE) || (defined(HAVE_DECL_O_LARGEFILE) && HAVE_DECL_O_LARGEFILE)
+	XLAT(O_LARGEFILE),
+#endif
+#if defined(O_DIRECTORY) || (defined(HAVE_DECL_O_DIRECTORY) && HAVE_DECL_O_DIRECTORY)
+	XLAT(O_DIRECTORY),
+#endif
+#if defined(O_NOFOLLOW) || (defined(HAVE_DECL_O_NOFOLLOW) && HAVE_DECL_O_NOFOLLOW)
+	XLAT(O_NOFOLLOW),
+#endif
+#if defined(O_NOATIME) || (defined(HAVE_DECL_O_NOATIME) && HAVE_DECL_O_NOATIME)
+	XLAT(O_NOATIME),
+#endif
+#if defined(O_CLOEXEC) || (defined(HAVE_DECL_O_CLOEXEC) && HAVE_DECL_O_CLOEXEC)
+	XLAT(O_CLOEXEC),
+#endif
+#if defined(O_PATH) || (defined(HAVE_DECL_O_PATH) && HAVE_DECL_O_PATH)
+	XLAT(O_PATH),
+#endif
+#if defined(FNDELAY) || (defined(HAVE_DECL_FNDELAY) && HAVE_DECL_FNDELAY)
+	XLAT(FNDELAY),
+#endif
+#if defined(FAPPEND) || (defined(HAVE_DECL_FAPPEND) && HAVE_DECL_FAPPEND)
+	XLAT(FAPPEND),
+#endif
+#if defined(FMARK) || (defined(HAVE_DECL_FMARK) && HAVE_DECL_FMARK)
+	XLAT(FMARK),
+#endif
+#if defined(FDEFER) || (defined(HAVE_DECL_FDEFER) && HAVE_DECL_FDEFER)
+	XLAT(FDEFER),
+#endif
+#if defined(FASYNC) || (defined(HAVE_DECL_FASYNC) && HAVE_DECL_FASYNC)
+	XLAT(FASYNC),
+#endif
+#if defined(FSHLOCK) || (defined(HAVE_DECL_FSHLOCK) && HAVE_DECL_FSHLOCK)
+	XLAT(FSHLOCK),
+#endif
+#if defined(FEXLOCK) || (defined(HAVE_DECL_FEXLOCK) && HAVE_DECL_FEXLOCK)
+	XLAT(FEXLOCK),
+#endif
+#if defined(FCREAT) || (defined(HAVE_DECL_FCREAT) && HAVE_DECL_FCREAT)
+	XLAT(FCREAT),
+#endif
+#if defined(FTRUNC) || (defined(HAVE_DECL_FTRUNC) && HAVE_DECL_FTRUNC)
+	XLAT(FTRUNC),
+#endif
+#if defined(FEXCL) || (defined(HAVE_DECL_FEXCL) && HAVE_DECL_FEXCL)
+	XLAT(FEXCL),
+#endif
+#if defined(FNBIO) || (defined(HAVE_DECL_FNBIO) && HAVE_DECL_FNBIO)
+	XLAT(FNBIO),
+#endif
+#if defined(FSYNC) || (defined(HAVE_DECL_FSYNC) && HAVE_DECL_FSYNC)
+	XLAT(FSYNC),
+#endif
+#if defined(FNOCTTY) || (defined(HAVE_DECL_FNOCTTY) && HAVE_DECL_FNOCTTY)
+	XLAT(FNOCTTY),
+#endif
+#if defined(O_SHLOCK) || (defined(HAVE_DECL_O_SHLOCK) && HAVE_DECL_O_SHLOCK)
+	XLAT(O_SHLOCK),
+#endif
+#if defined(O_EXLOCK) || (defined(HAVE_DECL_O_EXLOCK) && HAVE_DECL_O_EXLOCK)
+	XLAT(O_EXLOCK),
+#endif
+	XLAT_END
+};
diff --git a/xlat/openmodessol.h b/xlat/openmodessol.h
new file mode 100644
index 0000000..929c6e1
--- /dev/null
+++ b/xlat/openmodessol.h
@@ -0,0 +1,19 @@
+/* Generated by ./xlat/gen.sh from ./xlat/openmodessol.in; do not edit. */
+
+static const struct xlat openmodessol[] = {
+{ 0,		"O_RDWR"	},
+{ 1,		"O_RDONLY"	},
+{ 2,		"O_WRONLY"	},
+{ 0x80,		"O_NONBLOCK"	},
+{ 8,		"O_APPEND"	},
+{ 0x100,	"O_CREAT"	},
+{ 0x200,	"O_TRUNC"	},
+{ 0x400,	"O_EXCL"	},
+{ 0x800,	"O_NOCTTY"	},
+{ 0x10,		"O_SYNC"	},
+{ 0x40,		"O_DSYNC"	},
+{ 0x8000,	"O_RSYNC"	},
+{ 4,		"O_NDELAY"	},
+{ 0x1000,	"O_PRIV"	},
+	XLAT_END
+};
diff --git a/xlat/perf_event_open_flags.h b/xlat/perf_event_open_flags.h
new file mode 100644
index 0000000..ee4114c
--- /dev/null
+++ b/xlat/perf_event_open_flags.h
@@ -0,0 +1,14 @@
+/* Generated by ./xlat/gen.sh from ./xlat/perf_event_open_flags.in; do not edit. */
+
+static const struct xlat perf_event_open_flags[] = {
+#if defined(PERF_FLAG_FD_NO_GROUP) || (defined(HAVE_DECL_PERF_FLAG_FD_NO_GROUP) && HAVE_DECL_PERF_FLAG_FD_NO_GROUP)
+	XLAT(PERF_FLAG_FD_NO_GROUP),
+#endif
+#if defined(PERF_FLAG_FD_OUTPUT) || (defined(HAVE_DECL_PERF_FLAG_FD_OUTPUT) && HAVE_DECL_PERF_FLAG_FD_OUTPUT)
+	XLAT(PERF_FLAG_FD_OUTPUT),
+#endif
+#if defined(PERF_FLAG_PID_CGROUP) || (defined(HAVE_DECL_PERF_FLAG_PID_CGROUP) && HAVE_DECL_PERF_FLAG_PID_CGROUP)
+	XLAT(PERF_FLAG_PID_CGROUP),
+#endif
+	XLAT_END
+};
diff --git a/xlat/personality_options.h b/xlat/personality_options.h
new file mode 100644
index 0000000..cd5379b
--- /dev/null
+++ b/xlat/personality_options.h
@@ -0,0 +1,27 @@
+/* Generated by ./xlat/gen.sh from ./xlat/personality_options.in; do not edit. */
+
+static const struct xlat personality_options[] = {
+	XLAT(PER_LINUX),
+	XLAT(PER_LINUX_32BIT),
+	XLAT(PER_LINUX_FDPIC),
+	XLAT(PER_SVR4),
+	XLAT(PER_SVR3),
+	XLAT(PER_SCOSVR3),
+	XLAT(PER_OSR5),
+	XLAT(PER_WYSEV386),
+	XLAT(PER_ISCR4),
+	XLAT(PER_BSD),
+	XLAT(PER_SUNOS),
+	XLAT(PER_XENIX),
+	XLAT(PER_LINUX32),
+	XLAT(PER_LINUX32_3GB),
+	XLAT(PER_IRIX32),
+	XLAT(PER_IRIXN32),
+	XLAT(PER_IRIX64),
+	XLAT(PER_RISCOS),
+	XLAT(PER_SOLARIS),
+	XLAT(PER_UW7),
+	XLAT(PER_OSF4),
+	XLAT(PER_HPUX),
+	XLAT_END
+};
diff --git a/xlat/pmsgflags.h b/xlat/pmsgflags.h
new file mode 100644
index 0000000..a10254e
--- /dev/null
+++ b/xlat/pmsgflags.h
@@ -0,0 +1,14 @@
+/* Generated by ./xlat/gen.sh from ./xlat/pmsgflags.in; do not edit. */
+
+static const struct xlat pmsgflags[] = {
+#if defined(MSG_HIPRI) || (defined(HAVE_DECL_MSG_HIPRI) && HAVE_DECL_MSG_HIPRI)
+	XLAT(MSG_HIPRI),
+#endif
+#if defined(MSG_ANY) || (defined(HAVE_DECL_MSG_ANY) && HAVE_DECL_MSG_ANY)
+	XLAT(MSG_ANY),
+#endif
+#if defined(MSG_BAND) || (defined(HAVE_DECL_MSG_BAND) && HAVE_DECL_MSG_BAND)
+	XLAT(MSG_BAND),
+#endif
+	XLAT_END
+};
diff --git a/xlat/policies.h b/xlat/policies.h
new file mode 100644
index 0000000..d46eafd
--- /dev/null
+++ b/xlat/policies.h
@@ -0,0 +1,17 @@
+/* Generated by ./xlat/gen.sh from ./xlat/policies.in; do not edit. */
+
+static const struct xlat policies[] = {
+#if defined(MPOL_DEFAULT) || (defined(HAVE_DECL_MPOL_DEFAULT) && HAVE_DECL_MPOL_DEFAULT)
+	XLAT(MPOL_DEFAULT),
+#endif
+#if defined(MPOL_PREFERRED) || (defined(HAVE_DECL_MPOL_PREFERRED) && HAVE_DECL_MPOL_PREFERRED)
+	XLAT(MPOL_PREFERRED),
+#endif
+#if defined(MPOL_BIND) || (defined(HAVE_DECL_MPOL_BIND) && HAVE_DECL_MPOL_BIND)
+	XLAT(MPOL_BIND),
+#endif
+#if defined(MPOL_INTERLEAVE) || (defined(HAVE_DECL_MPOL_INTERLEAVE) && HAVE_DECL_MPOL_INTERLEAVE)
+	XLAT(MPOL_INTERLEAVE),
+#endif
+	XLAT_END
+};
diff --git a/xlat/pollflags.h b/xlat/pollflags.h
new file mode 100644
index 0000000..cd1c128
--- /dev/null
+++ b/xlat/pollflags.h
@@ -0,0 +1,35 @@
+/* Generated by ./xlat/gen.sh from ./xlat/pollflags.in; do not edit. */
+
+static const struct xlat pollflags[] = {
+#if defined(POLLIN) || (defined(HAVE_DECL_POLLIN) && HAVE_DECL_POLLIN)
+	XLAT(POLLIN),
+#endif
+#if defined(POLLPRI) || (defined(HAVE_DECL_POLLPRI) && HAVE_DECL_POLLPRI)
+	XLAT(POLLPRI),
+#endif
+#if defined(POLLOUT) || (defined(HAVE_DECL_POLLOUT) && HAVE_DECL_POLLOUT)
+	XLAT(POLLOUT),
+#endif
+#if defined(POLLRDNORM) || (defined(HAVE_DECL_POLLRDNORM) && HAVE_DECL_POLLRDNORM)
+	XLAT(POLLRDNORM),
+#endif
+#if defined(POLLWRNORM) || (defined(HAVE_DECL_POLLWRNORM) && HAVE_DECL_POLLWRNORM)
+	XLAT(POLLWRNORM),
+#endif
+#if defined(POLLRDBAND) || (defined(HAVE_DECL_POLLRDBAND) && HAVE_DECL_POLLRDBAND)
+	XLAT(POLLRDBAND),
+#endif
+#if defined(POLLWRBAND) || (defined(HAVE_DECL_POLLWRBAND) && HAVE_DECL_POLLWRBAND)
+	XLAT(POLLWRBAND),
+#endif
+#if defined(POLLERR) || (defined(HAVE_DECL_POLLERR) && HAVE_DECL_POLLERR)
+	XLAT(POLLERR),
+#endif
+#if defined(POLLHUP) || (defined(HAVE_DECL_POLLHUP) && HAVE_DECL_POLLHUP)
+	XLAT(POLLHUP),
+#endif
+#if defined(POLLNVAL) || (defined(HAVE_DECL_POLLNVAL) && HAVE_DECL_POLLNVAL)
+	XLAT(POLLNVAL),
+#endif
+	XLAT_END
+};
diff --git a/xlat/prctl_options.h b/xlat/prctl_options.h
new file mode 100644
index 0000000..ce5f2d5
--- /dev/null
+++ b/xlat/prctl_options.h
@@ -0,0 +1,173 @@
+/* Generated by ./xlat/gen.sh from ./xlat/prctl_options.in; do not edit. */
+
+static const struct xlat prctl_options[] = {
+#if defined(PR_MAXPROCS) || (defined(HAVE_DECL_PR_MAXPROCS) && HAVE_DECL_PR_MAXPROCS)
+	XLAT(PR_MAXPROCS),
+#endif
+#if defined(PR_ISBLOCKED) || (defined(HAVE_DECL_PR_ISBLOCKED) && HAVE_DECL_PR_ISBLOCKED)
+	XLAT(PR_ISBLOCKED),
+#endif
+#if defined(PR_SETSTACKSIZE) || (defined(HAVE_DECL_PR_SETSTACKSIZE) && HAVE_DECL_PR_SETSTACKSIZE)
+	XLAT(PR_SETSTACKSIZE),
+#endif
+#if defined(PR_GETSTACKSIZE) || (defined(HAVE_DECL_PR_GETSTACKSIZE) && HAVE_DECL_PR_GETSTACKSIZE)
+	XLAT(PR_GETSTACKSIZE),
+#endif
+#if defined(PR_MAXPPROCS) || (defined(HAVE_DECL_PR_MAXPPROCS) && HAVE_DECL_PR_MAXPPROCS)
+	XLAT(PR_MAXPPROCS),
+#endif
+#if defined(PR_UNBLKONEXEC) || (defined(HAVE_DECL_PR_UNBLKONEXEC) && HAVE_DECL_PR_UNBLKONEXEC)
+	XLAT(PR_UNBLKONEXEC),
+#endif
+#if defined(PR_ATOMICSIM) || (defined(HAVE_DECL_PR_ATOMICSIM) && HAVE_DECL_PR_ATOMICSIM)
+	XLAT(PR_ATOMICSIM),
+#endif
+#if defined(PR_SETEXITSIG) || (defined(HAVE_DECL_PR_SETEXITSIG) && HAVE_DECL_PR_SETEXITSIG)
+	XLAT(PR_SETEXITSIG),
+#endif
+#if defined(PR_RESIDENT) || (defined(HAVE_DECL_PR_RESIDENT) && HAVE_DECL_PR_RESIDENT)
+	XLAT(PR_RESIDENT),
+#endif
+#if defined(PR_ATTACHADDR) || (defined(HAVE_DECL_PR_ATTACHADDR) && HAVE_DECL_PR_ATTACHADDR)
+	XLAT(PR_ATTACHADDR),
+#endif
+#if defined(PR_DETACHADDR) || (defined(HAVE_DECL_PR_DETACHADDR) && HAVE_DECL_PR_DETACHADDR)
+	XLAT(PR_DETACHADDR),
+#endif
+#if defined(PR_TERMCHILD) || (defined(HAVE_DECL_PR_TERMCHILD) && HAVE_DECL_PR_TERMCHILD)
+	XLAT(PR_TERMCHILD),
+#endif
+#if defined(PR_GETSHMASK) || (defined(HAVE_DECL_PR_GETSHMASK) && HAVE_DECL_PR_GETSHMASK)
+	XLAT(PR_GETSHMASK),
+#endif
+#if defined(PR_GETNSHARE) || (defined(HAVE_DECL_PR_GETNSHARE) && HAVE_DECL_PR_GETNSHARE)
+	XLAT(PR_GETNSHARE),
+#endif
+#if defined(PR_COREPID) || (defined(HAVE_DECL_PR_COREPID) && HAVE_DECL_PR_COREPID)
+	XLAT(PR_COREPID),
+#endif
+#if defined(PR_ATTACHADDRPERM) || (defined(HAVE_DECL_PR_ATTACHADDRPERM) && HAVE_DECL_PR_ATTACHADDRPERM)
+	XLAT(PR_ATTACHADDRPERM),
+#endif
+#if defined(PR_PTHREADEXIT) || (defined(HAVE_DECL_PR_PTHREADEXIT) && HAVE_DECL_PR_PTHREADEXIT)
+	XLAT(PR_PTHREADEXIT),
+#endif
+#if defined(PR_SET_PDEATHSIG) || (defined(HAVE_DECL_PR_SET_PDEATHSIG) && HAVE_DECL_PR_SET_PDEATHSIG)
+	XLAT(PR_SET_PDEATHSIG),
+#endif
+#if defined(PR_GET_PDEATHSIG) || (defined(HAVE_DECL_PR_GET_PDEATHSIG) && HAVE_DECL_PR_GET_PDEATHSIG)
+	XLAT(PR_GET_PDEATHSIG),
+#endif
+#if defined(PR_GET_DUMPABLE) || (defined(HAVE_DECL_PR_GET_DUMPABLE) && HAVE_DECL_PR_GET_DUMPABLE)
+	XLAT(PR_GET_DUMPABLE),
+#endif
+#if defined(PR_SET_DUMPABLE) || (defined(HAVE_DECL_PR_SET_DUMPABLE) && HAVE_DECL_PR_SET_DUMPABLE)
+	XLAT(PR_SET_DUMPABLE),
+#endif
+#if defined(PR_GET_UNALIGN) || (defined(HAVE_DECL_PR_GET_UNALIGN) && HAVE_DECL_PR_GET_UNALIGN)
+	XLAT(PR_GET_UNALIGN),
+#endif
+#if defined(PR_SET_UNALIGN) || (defined(HAVE_DECL_PR_SET_UNALIGN) && HAVE_DECL_PR_SET_UNALIGN)
+	XLAT(PR_SET_UNALIGN),
+#endif
+#if defined(PR_GET_KEEPCAPS) || (defined(HAVE_DECL_PR_GET_KEEPCAPS) && HAVE_DECL_PR_GET_KEEPCAPS)
+	XLAT(PR_GET_KEEPCAPS),
+#endif
+#if defined(PR_SET_KEEPCAPS) || (defined(HAVE_DECL_PR_SET_KEEPCAPS) && HAVE_DECL_PR_SET_KEEPCAPS)
+	XLAT(PR_SET_KEEPCAPS),
+#endif
+#if defined(PR_GET_FPEMU) || (defined(HAVE_DECL_PR_GET_FPEMU) && HAVE_DECL_PR_GET_FPEMU)
+	XLAT(PR_GET_FPEMU),
+#endif
+#if defined(PR_SET_FPEMU) || (defined(HAVE_DECL_PR_SET_FPEMU) && HAVE_DECL_PR_SET_FPEMU)
+	XLAT(PR_SET_FPEMU),
+#endif
+#if defined(PR_GET_FPEXC) || (defined(HAVE_DECL_PR_GET_FPEXC) && HAVE_DECL_PR_GET_FPEXC)
+	XLAT(PR_GET_FPEXC),
+#endif
+#if defined(PR_SET_FPEXC) || (defined(HAVE_DECL_PR_SET_FPEXC) && HAVE_DECL_PR_SET_FPEXC)
+	XLAT(PR_SET_FPEXC),
+#endif
+#if defined(PR_GET_TIMING) || (defined(HAVE_DECL_PR_GET_TIMING) && HAVE_DECL_PR_GET_TIMING)
+	XLAT(PR_GET_TIMING),
+#endif
+#if defined(PR_SET_TIMING) || (defined(HAVE_DECL_PR_SET_TIMING) && HAVE_DECL_PR_SET_TIMING)
+	XLAT(PR_SET_TIMING),
+#endif
+#if defined(PR_SET_NAME) || (defined(HAVE_DECL_PR_SET_NAME) && HAVE_DECL_PR_SET_NAME)
+	XLAT(PR_SET_NAME),
+#endif
+#if defined(PR_GET_NAME) || (defined(HAVE_DECL_PR_GET_NAME) && HAVE_DECL_PR_GET_NAME)
+	XLAT(PR_GET_NAME),
+#endif
+#if defined(PR_GET_ENDIAN) || (defined(HAVE_DECL_PR_GET_ENDIAN) && HAVE_DECL_PR_GET_ENDIAN)
+	XLAT(PR_GET_ENDIAN),
+#endif
+#if defined(PR_SET_ENDIAN) || (defined(HAVE_DECL_PR_SET_ENDIAN) && HAVE_DECL_PR_SET_ENDIAN)
+	XLAT(PR_SET_ENDIAN),
+#endif
+#if defined(PR_GET_SECCOMP) || (defined(HAVE_DECL_PR_GET_SECCOMP) && HAVE_DECL_PR_GET_SECCOMP)
+	XLAT(PR_GET_SECCOMP),
+#endif
+#if defined(PR_SET_SECCOMP) || (defined(HAVE_DECL_PR_SET_SECCOMP) && HAVE_DECL_PR_SET_SECCOMP)
+	XLAT(PR_SET_SECCOMP),
+#endif
+#if defined(PR_CAPBSET_READ) || (defined(HAVE_DECL_PR_CAPBSET_READ) && HAVE_DECL_PR_CAPBSET_READ)
+	XLAT(PR_CAPBSET_READ),
+#endif
+#if defined(PR_CAPBSET_DROP) || (defined(HAVE_DECL_PR_CAPBSET_DROP) && HAVE_DECL_PR_CAPBSET_DROP)
+	XLAT(PR_CAPBSET_DROP),
+#endif
+#if defined(PR_GET_TSC) || (defined(HAVE_DECL_PR_GET_TSC) && HAVE_DECL_PR_GET_TSC)
+	XLAT(PR_GET_TSC),
+#endif
+#if defined(PR_SET_TSC) || (defined(HAVE_DECL_PR_SET_TSC) && HAVE_DECL_PR_SET_TSC)
+	XLAT(PR_SET_TSC),
+#endif
+#if defined(PR_GET_SECUREBITS) || (defined(HAVE_DECL_PR_GET_SECUREBITS) && HAVE_DECL_PR_GET_SECUREBITS)
+	XLAT(PR_GET_SECUREBITS),
+#endif
+#if defined(PR_SET_SECUREBITS) || (defined(HAVE_DECL_PR_SET_SECUREBITS) && HAVE_DECL_PR_SET_SECUREBITS)
+	XLAT(PR_SET_SECUREBITS),
+#endif
+#if defined(PR_SET_TIMERSLACK) || (defined(HAVE_DECL_PR_SET_TIMERSLACK) && HAVE_DECL_PR_SET_TIMERSLACK)
+	XLAT(PR_SET_TIMERSLACK),
+#endif
+#if defined(PR_GET_TIMERSLACK) || (defined(HAVE_DECL_PR_GET_TIMERSLACK) && HAVE_DECL_PR_GET_TIMERSLACK)
+	XLAT(PR_GET_TIMERSLACK),
+#endif
+#if defined(PR_TASK_PERF_EVENTS_DISABLE) || (defined(HAVE_DECL_PR_TASK_PERF_EVENTS_DISABLE) && HAVE_DECL_PR_TASK_PERF_EVENTS_DISABLE)
+	XLAT(PR_TASK_PERF_EVENTS_DISABLE),
+#endif
+#if defined(PR_TASK_PERF_EVENTS_ENABLE) || (defined(HAVE_DECL_PR_TASK_PERF_EVENTS_ENABLE) && HAVE_DECL_PR_TASK_PERF_EVENTS_ENABLE)
+	XLAT(PR_TASK_PERF_EVENTS_ENABLE),
+#endif
+#if defined(PR_MCE_KILL) || (defined(HAVE_DECL_PR_MCE_KILL) && HAVE_DECL_PR_MCE_KILL)
+	XLAT(PR_MCE_KILL),
+#endif
+#if defined(PR_MCE_KILL_GET) || (defined(HAVE_DECL_PR_MCE_KILL_GET) && HAVE_DECL_PR_MCE_KILL_GET)
+	XLAT(PR_MCE_KILL_GET),
+#endif
+#if defined(PR_SET_MM) || (defined(HAVE_DECL_PR_SET_MM) && HAVE_DECL_PR_SET_MM)
+	XLAT(PR_SET_MM),
+#endif
+#if defined(PR_SET_PTRACER) || (defined(HAVE_DECL_PR_SET_PTRACER) && HAVE_DECL_PR_SET_PTRACER)
+	XLAT(PR_SET_PTRACER),
+#endif
+#if defined(PR_SET_CHILD_SUBREAPER) || (defined(HAVE_DECL_PR_SET_CHILD_SUBREAPER) && HAVE_DECL_PR_SET_CHILD_SUBREAPER)
+	XLAT(PR_SET_CHILD_SUBREAPER),
+#endif
+#if defined(PR_GET_CHILD_SUBREAPER) || (defined(HAVE_DECL_PR_GET_CHILD_SUBREAPER) && HAVE_DECL_PR_GET_CHILD_SUBREAPER)
+	XLAT(PR_GET_CHILD_SUBREAPER),
+#endif
+#if defined(PR_SET_NO_NEW_PRIVS) || (defined(HAVE_DECL_PR_SET_NO_NEW_PRIVS) && HAVE_DECL_PR_SET_NO_NEW_PRIVS)
+	XLAT(PR_SET_NO_NEW_PRIVS),
+#endif
+#if defined(PR_GET_NO_NEW_PRIVS) || (defined(HAVE_DECL_PR_GET_NO_NEW_PRIVS) && HAVE_DECL_PR_GET_NO_NEW_PRIVS)
+	XLAT(PR_GET_NO_NEW_PRIVS),
+#endif
+#if defined(PR_GET_TID_ADDRESS) || (defined(HAVE_DECL_PR_GET_TID_ADDRESS) && HAVE_DECL_PR_GET_TID_ADDRESS)
+	XLAT(PR_GET_TID_ADDRESS),
+#endif
+	XLAT_END
+};
diff --git a/xlat/priorities.h b/xlat/priorities.h
new file mode 100644
index 0000000..6d54326
--- /dev/null
+++ b/xlat/priorities.h
@@ -0,0 +1,14 @@
+/* Generated by ./xlat/gen.sh from ./xlat/priorities.in; do not edit. */
+
+static const struct xlat priorities[] = {
+#if defined(PRIO_PROCESS) || (defined(HAVE_DECL_PRIO_PROCESS) && HAVE_DECL_PRIO_PROCESS)
+	XLAT(PRIO_PROCESS),
+#endif
+#if defined(PRIO_PGRP) || (defined(HAVE_DECL_PRIO_PGRP) && HAVE_DECL_PRIO_PGRP)
+	XLAT(PRIO_PGRP),
+#endif
+#if defined(PRIO_USER) || (defined(HAVE_DECL_PRIO_USER) && HAVE_DECL_PRIO_USER)
+	XLAT(PRIO_USER),
+#endif
+	XLAT_END
+};
diff --git a/xlat/ptp_flags_options.h b/xlat/ptp_flags_options.h
new file mode 100644
index 0000000..87b3403
--- /dev/null
+++ b/xlat/ptp_flags_options.h
@@ -0,0 +1,14 @@
+/* Generated by ./xlat/gen.sh from ./xlat/ptp_flags_options.in; do not edit. */
+
+static const struct xlat ptp_flags_options[] = {
+#if defined(PTP_ENABLE_FEATURE) || (defined(HAVE_DECL_PTP_ENABLE_FEATURE) && HAVE_DECL_PTP_ENABLE_FEATURE)
+	XLAT(PTP_ENABLE_FEATURE),
+#endif
+#if defined(PTP_RISING_EDGE) || (defined(HAVE_DECL_PTP_RISING_EDGE) && HAVE_DECL_PTP_RISING_EDGE)
+	XLAT(PTP_RISING_EDGE),
+#endif
+#if defined(PTP_FALLING_EDGE) || (defined(HAVE_DECL_PTP_FALLING_EDGE) && HAVE_DECL_PTP_FALLING_EDGE)
+	XLAT(PTP_FALLING_EDGE),
+#endif
+	XLAT_END
+};
diff --git a/xlat/ptrace_cmds.h b/xlat/ptrace_cmds.h
new file mode 100644
index 0000000..02d6642
--- /dev/null
+++ b/xlat/ptrace_cmds.h
@@ -0,0 +1,98 @@
+/* Generated by ./xlat/gen.sh from ./xlat/ptrace_cmds.in; do not edit. */
+
+static const struct xlat ptrace_cmds[] = {
+#if defined(PTRACE_TRACEME) || (defined(HAVE_DECL_PTRACE_TRACEME) && HAVE_DECL_PTRACE_TRACEME)
+	XLAT(PTRACE_TRACEME),
+#endif
+#if defined(PTRACE_PEEKTEXT) || (defined(HAVE_DECL_PTRACE_PEEKTEXT) && HAVE_DECL_PTRACE_PEEKTEXT)
+	XLAT(PTRACE_PEEKTEXT),
+#endif
+#if defined(PTRACE_PEEKDATA) || (defined(HAVE_DECL_PTRACE_PEEKDATA) && HAVE_DECL_PTRACE_PEEKDATA)
+	XLAT(PTRACE_PEEKDATA),
+#endif
+#if defined(PTRACE_PEEKUSER) || (defined(HAVE_DECL_PTRACE_PEEKUSER) && HAVE_DECL_PTRACE_PEEKUSER)
+	XLAT(PTRACE_PEEKUSER),
+#endif
+#if defined(PTRACE_POKETEXT) || (defined(HAVE_DECL_PTRACE_POKETEXT) && HAVE_DECL_PTRACE_POKETEXT)
+	XLAT(PTRACE_POKETEXT),
+#endif
+#if defined(PTRACE_POKEDATA) || (defined(HAVE_DECL_PTRACE_POKEDATA) && HAVE_DECL_PTRACE_POKEDATA)
+	XLAT(PTRACE_POKEDATA),
+#endif
+#if defined(PTRACE_POKEUSER) || (defined(HAVE_DECL_PTRACE_POKEUSER) && HAVE_DECL_PTRACE_POKEUSER)
+	XLAT(PTRACE_POKEUSER),
+#endif
+#if defined(PTRACE_CONT) || (defined(HAVE_DECL_PTRACE_CONT) && HAVE_DECL_PTRACE_CONT)
+	XLAT(PTRACE_CONT),
+#endif
+#if defined(PTRACE_KILL) || (defined(HAVE_DECL_PTRACE_KILL) && HAVE_DECL_PTRACE_KILL)
+	XLAT(PTRACE_KILL),
+#endif
+#if defined(PTRACE_SINGLESTEP) || (defined(HAVE_DECL_PTRACE_SINGLESTEP) && HAVE_DECL_PTRACE_SINGLESTEP)
+	XLAT(PTRACE_SINGLESTEP),
+#endif
+#if defined(PTRACE_ATTACH) || (defined(HAVE_DECL_PTRACE_ATTACH) && HAVE_DECL_PTRACE_ATTACH)
+	XLAT(PTRACE_ATTACH),
+#endif
+#if defined(PTRACE_DETACH) || (defined(HAVE_DECL_PTRACE_DETACH) && HAVE_DECL_PTRACE_DETACH)
+	XLAT(PTRACE_DETACH),
+#endif
+#if defined(PTRACE_GETREGS) || (defined(HAVE_DECL_PTRACE_GETREGS) && HAVE_DECL_PTRACE_GETREGS)
+	XLAT(PTRACE_GETREGS),
+#endif
+#if defined(PTRACE_SETREGS) || (defined(HAVE_DECL_PTRACE_SETREGS) && HAVE_DECL_PTRACE_SETREGS)
+	XLAT(PTRACE_SETREGS),
+#endif
+#if defined(PTRACE_GETFPREGS) || (defined(HAVE_DECL_PTRACE_GETFPREGS) && HAVE_DECL_PTRACE_GETFPREGS)
+	XLAT(PTRACE_GETFPREGS),
+#endif
+#if defined(PTRACE_SETFPREGS) || (defined(HAVE_DECL_PTRACE_SETFPREGS) && HAVE_DECL_PTRACE_SETFPREGS)
+	XLAT(PTRACE_SETFPREGS),
+#endif
+#if defined(PTRACE_GETFPXREGS) || (defined(HAVE_DECL_PTRACE_GETFPXREGS) && HAVE_DECL_PTRACE_GETFPXREGS)
+	XLAT(PTRACE_GETFPXREGS),
+#endif
+#if defined(PTRACE_SETFPXREGS) || (defined(HAVE_DECL_PTRACE_SETFPXREGS) && HAVE_DECL_PTRACE_SETFPXREGS)
+	XLAT(PTRACE_SETFPXREGS),
+#endif
+#if defined(PTRACE_GETVRREGS) || (defined(HAVE_DECL_PTRACE_GETVRREGS) && HAVE_DECL_PTRACE_GETVRREGS)
+	XLAT(PTRACE_GETVRREGS),
+#endif
+#if defined(PTRACE_SETVRREGS) || (defined(HAVE_DECL_PTRACE_SETVRREGS) && HAVE_DECL_PTRACE_SETVRREGS)
+	XLAT(PTRACE_SETVRREGS),
+#endif
+#if defined(PTRACE_SETOPTIONS) || (defined(HAVE_DECL_PTRACE_SETOPTIONS) && HAVE_DECL_PTRACE_SETOPTIONS)
+	XLAT(PTRACE_SETOPTIONS),
+#endif
+#if defined(PTRACE_GETEVENTMSG) || (defined(HAVE_DECL_PTRACE_GETEVENTMSG) && HAVE_DECL_PTRACE_GETEVENTMSG)
+	XLAT(PTRACE_GETEVENTMSG),
+#endif
+#if defined(PTRACE_GETSIGINFO) || (defined(HAVE_DECL_PTRACE_GETSIGINFO) && HAVE_DECL_PTRACE_GETSIGINFO)
+	XLAT(PTRACE_GETSIGINFO),
+#endif
+#if defined(PTRACE_SETSIGINFO) || (defined(HAVE_DECL_PTRACE_SETSIGINFO) && HAVE_DECL_PTRACE_SETSIGINFO)
+	XLAT(PTRACE_SETSIGINFO),
+#endif
+#if defined(PTRACE_GETREGSET) || (defined(HAVE_DECL_PTRACE_GETREGSET) && HAVE_DECL_PTRACE_GETREGSET)
+	XLAT(PTRACE_GETREGSET),
+#endif
+#if defined(PTRACE_SETREGSET) || (defined(HAVE_DECL_PTRACE_SETREGSET) && HAVE_DECL_PTRACE_SETREGSET)
+	XLAT(PTRACE_SETREGSET),
+#endif
+#if defined(PTRACE_SET_SYSCALL) || (defined(HAVE_DECL_PTRACE_SET_SYSCALL) && HAVE_DECL_PTRACE_SET_SYSCALL)
+	XLAT(PTRACE_SET_SYSCALL),
+#endif
+#if defined(PTRACE_SEIZE) || (defined(HAVE_DECL_PTRACE_SEIZE) && HAVE_DECL_PTRACE_SEIZE)
+	XLAT(PTRACE_SEIZE),
+#endif
+#if defined(PTRACE_INTERRUPT) || (defined(HAVE_DECL_PTRACE_INTERRUPT) && HAVE_DECL_PTRACE_INTERRUPT)
+	XLAT(PTRACE_INTERRUPT),
+#endif
+#if defined(PTRACE_LISTEN) || (defined(HAVE_DECL_PTRACE_LISTEN) && HAVE_DECL_PTRACE_LISTEN)
+	XLAT(PTRACE_LISTEN),
+#endif
+#if defined(PTRACE_SYSCALL) || (defined(HAVE_DECL_PTRACE_SYSCALL) && HAVE_DECL_PTRACE_SYSCALL)
+	XLAT(PTRACE_SYSCALL),
+#endif
+	XLAT_END
+};
diff --git a/xlat/ptrace_setoptions_flags.h b/xlat/ptrace_setoptions_flags.h
new file mode 100644
index 0000000..9ea554e
--- /dev/null
+++ b/xlat/ptrace_setoptions_flags.h
@@ -0,0 +1,32 @@
+/* Generated by ./xlat/gen.sh from ./xlat/ptrace_setoptions_flags.in; do not edit. */
+
+static const struct xlat ptrace_setoptions_flags[] = {
+#if defined(PTRACE_O_TRACESYSGOOD) || (defined(HAVE_DECL_PTRACE_O_TRACESYSGOOD) && HAVE_DECL_PTRACE_O_TRACESYSGOOD)
+	XLAT(PTRACE_O_TRACESYSGOOD),
+#endif
+#if defined(PTRACE_O_TRACEFORK) || (defined(HAVE_DECL_PTRACE_O_TRACEFORK) && HAVE_DECL_PTRACE_O_TRACEFORK)
+	XLAT(PTRACE_O_TRACEFORK),
+#endif
+#if defined(PTRACE_O_TRACEVFORK) || (defined(HAVE_DECL_PTRACE_O_TRACEVFORK) && HAVE_DECL_PTRACE_O_TRACEVFORK)
+	XLAT(PTRACE_O_TRACEVFORK),
+#endif
+#if defined(PTRACE_O_TRACECLONE) || (defined(HAVE_DECL_PTRACE_O_TRACECLONE) && HAVE_DECL_PTRACE_O_TRACECLONE)
+	XLAT(PTRACE_O_TRACECLONE),
+#endif
+#if defined(PTRACE_O_TRACEEXEC) || (defined(HAVE_DECL_PTRACE_O_TRACEEXEC) && HAVE_DECL_PTRACE_O_TRACEEXEC)
+	XLAT(PTRACE_O_TRACEEXEC),
+#endif
+#if defined(PTRACE_O_TRACEVFORKDONE) || (defined(HAVE_DECL_PTRACE_O_TRACEVFORKDONE) && HAVE_DECL_PTRACE_O_TRACEVFORKDONE)
+	XLAT(PTRACE_O_TRACEVFORKDONE),
+#endif
+#if defined(PTRACE_O_TRACEEXIT) || (defined(HAVE_DECL_PTRACE_O_TRACEEXIT) && HAVE_DECL_PTRACE_O_TRACEEXIT)
+	XLAT(PTRACE_O_TRACEEXIT),
+#endif
+#if defined(PTRACE_O_TRACESECCOMP) || (defined(HAVE_DECL_PTRACE_O_TRACESECCOMP) && HAVE_DECL_PTRACE_O_TRACESECCOMP)
+	XLAT(PTRACE_O_TRACESECCOMP),
+#endif
+#if defined(PTRACE_O_EXITKILL) || (defined(HAVE_DECL_PTRACE_O_EXITKILL) && HAVE_DECL_PTRACE_O_EXITKILL)
+	XLAT(PTRACE_O_EXITKILL),
+#endif
+	XLAT_END
+};
diff --git a/xlat/qm_which.h b/xlat/qm_which.h
new file mode 100644
index 0000000..8de83b9
--- /dev/null
+++ b/xlat/qm_which.h
@@ -0,0 +1,21 @@
+/* Generated by ./xlat/gen.sh from ./xlat/qm_which.in; do not edit. */
+
+static const struct xlat qm_which[] = {
+	XLAT(0),
+#if defined(QM_MODULES) || (defined(HAVE_DECL_QM_MODULES) && HAVE_DECL_QM_MODULES)
+	XLAT(QM_MODULES),
+#endif
+#if defined(QM_DEPS) || (defined(HAVE_DECL_QM_DEPS) && HAVE_DECL_QM_DEPS)
+	XLAT(QM_DEPS),
+#endif
+#if defined(QM_REFS) || (defined(HAVE_DECL_QM_REFS) && HAVE_DECL_QM_REFS)
+	XLAT(QM_REFS),
+#endif
+#if defined(QM_SYMBOLS) || (defined(HAVE_DECL_QM_SYMBOLS) && HAVE_DECL_QM_SYMBOLS)
+	XLAT(QM_SYMBOLS),
+#endif
+#if defined(QM_INFO) || (defined(HAVE_DECL_QM_INFO) && HAVE_DECL_QM_INFO)
+	XLAT(QM_INFO),
+#endif
+	XLAT_END
+};
diff --git a/xlat/quota_formats.h b/xlat/quota_formats.h
new file mode 100644
index 0000000..998dffc
--- /dev/null
+++ b/xlat/quota_formats.h
@@ -0,0 +1,11 @@
+/* Generated by ./xlat/gen.sh from ./xlat/quota_formats.in; do not edit. */
+
+static const struct xlat quota_formats[] = {
+#if defined(QFMT_VFS_OLD) || (defined(HAVE_DECL_QFMT_VFS_OLD) && HAVE_DECL_QFMT_VFS_OLD)
+	XLAT(QFMT_VFS_OLD),
+#endif
+#if defined(QFMT_VFS_V0) || (defined(HAVE_DECL_QFMT_VFS_V0) && HAVE_DECL_QFMT_VFS_V0)
+	XLAT(QFMT_VFS_V0),
+#endif
+	XLAT_END
+};
diff --git a/xlat/quotacmds.h b/xlat/quotacmds.h
new file mode 100644
index 0000000..7511402
--- /dev/null
+++ b/xlat/quotacmds.h
@@ -0,0 +1,101 @@
+/* Generated by ./xlat/gen.sh from ./xlat/quotacmds.in; do not edit. */
+
+static const struct xlat quotacmds[] = {
+#if defined(Q_V1_QUOTAON) || (defined(HAVE_DECL_Q_V1_QUOTAON) && HAVE_DECL_Q_V1_QUOTAON)
+	XLAT(Q_V1_QUOTAON),
+#endif
+#if defined(Q_V1_QUOTAOFF) || (defined(HAVE_DECL_Q_V1_QUOTAOFF) && HAVE_DECL_Q_V1_QUOTAOFF)
+	XLAT(Q_V1_QUOTAOFF),
+#endif
+#if defined(Q_V1_GETQUOTA) || (defined(HAVE_DECL_Q_V1_GETQUOTA) && HAVE_DECL_Q_V1_GETQUOTA)
+	XLAT(Q_V1_GETQUOTA),
+#endif
+#if defined(Q_V1_SETQUOTA) || (defined(HAVE_DECL_Q_V1_SETQUOTA) && HAVE_DECL_Q_V1_SETQUOTA)
+	XLAT(Q_V1_SETQUOTA),
+#endif
+#if defined(Q_V1_SETUSE) || (defined(HAVE_DECL_Q_V1_SETUSE) && HAVE_DECL_Q_V1_SETUSE)
+	XLAT(Q_V1_SETUSE),
+#endif
+#if defined(Q_V1_SYNC) || (defined(HAVE_DECL_Q_V1_SYNC) && HAVE_DECL_Q_V1_SYNC)
+	XLAT(Q_V1_SYNC),
+#endif
+#if defined(Q_SETQLIM) || (defined(HAVE_DECL_Q_SETQLIM) && HAVE_DECL_Q_SETQLIM)
+	XLAT(Q_SETQLIM),
+#endif
+#if defined(Q_V1_GETSTATS) || (defined(HAVE_DECL_Q_V1_GETSTATS) && HAVE_DECL_Q_V1_GETSTATS)
+	XLAT(Q_V1_GETSTATS),
+#endif
+#if defined(Q_V1_RSQUASH) || (defined(HAVE_DECL_Q_V1_RSQUASH) && HAVE_DECL_Q_V1_RSQUASH)
+	XLAT(Q_V1_RSQUASH),
+#endif
+#if defined(Q_V2_GETQUOTA) || (defined(HAVE_DECL_Q_V2_GETQUOTA) && HAVE_DECL_Q_V2_GETQUOTA)
+	XLAT(Q_V2_GETQUOTA),
+#endif
+#if defined(Q_V2_SETQUOTA) || (defined(HAVE_DECL_Q_V2_SETQUOTA) && HAVE_DECL_Q_V2_SETQUOTA)
+	XLAT(Q_V2_SETQUOTA),
+#endif
+#if defined(Q_V2_SETUSE) || (defined(HAVE_DECL_Q_V2_SETUSE) && HAVE_DECL_Q_V2_SETUSE)
+	XLAT(Q_V2_SETUSE),
+#endif
+#if defined(Q_V2_GETINFO) || (defined(HAVE_DECL_Q_V2_GETINFO) && HAVE_DECL_Q_V2_GETINFO)
+	XLAT(Q_V2_GETINFO),
+#endif
+#if defined(Q_V2_SETINFO) || (defined(HAVE_DECL_Q_V2_SETINFO) && HAVE_DECL_Q_V2_SETINFO)
+	XLAT(Q_V2_SETINFO),
+#endif
+#if defined(Q_V2_SETGRACE) || (defined(HAVE_DECL_Q_V2_SETGRACE) && HAVE_DECL_Q_V2_SETGRACE)
+	XLAT(Q_V2_SETGRACE),
+#endif
+#if defined(Q_V2_SETFLAGS) || (defined(HAVE_DECL_Q_V2_SETFLAGS) && HAVE_DECL_Q_V2_SETFLAGS)
+	XLAT(Q_V2_SETFLAGS),
+#endif
+#if defined(Q_V2_GETSTATS) || (defined(HAVE_DECL_Q_V2_GETSTATS) && HAVE_DECL_Q_V2_GETSTATS)
+	XLAT(Q_V2_GETSTATS),
+#endif
+#if defined(Q_SYNC) || (defined(HAVE_DECL_Q_SYNC) && HAVE_DECL_Q_SYNC)
+	XLAT(Q_SYNC),
+#endif
+#if defined(Q_QUOTAON) || (defined(HAVE_DECL_Q_QUOTAON) && HAVE_DECL_Q_QUOTAON)
+	XLAT(Q_QUOTAON),
+#endif
+#if defined(Q_QUOTAOFF) || (defined(HAVE_DECL_Q_QUOTAOFF) && HAVE_DECL_Q_QUOTAOFF)
+	XLAT(Q_QUOTAOFF),
+#endif
+#if defined(Q_GETFMT) || (defined(HAVE_DECL_Q_GETFMT) && HAVE_DECL_Q_GETFMT)
+	XLAT(Q_GETFMT),
+#endif
+#if defined(Q_GETINFO) || (defined(HAVE_DECL_Q_GETINFO) && HAVE_DECL_Q_GETINFO)
+	XLAT(Q_GETINFO),
+#endif
+#if defined(Q_SETINFO) || (defined(HAVE_DECL_Q_SETINFO) && HAVE_DECL_Q_SETINFO)
+	XLAT(Q_SETINFO),
+#endif
+#if defined(Q_GETQUOTA) || (defined(HAVE_DECL_Q_GETQUOTA) && HAVE_DECL_Q_GETQUOTA)
+	XLAT(Q_GETQUOTA),
+#endif
+#if defined(Q_SETQUOTA) || (defined(HAVE_DECL_Q_SETQUOTA) && HAVE_DECL_Q_SETQUOTA)
+	XLAT(Q_SETQUOTA),
+#endif
+#if defined(Q_XQUOTAON) || (defined(HAVE_DECL_Q_XQUOTAON) && HAVE_DECL_Q_XQUOTAON)
+	XLAT(Q_XQUOTAON),
+#endif
+#if defined(Q_XQUOTAOFF) || (defined(HAVE_DECL_Q_XQUOTAOFF) && HAVE_DECL_Q_XQUOTAOFF)
+	XLAT(Q_XQUOTAOFF),
+#endif
+#if defined(Q_XGETQUOTA) || (defined(HAVE_DECL_Q_XGETQUOTA) && HAVE_DECL_Q_XGETQUOTA)
+	XLAT(Q_XGETQUOTA),
+#endif
+#if defined(Q_XSETQLIM) || (defined(HAVE_DECL_Q_XSETQLIM) && HAVE_DECL_Q_XSETQLIM)
+	XLAT(Q_XSETQLIM),
+#endif
+#if defined(Q_XGETQSTAT) || (defined(HAVE_DECL_Q_XGETQSTAT) && HAVE_DECL_Q_XGETQSTAT)
+	XLAT(Q_XGETQSTAT),
+#endif
+#if defined(Q_XQUOTARM) || (defined(HAVE_DECL_Q_XQUOTARM) && HAVE_DECL_Q_XQUOTARM)
+	XLAT(Q_XQUOTARM),
+#endif
+#if defined(Q_XQUOTASYNC) || (defined(HAVE_DECL_Q_XQUOTASYNC) && HAVE_DECL_Q_XQUOTASYNC)
+	XLAT(Q_XQUOTASYNC),
+#endif
+	XLAT_END
+};
diff --git a/xlat/quotatypes.h b/xlat/quotatypes.h
new file mode 100644
index 0000000..be93ed6
--- /dev/null
+++ b/xlat/quotatypes.h
@@ -0,0 +1,11 @@
+/* Generated by ./xlat/gen.sh from ./xlat/quotatypes.in; do not edit. */
+
+static const struct xlat quotatypes[] = {
+#if defined(USRQUOTA) || (defined(HAVE_DECL_USRQUOTA) && HAVE_DECL_USRQUOTA)
+	XLAT(USRQUOTA),
+#endif
+#if defined(GRPQUOTA) || (defined(HAVE_DECL_GRPQUOTA) && HAVE_DECL_GRPQUOTA)
+	XLAT(GRPQUOTA),
+#endif
+	XLAT_END
+};
diff --git a/xlat/resource_flags.h b/xlat/resource_flags.h
new file mode 100644
index 0000000..1df440d
--- /dev/null
+++ b/xlat/resource_flags.h
@@ -0,0 +1,14 @@
+/* Generated by ./xlat/gen.sh from ./xlat/resource_flags.in; do not edit. */
+
+static const struct xlat resource_flags[] = {
+#if defined(IPC_CREAT) || (defined(HAVE_DECL_IPC_CREAT) && HAVE_DECL_IPC_CREAT)
+	XLAT(IPC_CREAT),
+#endif
+#if defined(IPC_EXCL) || (defined(HAVE_DECL_IPC_EXCL) && HAVE_DECL_IPC_EXCL)
+	XLAT(IPC_EXCL),
+#endif
+#if defined(IPC_NOWAIT) || (defined(HAVE_DECL_IPC_NOWAIT) && HAVE_DECL_IPC_NOWAIT)
+	XLAT(IPC_NOWAIT),
+#endif
+	XLAT_END
+};
diff --git a/xlat/resources.h b/xlat/resources.h
new file mode 100644
index 0000000..95a5fdb
--- /dev/null
+++ b/xlat/resources.h
@@ -0,0 +1,56 @@
+/* Generated by ./xlat/gen.sh from ./xlat/resources.in; do not edit. */
+
+static const struct xlat resources[] = {
+#if defined(RLIMIT_AS) || (defined(HAVE_DECL_RLIMIT_AS) && HAVE_DECL_RLIMIT_AS)
+	XLAT(RLIMIT_AS),
+#endif
+#if defined(RLIMIT_CORE) || (defined(HAVE_DECL_RLIMIT_CORE) && HAVE_DECL_RLIMIT_CORE)
+	XLAT(RLIMIT_CORE),
+#endif
+#if defined(RLIMIT_CPU) || (defined(HAVE_DECL_RLIMIT_CPU) && HAVE_DECL_RLIMIT_CPU)
+	XLAT(RLIMIT_CPU),
+#endif
+#if defined(RLIMIT_DATA) || (defined(HAVE_DECL_RLIMIT_DATA) && HAVE_DECL_RLIMIT_DATA)
+	XLAT(RLIMIT_DATA),
+#endif
+#if defined(RLIMIT_FSIZE) || (defined(HAVE_DECL_RLIMIT_FSIZE) && HAVE_DECL_RLIMIT_FSIZE)
+	XLAT(RLIMIT_FSIZE),
+#endif
+#if defined(RLIMIT_LOCKS) || (defined(HAVE_DECL_RLIMIT_LOCKS) && HAVE_DECL_RLIMIT_LOCKS)
+	XLAT(RLIMIT_LOCKS),
+#endif
+#if defined(RLIMIT_MEMLOCK) || (defined(HAVE_DECL_RLIMIT_MEMLOCK) && HAVE_DECL_RLIMIT_MEMLOCK)
+	XLAT(RLIMIT_MEMLOCK),
+#endif
+#if defined(RLIMIT_MSGQUEUE) || (defined(HAVE_DECL_RLIMIT_MSGQUEUE) && HAVE_DECL_RLIMIT_MSGQUEUE)
+	XLAT(RLIMIT_MSGQUEUE),
+#endif
+#if defined(RLIMIT_NICE) || (defined(HAVE_DECL_RLIMIT_NICE) && HAVE_DECL_RLIMIT_NICE)
+	XLAT(RLIMIT_NICE),
+#endif
+#if defined(RLIMIT_NOFILE) || (defined(HAVE_DECL_RLIMIT_NOFILE) && HAVE_DECL_RLIMIT_NOFILE)
+	XLAT(RLIMIT_NOFILE),
+#endif
+#if defined(RLIMIT_NPROC) || (defined(HAVE_DECL_RLIMIT_NPROC) && HAVE_DECL_RLIMIT_NPROC)
+	XLAT(RLIMIT_NPROC),
+#endif
+#if defined(RLIMIT_RSS) || (defined(HAVE_DECL_RLIMIT_RSS) && HAVE_DECL_RLIMIT_RSS)
+	XLAT(RLIMIT_RSS),
+#endif
+#if defined(RLIMIT_RTPRIO) || (defined(HAVE_DECL_RLIMIT_RTPRIO) && HAVE_DECL_RLIMIT_RTPRIO)
+	XLAT(RLIMIT_RTPRIO),
+#endif
+#if defined(RLIMIT_RTTIME) || (defined(HAVE_DECL_RLIMIT_RTTIME) && HAVE_DECL_RLIMIT_RTTIME)
+	XLAT(RLIMIT_RTTIME),
+#endif
+#if defined(RLIMIT_SIGPENDING) || (defined(HAVE_DECL_RLIMIT_SIGPENDING) && HAVE_DECL_RLIMIT_SIGPENDING)
+	XLAT(RLIMIT_SIGPENDING),
+#endif
+#if defined(RLIMIT_STACK) || (defined(HAVE_DECL_RLIMIT_STACK) && HAVE_DECL_RLIMIT_STACK)
+	XLAT(RLIMIT_STACK),
+#endif
+#if defined(RLIMIT_VMEM) || (defined(HAVE_DECL_RLIMIT_VMEM) && HAVE_DECL_RLIMIT_VMEM)
+	XLAT(RLIMIT_VMEM),
+#endif
+	XLAT_END
+};
diff --git a/xlat/schedulers.h b/xlat/schedulers.h
new file mode 100644
index 0000000..20871a4
--- /dev/null
+++ b/xlat/schedulers.h
@@ -0,0 +1,14 @@
+/* Generated by ./xlat/gen.sh from ./xlat/schedulers.in; do not edit. */
+
+static const struct xlat schedulers[] = {
+#if defined(SCHED_OTHER) || (defined(HAVE_DECL_SCHED_OTHER) && HAVE_DECL_SCHED_OTHER)
+	XLAT(SCHED_OTHER),
+#endif
+#if defined(SCHED_RR) || (defined(HAVE_DECL_SCHED_RR) && HAVE_DECL_SCHED_RR)
+	XLAT(SCHED_RR),
+#endif
+#if defined(SCHED_FIFO) || (defined(HAVE_DECL_SCHED_FIFO) && HAVE_DECL_SCHED_FIFO)
+	XLAT(SCHED_FIFO),
+#endif
+	XLAT_END
+};
diff --git a/xlat/scmvals.h b/xlat/scmvals.h
new file mode 100644
index 0000000..ba4629a
--- /dev/null
+++ b/xlat/scmvals.h
@@ -0,0 +1,11 @@
+/* Generated by ./xlat/gen.sh from ./xlat/scmvals.in; do not edit. */
+
+static const struct xlat scmvals[] = {
+#if defined(SCM_RIGHTS) || (defined(HAVE_DECL_SCM_RIGHTS) && HAVE_DECL_SCM_RIGHTS)
+	XLAT(SCM_RIGHTS),
+#endif
+#if defined(SCM_CREDENTIALS) || (defined(HAVE_DECL_SCM_CREDENTIALS) && HAVE_DECL_SCM_CREDENTIALS)
+	XLAT(SCM_CREDENTIALS),
+#endif
+	XLAT_END
+};
diff --git a/xlat/semctl_flags.h b/xlat/semctl_flags.h
new file mode 100644
index 0000000..e902008
--- /dev/null
+++ b/xlat/semctl_flags.h
@@ -0,0 +1,44 @@
+/* Generated by ./xlat/gen.sh from ./xlat/semctl_flags.in; do not edit. */
+
+static const struct xlat semctl_flags[] = {
+#if defined(IPC_RMID) || (defined(HAVE_DECL_IPC_RMID) && HAVE_DECL_IPC_RMID)
+	XLAT(IPC_RMID),
+#endif
+#if defined(IPC_SET) || (defined(HAVE_DECL_IPC_SET) && HAVE_DECL_IPC_SET)
+	XLAT(IPC_SET),
+#endif
+#if defined(IPC_STAT) || (defined(HAVE_DECL_IPC_STAT) && HAVE_DECL_IPC_STAT)
+	XLAT(IPC_STAT),
+#endif
+#if defined(IPC_INFO) || (defined(HAVE_DECL_IPC_INFO) && HAVE_DECL_IPC_INFO)
+	XLAT(IPC_INFO),
+#endif
+#if defined(SEM_STAT) || (defined(HAVE_DECL_SEM_STAT) && HAVE_DECL_SEM_STAT)
+	XLAT(SEM_STAT),
+#endif
+#if defined(SEM_INFO) || (defined(HAVE_DECL_SEM_INFO) && HAVE_DECL_SEM_INFO)
+	XLAT(SEM_INFO),
+#endif
+#if defined(GETPID) || (defined(HAVE_DECL_GETPID) && HAVE_DECL_GETPID)
+	XLAT(GETPID),
+#endif
+#if defined(GETVAL) || (defined(HAVE_DECL_GETVAL) && HAVE_DECL_GETVAL)
+	XLAT(GETVAL),
+#endif
+#if defined(GETALL) || (defined(HAVE_DECL_GETALL) && HAVE_DECL_GETALL)
+	XLAT(GETALL),
+#endif
+#if defined(GETNCNT) || (defined(HAVE_DECL_GETNCNT) && HAVE_DECL_GETNCNT)
+	XLAT(GETNCNT),
+#endif
+#if defined(GETZCNT) || (defined(HAVE_DECL_GETZCNT) && HAVE_DECL_GETZCNT)
+	XLAT(GETZCNT),
+#endif
+#if defined(SETVAL) || (defined(HAVE_DECL_SETVAL) && HAVE_DECL_SETVAL)
+	XLAT(SETVAL),
+#endif
+#if defined(SETALL) || (defined(HAVE_DECL_SETALL) && HAVE_DECL_SETALL)
+	XLAT(SETALL),
+#endif
+	XLAT_END
+};
diff --git a/xlat/semop_flags.h b/xlat/semop_flags.h
new file mode 100644
index 0000000..d861340
--- /dev/null
+++ b/xlat/semop_flags.h
@@ -0,0 +1,11 @@
+/* Generated by ./xlat/gen.sh from ./xlat/semop_flags.in; do not edit. */
+
+static const struct xlat semop_flags[] = {
+#if defined(SEM_UNDO) || (defined(HAVE_DECL_SEM_UNDO) && HAVE_DECL_SEM_UNDO)
+	XLAT(SEM_UNDO),
+#endif
+#if defined(IPC_NOWAIT) || (defined(HAVE_DECL_IPC_NOWAIT) && HAVE_DECL_IPC_NOWAIT)
+	XLAT(IPC_NOWAIT),
+#endif
+	XLAT_END
+};
diff --git a/xlat/sg_io_dxfer_direction.h b/xlat/sg_io_dxfer_direction.h
new file mode 100644
index 0000000..eae2eac
--- /dev/null
+++ b/xlat/sg_io_dxfer_direction.h
@@ -0,0 +1,17 @@
+/* Generated by ./xlat/gen.sh from ./xlat/sg_io_dxfer_direction.in; do not edit. */
+
+static const struct xlat sg_io_dxfer_direction[] = {
+#if defined(SG_DXFER_NONE) || (defined(HAVE_DECL_SG_DXFER_NONE) && HAVE_DECL_SG_DXFER_NONE)
+	XLAT(SG_DXFER_NONE),
+#endif
+#if defined(SG_DXFER_TO_DEV) || (defined(HAVE_DECL_SG_DXFER_TO_DEV) && HAVE_DECL_SG_DXFER_TO_DEV)
+	XLAT(SG_DXFER_TO_DEV),
+#endif
+#if defined(SG_DXFER_FROM_DEV) || (defined(HAVE_DECL_SG_DXFER_FROM_DEV) && HAVE_DECL_SG_DXFER_FROM_DEV)
+	XLAT(SG_DXFER_FROM_DEV),
+#endif
+#if defined(SG_DXFER_TO_FROM_DEV) || (defined(HAVE_DECL_SG_DXFER_TO_FROM_DEV) && HAVE_DECL_SG_DXFER_TO_FROM_DEV)
+	XLAT(SG_DXFER_TO_FROM_DEV),
+#endif
+	XLAT_END
+};
diff --git a/xlat/shm_flags.h b/xlat/shm_flags.h
new file mode 100644
index 0000000..e484576
--- /dev/null
+++ b/xlat/shm_flags.h
@@ -0,0 +1,14 @@
+/* Generated by ./xlat/gen.sh from ./xlat/shm_flags.in; do not edit. */
+
+static const struct xlat shm_flags[] = {
+#if defined(SHM_REMAP) || (defined(HAVE_DECL_SHM_REMAP) && HAVE_DECL_SHM_REMAP)
+	XLAT(SHM_REMAP),
+#endif
+#if defined(SHM_RDONLY) || (defined(HAVE_DECL_SHM_RDONLY) && HAVE_DECL_SHM_RDONLY)
+	XLAT(SHM_RDONLY),
+#endif
+#if defined(SHM_RND) || (defined(HAVE_DECL_SHM_RND) && HAVE_DECL_SHM_RND)
+	XLAT(SHM_RND),
+#endif
+	XLAT_END
+};
diff --git a/xlat/shm_resource_flags.h b/xlat/shm_resource_flags.h
new file mode 100644
index 0000000..6229774
--- /dev/null
+++ b/xlat/shm_resource_flags.h
@@ -0,0 +1,14 @@
+/* Generated by ./xlat/gen.sh from ./xlat/shm_resource_flags.in; do not edit. */
+
+static const struct xlat shm_resource_flags[] = {
+#if defined(IPC_CREAT) || (defined(HAVE_DECL_IPC_CREAT) && HAVE_DECL_IPC_CREAT)
+	XLAT(IPC_CREAT),
+#endif
+#if defined(IPC_EXCL) || (defined(HAVE_DECL_IPC_EXCL) && HAVE_DECL_IPC_EXCL)
+	XLAT(IPC_EXCL),
+#endif
+#if defined(SHM_HUGETLB) || (defined(HAVE_DECL_SHM_HUGETLB) && HAVE_DECL_SHM_HUGETLB)
+	XLAT(SHM_HUGETLB),
+#endif
+	XLAT_END
+};
diff --git a/xlat/shmctl_flags.h b/xlat/shmctl_flags.h
new file mode 100644
index 0000000..a67c015
--- /dev/null
+++ b/xlat/shmctl_flags.h
@@ -0,0 +1,29 @@
+/* Generated by ./xlat/gen.sh from ./xlat/shmctl_flags.in; do not edit. */
+
+static const struct xlat shmctl_flags[] = {
+#if defined(IPC_RMID) || (defined(HAVE_DECL_IPC_RMID) && HAVE_DECL_IPC_RMID)
+	XLAT(IPC_RMID),
+#endif
+#if defined(IPC_SET) || (defined(HAVE_DECL_IPC_SET) && HAVE_DECL_IPC_SET)
+	XLAT(IPC_SET),
+#endif
+#if defined(IPC_STAT) || (defined(HAVE_DECL_IPC_STAT) && HAVE_DECL_IPC_STAT)
+	XLAT(IPC_STAT),
+#endif
+#if defined(IPC_INFO) || (defined(HAVE_DECL_IPC_INFO) && HAVE_DECL_IPC_INFO)
+	XLAT(IPC_INFO),
+#endif
+#if defined(SHM_STAT) || (defined(HAVE_DECL_SHM_STAT) && HAVE_DECL_SHM_STAT)
+	XLAT(SHM_STAT),
+#endif
+#if defined(SHM_INFO) || (defined(HAVE_DECL_SHM_INFO) && HAVE_DECL_SHM_INFO)
+	XLAT(SHM_INFO),
+#endif
+#if defined(SHM_LOCK) || (defined(HAVE_DECL_SHM_LOCK) && HAVE_DECL_SHM_LOCK)
+	XLAT(SHM_LOCK),
+#endif
+#if defined(SHM_UNLOCK) || (defined(HAVE_DECL_SHM_UNLOCK) && HAVE_DECL_SHM_UNLOCK)
+	XLAT(SHM_UNLOCK),
+#endif
+	XLAT_END
+};
diff --git a/xlat/shutdown_modes.h b/xlat/shutdown_modes.h
new file mode 100644
index 0000000..6e3ab81
--- /dev/null
+++ b/xlat/shutdown_modes.h
@@ -0,0 +1,8 @@
+/* Generated by ./xlat/gen.sh from ./xlat/shutdown_modes.in; do not edit. */
+
+static const struct xlat shutdown_modes[] = {
+{ 0,	"SHUT_RD"	},
+{ 1,	"SHUT_WR"	},
+{ 2,	"SHUT_RDWR"	},
+	XLAT_END
+};
diff --git a/xlat/sigact_flags.h b/xlat/sigact_flags.h
new file mode 100644
index 0000000..0ee2f2b
--- /dev/null
+++ b/xlat/sigact_flags.h
@@ -0,0 +1,57 @@
+/* Generated by ./xlat/gen.sh from ./xlat/sigact_flags.in; do not edit. */
+
+static const struct xlat sigact_flags[] = {
+#if defined(SA_RESTORER) || (defined(HAVE_DECL_SA_RESTORER) && HAVE_DECL_SA_RESTORER)
+	XLAT(SA_RESTORER),
+#endif
+#if defined(SA_STACK) || (defined(HAVE_DECL_SA_STACK) && HAVE_DECL_SA_STACK)
+	XLAT(SA_STACK),
+#endif
+#if defined(SA_RESTART) || (defined(HAVE_DECL_SA_RESTART) && HAVE_DECL_SA_RESTART)
+	XLAT(SA_RESTART),
+#endif
+#if defined(SA_INTERRUPT) || (defined(HAVE_DECL_SA_INTERRUPT) && HAVE_DECL_SA_INTERRUPT)
+	XLAT(SA_INTERRUPT),
+#endif
+#if defined(SA_NODEFER) || (defined(HAVE_DECL_SA_NODEFER) && HAVE_DECL_SA_NODEFER)
+	XLAT(SA_NODEFER),
+#endif
+#if defined SA_NOMASK && SA_NODEFER != SA_NOMASK
+#if defined(SA_NOMASK) || (defined(HAVE_DECL_SA_NOMASK) && HAVE_DECL_SA_NOMASK)
+	XLAT(SA_NOMASK),
+#endif
+#endif
+#if defined(SA_RESETHAND) || (defined(HAVE_DECL_SA_RESETHAND) && HAVE_DECL_SA_RESETHAND)
+	XLAT(SA_RESETHAND),
+#endif
+#if defined SA_ONESHOT && SA_ONESHOT != SA_RESETHAND
+#if defined(SA_ONESHOT) || (defined(HAVE_DECL_SA_ONESHOT) && HAVE_DECL_SA_ONESHOT)
+	XLAT(SA_ONESHOT),
+#endif
+#endif
+#if defined(SA_SIGINFO) || (defined(HAVE_DECL_SA_SIGINFO) && HAVE_DECL_SA_SIGINFO)
+	XLAT(SA_SIGINFO),
+#endif
+#if defined(SA_RESETHAND) || (defined(HAVE_DECL_SA_RESETHAND) && HAVE_DECL_SA_RESETHAND)
+	XLAT(SA_RESETHAND),
+#endif
+#if defined(SA_ONSTACK) || (defined(HAVE_DECL_SA_ONSTACK) && HAVE_DECL_SA_ONSTACK)
+	XLAT(SA_ONSTACK),
+#endif
+#if defined(SA_NODEFER) || (defined(HAVE_DECL_SA_NODEFER) && HAVE_DECL_SA_NODEFER)
+	XLAT(SA_NODEFER),
+#endif
+#if defined(SA_NOCLDSTOP) || (defined(HAVE_DECL_SA_NOCLDSTOP) && HAVE_DECL_SA_NOCLDSTOP)
+	XLAT(SA_NOCLDSTOP),
+#endif
+#if defined(SA_NOCLDWAIT) || (defined(HAVE_DECL_SA_NOCLDWAIT) && HAVE_DECL_SA_NOCLDWAIT)
+	XLAT(SA_NOCLDWAIT),
+#endif
+#if defined(_SA_BSDCALL) || (defined(HAVE_DECL__SA_BSDCALL) && HAVE_DECL__SA_BSDCALL)
+	XLAT(_SA_BSDCALL),
+#endif
+#if defined(SA_NOPTRACE) || (defined(HAVE_DECL_SA_NOPTRACE) && HAVE_DECL_SA_NOPTRACE)
+	XLAT(SA_NOPTRACE),
+#endif
+	XLAT_END
+};
diff --git a/xlat/sigaltstack_flags.h b/xlat/sigaltstack_flags.h
new file mode 100644
index 0000000..8d719ed
--- /dev/null
+++ b/xlat/sigaltstack_flags.h
@@ -0,0 +1,11 @@
+/* Generated by ./xlat/gen.sh from ./xlat/sigaltstack_flags.in; do not edit. */
+
+static const struct xlat sigaltstack_flags[] = {
+#if defined(SS_ONSTACK) || (defined(HAVE_DECL_SS_ONSTACK) && HAVE_DECL_SS_ONSTACK)
+	XLAT(SS_ONSTACK),
+#endif
+#if defined(SS_DISABLE) || (defined(HAVE_DECL_SS_DISABLE) && HAVE_DECL_SS_DISABLE)
+	XLAT(SS_DISABLE),
+#endif
+	XLAT_END
+};
diff --git a/xlat/sigbus_codes.h b/xlat/sigbus_codes.h
new file mode 100644
index 0000000..8ec67c0
--- /dev/null
+++ b/xlat/sigbus_codes.h
@@ -0,0 +1,14 @@
+/* Generated by ./xlat/gen.sh from ./xlat/sigbus_codes.in; do not edit. */
+
+static const struct xlat sigbus_codes[] = {
+#if defined(BUS_ADRALN) || (defined(HAVE_DECL_BUS_ADRALN) && HAVE_DECL_BUS_ADRALN)
+	XLAT(BUS_ADRALN),
+#endif
+#if defined(BUS_ADRERR) || (defined(HAVE_DECL_BUS_ADRERR) && HAVE_DECL_BUS_ADRERR)
+	XLAT(BUS_ADRERR),
+#endif
+#if defined(BUS_OBJERR) || (defined(HAVE_DECL_BUS_OBJERR) && HAVE_DECL_BUS_OBJERR)
+	XLAT(BUS_OBJERR),
+#endif
+	XLAT_END
+};
diff --git a/xlat/sigchld_codes.h b/xlat/sigchld_codes.h
new file mode 100644
index 0000000..6604db3
--- /dev/null
+++ b/xlat/sigchld_codes.h
@@ -0,0 +1,23 @@
+/* Generated by ./xlat/gen.sh from ./xlat/sigchld_codes.in; do not edit. */
+
+static const struct xlat sigchld_codes[] = {
+#if defined(CLD_EXITED) || (defined(HAVE_DECL_CLD_EXITED) && HAVE_DECL_CLD_EXITED)
+	XLAT(CLD_EXITED),
+#endif
+#if defined(CLD_KILLED) || (defined(HAVE_DECL_CLD_KILLED) && HAVE_DECL_CLD_KILLED)
+	XLAT(CLD_KILLED),
+#endif
+#if defined(CLD_DUMPED) || (defined(HAVE_DECL_CLD_DUMPED) && HAVE_DECL_CLD_DUMPED)
+	XLAT(CLD_DUMPED),
+#endif
+#if defined(CLD_TRAPPED) || (defined(HAVE_DECL_CLD_TRAPPED) && HAVE_DECL_CLD_TRAPPED)
+	XLAT(CLD_TRAPPED),
+#endif
+#if defined(CLD_STOPPED) || (defined(HAVE_DECL_CLD_STOPPED) && HAVE_DECL_CLD_STOPPED)
+	XLAT(CLD_STOPPED),
+#endif
+#if defined(CLD_CONTINUED) || (defined(HAVE_DECL_CLD_CONTINUED) && HAVE_DECL_CLD_CONTINUED)
+	XLAT(CLD_CONTINUED),
+#endif
+	XLAT_END
+};
diff --git a/xlat/sigemt_codes.h b/xlat/sigemt_codes.h
new file mode 100644
index 0000000..ab87c40
--- /dev/null
+++ b/xlat/sigemt_codes.h
@@ -0,0 +1,8 @@
+/* Generated by ./xlat/gen.sh from ./xlat/sigemt_codes.in; do not edit. */
+
+static const struct xlat sigemt_codes[] = {
+#if defined(EMT_TAGOVF) || (defined(HAVE_DECL_EMT_TAGOVF) && HAVE_DECL_EMT_TAGOVF)
+	XLAT(EMT_TAGOVF),
+#endif
+	XLAT_END
+};
diff --git a/xlat/sigev_value.h b/xlat/sigev_value.h
new file mode 100644
index 0000000..da73c05
--- /dev/null
+++ b/xlat/sigev_value.h
@@ -0,0 +1,17 @@
+/* Generated by ./xlat/gen.sh from ./xlat/sigev_value.in; do not edit. */
+
+static const struct xlat sigev_value[] = {
+#if defined(SIGEV_SIGNAL) || (defined(HAVE_DECL_SIGEV_SIGNAL) && HAVE_DECL_SIGEV_SIGNAL)
+	XLAT(SIGEV_SIGNAL),
+#endif
+#if defined(SIGEV_NONE) || (defined(HAVE_DECL_SIGEV_NONE) && HAVE_DECL_SIGEV_NONE)
+	XLAT(SIGEV_NONE),
+#endif
+#if defined(SIGEV_THREAD) || (defined(HAVE_DECL_SIGEV_THREAD) && HAVE_DECL_SIGEV_THREAD)
+	XLAT(SIGEV_THREAD),
+#endif
+#if defined(SIGEV_THREAD_ID) || (defined(HAVE_DECL_SIGEV_THREAD_ID) && HAVE_DECL_SIGEV_THREAD_ID)
+	XLAT(SIGEV_THREAD_ID),
+#endif
+	XLAT_END
+};
diff --git a/xlat/sigfpe_codes.h b/xlat/sigfpe_codes.h
new file mode 100644
index 0000000..d69a26c
--- /dev/null
+++ b/xlat/sigfpe_codes.h
@@ -0,0 +1,29 @@
+/* Generated by ./xlat/gen.sh from ./xlat/sigfpe_codes.in; do not edit. */
+
+static const struct xlat sigfpe_codes[] = {
+#if defined(FPE_INTDIV) || (defined(HAVE_DECL_FPE_INTDIV) && HAVE_DECL_FPE_INTDIV)
+	XLAT(FPE_INTDIV),
+#endif
+#if defined(FPE_INTOVF) || (defined(HAVE_DECL_FPE_INTOVF) && HAVE_DECL_FPE_INTOVF)
+	XLAT(FPE_INTOVF),
+#endif
+#if defined(FPE_FLTDIV) || (defined(HAVE_DECL_FPE_FLTDIV) && HAVE_DECL_FPE_FLTDIV)
+	XLAT(FPE_FLTDIV),
+#endif
+#if defined(FPE_FLTOVF) || (defined(HAVE_DECL_FPE_FLTOVF) && HAVE_DECL_FPE_FLTOVF)
+	XLAT(FPE_FLTOVF),
+#endif
+#if defined(FPE_FLTUND) || (defined(HAVE_DECL_FPE_FLTUND) && HAVE_DECL_FPE_FLTUND)
+	XLAT(FPE_FLTUND),
+#endif
+#if defined(FPE_FLTRES) || (defined(HAVE_DECL_FPE_FLTRES) && HAVE_DECL_FPE_FLTRES)
+	XLAT(FPE_FLTRES),
+#endif
+#if defined(FPE_FLTINV) || (defined(HAVE_DECL_FPE_FLTINV) && HAVE_DECL_FPE_FLTINV)
+	XLAT(FPE_FLTINV),
+#endif
+#if defined(FPE_FLTSUB) || (defined(HAVE_DECL_FPE_FLTSUB) && HAVE_DECL_FPE_FLTSUB)
+	XLAT(FPE_FLTSUB),
+#endif
+	XLAT_END
+};
diff --git a/xlat/sigill_codes.h b/xlat/sigill_codes.h
new file mode 100644
index 0000000..ac6445a
--- /dev/null
+++ b/xlat/sigill_codes.h
@@ -0,0 +1,29 @@
+/* Generated by ./xlat/gen.sh from ./xlat/sigill_codes.in; do not edit. */
+
+static const struct xlat sigill_codes[] = {
+#if defined(ILL_ILLOPC) || (defined(HAVE_DECL_ILL_ILLOPC) && HAVE_DECL_ILL_ILLOPC)
+	XLAT(ILL_ILLOPC),
+#endif
+#if defined(ILL_ILLOPN) || (defined(HAVE_DECL_ILL_ILLOPN) && HAVE_DECL_ILL_ILLOPN)
+	XLAT(ILL_ILLOPN),
+#endif
+#if defined(ILL_ILLADR) || (defined(HAVE_DECL_ILL_ILLADR) && HAVE_DECL_ILL_ILLADR)
+	XLAT(ILL_ILLADR),
+#endif
+#if defined(ILL_ILLTRP) || (defined(HAVE_DECL_ILL_ILLTRP) && HAVE_DECL_ILL_ILLTRP)
+	XLAT(ILL_ILLTRP),
+#endif
+#if defined(ILL_PRVOPC) || (defined(HAVE_DECL_ILL_PRVOPC) && HAVE_DECL_ILL_PRVOPC)
+	XLAT(ILL_PRVOPC),
+#endif
+#if defined(ILL_PRVREG) || (defined(HAVE_DECL_ILL_PRVREG) && HAVE_DECL_ILL_PRVREG)
+	XLAT(ILL_PRVREG),
+#endif
+#if defined(ILL_COPROC) || (defined(HAVE_DECL_ILL_COPROC) && HAVE_DECL_ILL_COPROC)
+	XLAT(ILL_COPROC),
+#endif
+#if defined(ILL_BADSTK) || (defined(HAVE_DECL_ILL_BADSTK) && HAVE_DECL_ILL_BADSTK)
+	XLAT(ILL_BADSTK),
+#endif
+	XLAT_END
+};
diff --git a/xlat/siginfo_codes.h b/xlat/siginfo_codes.h
new file mode 100644
index 0000000..e9b4174
--- /dev/null
+++ b/xlat/siginfo_codes.h
@@ -0,0 +1,41 @@
+/* Generated by ./xlat/gen.sh from ./xlat/siginfo_codes.in; do not edit. */
+
+static const struct xlat siginfo_codes[] = {
+#if defined(SI_KERNEL) || (defined(HAVE_DECL_SI_KERNEL) && HAVE_DECL_SI_KERNEL)
+	XLAT(SI_KERNEL),
+#endif
+#if defined(SI_USER) || (defined(HAVE_DECL_SI_USER) && HAVE_DECL_SI_USER)
+	XLAT(SI_USER),
+#endif
+#if defined(SI_QUEUE) || (defined(HAVE_DECL_SI_QUEUE) && HAVE_DECL_SI_QUEUE)
+	XLAT(SI_QUEUE),
+#endif
+#if defined(SI_TIMER) || (defined(HAVE_DECL_SI_TIMER) && HAVE_DECL_SI_TIMER)
+	XLAT(SI_TIMER),
+#endif
+#if defined(SI_MESGQ) || (defined(HAVE_DECL_SI_MESGQ) && HAVE_DECL_SI_MESGQ)
+	XLAT(SI_MESGQ),
+#endif
+#if defined(SI_ASYNCIO) || (defined(HAVE_DECL_SI_ASYNCIO) && HAVE_DECL_SI_ASYNCIO)
+	XLAT(SI_ASYNCIO),
+#endif
+#if defined(SI_SIGIO) || (defined(HAVE_DECL_SI_SIGIO) && HAVE_DECL_SI_SIGIO)
+	XLAT(SI_SIGIO),
+#endif
+#if defined(SI_TKILL) || (defined(HAVE_DECL_SI_TKILL) && HAVE_DECL_SI_TKILL)
+	XLAT(SI_TKILL),
+#endif
+#if defined(SI_DETHREAD) || (defined(HAVE_DECL_SI_DETHREAD) && HAVE_DECL_SI_DETHREAD)
+	XLAT(SI_DETHREAD),
+#endif
+#if defined(SI_ASYNCNL) || (defined(HAVE_DECL_SI_ASYNCNL) && HAVE_DECL_SI_ASYNCNL)
+	XLAT(SI_ASYNCNL),
+#endif
+#if defined(SI_NOINFO) || (defined(HAVE_DECL_SI_NOINFO) && HAVE_DECL_SI_NOINFO)
+	XLAT(SI_NOINFO),
+#endif
+#if defined(SI_LWP) || (defined(HAVE_DECL_SI_LWP) && HAVE_DECL_SI_LWP)
+	XLAT(SI_LWP),
+#endif
+	XLAT_END
+};
diff --git a/xlat/sigpoll_codes.h b/xlat/sigpoll_codes.h
new file mode 100644
index 0000000..c50a515
--- /dev/null
+++ b/xlat/sigpoll_codes.h
@@ -0,0 +1,23 @@
+/* Generated by ./xlat/gen.sh from ./xlat/sigpoll_codes.in; do not edit. */
+
+static const struct xlat sigpoll_codes[] = {
+#if defined(POLL_IN) || (defined(HAVE_DECL_POLL_IN) && HAVE_DECL_POLL_IN)
+	XLAT(POLL_IN),
+#endif
+#if defined(POLL_OUT) || (defined(HAVE_DECL_POLL_OUT) && HAVE_DECL_POLL_OUT)
+	XLAT(POLL_OUT),
+#endif
+#if defined(POLL_MSG) || (defined(HAVE_DECL_POLL_MSG) && HAVE_DECL_POLL_MSG)
+	XLAT(POLL_MSG),
+#endif
+#if defined(POLL_ERR) || (defined(HAVE_DECL_POLL_ERR) && HAVE_DECL_POLL_ERR)
+	XLAT(POLL_ERR),
+#endif
+#if defined(POLL_PRI) || (defined(HAVE_DECL_POLL_PRI) && HAVE_DECL_POLL_PRI)
+	XLAT(POLL_PRI),
+#endif
+#if defined(POLL_HUP) || (defined(HAVE_DECL_POLL_HUP) && HAVE_DECL_POLL_HUP)
+	XLAT(POLL_HUP),
+#endif
+	XLAT_END
+};
diff --git a/xlat/sigprocmaskcmds.h b/xlat/sigprocmaskcmds.h
new file mode 100644
index 0000000..18fc2f6
--- /dev/null
+++ b/xlat/sigprocmaskcmds.h
@@ -0,0 +1,17 @@
+/* Generated by ./xlat/gen.sh from ./xlat/sigprocmaskcmds.in; do not edit. */
+
+static const struct xlat sigprocmaskcmds[] = {
+#if defined(SIG_BLOCK) || (defined(HAVE_DECL_SIG_BLOCK) && HAVE_DECL_SIG_BLOCK)
+	XLAT(SIG_BLOCK),
+#endif
+#if defined(SIG_UNBLOCK) || (defined(HAVE_DECL_SIG_UNBLOCK) && HAVE_DECL_SIG_UNBLOCK)
+	XLAT(SIG_UNBLOCK),
+#endif
+#if defined(SIG_SETMASK) || (defined(HAVE_DECL_SIG_SETMASK) && HAVE_DECL_SIG_SETMASK)
+	XLAT(SIG_SETMASK),
+#endif
+#if defined(SIG_SETMASK32) || (defined(HAVE_DECL_SIG_SETMASK32) && HAVE_DECL_SIG_SETMASK32)
+	XLAT(SIG_SETMASK32),
+#endif
+	XLAT_END
+};
diff --git a/xlat/sigprof_codes.h b/xlat/sigprof_codes.h
new file mode 100644
index 0000000..02e98e7
--- /dev/null
+++ b/xlat/sigprof_codes.h
@@ -0,0 +1,8 @@
+/* Generated by ./xlat/gen.sh from ./xlat/sigprof_codes.in; do not edit. */
+
+static const struct xlat sigprof_codes[] = {
+#if defined(PROF_SIG) || (defined(HAVE_DECL_PROF_SIG) && HAVE_DECL_PROF_SIG)
+	XLAT(PROF_SIG),
+#endif
+	XLAT_END
+};
diff --git a/xlat/sigsegv_codes.h b/xlat/sigsegv_codes.h
new file mode 100644
index 0000000..3de5370
--- /dev/null
+++ b/xlat/sigsegv_codes.h
@@ -0,0 +1,11 @@
+/* Generated by ./xlat/gen.sh from ./xlat/sigsegv_codes.in; do not edit. */
+
+static const struct xlat sigsegv_codes[] = {
+#if defined(SEGV_MAPERR) || (defined(HAVE_DECL_SEGV_MAPERR) && HAVE_DECL_SEGV_MAPERR)
+	XLAT(SEGV_MAPERR),
+#endif
+#if defined(SEGV_ACCERR) || (defined(HAVE_DECL_SEGV_ACCERR) && HAVE_DECL_SEGV_ACCERR)
+	XLAT(SEGV_ACCERR),
+#endif
+	XLAT_END
+};
diff --git a/xlat/sigsys_codes.h b/xlat/sigsys_codes.h
new file mode 100644
index 0000000..a7ef5e2
--- /dev/null
+++ b/xlat/sigsys_codes.h
@@ -0,0 +1,8 @@
+/* Generated by ./xlat/gen.sh from ./xlat/sigsys_codes.in; do not edit. */
+
+static const struct xlat sigsys_codes[] = {
+#if defined(SYS_SECCOMP) || (defined(HAVE_DECL_SYS_SECCOMP) && HAVE_DECL_SYS_SECCOMP)
+	XLAT(SYS_SECCOMP),
+#endif
+	XLAT_END
+};
diff --git a/xlat/sigtrap_codes.h b/xlat/sigtrap_codes.h
new file mode 100644
index 0000000..c9101a2
--- /dev/null
+++ b/xlat/sigtrap_codes.h
@@ -0,0 +1,11 @@
+/* Generated by ./xlat/gen.sh from ./xlat/sigtrap_codes.in; do not edit. */
+
+static const struct xlat sigtrap_codes[] = {
+#if defined(TRAP_BRKPT) || (defined(HAVE_DECL_TRAP_BRKPT) && HAVE_DECL_TRAP_BRKPT)
+	XLAT(TRAP_BRKPT),
+#endif
+#if defined(TRAP_TRACE) || (defined(HAVE_DECL_TRAP_TRACE) && HAVE_DECL_TRAP_TRACE)
+	XLAT(TRAP_TRACE),
+#endif
+	XLAT_END
+};
diff --git a/xlat/sock_type_flags.h b/xlat/sock_type_flags.h
new file mode 100644
index 0000000..45f193a
--- /dev/null
+++ b/xlat/sock_type_flags.h
@@ -0,0 +1,11 @@
+/* Generated by ./xlat/gen.sh from ./xlat/sock_type_flags.in; do not edit. */
+
+static const struct xlat sock_type_flags[] = {
+#if defined(SOCK_CLOEXEC) || (defined(HAVE_DECL_SOCK_CLOEXEC) && HAVE_DECL_SOCK_CLOEXEC)
+	XLAT(SOCK_CLOEXEC),
+#endif
+#if defined(SOCK_NONBLOCK) || (defined(HAVE_DECL_SOCK_NONBLOCK) && HAVE_DECL_SOCK_NONBLOCK)
+	XLAT(SOCK_NONBLOCK),
+#endif
+	XLAT_END
+};
diff --git a/xlat/socketlayers.h b/xlat/socketlayers.h
new file mode 100644
index 0000000..6abbb92
--- /dev/null
+++ b/xlat/socketlayers.h
@@ -0,0 +1,104 @@
+/* Generated by ./xlat/gen.sh from ./xlat/socketlayers.in; do not edit. */
+
+static const struct xlat socketlayers[] = {
+#if defined(SOL_IP) || (defined(HAVE_DECL_SOL_IP) && HAVE_DECL_SOL_IP)
+	XLAT(SOL_IP),
+#endif
+#if defined(SOL_ICMP) || (defined(HAVE_DECL_SOL_ICMP) && HAVE_DECL_SOL_ICMP)
+	XLAT(SOL_ICMP),
+#endif
+#if defined(SOL_TCP) || (defined(HAVE_DECL_SOL_TCP) && HAVE_DECL_SOL_TCP)
+	XLAT(SOL_TCP),
+#endif
+#if defined(SOL_UDP) || (defined(HAVE_DECL_SOL_UDP) && HAVE_DECL_SOL_UDP)
+	XLAT(SOL_UDP),
+#endif
+#if defined(SOL_IPV6) || (defined(HAVE_DECL_SOL_IPV6) && HAVE_DECL_SOL_IPV6)
+	XLAT(SOL_IPV6),
+#endif
+#if defined(SOL_ICMPV6) || (defined(HAVE_DECL_SOL_ICMPV6) && HAVE_DECL_SOL_ICMPV6)
+	XLAT(SOL_ICMPV6),
+#endif
+#if defined(SOL_SCTP) || (defined(HAVE_DECL_SOL_SCTP) && HAVE_DECL_SOL_SCTP)
+	XLAT(SOL_SCTP),
+#endif
+#if defined(SOL_UDPLITE) || (defined(HAVE_DECL_SOL_UDPLITE) && HAVE_DECL_SOL_UDPLITE)
+	XLAT(SOL_UDPLITE),
+#endif
+#if defined(SOL_RAW) || (defined(HAVE_DECL_SOL_RAW) && HAVE_DECL_SOL_RAW)
+	XLAT(SOL_RAW),
+#endif
+#if defined(SOL_IPX) || (defined(HAVE_DECL_SOL_IPX) && HAVE_DECL_SOL_IPX)
+	XLAT(SOL_IPX),
+#endif
+#if defined(SOL_AX25) || (defined(HAVE_DECL_SOL_AX25) && HAVE_DECL_SOL_AX25)
+	XLAT(SOL_AX25),
+#endif
+#if defined(SOL_ATALK) || (defined(HAVE_DECL_SOL_ATALK) && HAVE_DECL_SOL_ATALK)
+	XLAT(SOL_ATALK),
+#endif
+#if defined(SOL_NETROM) || (defined(HAVE_DECL_SOL_NETROM) && HAVE_DECL_SOL_NETROM)
+	XLAT(SOL_NETROM),
+#endif
+#if defined(SOL_ROSE) || (defined(HAVE_DECL_SOL_ROSE) && HAVE_DECL_SOL_ROSE)
+	XLAT(SOL_ROSE),
+#endif
+#if defined(SOL_DECNET) || (defined(HAVE_DECL_SOL_DECNET) && HAVE_DECL_SOL_DECNET)
+	XLAT(SOL_DECNET),
+#endif
+#if defined(SOL_X25) || (defined(HAVE_DECL_SOL_X25) && HAVE_DECL_SOL_X25)
+	XLAT(SOL_X25),
+#endif
+#if defined(SOL_PACKET) || (defined(HAVE_DECL_SOL_PACKET) && HAVE_DECL_SOL_PACKET)
+	XLAT(SOL_PACKET),
+#endif
+#if defined(SOL_ATM) || (defined(HAVE_DECL_SOL_ATM) && HAVE_DECL_SOL_ATM)
+	XLAT(SOL_ATM),
+#endif
+#if defined(SOL_AAL) || (defined(HAVE_DECL_SOL_AAL) && HAVE_DECL_SOL_AAL)
+	XLAT(SOL_AAL),
+#endif
+#if defined(SOL_IRDA) || (defined(HAVE_DECL_SOL_IRDA) && HAVE_DECL_SOL_IRDA)
+	XLAT(SOL_IRDA),
+#endif
+#if defined(SOL_NETBEUI) || (defined(HAVE_DECL_SOL_NETBEUI) && HAVE_DECL_SOL_NETBEUI)
+	XLAT(SOL_NETBEUI),
+#endif
+#if defined(SOL_LLC) || (defined(HAVE_DECL_SOL_LLC) && HAVE_DECL_SOL_LLC)
+	XLAT(SOL_LLC),
+#endif
+#if defined(SOL_DCCP) || (defined(HAVE_DECL_SOL_DCCP) && HAVE_DECL_SOL_DCCP)
+	XLAT(SOL_DCCP),
+#endif
+#if defined(SOL_NETLINK) || (defined(HAVE_DECL_SOL_NETLINK) && HAVE_DECL_SOL_NETLINK)
+	XLAT(SOL_NETLINK),
+#endif
+#if defined(SOL_TIPC) || (defined(HAVE_DECL_SOL_TIPC) && HAVE_DECL_SOL_TIPC)
+	XLAT(SOL_TIPC),
+#endif
+#if defined(SOL_RXRPC) || (defined(HAVE_DECL_SOL_RXRPC) && HAVE_DECL_SOL_RXRPC)
+	XLAT(SOL_RXRPC),
+#endif
+#if defined(SOL_PPPOL2TP) || (defined(HAVE_DECL_SOL_PPPOL2TP) && HAVE_DECL_SOL_PPPOL2TP)
+	XLAT(SOL_PPPOL2TP),
+#endif
+#if defined(SOL_BLUETOOTH) || (defined(HAVE_DECL_SOL_BLUETOOTH) && HAVE_DECL_SOL_BLUETOOTH)
+	XLAT(SOL_BLUETOOTH),
+#endif
+#if defined(SOL_PNPIPE) || (defined(HAVE_DECL_SOL_PNPIPE) && HAVE_DECL_SOL_PNPIPE)
+	XLAT(SOL_PNPIPE),
+#endif
+#if defined(SOL_RDS) || (defined(HAVE_DECL_SOL_RDS) && HAVE_DECL_SOL_RDS)
+	XLAT(SOL_RDS),
+#endif
+#if defined(SOL_IUCV) || (defined(HAVE_DECL_SOL_IUCV) && HAVE_DECL_SOL_IUCV)
+	XLAT(SOL_IUCV),
+#endif
+#if defined(SOL_CAIF) || (defined(HAVE_DECL_SOL_CAIF) && HAVE_DECL_SOL_CAIF)
+	XLAT(SOL_CAIF),
+#endif
+#if defined(SOL_SOCKET) || (defined(HAVE_DECL_SOL_SOCKET) && HAVE_DECL_SOL_SOCKET)
+	XLAT(SOL_SOCKET),
+#endif
+  /* this array should remain not NULL-terminated */
+};
diff --git a/xlat/sockipoptions.h b/xlat/sockipoptions.h
new file mode 100644
index 0000000..ca044e0
--- /dev/null
+++ b/xlat/sockipoptions.h
@@ -0,0 +1,146 @@
+/* Generated by ./xlat/gen.sh from ./xlat/sockipoptions.in; do not edit. */
+
+static const struct xlat sockipoptions[] = {
+#if defined(IP_TOS) || (defined(HAVE_DECL_IP_TOS) && HAVE_DECL_IP_TOS)
+	XLAT(IP_TOS),
+#endif
+#if defined(IP_TTL) || (defined(HAVE_DECL_IP_TTL) && HAVE_DECL_IP_TTL)
+	XLAT(IP_TTL),
+#endif
+#if defined(IP_HDRINCL) || (defined(HAVE_DECL_IP_HDRINCL) && HAVE_DECL_IP_HDRINCL)
+	XLAT(IP_HDRINCL),
+#endif
+#if defined(IP_OPTIONS) || (defined(HAVE_DECL_IP_OPTIONS) && HAVE_DECL_IP_OPTIONS)
+	XLAT(IP_OPTIONS),
+#endif
+#if defined(IP_ROUTER_ALERT) || (defined(HAVE_DECL_IP_ROUTER_ALERT) && HAVE_DECL_IP_ROUTER_ALERT)
+	XLAT(IP_ROUTER_ALERT),
+#endif
+#if defined(IP_RECVOPTIONS) || (defined(HAVE_DECL_IP_RECVOPTIONS) && HAVE_DECL_IP_RECVOPTIONS)
+	XLAT(IP_RECVOPTIONS),
+#endif
+#if defined(IP_RECVOPTS) || (defined(HAVE_DECL_IP_RECVOPTS) && HAVE_DECL_IP_RECVOPTS)
+	XLAT(IP_RECVOPTS),
+#endif
+#if defined(IP_RECVRETOPTS) || (defined(HAVE_DECL_IP_RECVRETOPTS) && HAVE_DECL_IP_RECVRETOPTS)
+	XLAT(IP_RECVRETOPTS),
+#endif
+#if defined(IP_RECVDSTADDR) || (defined(HAVE_DECL_IP_RECVDSTADDR) && HAVE_DECL_IP_RECVDSTADDR)
+	XLAT(IP_RECVDSTADDR),
+#endif
+#if defined(IP_RETOPTS) || (defined(HAVE_DECL_IP_RETOPTS) && HAVE_DECL_IP_RETOPTS)
+	XLAT(IP_RETOPTS),
+#endif
+#if defined(IP_PKTINFO) || (defined(HAVE_DECL_IP_PKTINFO) && HAVE_DECL_IP_PKTINFO)
+	XLAT(IP_PKTINFO),
+#endif
+#if defined(IP_PKTOPTIONS) || (defined(HAVE_DECL_IP_PKTOPTIONS) && HAVE_DECL_IP_PKTOPTIONS)
+	XLAT(IP_PKTOPTIONS),
+#endif
+#if defined(IP_MTU_DISCOVER) || (defined(HAVE_DECL_IP_MTU_DISCOVER) && HAVE_DECL_IP_MTU_DISCOVER)
+	XLAT(IP_MTU_DISCOVER),
+#endif
+#if defined(IP_RECVERR) || (defined(HAVE_DECL_IP_RECVERR) && HAVE_DECL_IP_RECVERR)
+	XLAT(IP_RECVERR),
+#endif
+#if defined(IP_RECVTTL) || (defined(HAVE_DECL_IP_RECVTTL) && HAVE_DECL_IP_RECVTTL)
+	XLAT(IP_RECVTTL),
+#endif
+#if defined(IP_RECVTOS) || (defined(HAVE_DECL_IP_RECVTOS) && HAVE_DECL_IP_RECVTOS)
+	XLAT(IP_RECVTOS),
+#endif
+#if defined(IP_MTU) || (defined(HAVE_DECL_IP_MTU) && HAVE_DECL_IP_MTU)
+	XLAT(IP_MTU),
+#endif
+#if defined(IP_MULTICAST_IF) || (defined(HAVE_DECL_IP_MULTICAST_IF) && HAVE_DECL_IP_MULTICAST_IF)
+	XLAT(IP_MULTICAST_IF),
+#endif
+#if defined(IP_MULTICAST_TTL) || (defined(HAVE_DECL_IP_MULTICAST_TTL) && HAVE_DECL_IP_MULTICAST_TTL)
+	XLAT(IP_MULTICAST_TTL),
+#endif
+#if defined(IP_MULTICAST_LOOP) || (defined(HAVE_DECL_IP_MULTICAST_LOOP) && HAVE_DECL_IP_MULTICAST_LOOP)
+	XLAT(IP_MULTICAST_LOOP),
+#endif
+#if defined(IP_ADD_MEMBERSHIP) || (defined(HAVE_DECL_IP_ADD_MEMBERSHIP) && HAVE_DECL_IP_ADD_MEMBERSHIP)
+	XLAT(IP_ADD_MEMBERSHIP),
+#endif
+#if defined(IP_DROP_MEMBERSHIP) || (defined(HAVE_DECL_IP_DROP_MEMBERSHIP) && HAVE_DECL_IP_DROP_MEMBERSHIP)
+	XLAT(IP_DROP_MEMBERSHIP),
+#endif
+#if defined(IP_BROADCAST_IF) || (defined(HAVE_DECL_IP_BROADCAST_IF) && HAVE_DECL_IP_BROADCAST_IF)
+	XLAT(IP_BROADCAST_IF),
+#endif
+#if defined(IP_RECVIFINDEX) || (defined(HAVE_DECL_IP_RECVIFINDEX) && HAVE_DECL_IP_RECVIFINDEX)
+	XLAT(IP_RECVIFINDEX),
+#endif
+#if defined(IP_MSFILTER) || (defined(HAVE_DECL_IP_MSFILTER) && HAVE_DECL_IP_MSFILTER)
+	XLAT(IP_MSFILTER),
+#endif
+#if defined(MCAST_MSFILTER) || (defined(HAVE_DECL_MCAST_MSFILTER) && HAVE_DECL_MCAST_MSFILTER)
+	XLAT(MCAST_MSFILTER),
+#endif
+#if defined(IP_FREEBIND) || (defined(HAVE_DECL_IP_FREEBIND) && HAVE_DECL_IP_FREEBIND)
+	XLAT(IP_FREEBIND),
+#endif
+#if defined(IP_IPSEC_POLICY) || (defined(HAVE_DECL_IP_IPSEC_POLICY) && HAVE_DECL_IP_IPSEC_POLICY)
+	XLAT(IP_IPSEC_POLICY),
+#endif
+#if defined(IP_XFRM_POLICY) || (defined(HAVE_DECL_IP_XFRM_POLICY) && HAVE_DECL_IP_XFRM_POLICY)
+	XLAT(IP_XFRM_POLICY),
+#endif
+#if defined(IP_PASSSEC) || (defined(HAVE_DECL_IP_PASSSEC) && HAVE_DECL_IP_PASSSEC)
+	XLAT(IP_PASSSEC),
+#endif
+#if defined(IP_TRANSPARENT) || (defined(HAVE_DECL_IP_TRANSPARENT) && HAVE_DECL_IP_TRANSPARENT)
+	XLAT(IP_TRANSPARENT),
+#endif
+#if defined(IP_ORIGDSTADDR) || (defined(HAVE_DECL_IP_ORIGDSTADDR) && HAVE_DECL_IP_ORIGDSTADDR)
+	XLAT(IP_ORIGDSTADDR),
+#endif
+#if defined(IP_RECVORIGDSTADDR) || (defined(HAVE_DECL_IP_RECVORIGDSTADDR) && HAVE_DECL_IP_RECVORIGDSTADDR)
+	XLAT(IP_RECVORIGDSTADDR),
+#endif
+#if defined(IP_MINTTL) || (defined(HAVE_DECL_IP_MINTTL) && HAVE_DECL_IP_MINTTL)
+	XLAT(IP_MINTTL),
+#endif
+#if defined(IP_NODEFRAG) || (defined(HAVE_DECL_IP_NODEFRAG) && HAVE_DECL_IP_NODEFRAG)
+	XLAT(IP_NODEFRAG),
+#endif
+#if defined(IP_UNBLOCK_SOURCE) || (defined(HAVE_DECL_IP_UNBLOCK_SOURCE) && HAVE_DECL_IP_UNBLOCK_SOURCE)
+	XLAT(IP_UNBLOCK_SOURCE),
+#endif
+#if defined(IP_BLOCK_SOURCE) || (defined(HAVE_DECL_IP_BLOCK_SOURCE) && HAVE_DECL_IP_BLOCK_SOURCE)
+	XLAT(IP_BLOCK_SOURCE),
+#endif
+#if defined(IP_ADD_SOURCE_MEMBERSHIP) || (defined(HAVE_DECL_IP_ADD_SOURCE_MEMBERSHIP) && HAVE_DECL_IP_ADD_SOURCE_MEMBERSHIP)
+	XLAT(IP_ADD_SOURCE_MEMBERSHIP),
+#endif
+#if defined(IP_DROP_SOURCE_MEMBERSHIP) || (defined(HAVE_DECL_IP_DROP_SOURCE_MEMBERSHIP) && HAVE_DECL_IP_DROP_SOURCE_MEMBERSHIP)
+	XLAT(IP_DROP_SOURCE_MEMBERSHIP),
+#endif
+#if defined(MCAST_JOIN_GROUP) || (defined(HAVE_DECL_MCAST_JOIN_GROUP) && HAVE_DECL_MCAST_JOIN_GROUP)
+	XLAT(MCAST_JOIN_GROUP),
+#endif
+#if defined(MCAST_BLOCK_SOURCE) || (defined(HAVE_DECL_MCAST_BLOCK_SOURCE) && HAVE_DECL_MCAST_BLOCK_SOURCE)
+	XLAT(MCAST_BLOCK_SOURCE),
+#endif
+#if defined(MCAST_UNBLOCK_SOURCE) || (defined(HAVE_DECL_MCAST_UNBLOCK_SOURCE) && HAVE_DECL_MCAST_UNBLOCK_SOURCE)
+	XLAT(MCAST_UNBLOCK_SOURCE),
+#endif
+#if defined(MCAST_LEAVE_GROUP) || (defined(HAVE_DECL_MCAST_LEAVE_GROUP) && HAVE_DECL_MCAST_LEAVE_GROUP)
+	XLAT(MCAST_LEAVE_GROUP),
+#endif
+#if defined(MCAST_JOIN_SOURCE_GROUP) || (defined(HAVE_DECL_MCAST_JOIN_SOURCE_GROUP) && HAVE_DECL_MCAST_JOIN_SOURCE_GROUP)
+	XLAT(MCAST_JOIN_SOURCE_GROUP),
+#endif
+#if defined(MCAST_LEAVE_SOURCE_GROUP) || (defined(HAVE_DECL_MCAST_LEAVE_SOURCE_GROUP) && HAVE_DECL_MCAST_LEAVE_SOURCE_GROUP)
+	XLAT(MCAST_LEAVE_SOURCE_GROUP),
+#endif
+#if defined(IP_MULTICAST_ALL) || (defined(HAVE_DECL_IP_MULTICAST_ALL) && HAVE_DECL_IP_MULTICAST_ALL)
+	XLAT(IP_MULTICAST_ALL),
+#endif
+#if defined(IP_UNICAST_IF) || (defined(HAVE_DECL_IP_UNICAST_IF) && HAVE_DECL_IP_UNICAST_IF)
+	XLAT(IP_UNICAST_IF),
+#endif
+	XLAT_END
+};
diff --git a/xlat/sockipv6options.h b/xlat/sockipv6options.h
new file mode 100644
index 0000000..40af8a9
--- /dev/null
+++ b/xlat/sockipv6options.h
@@ -0,0 +1,68 @@
+/* Generated by ./xlat/gen.sh from ./xlat/sockipv6options.in; do not edit. */
+
+static const struct xlat sockipv6options[] = {
+#if defined(IPV6_ADDRFORM) || (defined(HAVE_DECL_IPV6_ADDRFORM) && HAVE_DECL_IPV6_ADDRFORM)
+	XLAT(IPV6_ADDRFORM),
+#endif
+#if defined(MCAST_FILTER) || (defined(HAVE_DECL_MCAST_FILTER) && HAVE_DECL_MCAST_FILTER)
+	XLAT(MCAST_FILTER),
+#endif
+#if defined(IPV6_PKTOPTIONS) || (defined(HAVE_DECL_IPV6_PKTOPTIONS) && HAVE_DECL_IPV6_PKTOPTIONS)
+	XLAT(IPV6_PKTOPTIONS),
+#endif
+#if defined(IPV6_MTU) || (defined(HAVE_DECL_IPV6_MTU) && HAVE_DECL_IPV6_MTU)
+	XLAT(IPV6_MTU),
+#endif
+#if defined(IPV6_V6ONLY) || (defined(HAVE_DECL_IPV6_V6ONLY) && HAVE_DECL_IPV6_V6ONLY)
+	XLAT(IPV6_V6ONLY),
+#endif
+#if defined(IPV6_PKTINFO) || (defined(HAVE_DECL_IPV6_PKTINFO) && HAVE_DECL_IPV6_PKTINFO)
+	XLAT(IPV6_PKTINFO),
+#endif
+#if defined(IPV6_HOPLIMIT) || (defined(HAVE_DECL_IPV6_HOPLIMIT) && HAVE_DECL_IPV6_HOPLIMIT)
+	XLAT(IPV6_HOPLIMIT),
+#endif
+#if defined(IPV6_RTHDR) || (defined(HAVE_DECL_IPV6_RTHDR) && HAVE_DECL_IPV6_RTHDR)
+	XLAT(IPV6_RTHDR),
+#endif
+#if defined(IPV6_HOPOPTS) || (defined(HAVE_DECL_IPV6_HOPOPTS) && HAVE_DECL_IPV6_HOPOPTS)
+	XLAT(IPV6_HOPOPTS),
+#endif
+#if defined(IPV6_DSTOPTS) || (defined(HAVE_DECL_IPV6_DSTOPTS) && HAVE_DECL_IPV6_DSTOPTS)
+	XLAT(IPV6_DSTOPTS),
+#endif
+#if defined(IPV6_FLOWINFO) || (defined(HAVE_DECL_IPV6_FLOWINFO) && HAVE_DECL_IPV6_FLOWINFO)
+	XLAT(IPV6_FLOWINFO),
+#endif
+#if defined(IPV6_UNICAST_HOPS) || (defined(HAVE_DECL_IPV6_UNICAST_HOPS) && HAVE_DECL_IPV6_UNICAST_HOPS)
+	XLAT(IPV6_UNICAST_HOPS),
+#endif
+#if defined(IPV6_MULTICAST_HOPS) || (defined(HAVE_DECL_IPV6_MULTICAST_HOPS) && HAVE_DECL_IPV6_MULTICAST_HOPS)
+	XLAT(IPV6_MULTICAST_HOPS),
+#endif
+#if defined(IPV6_MULTICAST_LOOP) || (defined(HAVE_DECL_IPV6_MULTICAST_LOOP) && HAVE_DECL_IPV6_MULTICAST_LOOP)
+	XLAT(IPV6_MULTICAST_LOOP),
+#endif
+#if defined(IPV6_MULTICAST_IF) || (defined(HAVE_DECL_IPV6_MULTICAST_IF) && HAVE_DECL_IPV6_MULTICAST_IF)
+	XLAT(IPV6_MULTICAST_IF),
+#endif
+#if defined(IPV6_MTU_DISCOVER) || (defined(HAVE_DECL_IPV6_MTU_DISCOVER) && HAVE_DECL_IPV6_MTU_DISCOVER)
+	XLAT(IPV6_MTU_DISCOVER),
+#endif
+#if defined(IPV6_RECVERR) || (defined(HAVE_DECL_IPV6_RECVERR) && HAVE_DECL_IPV6_RECVERR)
+	XLAT(IPV6_RECVERR),
+#endif
+#if defined(IPV6_FLOWINFO_SEND) || (defined(HAVE_DECL_IPV6_FLOWINFO_SEND) && HAVE_DECL_IPV6_FLOWINFO_SEND)
+	XLAT(IPV6_FLOWINFO_SEND),
+#endif
+#if defined(IPV6_ADD_MEMBERSHIP) || (defined(HAVE_DECL_IPV6_ADD_MEMBERSHIP) && HAVE_DECL_IPV6_ADD_MEMBERSHIP)
+	XLAT(IPV6_ADD_MEMBERSHIP),
+#endif
+#if defined(IPV6_DROP_MEMBERSHIP) || (defined(HAVE_DECL_IPV6_DROP_MEMBERSHIP) && HAVE_DECL_IPV6_DROP_MEMBERSHIP)
+	XLAT(IPV6_DROP_MEMBERSHIP),
+#endif
+#if defined(IPV6_ROUTER_ALERT) || (defined(HAVE_DECL_IPV6_ROUTER_ALERT) && HAVE_DECL_IPV6_ROUTER_ALERT)
+	XLAT(IPV6_ROUTER_ALERT),
+#endif
+	XLAT_END
+};
diff --git a/xlat/sockipxoptions.h b/xlat/sockipxoptions.h
new file mode 100644
index 0000000..6c47170
--- /dev/null
+++ b/xlat/sockipxoptions.h
@@ -0,0 +1,8 @@
+/* Generated by ./xlat/gen.sh from ./xlat/sockipxoptions.in; do not edit. */
+
+static const struct xlat sockipxoptions[] = {
+#if defined(IPX_TYPE) || (defined(HAVE_DECL_IPX_TYPE) && HAVE_DECL_IPX_TYPE)
+	XLAT(IPX_TYPE),
+#endif
+	XLAT_END
+};
diff --git a/xlat/sockoptions.h b/xlat/sockoptions.h
new file mode 100644
index 0000000..2ac9d71
--- /dev/null
+++ b/xlat/sockoptions.h
@@ -0,0 +1,131 @@
+/* Generated by ./xlat/gen.sh from ./xlat/sockoptions.in; do not edit. */
+
+static const struct xlat sockoptions[] = {
+#if defined(SO_ACCEPTCONN) || (defined(HAVE_DECL_SO_ACCEPTCONN) && HAVE_DECL_SO_ACCEPTCONN)
+	XLAT(SO_ACCEPTCONN),
+#endif
+#if defined(SO_ALLRAW) || (defined(HAVE_DECL_SO_ALLRAW) && HAVE_DECL_SO_ALLRAW)
+	XLAT(SO_ALLRAW),
+#endif
+#if defined(SO_ATTACH_FILTER) || (defined(HAVE_DECL_SO_ATTACH_FILTER) && HAVE_DECL_SO_ATTACH_FILTER)
+	XLAT(SO_ATTACH_FILTER),
+#endif
+#if defined(SO_BINDTODEVICE) || (defined(HAVE_DECL_SO_BINDTODEVICE) && HAVE_DECL_SO_BINDTODEVICE)
+	XLAT(SO_BINDTODEVICE),
+#endif
+#if defined(SO_BROADCAST) || (defined(HAVE_DECL_SO_BROADCAST) && HAVE_DECL_SO_BROADCAST)
+	XLAT(SO_BROADCAST),
+#endif
+#if defined(SO_BSDCOMPAT) || (defined(HAVE_DECL_SO_BSDCOMPAT) && HAVE_DECL_SO_BSDCOMPAT)
+	XLAT(SO_BSDCOMPAT),
+#endif
+#if defined(SO_DEBUG) || (defined(HAVE_DECL_SO_DEBUG) && HAVE_DECL_SO_DEBUG)
+	XLAT(SO_DEBUG),
+#endif
+#if defined(SO_DETACH_FILTER) || (defined(HAVE_DECL_SO_DETACH_FILTER) && HAVE_DECL_SO_DETACH_FILTER)
+	XLAT(SO_DETACH_FILTER),
+#endif
+#if defined(SO_DONTROUTE) || (defined(HAVE_DECL_SO_DONTROUTE) && HAVE_DECL_SO_DONTROUTE)
+	XLAT(SO_DONTROUTE),
+#endif
+#if defined(SO_ERROR) || (defined(HAVE_DECL_SO_ERROR) && HAVE_DECL_SO_ERROR)
+	XLAT(SO_ERROR),
+#endif
+#if defined(SO_ICS) || (defined(HAVE_DECL_SO_ICS) && HAVE_DECL_SO_ICS)
+	XLAT(SO_ICS),
+#endif
+#if defined(SO_IMASOCKET) || (defined(HAVE_DECL_SO_IMASOCKET) && HAVE_DECL_SO_IMASOCKET)
+	XLAT(SO_IMASOCKET),
+#endif
+#if defined(SO_KEEPALIVE) || (defined(HAVE_DECL_SO_KEEPALIVE) && HAVE_DECL_SO_KEEPALIVE)
+	XLAT(SO_KEEPALIVE),
+#endif
+#if defined(SO_LINGER) || (defined(HAVE_DECL_SO_LINGER) && HAVE_DECL_SO_LINGER)
+	XLAT(SO_LINGER),
+#endif
+#if defined(SO_LISTENING) || (defined(HAVE_DECL_SO_LISTENING) && HAVE_DECL_SO_LISTENING)
+	XLAT(SO_LISTENING),
+#endif
+#if defined(SO_MGMT) || (defined(HAVE_DECL_SO_MGMT) && HAVE_DECL_SO_MGMT)
+	XLAT(SO_MGMT),
+#endif
+#if defined(SO_NO_CHECK) || (defined(HAVE_DECL_SO_NO_CHECK) && HAVE_DECL_SO_NO_CHECK)
+	XLAT(SO_NO_CHECK),
+#endif
+#if defined(SO_OOBINLINE) || (defined(HAVE_DECL_SO_OOBINLINE) && HAVE_DECL_SO_OOBINLINE)
+	XLAT(SO_OOBINLINE),
+#endif
+#if defined(SO_ORDREL) || (defined(HAVE_DECL_SO_ORDREL) && HAVE_DECL_SO_ORDREL)
+	XLAT(SO_ORDREL),
+#endif
+#if defined(SO_PARALLELSVR) || (defined(HAVE_DECL_SO_PARALLELSVR) && HAVE_DECL_SO_PARALLELSVR)
+	XLAT(SO_PARALLELSVR),
+#endif
+#if defined(SO_PASSCRED) || (defined(HAVE_DECL_SO_PASSCRED) && HAVE_DECL_SO_PASSCRED)
+	XLAT(SO_PASSCRED),
+#endif
+#if defined(SO_PEERCRED) || (defined(HAVE_DECL_SO_PEERCRED) && HAVE_DECL_SO_PEERCRED)
+	XLAT(SO_PEERCRED),
+#endif
+#if defined(SO_PEERNAME) || (defined(HAVE_DECL_SO_PEERNAME) && HAVE_DECL_SO_PEERNAME)
+	XLAT(SO_PEERNAME),
+#endif
+#if defined(SO_PEERSEC) || (defined(HAVE_DECL_SO_PEERSEC) && HAVE_DECL_SO_PEERSEC)
+	XLAT(SO_PEERSEC),
+#endif
+#if defined(SO_PRIORITY) || (defined(HAVE_DECL_SO_PRIORITY) && HAVE_DECL_SO_PRIORITY)
+	XLAT(SO_PRIORITY),
+#endif
+#if defined(SO_PROTOTYPE) || (defined(HAVE_DECL_SO_PROTOTYPE) && HAVE_DECL_SO_PROTOTYPE)
+	XLAT(SO_PROTOTYPE),
+#endif
+#if defined(SO_RCVBUF) || (defined(HAVE_DECL_SO_RCVBUF) && HAVE_DECL_SO_RCVBUF)
+	XLAT(SO_RCVBUF),
+#endif
+#if defined(SO_RCVLOWAT) || (defined(HAVE_DECL_SO_RCVLOWAT) && HAVE_DECL_SO_RCVLOWAT)
+	XLAT(SO_RCVLOWAT),
+#endif
+#if defined(SO_RCVTIMEO) || (defined(HAVE_DECL_SO_RCVTIMEO) && HAVE_DECL_SO_RCVTIMEO)
+	XLAT(SO_RCVTIMEO),
+#endif
+#if defined(SO_RDWR) || (defined(HAVE_DECL_SO_RDWR) && HAVE_DECL_SO_RDWR)
+	XLAT(SO_RDWR),
+#endif
+#if defined(SO_REUSEADDR) || (defined(HAVE_DECL_SO_REUSEADDR) && HAVE_DECL_SO_REUSEADDR)
+	XLAT(SO_REUSEADDR),
+#endif
+#if defined(SO_REUSEPORT) || (defined(HAVE_DECL_SO_REUSEPORT) && HAVE_DECL_SO_REUSEPORT)
+	XLAT(SO_REUSEPORT),
+#endif
+#if defined(SO_SECURITY_AUTHENTICATION) || (defined(HAVE_DECL_SO_SECURITY_AUTHENTICATION) && HAVE_DECL_SO_SECURITY_AUTHENTICATION)
+	XLAT(SO_SECURITY_AUTHENTICATION),
+#endif
+#if defined(SO_SECURITY_ENCRYPTION_NETWORK) || (defined(HAVE_DECL_SO_SECURITY_ENCRYPTION_NETWORK) && HAVE_DECL_SO_SECURITY_ENCRYPTION_NETWORK)
+	XLAT(SO_SECURITY_ENCRYPTION_NETWORK),
+#endif
+#if defined(SO_SECURITY_ENCRYPTION_TRANSPORT) || (defined(HAVE_DECL_SO_SECURITY_ENCRYPTION_TRANSPORT) && HAVE_DECL_SO_SECURITY_ENCRYPTION_TRANSPORT)
+	XLAT(SO_SECURITY_ENCRYPTION_TRANSPORT),
+#endif
+#if defined(SO_SEMA) || (defined(HAVE_DECL_SO_SEMA) && HAVE_DECL_SO_SEMA)
+	XLAT(SO_SEMA),
+#endif
+#if defined(SO_SNDBUF) || (defined(HAVE_DECL_SO_SNDBUF) && HAVE_DECL_SO_SNDBUF)
+	XLAT(SO_SNDBUF),
+#endif
+#if defined(SO_SNDLOWAT) || (defined(HAVE_DECL_SO_SNDLOWAT) && HAVE_DECL_SO_SNDLOWAT)
+	XLAT(SO_SNDLOWAT),
+#endif
+#if defined(SO_SNDTIMEO) || (defined(HAVE_DECL_SO_SNDTIMEO) && HAVE_DECL_SO_SNDTIMEO)
+	XLAT(SO_SNDTIMEO),
+#endif
+#if defined(SO_TIMESTAMP) || (defined(HAVE_DECL_SO_TIMESTAMP) && HAVE_DECL_SO_TIMESTAMP)
+	XLAT(SO_TIMESTAMP),
+#endif
+#if defined(SO_TYPE) || (defined(HAVE_DECL_SO_TYPE) && HAVE_DECL_SO_TYPE)
+	XLAT(SO_TYPE),
+#endif
+#if defined(SO_USELOOPBACK) || (defined(HAVE_DECL_SO_USELOOPBACK) && HAVE_DECL_SO_USELOOPBACK)
+	XLAT(SO_USELOOPBACK),
+#endif
+	XLAT_END
+};
diff --git a/xlat/sockpacketoptions.h b/xlat/sockpacketoptions.h
new file mode 100644
index 0000000..e7025eb
--- /dev/null
+++ b/xlat/sockpacketoptions.h
@@ -0,0 +1,44 @@
+/* Generated by ./xlat/gen.sh from ./xlat/sockpacketoptions.in; do not edit. */
+
+static const struct xlat sockpacketoptions[] = {
+#if defined(PACKET_ADD_MEMBERSHIP) || (defined(HAVE_DECL_PACKET_ADD_MEMBERSHIP) && HAVE_DECL_PACKET_ADD_MEMBERSHIP)
+	XLAT(PACKET_ADD_MEMBERSHIP),
+#endif
+#if defined(PACKET_DROP_MEMBERSHIP) || (defined(HAVE_DECL_PACKET_DROP_MEMBERSHIP) && HAVE_DECL_PACKET_DROP_MEMBERSHIP)
+	XLAT(PACKET_DROP_MEMBERSHIP),
+#endif
+#if defined(PACKET_RECV_OUTPUT) || (defined(HAVE_DECL_PACKET_RECV_OUTPUT) && HAVE_DECL_PACKET_RECV_OUTPUT)
+	XLAT(PACKET_RECV_OUTPUT),
+#endif
+#if defined(PACKET_RX_RING) || (defined(HAVE_DECL_PACKET_RX_RING) && HAVE_DECL_PACKET_RX_RING)
+	XLAT(PACKET_RX_RING),
+#endif
+#if defined(PACKET_STATISTICS) || (defined(HAVE_DECL_PACKET_STATISTICS) && HAVE_DECL_PACKET_STATISTICS)
+	XLAT(PACKET_STATISTICS),
+#endif
+#if defined(PACKET_COPY_THRESH) || (defined(HAVE_DECL_PACKET_COPY_THRESH) && HAVE_DECL_PACKET_COPY_THRESH)
+	XLAT(PACKET_COPY_THRESH),
+#endif
+#if defined(PACKET_AUXDATA) || (defined(HAVE_DECL_PACKET_AUXDATA) && HAVE_DECL_PACKET_AUXDATA)
+	XLAT(PACKET_AUXDATA),
+#endif
+#if defined(PACKET_ORIGDEV) || (defined(HAVE_DECL_PACKET_ORIGDEV) && HAVE_DECL_PACKET_ORIGDEV)
+	XLAT(PACKET_ORIGDEV),
+#endif
+#if defined(PACKET_VERSION) || (defined(HAVE_DECL_PACKET_VERSION) && HAVE_DECL_PACKET_VERSION)
+	XLAT(PACKET_VERSION),
+#endif
+#if defined(PACKET_HDRLEN) || (defined(HAVE_DECL_PACKET_HDRLEN) && HAVE_DECL_PACKET_HDRLEN)
+	XLAT(PACKET_HDRLEN),
+#endif
+#if defined(PACKET_RESERVE) || (defined(HAVE_DECL_PACKET_RESERVE) && HAVE_DECL_PACKET_RESERVE)
+	XLAT(PACKET_RESERVE),
+#endif
+#if defined(PACKET_TX_RING) || (defined(HAVE_DECL_PACKET_TX_RING) && HAVE_DECL_PACKET_TX_RING)
+	XLAT(PACKET_TX_RING),
+#endif
+#if defined(PACKET_LOSS) || (defined(HAVE_DECL_PACKET_LOSS) && HAVE_DECL_PACKET_LOSS)
+	XLAT(PACKET_LOSS),
+#endif
+	XLAT_END
+};
diff --git a/xlat/sockrawoptions.h b/xlat/sockrawoptions.h
new file mode 100644
index 0000000..96ebded
--- /dev/null
+++ b/xlat/sockrawoptions.h
@@ -0,0 +1,8 @@
+/* Generated by ./xlat/gen.sh from ./xlat/sockrawoptions.in; do not edit. */
+
+static const struct xlat sockrawoptions[] = {
+#if defined(ICMP_FILTER) || (defined(HAVE_DECL_ICMP_FILTER) && HAVE_DECL_ICMP_FILTER)
+	XLAT(ICMP_FILTER),
+#endif
+	XLAT_END
+};
diff --git a/xlat/socksctpoptions.h b/xlat/socksctpoptions.h
new file mode 100644
index 0000000..0b54030
--- /dev/null
+++ b/xlat/socksctpoptions.h
@@ -0,0 +1,123 @@
+/* Generated by ./xlat/gen.sh from ./xlat/socksctpoptions.in; do not edit. */
+
+static const struct xlat socksctpoptions[] = {
+#if defined(SCTP_RTOINFO) || (defined(HAVE_DECL_SCTP_RTOINFO) && HAVE_DECL_SCTP_RTOINFO)
+	XLAT(SCTP_RTOINFO),
+#endif
+#if defined(SCTP_ASSOCINFO) || (defined(HAVE_DECL_SCTP_ASSOCINFO) && HAVE_DECL_SCTP_ASSOCINFO)
+	XLAT(SCTP_ASSOCINFO),
+#endif
+#if defined(SCTP_INITMSG) || (defined(HAVE_DECL_SCTP_INITMSG) && HAVE_DECL_SCTP_INITMSG)
+	XLAT(SCTP_INITMSG),
+#endif
+#if defined(SCTP_NODELAY) || (defined(HAVE_DECL_SCTP_NODELAY) && HAVE_DECL_SCTP_NODELAY)
+	XLAT(SCTP_NODELAY),
+#endif
+#if defined(SCTP_AUTOCLOSE) || (defined(HAVE_DECL_SCTP_AUTOCLOSE) && HAVE_DECL_SCTP_AUTOCLOSE)
+	XLAT(SCTP_AUTOCLOSE),
+#endif
+#if defined(SCTP_SET_PEER_PRIMARY_ADDR) || (defined(HAVE_DECL_SCTP_SET_PEER_PRIMARY_ADDR) && HAVE_DECL_SCTP_SET_PEER_PRIMARY_ADDR)
+	XLAT(SCTP_SET_PEER_PRIMARY_ADDR),
+#endif
+#if defined(SCTP_PRIMARY_ADDR) || (defined(HAVE_DECL_SCTP_PRIMARY_ADDR) && HAVE_DECL_SCTP_PRIMARY_ADDR)
+	XLAT(SCTP_PRIMARY_ADDR),
+#endif
+#if defined(SCTP_ADAPTATION_LAYER) || (defined(HAVE_DECL_SCTP_ADAPTATION_LAYER) && HAVE_DECL_SCTP_ADAPTATION_LAYER)
+	XLAT(SCTP_ADAPTATION_LAYER),
+#endif
+#if defined(SCTP_DISABLE_FRAGMENTS) || (defined(HAVE_DECL_SCTP_DISABLE_FRAGMENTS) && HAVE_DECL_SCTP_DISABLE_FRAGMENTS)
+	XLAT(SCTP_DISABLE_FRAGMENTS),
+#endif
+#if defined(SCTP_PEER_ADDR_PARAMS) || (defined(HAVE_DECL_SCTP_PEER_ADDR_PARAMS) && HAVE_DECL_SCTP_PEER_ADDR_PARAMS)
+	XLAT(SCTP_PEER_ADDR_PARAMS),
+#endif
+#if defined(SCTP_DEFAULT_SEND_PARAM) || (defined(HAVE_DECL_SCTP_DEFAULT_SEND_PARAM) && HAVE_DECL_SCTP_DEFAULT_SEND_PARAM)
+	XLAT(SCTP_DEFAULT_SEND_PARAM),
+#endif
+#if defined(SCTP_EVENTS) || (defined(HAVE_DECL_SCTP_EVENTS) && HAVE_DECL_SCTP_EVENTS)
+	XLAT(SCTP_EVENTS),
+#endif
+#if defined(SCTP_I_WANT_MAPPED_V4_ADDR) || (defined(HAVE_DECL_SCTP_I_WANT_MAPPED_V4_ADDR) && HAVE_DECL_SCTP_I_WANT_MAPPED_V4_ADDR)
+	XLAT(SCTP_I_WANT_MAPPED_V4_ADDR),
+#endif
+#if defined(SCTP_MAXSEG) || (defined(HAVE_DECL_SCTP_MAXSEG) && HAVE_DECL_SCTP_MAXSEG)
+	XLAT(SCTP_MAXSEG),
+#endif
+#if defined(SCTP_STATUS) || (defined(HAVE_DECL_SCTP_STATUS) && HAVE_DECL_SCTP_STATUS)
+	XLAT(SCTP_STATUS),
+#endif
+#if defined(SCTP_GET_PEER_ADDR_INFO) || (defined(HAVE_DECL_SCTP_GET_PEER_ADDR_INFO) && HAVE_DECL_SCTP_GET_PEER_ADDR_INFO)
+	XLAT(SCTP_GET_PEER_ADDR_INFO),
+#endif
+#if defined(SCTP_DELAYED_ACK) || (defined(HAVE_DECL_SCTP_DELAYED_ACK) && HAVE_DECL_SCTP_DELAYED_ACK)
+	XLAT(SCTP_DELAYED_ACK),
+#endif
+#if defined(SCTP_CONTEXT) || (defined(HAVE_DECL_SCTP_CONTEXT) && HAVE_DECL_SCTP_CONTEXT)
+	XLAT(SCTP_CONTEXT),
+#endif
+#if defined(SCTP_FRAGMENT_INTERLEAVE) || (defined(HAVE_DECL_SCTP_FRAGMENT_INTERLEAVE) && HAVE_DECL_SCTP_FRAGMENT_INTERLEAVE)
+	XLAT(SCTP_FRAGMENT_INTERLEAVE),
+#endif
+#if defined(SCTP_PARTIAL_DELIVERY_POINT) || (defined(HAVE_DECL_SCTP_PARTIAL_DELIVERY_POINT) && HAVE_DECL_SCTP_PARTIAL_DELIVERY_POINT)
+	XLAT(SCTP_PARTIAL_DELIVERY_POINT),
+#endif
+#if defined(SCTP_MAX_BURST) || (defined(HAVE_DECL_SCTP_MAX_BURST) && HAVE_DECL_SCTP_MAX_BURST)
+	XLAT(SCTP_MAX_BURST),
+#endif
+#if defined(SCTP_AUTH_CHUNK) || (defined(HAVE_DECL_SCTP_AUTH_CHUNK) && HAVE_DECL_SCTP_AUTH_CHUNK)
+	XLAT(SCTP_AUTH_CHUNK),
+#endif
+#if defined(SCTP_HMAC_IDENT) || (defined(HAVE_DECL_SCTP_HMAC_IDENT) && HAVE_DECL_SCTP_HMAC_IDENT)
+	XLAT(SCTP_HMAC_IDENT),
+#endif
+#if defined(SCTP_AUTH_KEY) || (defined(HAVE_DECL_SCTP_AUTH_KEY) && HAVE_DECL_SCTP_AUTH_KEY)
+	XLAT(SCTP_AUTH_KEY),
+#endif
+#if defined(SCTP_AUTH_ACTIVE_KEY) || (defined(HAVE_DECL_SCTP_AUTH_ACTIVE_KEY) && HAVE_DECL_SCTP_AUTH_ACTIVE_KEY)
+	XLAT(SCTP_AUTH_ACTIVE_KEY),
+#endif
+#if defined(SCTP_AUTH_DELETE_KEY) || (defined(HAVE_DECL_SCTP_AUTH_DELETE_KEY) && HAVE_DECL_SCTP_AUTH_DELETE_KEY)
+	XLAT(SCTP_AUTH_DELETE_KEY),
+#endif
+#if defined(SCTP_PEER_AUTH_CHUNKS) || (defined(HAVE_DECL_SCTP_PEER_AUTH_CHUNKS) && HAVE_DECL_SCTP_PEER_AUTH_CHUNKS)
+	XLAT(SCTP_PEER_AUTH_CHUNKS),
+#endif
+#if defined(SCTP_LOCAL_AUTH_CHUNKS) || (defined(HAVE_DECL_SCTP_LOCAL_AUTH_CHUNKS) && HAVE_DECL_SCTP_LOCAL_AUTH_CHUNKS)
+	XLAT(SCTP_LOCAL_AUTH_CHUNKS),
+#endif
+#if defined(SCTP_GET_ASSOC_NUMBER) || (defined(HAVE_DECL_SCTP_GET_ASSOC_NUMBER) && HAVE_DECL_SCTP_GET_ASSOC_NUMBER)
+	XLAT(SCTP_GET_ASSOC_NUMBER),
+#endif
+/* linux specific things */
+#if defined(SCTP_SOCKOPT_BINDX_ADD) || (defined(HAVE_DECL_SCTP_SOCKOPT_BINDX_ADD) && HAVE_DECL_SCTP_SOCKOPT_BINDX_ADD)
+	XLAT(SCTP_SOCKOPT_BINDX_ADD),
+#endif
+#if defined(SCTP_SOCKOPT_BINDX_REM) || (defined(HAVE_DECL_SCTP_SOCKOPT_BINDX_REM) && HAVE_DECL_SCTP_SOCKOPT_BINDX_REM)
+	XLAT(SCTP_SOCKOPT_BINDX_REM),
+#endif
+#if defined(SCTP_SOCKOPT_PEELOFF) || (defined(HAVE_DECL_SCTP_SOCKOPT_PEELOFF) && HAVE_DECL_SCTP_SOCKOPT_PEELOFF)
+	XLAT(SCTP_SOCKOPT_PEELOFF),
+#endif
+#if defined(SCTP_GET_PEER_ADDRS_NUM_OLD) || (defined(HAVE_DECL_SCTP_GET_PEER_ADDRS_NUM_OLD) && HAVE_DECL_SCTP_GET_PEER_ADDRS_NUM_OLD)
+	XLAT(SCTP_GET_PEER_ADDRS_NUM_OLD),
+#endif
+#if defined(SCTP_GET_PEER_ADDRS_OLD) || (defined(HAVE_DECL_SCTP_GET_PEER_ADDRS_OLD) && HAVE_DECL_SCTP_GET_PEER_ADDRS_OLD)
+	XLAT(SCTP_GET_PEER_ADDRS_OLD),
+#endif
+#if defined(SCTP_GET_LOCAL_ADDRS_NUM_OLD) || (defined(HAVE_DECL_SCTP_GET_LOCAL_ADDRS_NUM_OLD) && HAVE_DECL_SCTP_GET_LOCAL_ADDRS_NUM_OLD)
+	XLAT(SCTP_GET_LOCAL_ADDRS_NUM_OLD),
+#endif
+#if defined(SCTP_GET_LOCAL_ADDRS_OLD) || (defined(HAVE_DECL_SCTP_GET_LOCAL_ADDRS_OLD) && HAVE_DECL_SCTP_GET_LOCAL_ADDRS_OLD)
+	XLAT(SCTP_GET_LOCAL_ADDRS_OLD),
+#endif
+#if defined(SCTP_SOCKOPT_CONNECTX_OLD) || (defined(HAVE_DECL_SCTP_SOCKOPT_CONNECTX_OLD) && HAVE_DECL_SCTP_SOCKOPT_CONNECTX_OLD)
+	XLAT(SCTP_SOCKOPT_CONNECTX_OLD),
+#endif
+#if defined(SCTP_GET_PEER_ADDRS) || (defined(HAVE_DECL_SCTP_GET_PEER_ADDRS) && HAVE_DECL_SCTP_GET_PEER_ADDRS)
+	XLAT(SCTP_GET_PEER_ADDRS),
+#endif
+#if defined(SCTP_GET_LOCAL_ADDRS) || (defined(HAVE_DECL_SCTP_GET_LOCAL_ADDRS) && HAVE_DECL_SCTP_GET_LOCAL_ADDRS)
+	XLAT(SCTP_GET_LOCAL_ADDRS),
+#endif
+	XLAT_END
+};
diff --git a/xlat/socktcpoptions.h b/xlat/socktcpoptions.h
new file mode 100644
index 0000000..e6a3a28
--- /dev/null
+++ b/xlat/socktcpoptions.h
@@ -0,0 +1,77 @@
+/* Generated by ./xlat/gen.sh from ./xlat/socktcpoptions.in; do not edit. */
+
+static const struct xlat socktcpoptions[] = {
+#if defined(TCP_NODELAY) || (defined(HAVE_DECL_TCP_NODELAY) && HAVE_DECL_TCP_NODELAY)
+	XLAT(TCP_NODELAY),
+#endif
+#if defined(TCP_MAXSEG) || (defined(HAVE_DECL_TCP_MAXSEG) && HAVE_DECL_TCP_MAXSEG)
+	XLAT(TCP_MAXSEG),
+#endif
+#if defined(TCP_CORK) || (defined(HAVE_DECL_TCP_CORK) && HAVE_DECL_TCP_CORK)
+	XLAT(TCP_CORK),
+#endif
+#if defined(TCP_KEEPIDLE) || (defined(HAVE_DECL_TCP_KEEPIDLE) && HAVE_DECL_TCP_KEEPIDLE)
+	XLAT(TCP_KEEPIDLE),
+#endif
+#if defined(TCP_KEEPINTVL) || (defined(HAVE_DECL_TCP_KEEPINTVL) && HAVE_DECL_TCP_KEEPINTVL)
+	XLAT(TCP_KEEPINTVL),
+#endif
+#if defined(TCP_KEEPCNT) || (defined(HAVE_DECL_TCP_KEEPCNT) && HAVE_DECL_TCP_KEEPCNT)
+	XLAT(TCP_KEEPCNT),
+#endif
+#if defined(TCP_SYNCNT) || (defined(HAVE_DECL_TCP_SYNCNT) && HAVE_DECL_TCP_SYNCNT)
+	XLAT(TCP_SYNCNT),
+#endif
+#if defined(TCP_LINGER2) || (defined(HAVE_DECL_TCP_LINGER2) && HAVE_DECL_TCP_LINGER2)
+	XLAT(TCP_LINGER2),
+#endif
+#if defined(TCP_DEFER_ACCEPT) || (defined(HAVE_DECL_TCP_DEFER_ACCEPT) && HAVE_DECL_TCP_DEFER_ACCEPT)
+	XLAT(TCP_DEFER_ACCEPT),
+#endif
+#if defined(TCP_WINDOW_CLAMP) || (defined(HAVE_DECL_TCP_WINDOW_CLAMP) && HAVE_DECL_TCP_WINDOW_CLAMP)
+	XLAT(TCP_WINDOW_CLAMP),
+#endif
+#if defined(TCP_INFO) || (defined(HAVE_DECL_TCP_INFO) && HAVE_DECL_TCP_INFO)
+	XLAT(TCP_INFO),
+#endif
+#if defined(TCP_QUICKACK) || (defined(HAVE_DECL_TCP_QUICKACK) && HAVE_DECL_TCP_QUICKACK)
+	XLAT(TCP_QUICKACK),
+#endif
+#if defined(TCP_CONGESTION) || (defined(HAVE_DECL_TCP_CONGESTION) && HAVE_DECL_TCP_CONGESTION)
+	XLAT(TCP_CONGESTION),
+#endif
+#if defined(TCP_MD5SIG) || (defined(HAVE_DECL_TCP_MD5SIG) && HAVE_DECL_TCP_MD5SIG)
+	XLAT(TCP_MD5SIG),
+#endif
+#if defined(TCP_COOKIE_TRANSACTIONS) || (defined(HAVE_DECL_TCP_COOKIE_TRANSACTIONS) && HAVE_DECL_TCP_COOKIE_TRANSACTIONS)
+	XLAT(TCP_COOKIE_TRANSACTIONS),
+#endif
+#if defined(TCP_THIN_LINEAR_TIMEOUTS) || (defined(HAVE_DECL_TCP_THIN_LINEAR_TIMEOUTS) && HAVE_DECL_TCP_THIN_LINEAR_TIMEOUTS)
+	XLAT(TCP_THIN_LINEAR_TIMEOUTS),
+#endif
+#if defined(TCP_THIN_DUPACK) || (defined(HAVE_DECL_TCP_THIN_DUPACK) && HAVE_DECL_TCP_THIN_DUPACK)
+	XLAT(TCP_THIN_DUPACK),
+#endif
+#if defined(TCP_USER_TIMEOUT) || (defined(HAVE_DECL_TCP_USER_TIMEOUT) && HAVE_DECL_TCP_USER_TIMEOUT)
+	XLAT(TCP_USER_TIMEOUT),
+#endif
+#if defined(TCP_REPAIR) || (defined(HAVE_DECL_TCP_REPAIR) && HAVE_DECL_TCP_REPAIR)
+	XLAT(TCP_REPAIR),
+#endif
+#if defined(TCP_REPAIR_QUEUE) || (defined(HAVE_DECL_TCP_REPAIR_QUEUE) && HAVE_DECL_TCP_REPAIR_QUEUE)
+	XLAT(TCP_REPAIR_QUEUE),
+#endif
+#if defined(TCP_QUEUE_SEQ) || (defined(HAVE_DECL_TCP_QUEUE_SEQ) && HAVE_DECL_TCP_QUEUE_SEQ)
+	XLAT(TCP_QUEUE_SEQ),
+#endif
+#if defined(TCP_REPAIR_OPTIONS) || (defined(HAVE_DECL_TCP_REPAIR_OPTIONS) && HAVE_DECL_TCP_REPAIR_OPTIONS)
+	XLAT(TCP_REPAIR_OPTIONS),
+#endif
+#if defined(TCP_FASTOPEN) || (defined(HAVE_DECL_TCP_FASTOPEN) && HAVE_DECL_TCP_FASTOPEN)
+	XLAT(TCP_FASTOPEN),
+#endif
+#if defined(TCP_TIMESTAMP) || (defined(HAVE_DECL_TCP_TIMESTAMP) && HAVE_DECL_TCP_TIMESTAMP)
+	XLAT(TCP_TIMESTAMP),
+#endif
+	XLAT_END
+};
diff --git a/xlat/socktypes.h b/xlat/socktypes.h
new file mode 100644
index 0000000..6434759
--- /dev/null
+++ b/xlat/socktypes.h
@@ -0,0 +1,26 @@
+/* Generated by ./xlat/gen.sh from ./xlat/socktypes.in; do not edit. */
+
+static const struct xlat socktypes[] = {
+#if defined(SOCK_STREAM) || (defined(HAVE_DECL_SOCK_STREAM) && HAVE_DECL_SOCK_STREAM)
+	XLAT(SOCK_STREAM),
+#endif
+#if defined(SOCK_DGRAM) || (defined(HAVE_DECL_SOCK_DGRAM) && HAVE_DECL_SOCK_DGRAM)
+	XLAT(SOCK_DGRAM),
+#endif
+#if defined(SOCK_RAW) || (defined(HAVE_DECL_SOCK_RAW) && HAVE_DECL_SOCK_RAW)
+	XLAT(SOCK_RAW),
+#endif
+#if defined(SOCK_RDM) || (defined(HAVE_DECL_SOCK_RDM) && HAVE_DECL_SOCK_RDM)
+	XLAT(SOCK_RDM),
+#endif
+#if defined(SOCK_SEQPACKET) || (defined(HAVE_DECL_SOCK_SEQPACKET) && HAVE_DECL_SOCK_SEQPACKET)
+	XLAT(SOCK_SEQPACKET),
+#endif
+#if defined(SOCK_DCCP) || (defined(HAVE_DECL_SOCK_DCCP) && HAVE_DECL_SOCK_DCCP)
+	XLAT(SOCK_DCCP),
+#endif
+#if defined(SOCK_PACKET) || (defined(HAVE_DECL_SOCK_PACKET) && HAVE_DECL_SOCK_PACKET)
+	XLAT(SOCK_PACKET),
+#endif
+	XLAT_END
+};
diff --git a/xlat/splice_flags.h b/xlat/splice_flags.h
new file mode 100644
index 0000000..7ae6c84
--- /dev/null
+++ b/xlat/splice_flags.h
@@ -0,0 +1,17 @@
+/* Generated by ./xlat/gen.sh from ./xlat/splice_flags.in; do not edit. */
+
+static const struct xlat splice_flags[] = {
+#if defined(SPLICE_F_MOVE) || (defined(HAVE_DECL_SPLICE_F_MOVE) && HAVE_DECL_SPLICE_F_MOVE)
+	XLAT(SPLICE_F_MOVE),
+#endif
+#if defined(SPLICE_F_NONBLOCK) || (defined(HAVE_DECL_SPLICE_F_NONBLOCK) && HAVE_DECL_SPLICE_F_NONBLOCK)
+	XLAT(SPLICE_F_NONBLOCK),
+#endif
+#if defined(SPLICE_F_MORE) || (defined(HAVE_DECL_SPLICE_F_MORE) && HAVE_DECL_SPLICE_F_MORE)
+	XLAT(SPLICE_F_MORE),
+#endif
+#if defined(SPLICE_F_GIFT) || (defined(HAVE_DECL_SPLICE_F_GIFT) && HAVE_DECL_SPLICE_F_GIFT)
+	XLAT(SPLICE_F_GIFT),
+#endif
+	XLAT_END
+};
diff --git a/xlat/sram_alloc_flags.h b/xlat/sram_alloc_flags.h
new file mode 100644
index 0000000..48dd0f1
--- /dev/null
+++ b/xlat/sram_alloc_flags.h
@@ -0,0 +1,20 @@
+/* Generated by ./xlat/gen.sh from ./xlat/sram_alloc_flags.in; do not edit. */
+
+static const struct xlat sram_alloc_flags[] = {
+#if defined(L1_INST_SRAM) || (defined(HAVE_DECL_L1_INST_SRAM) && HAVE_DECL_L1_INST_SRAM)
+	XLAT(L1_INST_SRAM),
+#endif
+#if defined(L1_DATA_A_SRAM) || (defined(HAVE_DECL_L1_DATA_A_SRAM) && HAVE_DECL_L1_DATA_A_SRAM)
+	XLAT(L1_DATA_A_SRAM),
+#endif
+#if defined(L1_DATA_B_SRAM) || (defined(HAVE_DECL_L1_DATA_B_SRAM) && HAVE_DECL_L1_DATA_B_SRAM)
+	XLAT(L1_DATA_B_SRAM),
+#endif
+#if defined(L1_DATA_SRAM) || (defined(HAVE_DECL_L1_DATA_SRAM) && HAVE_DECL_L1_DATA_SRAM)
+	XLAT(L1_DATA_SRAM),
+#endif
+#if defined(L2_SRAM) || (defined(HAVE_DECL_L2_SRAM) && HAVE_DECL_L2_SRAM)
+	XLAT(L2_SRAM),
+#endif
+	XLAT_END
+};
diff --git a/xlat/swap_flags.h b/xlat/swap_flags.h
new file mode 100644
index 0000000..0ffc832
--- /dev/null
+++ b/xlat/swap_flags.h
@@ -0,0 +1,11 @@
+/* Generated by ./xlat/gen.sh from ./xlat/swap_flags.in; do not edit. */
+
+static const struct xlat swap_flags[] = {
+#if defined(SWAP_FLAG_PREFER) || (defined(HAVE_DECL_SWAP_FLAG_PREFER) && HAVE_DECL_SWAP_FLAG_PREFER)
+	XLAT(SWAP_FLAG_PREFER),
+#endif
+#if defined(SWAP_FLAG_DISCARD) || (defined(HAVE_DECL_SWAP_FLAG_DISCARD) && HAVE_DECL_SWAP_FLAG_DISCARD)
+	XLAT(SWAP_FLAG_DISCARD),
+#endif
+	XLAT_END
+};
diff --git a/xlat/sync_file_range_flags.h b/xlat/sync_file_range_flags.h
new file mode 100644
index 0000000..53ee15c
--- /dev/null
+++ b/xlat/sync_file_range_flags.h
@@ -0,0 +1,14 @@
+/* Generated by ./xlat/gen.sh from ./xlat/sync_file_range_flags.in; do not edit. */
+
+static const struct xlat sync_file_range_flags[] = {
+#if defined(SYNC_FILE_RANGE_WAIT_BEFORE) || (defined(HAVE_DECL_SYNC_FILE_RANGE_WAIT_BEFORE) && HAVE_DECL_SYNC_FILE_RANGE_WAIT_BEFORE)
+	XLAT(SYNC_FILE_RANGE_WAIT_BEFORE),
+#endif
+#if defined(SYNC_FILE_RANGE_WRITE) || (defined(HAVE_DECL_SYNC_FILE_RANGE_WRITE) && HAVE_DECL_SYNC_FILE_RANGE_WRITE)
+	XLAT(SYNC_FILE_RANGE_WRITE),
+#endif
+#if defined(SYNC_FILE_RANGE_WAIT_AFTER) || (defined(HAVE_DECL_SYNC_FILE_RANGE_WAIT_AFTER) && HAVE_DECL_SYNC_FILE_RANGE_WAIT_AFTER)
+	XLAT(SYNC_FILE_RANGE_WAIT_AFTER),
+#endif
+	XLAT_END
+};
diff --git a/xlat/sysctl_kern.h b/xlat/sysctl_kern.h
new file mode 100644
index 0000000..562f3f0
--- /dev/null
+++ b/xlat/sysctl_kern.h
@@ -0,0 +1,203 @@
+/* Generated by ./xlat/gen.sh from ./xlat/sysctl_kern.in; do not edit. */
+
+static const struct xlat sysctl_kern[] = {
+#if defined(KERN_OSTYPE) || (defined(HAVE_DECL_KERN_OSTYPE) && HAVE_DECL_KERN_OSTYPE)
+	XLAT(KERN_OSTYPE),
+#endif
+#if defined(KERN_OSRELEASE) || (defined(HAVE_DECL_KERN_OSRELEASE) && HAVE_DECL_KERN_OSRELEASE)
+	XLAT(KERN_OSRELEASE),
+#endif
+#if defined(KERN_OSREV) || (defined(HAVE_DECL_KERN_OSREV) && HAVE_DECL_KERN_OSREV)
+	XLAT(KERN_OSREV),
+#endif
+#if defined(KERN_VERSION) || (defined(HAVE_DECL_KERN_VERSION) && HAVE_DECL_KERN_VERSION)
+	XLAT(KERN_VERSION),
+#endif
+#if defined(KERN_SECUREMASK) || (defined(HAVE_DECL_KERN_SECUREMASK) && HAVE_DECL_KERN_SECUREMASK)
+	XLAT(KERN_SECUREMASK),
+#endif
+#if defined(KERN_PROF) || (defined(HAVE_DECL_KERN_PROF) && HAVE_DECL_KERN_PROF)
+	XLAT(KERN_PROF),
+#endif
+#if defined(KERN_NODENAME) || (defined(HAVE_DECL_KERN_NODENAME) && HAVE_DECL_KERN_NODENAME)
+	XLAT(KERN_NODENAME),
+#endif
+#if defined(KERN_DOMAINNAME) || (defined(HAVE_DECL_KERN_DOMAINNAME) && HAVE_DECL_KERN_DOMAINNAME)
+	XLAT(KERN_DOMAINNAME),
+#endif
+#if defined(KERN_PANIC) || (defined(HAVE_DECL_KERN_PANIC) && HAVE_DECL_KERN_PANIC)
+	XLAT(KERN_PANIC),
+#endif
+#if defined(KERN_REALROOTDEV) || (defined(HAVE_DECL_KERN_REALROOTDEV) && HAVE_DECL_KERN_REALROOTDEV)
+	XLAT(KERN_REALROOTDEV),
+#endif
+#if defined(KERN_SPARC_REBOOT) || (defined(HAVE_DECL_KERN_SPARC_REBOOT) && HAVE_DECL_KERN_SPARC_REBOOT)
+	XLAT(KERN_SPARC_REBOOT),
+#endif
+#if defined(KERN_CTLALTDEL) || (defined(HAVE_DECL_KERN_CTLALTDEL) && HAVE_DECL_KERN_CTLALTDEL)
+	XLAT(KERN_CTLALTDEL),
+#endif
+#if defined(KERN_PRINTK) || (defined(HAVE_DECL_KERN_PRINTK) && HAVE_DECL_KERN_PRINTK)
+	XLAT(KERN_PRINTK),
+#endif
+#if defined(KERN_NAMETRANS) || (defined(HAVE_DECL_KERN_NAMETRANS) && HAVE_DECL_KERN_NAMETRANS)
+	XLAT(KERN_NAMETRANS),
+#endif
+#if defined(KERN_PPC_HTABRECLAIM) || (defined(HAVE_DECL_KERN_PPC_HTABRECLAIM) && HAVE_DECL_KERN_PPC_HTABRECLAIM)
+	XLAT(KERN_PPC_HTABRECLAIM),
+#endif
+#if defined(KERN_PPC_ZEROPAGED) || (defined(HAVE_DECL_KERN_PPC_ZEROPAGED) && HAVE_DECL_KERN_PPC_ZEROPAGED)
+	XLAT(KERN_PPC_ZEROPAGED),
+#endif
+#if defined(KERN_PPC_POWERSAVE_NAP) || (defined(HAVE_DECL_KERN_PPC_POWERSAVE_NAP) && HAVE_DECL_KERN_PPC_POWERSAVE_NAP)
+	XLAT(KERN_PPC_POWERSAVE_NAP),
+#endif
+#if defined(KERN_MODPROBE) || (defined(HAVE_DECL_KERN_MODPROBE) && HAVE_DECL_KERN_MODPROBE)
+	XLAT(KERN_MODPROBE),
+#endif
+#if defined(KERN_SG_BIG_BUFF) || (defined(HAVE_DECL_KERN_SG_BIG_BUFF) && HAVE_DECL_KERN_SG_BIG_BUFF)
+	XLAT(KERN_SG_BIG_BUFF),
+#endif
+#if defined(KERN_ACCT) || (defined(HAVE_DECL_KERN_ACCT) && HAVE_DECL_KERN_ACCT)
+	XLAT(KERN_ACCT),
+#endif
+#if defined(KERN_PPC_L2CR) || (defined(HAVE_DECL_KERN_PPC_L2CR) && HAVE_DECL_KERN_PPC_L2CR)
+	XLAT(KERN_PPC_L2CR),
+#endif
+#if defined(KERN_RTSIGNR) || (defined(HAVE_DECL_KERN_RTSIGNR) && HAVE_DECL_KERN_RTSIGNR)
+	XLAT(KERN_RTSIGNR),
+#endif
+#if defined(KERN_RTSIGMAX) || (defined(HAVE_DECL_KERN_RTSIGMAX) && HAVE_DECL_KERN_RTSIGMAX)
+	XLAT(KERN_RTSIGMAX),
+#endif
+#if defined(KERN_SHMMAX) || (defined(HAVE_DECL_KERN_SHMMAX) && HAVE_DECL_KERN_SHMMAX)
+	XLAT(KERN_SHMMAX),
+#endif
+#if defined(KERN_MSGMAX) || (defined(HAVE_DECL_KERN_MSGMAX) && HAVE_DECL_KERN_MSGMAX)
+	XLAT(KERN_MSGMAX),
+#endif
+#if defined(KERN_MSGMNB) || (defined(HAVE_DECL_KERN_MSGMNB) && HAVE_DECL_KERN_MSGMNB)
+	XLAT(KERN_MSGMNB),
+#endif
+#if defined(KERN_MSGPOOL) || (defined(HAVE_DECL_KERN_MSGPOOL) && HAVE_DECL_KERN_MSGPOOL)
+	XLAT(KERN_MSGPOOL),
+#endif
+#if defined(KERN_SYSRQ) || (defined(HAVE_DECL_KERN_SYSRQ) && HAVE_DECL_KERN_SYSRQ)
+	XLAT(KERN_SYSRQ),
+#endif
+#if defined(KERN_MAX_THREADS) || (defined(HAVE_DECL_KERN_MAX_THREADS) && HAVE_DECL_KERN_MAX_THREADS)
+	XLAT(KERN_MAX_THREADS),
+#endif
+#if defined(KERN_RANDOM) || (defined(HAVE_DECL_KERN_RANDOM) && HAVE_DECL_KERN_RANDOM)
+	XLAT(KERN_RANDOM),
+#endif
+#if defined(KERN_SHMALL) || (defined(HAVE_DECL_KERN_SHMALL) && HAVE_DECL_KERN_SHMALL)
+	XLAT(KERN_SHMALL),
+#endif
+#if defined(KERN_MSGMNI) || (defined(HAVE_DECL_KERN_MSGMNI) && HAVE_DECL_KERN_MSGMNI)
+	XLAT(KERN_MSGMNI),
+#endif
+#if defined(KERN_SEM) || (defined(HAVE_DECL_KERN_SEM) && HAVE_DECL_KERN_SEM)
+	XLAT(KERN_SEM),
+#endif
+#if defined(KERN_SPARC_STOP_A) || (defined(HAVE_DECL_KERN_SPARC_STOP_A) && HAVE_DECL_KERN_SPARC_STOP_A)
+	XLAT(KERN_SPARC_STOP_A),
+#endif
+#if defined(KERN_SHMMNI) || (defined(HAVE_DECL_KERN_SHMMNI) && HAVE_DECL_KERN_SHMMNI)
+	XLAT(KERN_SHMMNI),
+#endif
+#if defined(KERN_OVERFLOWUID) || (defined(HAVE_DECL_KERN_OVERFLOWUID) && HAVE_DECL_KERN_OVERFLOWUID)
+	XLAT(KERN_OVERFLOWUID),
+#endif
+#if defined(KERN_OVERFLOWGID) || (defined(HAVE_DECL_KERN_OVERFLOWGID) && HAVE_DECL_KERN_OVERFLOWGID)
+	XLAT(KERN_OVERFLOWGID),
+#endif
+#if defined(KERN_SHMPATH) || (defined(HAVE_DECL_KERN_SHMPATH) && HAVE_DECL_KERN_SHMPATH)
+	XLAT(KERN_SHMPATH),
+#endif
+#if defined(KERN_HOTPLUG) || (defined(HAVE_DECL_KERN_HOTPLUG) && HAVE_DECL_KERN_HOTPLUG)
+	XLAT(KERN_HOTPLUG),
+#endif
+#if defined(KERN_IEEE_EMULATION_WARNINGS) || (defined(HAVE_DECL_KERN_IEEE_EMULATION_WARNINGS) && HAVE_DECL_KERN_IEEE_EMULATION_WARNINGS)
+	XLAT(KERN_IEEE_EMULATION_WARNINGS),
+#endif
+#if defined(KERN_S390_USER_DEBUG_LOGGING) || (defined(HAVE_DECL_KERN_S390_USER_DEBUG_LOGGING) && HAVE_DECL_KERN_S390_USER_DEBUG_LOGGING)
+	XLAT(KERN_S390_USER_DEBUG_LOGGING),
+#endif
+#if defined(KERN_CORE_USES_PID) || (defined(HAVE_DECL_KERN_CORE_USES_PID) && HAVE_DECL_KERN_CORE_USES_PID)
+	XLAT(KERN_CORE_USES_PID),
+#endif
+#if defined(KERN_TAINTED) || (defined(HAVE_DECL_KERN_TAINTED) && HAVE_DECL_KERN_TAINTED)
+	XLAT(KERN_TAINTED),
+#endif
+#if defined(KERN_CADPID) || (defined(HAVE_DECL_KERN_CADPID) && HAVE_DECL_KERN_CADPID)
+	XLAT(KERN_CADPID),
+#endif
+#if defined(KERN_PIDMAX) || (defined(HAVE_DECL_KERN_PIDMAX) && HAVE_DECL_KERN_PIDMAX)
+	XLAT(KERN_PIDMAX),
+#endif
+#if defined(KERN_CORE_PATTERN) || (defined(HAVE_DECL_KERN_CORE_PATTERN) && HAVE_DECL_KERN_CORE_PATTERN)
+	XLAT(KERN_CORE_PATTERN),
+#endif
+#if defined(KERN_PANIC_ON_OOPS) || (defined(HAVE_DECL_KERN_PANIC_ON_OOPS) && HAVE_DECL_KERN_PANIC_ON_OOPS)
+	XLAT(KERN_PANIC_ON_OOPS),
+#endif
+#if defined(KERN_HPPA_PWRSW) || (defined(HAVE_DECL_KERN_HPPA_PWRSW) && HAVE_DECL_KERN_HPPA_PWRSW)
+	XLAT(KERN_HPPA_PWRSW),
+#endif
+#if defined(KERN_HPPA_UNALIGNED) || (defined(HAVE_DECL_KERN_HPPA_UNALIGNED) && HAVE_DECL_KERN_HPPA_UNALIGNED)
+	XLAT(KERN_HPPA_UNALIGNED),
+#endif
+#if defined(KERN_PRINTK_RATELIMIT) || (defined(HAVE_DECL_KERN_PRINTK_RATELIMIT) && HAVE_DECL_KERN_PRINTK_RATELIMIT)
+	XLAT(KERN_PRINTK_RATELIMIT),
+#endif
+#if defined(KERN_PRINTK_RATELIMIT_BURST) || (defined(HAVE_DECL_KERN_PRINTK_RATELIMIT_BURST) && HAVE_DECL_KERN_PRINTK_RATELIMIT_BURST)
+	XLAT(KERN_PRINTK_RATELIMIT_BURST),
+#endif
+#if defined(KERN_PTY) || (defined(HAVE_DECL_KERN_PTY) && HAVE_DECL_KERN_PTY)
+	XLAT(KERN_PTY),
+#endif
+#if defined(KERN_NGROUPS_MAX) || (defined(HAVE_DECL_KERN_NGROUPS_MAX) && HAVE_DECL_KERN_NGROUPS_MAX)
+	XLAT(KERN_NGROUPS_MAX),
+#endif
+#if defined(KERN_SPARC_SCONS_PWROFF) || (defined(HAVE_DECL_KERN_SPARC_SCONS_PWROFF) && HAVE_DECL_KERN_SPARC_SCONS_PWROFF)
+	XLAT(KERN_SPARC_SCONS_PWROFF),
+#endif
+#if defined(KERN_HZ_TIMER) || (defined(HAVE_DECL_KERN_HZ_TIMER) && HAVE_DECL_KERN_HZ_TIMER)
+	XLAT(KERN_HZ_TIMER),
+#endif
+#if defined(KERN_UNKNOWN_NMI_PANIC) || (defined(HAVE_DECL_KERN_UNKNOWN_NMI_PANIC) && HAVE_DECL_KERN_UNKNOWN_NMI_PANIC)
+	XLAT(KERN_UNKNOWN_NMI_PANIC),
+#endif
+#if defined(KERN_BOOTLOADER_TYPE) || (defined(HAVE_DECL_KERN_BOOTLOADER_TYPE) && HAVE_DECL_KERN_BOOTLOADER_TYPE)
+	XLAT(KERN_BOOTLOADER_TYPE),
+#endif
+#if defined(KERN_RANDOMIZE) || (defined(HAVE_DECL_KERN_RANDOMIZE) && HAVE_DECL_KERN_RANDOMIZE)
+	XLAT(KERN_RANDOMIZE),
+#endif
+#if defined(KERN_SETUID_DUMPABLE) || (defined(HAVE_DECL_KERN_SETUID_DUMPABLE) && HAVE_DECL_KERN_SETUID_DUMPABLE)
+	XLAT(KERN_SETUID_DUMPABLE),
+#endif
+#if defined(KERN_SPIN_RETRY) || (defined(HAVE_DECL_KERN_SPIN_RETRY) && HAVE_DECL_KERN_SPIN_RETRY)
+	XLAT(KERN_SPIN_RETRY),
+#endif
+#if defined(KERN_ACPI_VIDEO_FLAGS) || (defined(HAVE_DECL_KERN_ACPI_VIDEO_FLAGS) && HAVE_DECL_KERN_ACPI_VIDEO_FLAGS)
+	XLAT(KERN_ACPI_VIDEO_FLAGS),
+#endif
+#if defined(KERN_IA64_UNALIGNED) || (defined(HAVE_DECL_KERN_IA64_UNALIGNED) && HAVE_DECL_KERN_IA64_UNALIGNED)
+	XLAT(KERN_IA64_UNALIGNED),
+#endif
+#if defined(KERN_COMPAT_LOG) || (defined(HAVE_DECL_KERN_COMPAT_LOG) && HAVE_DECL_KERN_COMPAT_LOG)
+	XLAT(KERN_COMPAT_LOG),
+#endif
+#if defined(KERN_MAX_LOCK_DEPTH) || (defined(HAVE_DECL_KERN_MAX_LOCK_DEPTH) && HAVE_DECL_KERN_MAX_LOCK_DEPTH)
+	XLAT(KERN_MAX_LOCK_DEPTH),
+#endif
+#if defined(KERN_NMI_WATCHDOG) || (defined(HAVE_DECL_KERN_NMI_WATCHDOG) && HAVE_DECL_KERN_NMI_WATCHDOG)
+	XLAT(KERN_NMI_WATCHDOG),
+#endif
+#if defined(KERN_PANIC_ON_NMI) || (defined(HAVE_DECL_KERN_PANIC_ON_NMI) && HAVE_DECL_KERN_PANIC_ON_NMI)
+	XLAT(KERN_PANIC_ON_NMI),
+#endif
+	XLAT_END
+};
diff --git a/xlat/sysctl_net.h b/xlat/sysctl_net.h
new file mode 100644
index 0000000..675c4bd
--- /dev/null
+++ b/xlat/sysctl_net.h
@@ -0,0 +1,68 @@
+/* Generated by ./xlat/gen.sh from ./xlat/sysctl_net.in; do not edit. */
+
+static const struct xlat sysctl_net[] = {
+#if defined(NET_CORE) || (defined(HAVE_DECL_NET_CORE) && HAVE_DECL_NET_CORE)
+	XLAT(NET_CORE),
+#endif
+#if defined(NET_ETHER) || (defined(HAVE_DECL_NET_ETHER) && HAVE_DECL_NET_ETHER)
+	XLAT(NET_ETHER),
+#endif
+#if defined(NET_802) || (defined(HAVE_DECL_NET_802) && HAVE_DECL_NET_802)
+	XLAT(NET_802),
+#endif
+#if defined(NET_UNIX) || (defined(HAVE_DECL_NET_UNIX) && HAVE_DECL_NET_UNIX)
+	XLAT(NET_UNIX),
+#endif
+#if defined(NET_IPV4) || (defined(HAVE_DECL_NET_IPV4) && HAVE_DECL_NET_IPV4)
+	XLAT(NET_IPV4),
+#endif
+#if defined(NET_IPX) || (defined(HAVE_DECL_NET_IPX) && HAVE_DECL_NET_IPX)
+	XLAT(NET_IPX),
+#endif
+#if defined(NET_ATALK) || (defined(HAVE_DECL_NET_ATALK) && HAVE_DECL_NET_ATALK)
+	XLAT(NET_ATALK),
+#endif
+#if defined(NET_NETROM) || (defined(HAVE_DECL_NET_NETROM) && HAVE_DECL_NET_NETROM)
+	XLAT(NET_NETROM),
+#endif
+#if defined(NET_AX25) || (defined(HAVE_DECL_NET_AX25) && HAVE_DECL_NET_AX25)
+	XLAT(NET_AX25),
+#endif
+#if defined(NET_BRIDGE) || (defined(HAVE_DECL_NET_BRIDGE) && HAVE_DECL_NET_BRIDGE)
+	XLAT(NET_BRIDGE),
+#endif
+#if defined(NET_ROSE) || (defined(HAVE_DECL_NET_ROSE) && HAVE_DECL_NET_ROSE)
+	XLAT(NET_ROSE),
+#endif
+#if defined(NET_IPV6) || (defined(HAVE_DECL_NET_IPV6) && HAVE_DECL_NET_IPV6)
+	XLAT(NET_IPV6),
+#endif
+#if defined(NET_X25) || (defined(HAVE_DECL_NET_X25) && HAVE_DECL_NET_X25)
+	XLAT(NET_X25),
+#endif
+#if defined(NET_TR) || (defined(HAVE_DECL_NET_TR) && HAVE_DECL_NET_TR)
+	XLAT(NET_TR),
+#endif
+#if defined(NET_DECNET) || (defined(HAVE_DECL_NET_DECNET) && HAVE_DECL_NET_DECNET)
+	XLAT(NET_DECNET),
+#endif
+#if defined(NET_ECONET) || (defined(HAVE_DECL_NET_ECONET) && HAVE_DECL_NET_ECONET)
+	XLAT(NET_ECONET),
+#endif
+#if defined(NET_SCTP) || (defined(HAVE_DECL_NET_SCTP) && HAVE_DECL_NET_SCTP)
+	XLAT(NET_SCTP),
+#endif
+#if defined(NET_LLC) || (defined(HAVE_DECL_NET_LLC) && HAVE_DECL_NET_LLC)
+	XLAT(NET_LLC),
+#endif
+#if defined(NET_NETFILTER) || (defined(HAVE_DECL_NET_NETFILTER) && HAVE_DECL_NET_NETFILTER)
+	XLAT(NET_NETFILTER),
+#endif
+#if defined(NET_DCCP) || (defined(HAVE_DECL_NET_DCCP) && HAVE_DECL_NET_DCCP)
+	XLAT(NET_DCCP),
+#endif
+#if defined(NET_IRDA) || (defined(HAVE_DECL_NET_IRDA) && HAVE_DECL_NET_IRDA)
+	XLAT(NET_IRDA),
+#endif
+	XLAT_END
+};
diff --git a/xlat/sysctl_net_core.h b/xlat/sysctl_net_core.h
new file mode 100644
index 0000000..5a5d627
--- /dev/null
+++ b/xlat/sysctl_net_core.h
@@ -0,0 +1,71 @@
+/* Generated by ./xlat/gen.sh from ./xlat/sysctl_net_core.in; do not edit. */
+
+static const struct xlat sysctl_net_core[] = {
+#if defined(NET_CORE_WMEM_MAX) || (defined(HAVE_DECL_NET_CORE_WMEM_MAX) && HAVE_DECL_NET_CORE_WMEM_MAX)
+	XLAT(NET_CORE_WMEM_MAX),
+#endif
+#if defined(NET_CORE_RMEM_MAX) || (defined(HAVE_DECL_NET_CORE_RMEM_MAX) && HAVE_DECL_NET_CORE_RMEM_MAX)
+	XLAT(NET_CORE_RMEM_MAX),
+#endif
+#if defined(NET_CORE_WMEM_DEFAULT) || (defined(HAVE_DECL_NET_CORE_WMEM_DEFAULT) && HAVE_DECL_NET_CORE_WMEM_DEFAULT)
+	XLAT(NET_CORE_WMEM_DEFAULT),
+#endif
+#if defined(NET_CORE_RMEM_DEFAULT) || (defined(HAVE_DECL_NET_CORE_RMEM_DEFAULT) && HAVE_DECL_NET_CORE_RMEM_DEFAULT)
+	XLAT(NET_CORE_RMEM_DEFAULT),
+#endif
+#if defined(NET_CORE_DESTROY_DELAY) || (defined(HAVE_DECL_NET_CORE_DESTROY_DELAY) && HAVE_DECL_NET_CORE_DESTROY_DELAY)
+	XLAT(NET_CORE_DESTROY_DELAY),
+#endif
+#if defined(NET_CORE_MAX_BACKLOG) || (defined(HAVE_DECL_NET_CORE_MAX_BACKLOG) && HAVE_DECL_NET_CORE_MAX_BACKLOG)
+	XLAT(NET_CORE_MAX_BACKLOG),
+#endif
+#if defined(NET_CORE_FASTROUTE) || (defined(HAVE_DECL_NET_CORE_FASTROUTE) && HAVE_DECL_NET_CORE_FASTROUTE)
+	XLAT(NET_CORE_FASTROUTE),
+#endif
+#if defined(NET_CORE_MSG_COST) || (defined(HAVE_DECL_NET_CORE_MSG_COST) && HAVE_DECL_NET_CORE_MSG_COST)
+	XLAT(NET_CORE_MSG_COST),
+#endif
+#if defined(NET_CORE_MSG_BURST) || (defined(HAVE_DECL_NET_CORE_MSG_BURST) && HAVE_DECL_NET_CORE_MSG_BURST)
+	XLAT(NET_CORE_MSG_BURST),
+#endif
+#if defined(NET_CORE_OPTMEM_MAX) || (defined(HAVE_DECL_NET_CORE_OPTMEM_MAX) && HAVE_DECL_NET_CORE_OPTMEM_MAX)
+	XLAT(NET_CORE_OPTMEM_MAX),
+#endif
+#if defined(NET_CORE_HOT_LIST_LENGTH) || (defined(HAVE_DECL_NET_CORE_HOT_LIST_LENGTH) && HAVE_DECL_NET_CORE_HOT_LIST_LENGTH)
+	XLAT(NET_CORE_HOT_LIST_LENGTH),
+#endif
+#if defined(NET_CORE_DIVERT_VERSION) || (defined(HAVE_DECL_NET_CORE_DIVERT_VERSION) && HAVE_DECL_NET_CORE_DIVERT_VERSION)
+	XLAT(NET_CORE_DIVERT_VERSION),
+#endif
+#if defined(NET_CORE_NO_CONG_THRESH) || (defined(HAVE_DECL_NET_CORE_NO_CONG_THRESH) && HAVE_DECL_NET_CORE_NO_CONG_THRESH)
+	XLAT(NET_CORE_NO_CONG_THRESH),
+#endif
+#if defined(NET_CORE_NO_CONG) || (defined(HAVE_DECL_NET_CORE_NO_CONG) && HAVE_DECL_NET_CORE_NO_CONG)
+	XLAT(NET_CORE_NO_CONG),
+#endif
+#if defined(NET_CORE_LO_CONG) || (defined(HAVE_DECL_NET_CORE_LO_CONG) && HAVE_DECL_NET_CORE_LO_CONG)
+	XLAT(NET_CORE_LO_CONG),
+#endif
+#if defined(NET_CORE_MOD_CONG) || (defined(HAVE_DECL_NET_CORE_MOD_CONG) && HAVE_DECL_NET_CORE_MOD_CONG)
+	XLAT(NET_CORE_MOD_CONG),
+#endif
+#if defined(NET_CORE_DEV_WEIGHT) || (defined(HAVE_DECL_NET_CORE_DEV_WEIGHT) && HAVE_DECL_NET_CORE_DEV_WEIGHT)
+	XLAT(NET_CORE_DEV_WEIGHT),
+#endif
+#if defined(NET_CORE_SOMAXCONN) || (defined(HAVE_DECL_NET_CORE_SOMAXCONN) && HAVE_DECL_NET_CORE_SOMAXCONN)
+	XLAT(NET_CORE_SOMAXCONN),
+#endif
+#if defined(NET_CORE_BUDGET) || (defined(HAVE_DECL_NET_CORE_BUDGET) && HAVE_DECL_NET_CORE_BUDGET)
+	XLAT(NET_CORE_BUDGET),
+#endif
+#if defined(NET_CORE_AEVENT_ETIME) || (defined(HAVE_DECL_NET_CORE_AEVENT_ETIME) && HAVE_DECL_NET_CORE_AEVENT_ETIME)
+	XLAT(NET_CORE_AEVENT_ETIME),
+#endif
+#if defined(NET_CORE_AEVENT_RSEQTH) || (defined(HAVE_DECL_NET_CORE_AEVENT_RSEQTH) && HAVE_DECL_NET_CORE_AEVENT_RSEQTH)
+	XLAT(NET_CORE_AEVENT_RSEQTH),
+#endif
+#if defined(NET_CORE_WARNINGS) || (defined(HAVE_DECL_NET_CORE_WARNINGS) && HAVE_DECL_NET_CORE_WARNINGS)
+	XLAT(NET_CORE_WARNINGS),
+#endif
+	XLAT_END
+};
diff --git a/xlat/sysctl_net_ipv4.h b/xlat/sysctl_net_ipv4.h
new file mode 100644
index 0000000..addd87b
--- /dev/null
+++ b/xlat/sysctl_net_ipv4.h
@@ -0,0 +1,281 @@
+/* Generated by ./xlat/gen.sh from ./xlat/sysctl_net_ipv4.in; do not edit. */
+
+static const struct xlat sysctl_net_ipv4[] = {
+#if defined(NET_IPV4_FORWARD) || (defined(HAVE_DECL_NET_IPV4_FORWARD) && HAVE_DECL_NET_IPV4_FORWARD)
+	XLAT(NET_IPV4_FORWARD),
+#endif
+#if defined(NET_IPV4_DYNADDR) || (defined(HAVE_DECL_NET_IPV4_DYNADDR) && HAVE_DECL_NET_IPV4_DYNADDR)
+	XLAT(NET_IPV4_DYNADDR),
+#endif
+#if defined(NET_IPV4_CONF) || (defined(HAVE_DECL_NET_IPV4_CONF) && HAVE_DECL_NET_IPV4_CONF)
+	XLAT(NET_IPV4_CONF),
+#endif
+#if defined(NET_IPV4_NEIGH) || (defined(HAVE_DECL_NET_IPV4_NEIGH) && HAVE_DECL_NET_IPV4_NEIGH)
+	XLAT(NET_IPV4_NEIGH),
+#endif
+#if defined(NET_IPV4_ROUTE) || (defined(HAVE_DECL_NET_IPV4_ROUTE) && HAVE_DECL_NET_IPV4_ROUTE)
+	XLAT(NET_IPV4_ROUTE),
+#endif
+#if defined(NET_IPV4_FIB_HASH) || (defined(HAVE_DECL_NET_IPV4_FIB_HASH) && HAVE_DECL_NET_IPV4_FIB_HASH)
+	XLAT(NET_IPV4_FIB_HASH),
+#endif
+#if defined(NET_IPV4_NETFILTER) || (defined(HAVE_DECL_NET_IPV4_NETFILTER) && HAVE_DECL_NET_IPV4_NETFILTER)
+	XLAT(NET_IPV4_NETFILTER),
+#endif
+#if defined(NET_IPV4_TCP_TIMESTAMPS) || (defined(HAVE_DECL_NET_IPV4_TCP_TIMESTAMPS) && HAVE_DECL_NET_IPV4_TCP_TIMESTAMPS)
+	XLAT(NET_IPV4_TCP_TIMESTAMPS),
+#endif
+#if defined(NET_IPV4_TCP_WINDOW_SCALING) || (defined(HAVE_DECL_NET_IPV4_TCP_WINDOW_SCALING) && HAVE_DECL_NET_IPV4_TCP_WINDOW_SCALING)
+	XLAT(NET_IPV4_TCP_WINDOW_SCALING),
+#endif
+#if defined(NET_IPV4_TCP_SACK) || (defined(HAVE_DECL_NET_IPV4_TCP_SACK) && HAVE_DECL_NET_IPV4_TCP_SACK)
+	XLAT(NET_IPV4_TCP_SACK),
+#endif
+#if defined(NET_IPV4_TCP_RETRANS_COLLAPSE) || (defined(HAVE_DECL_NET_IPV4_TCP_RETRANS_COLLAPSE) && HAVE_DECL_NET_IPV4_TCP_RETRANS_COLLAPSE)
+	XLAT(NET_IPV4_TCP_RETRANS_COLLAPSE),
+#endif
+#if defined(NET_IPV4_DEFAULT_TTL) || (defined(HAVE_DECL_NET_IPV4_DEFAULT_TTL) && HAVE_DECL_NET_IPV4_DEFAULT_TTL)
+	XLAT(NET_IPV4_DEFAULT_TTL),
+#endif
+#if defined(NET_IPV4_AUTOCONFIG) || (defined(HAVE_DECL_NET_IPV4_AUTOCONFIG) && HAVE_DECL_NET_IPV4_AUTOCONFIG)
+	XLAT(NET_IPV4_AUTOCONFIG),
+#endif
+#if defined(NET_IPV4_NO_PMTU_DISC) || (defined(HAVE_DECL_NET_IPV4_NO_PMTU_DISC) && HAVE_DECL_NET_IPV4_NO_PMTU_DISC)
+	XLAT(NET_IPV4_NO_PMTU_DISC),
+#endif
+#if defined(NET_IPV4_TCP_SYN_RETRIES) || (defined(HAVE_DECL_NET_IPV4_TCP_SYN_RETRIES) && HAVE_DECL_NET_IPV4_TCP_SYN_RETRIES)
+	XLAT(NET_IPV4_TCP_SYN_RETRIES),
+#endif
+#if defined(NET_IPV4_IPFRAG_HIGH_THRESH) || (defined(HAVE_DECL_NET_IPV4_IPFRAG_HIGH_THRESH) && HAVE_DECL_NET_IPV4_IPFRAG_HIGH_THRESH)
+	XLAT(NET_IPV4_IPFRAG_HIGH_THRESH),
+#endif
+#if defined(NET_IPV4_IPFRAG_LOW_THRESH) || (defined(HAVE_DECL_NET_IPV4_IPFRAG_LOW_THRESH) && HAVE_DECL_NET_IPV4_IPFRAG_LOW_THRESH)
+	XLAT(NET_IPV4_IPFRAG_LOW_THRESH),
+#endif
+#if defined(NET_IPV4_IPFRAG_TIME) || (defined(HAVE_DECL_NET_IPV4_IPFRAG_TIME) && HAVE_DECL_NET_IPV4_IPFRAG_TIME)
+	XLAT(NET_IPV4_IPFRAG_TIME),
+#endif
+#if defined(NET_IPV4_TCP_MAX_KA_PROBES) || (defined(HAVE_DECL_NET_IPV4_TCP_MAX_KA_PROBES) && HAVE_DECL_NET_IPV4_TCP_MAX_KA_PROBES)
+	XLAT(NET_IPV4_TCP_MAX_KA_PROBES),
+#endif
+#if defined(NET_IPV4_TCP_KEEPALIVE_TIME) || (defined(HAVE_DECL_NET_IPV4_TCP_KEEPALIVE_TIME) && HAVE_DECL_NET_IPV4_TCP_KEEPALIVE_TIME)
+	XLAT(NET_IPV4_TCP_KEEPALIVE_TIME),
+#endif
+#if defined(NET_IPV4_TCP_KEEPALIVE_PROBES) || (defined(HAVE_DECL_NET_IPV4_TCP_KEEPALIVE_PROBES) && HAVE_DECL_NET_IPV4_TCP_KEEPALIVE_PROBES)
+	XLAT(NET_IPV4_TCP_KEEPALIVE_PROBES),
+#endif
+#if defined(NET_IPV4_TCP_RETRIES1) || (defined(HAVE_DECL_NET_IPV4_TCP_RETRIES1) && HAVE_DECL_NET_IPV4_TCP_RETRIES1)
+	XLAT(NET_IPV4_TCP_RETRIES1),
+#endif
+#if defined(NET_IPV4_TCP_RETRIES2) || (defined(HAVE_DECL_NET_IPV4_TCP_RETRIES2) && HAVE_DECL_NET_IPV4_TCP_RETRIES2)
+	XLAT(NET_IPV4_TCP_RETRIES2),
+#endif
+#if defined(NET_IPV4_TCP_FIN_TIMEOUT) || (defined(HAVE_DECL_NET_IPV4_TCP_FIN_TIMEOUT) && HAVE_DECL_NET_IPV4_TCP_FIN_TIMEOUT)
+	XLAT(NET_IPV4_TCP_FIN_TIMEOUT),
+#endif
+#if defined(NET_IPV4_IP_MASQ_DEBUG) || (defined(HAVE_DECL_NET_IPV4_IP_MASQ_DEBUG) && HAVE_DECL_NET_IPV4_IP_MASQ_DEBUG)
+	XLAT(NET_IPV4_IP_MASQ_DEBUG),
+#endif
+#if defined(NET_TCP_SYNCOOKIES) || (defined(HAVE_DECL_NET_TCP_SYNCOOKIES) && HAVE_DECL_NET_TCP_SYNCOOKIES)
+	XLAT(NET_TCP_SYNCOOKIES),
+#endif
+#if defined(NET_TCP_STDURG) || (defined(HAVE_DECL_NET_TCP_STDURG) && HAVE_DECL_NET_TCP_STDURG)
+	XLAT(NET_TCP_STDURG),
+#endif
+#if defined(NET_TCP_RFC1337) || (defined(HAVE_DECL_NET_TCP_RFC1337) && HAVE_DECL_NET_TCP_RFC1337)
+	XLAT(NET_TCP_RFC1337),
+#endif
+#if defined(NET_TCP_SYN_TAILDROP) || (defined(HAVE_DECL_NET_TCP_SYN_TAILDROP) && HAVE_DECL_NET_TCP_SYN_TAILDROP)
+	XLAT(NET_TCP_SYN_TAILDROP),
+#endif
+#if defined(NET_TCP_MAX_SYN_BACKLOG) || (defined(HAVE_DECL_NET_TCP_MAX_SYN_BACKLOG) && HAVE_DECL_NET_TCP_MAX_SYN_BACKLOG)
+	XLAT(NET_TCP_MAX_SYN_BACKLOG),
+#endif
+#if defined(NET_IPV4_LOCAL_PORT_RANGE) || (defined(HAVE_DECL_NET_IPV4_LOCAL_PORT_RANGE) && HAVE_DECL_NET_IPV4_LOCAL_PORT_RANGE)
+	XLAT(NET_IPV4_LOCAL_PORT_RANGE),
+#endif
+#if defined(NET_IPV4_ICMP_ECHO_IGNORE_ALL) || (defined(HAVE_DECL_NET_IPV4_ICMP_ECHO_IGNORE_ALL) && HAVE_DECL_NET_IPV4_ICMP_ECHO_IGNORE_ALL)
+	XLAT(NET_IPV4_ICMP_ECHO_IGNORE_ALL),
+#endif
+#if defined(NET_IPV4_ICMP_ECHO_IGNORE_BROADCASTS) || (defined(HAVE_DECL_NET_IPV4_ICMP_ECHO_IGNORE_BROADCASTS) && HAVE_DECL_NET_IPV4_ICMP_ECHO_IGNORE_BROADCASTS)
+	XLAT(NET_IPV4_ICMP_ECHO_IGNORE_BROADCASTS),
+#endif
+#if defined(NET_IPV4_ICMP_SOURCEQUENCH_RATE) || (defined(HAVE_DECL_NET_IPV4_ICMP_SOURCEQUENCH_RATE) && HAVE_DECL_NET_IPV4_ICMP_SOURCEQUENCH_RATE)
+	XLAT(NET_IPV4_ICMP_SOURCEQUENCH_RATE),
+#endif
+#if defined(NET_IPV4_ICMP_DESTUNREACH_RATE) || (defined(HAVE_DECL_NET_IPV4_ICMP_DESTUNREACH_RATE) && HAVE_DECL_NET_IPV4_ICMP_DESTUNREACH_RATE)
+	XLAT(NET_IPV4_ICMP_DESTUNREACH_RATE),
+#endif
+#if defined(NET_IPV4_ICMP_TIMEEXCEED_RATE) || (defined(HAVE_DECL_NET_IPV4_ICMP_TIMEEXCEED_RATE) && HAVE_DECL_NET_IPV4_ICMP_TIMEEXCEED_RATE)
+	XLAT(NET_IPV4_ICMP_TIMEEXCEED_RATE),
+#endif
+#if defined(NET_IPV4_ICMP_PARAMPROB_RATE) || (defined(HAVE_DECL_NET_IPV4_ICMP_PARAMPROB_RATE) && HAVE_DECL_NET_IPV4_ICMP_PARAMPROB_RATE)
+	XLAT(NET_IPV4_ICMP_PARAMPROB_RATE),
+#endif
+#if defined(NET_IPV4_ICMP_ECHOREPLY_RATE) || (defined(HAVE_DECL_NET_IPV4_ICMP_ECHOREPLY_RATE) && HAVE_DECL_NET_IPV4_ICMP_ECHOREPLY_RATE)
+	XLAT(NET_IPV4_ICMP_ECHOREPLY_RATE),
+#endif
+#if defined(NET_IPV4_ICMP_IGNORE_BOGUS_ERROR_RESPONSES) || (defined(HAVE_DECL_NET_IPV4_ICMP_IGNORE_BOGUS_ERROR_RESPONSES) && HAVE_DECL_NET_IPV4_ICMP_IGNORE_BOGUS_ERROR_RESPONSES)
+	XLAT(NET_IPV4_ICMP_IGNORE_BOGUS_ERROR_RESPONSES),
+#endif
+#if defined(NET_IPV4_IGMP_MAX_MEMBERSHIPS) || (defined(HAVE_DECL_NET_IPV4_IGMP_MAX_MEMBERSHIPS) && HAVE_DECL_NET_IPV4_IGMP_MAX_MEMBERSHIPS)
+	XLAT(NET_IPV4_IGMP_MAX_MEMBERSHIPS),
+#endif
+#if defined(NET_TCP_TW_RECYCLE) || (defined(HAVE_DECL_NET_TCP_TW_RECYCLE) && HAVE_DECL_NET_TCP_TW_RECYCLE)
+	XLAT(NET_TCP_TW_RECYCLE),
+#endif
+#if defined(NET_IPV4_ALWAYS_DEFRAG) || (defined(HAVE_DECL_NET_IPV4_ALWAYS_DEFRAG) && HAVE_DECL_NET_IPV4_ALWAYS_DEFRAG)
+	XLAT(NET_IPV4_ALWAYS_DEFRAG),
+#endif
+#if defined(NET_IPV4_TCP_KEEPALIVE_INTVL) || (defined(HAVE_DECL_NET_IPV4_TCP_KEEPALIVE_INTVL) && HAVE_DECL_NET_IPV4_TCP_KEEPALIVE_INTVL)
+	XLAT(NET_IPV4_TCP_KEEPALIVE_INTVL),
+#endif
+#if defined(NET_IPV4_INET_PEER_THRESHOLD) || (defined(HAVE_DECL_NET_IPV4_INET_PEER_THRESHOLD) && HAVE_DECL_NET_IPV4_INET_PEER_THRESHOLD)
+	XLAT(NET_IPV4_INET_PEER_THRESHOLD),
+#endif
+#if defined(NET_IPV4_INET_PEER_MINTTL) || (defined(HAVE_DECL_NET_IPV4_INET_PEER_MINTTL) && HAVE_DECL_NET_IPV4_INET_PEER_MINTTL)
+	XLAT(NET_IPV4_INET_PEER_MINTTL),
+#endif
+#if defined(NET_IPV4_INET_PEER_MAXTTL) || (defined(HAVE_DECL_NET_IPV4_INET_PEER_MAXTTL) && HAVE_DECL_NET_IPV4_INET_PEER_MAXTTL)
+	XLAT(NET_IPV4_INET_PEER_MAXTTL),
+#endif
+#if defined(NET_IPV4_INET_PEER_GC_MINTIME) || (defined(HAVE_DECL_NET_IPV4_INET_PEER_GC_MINTIME) && HAVE_DECL_NET_IPV4_INET_PEER_GC_MINTIME)
+	XLAT(NET_IPV4_INET_PEER_GC_MINTIME),
+#endif
+#if defined(NET_IPV4_INET_PEER_GC_MAXTIME) || (defined(HAVE_DECL_NET_IPV4_INET_PEER_GC_MAXTIME) && HAVE_DECL_NET_IPV4_INET_PEER_GC_MAXTIME)
+	XLAT(NET_IPV4_INET_PEER_GC_MAXTIME),
+#endif
+#if defined(NET_TCP_ORPHAN_RETRIES) || (defined(HAVE_DECL_NET_TCP_ORPHAN_RETRIES) && HAVE_DECL_NET_TCP_ORPHAN_RETRIES)
+	XLAT(NET_TCP_ORPHAN_RETRIES),
+#endif
+#if defined(NET_TCP_ABORT_ON_OVERFLOW) || (defined(HAVE_DECL_NET_TCP_ABORT_ON_OVERFLOW) && HAVE_DECL_NET_TCP_ABORT_ON_OVERFLOW)
+	XLAT(NET_TCP_ABORT_ON_OVERFLOW),
+#endif
+#if defined(NET_TCP_SYNACK_RETRIES) || (defined(HAVE_DECL_NET_TCP_SYNACK_RETRIES) && HAVE_DECL_NET_TCP_SYNACK_RETRIES)
+	XLAT(NET_TCP_SYNACK_RETRIES),
+#endif
+#if defined(NET_TCP_MAX_ORPHANS) || (defined(HAVE_DECL_NET_TCP_MAX_ORPHANS) && HAVE_DECL_NET_TCP_MAX_ORPHANS)
+	XLAT(NET_TCP_MAX_ORPHANS),
+#endif
+#if defined(NET_TCP_MAX_TW_BUCKETS) || (defined(HAVE_DECL_NET_TCP_MAX_TW_BUCKETS) && HAVE_DECL_NET_TCP_MAX_TW_BUCKETS)
+	XLAT(NET_TCP_MAX_TW_BUCKETS),
+#endif
+#if defined(NET_TCP_FACK) || (defined(HAVE_DECL_NET_TCP_FACK) && HAVE_DECL_NET_TCP_FACK)
+	XLAT(NET_TCP_FACK),
+#endif
+#if defined(NET_TCP_REORDERING) || (defined(HAVE_DECL_NET_TCP_REORDERING) && HAVE_DECL_NET_TCP_REORDERING)
+	XLAT(NET_TCP_REORDERING),
+#endif
+#if defined(NET_TCP_ECN) || (defined(HAVE_DECL_NET_TCP_ECN) && HAVE_DECL_NET_TCP_ECN)
+	XLAT(NET_TCP_ECN),
+#endif
+#if defined(NET_TCP_DSACK) || (defined(HAVE_DECL_NET_TCP_DSACK) && HAVE_DECL_NET_TCP_DSACK)
+	XLAT(NET_TCP_DSACK),
+#endif
+#if defined(NET_TCP_MEM) || (defined(HAVE_DECL_NET_TCP_MEM) && HAVE_DECL_NET_TCP_MEM)
+	XLAT(NET_TCP_MEM),
+#endif
+#if defined(NET_TCP_WMEM) || (defined(HAVE_DECL_NET_TCP_WMEM) && HAVE_DECL_NET_TCP_WMEM)
+	XLAT(NET_TCP_WMEM),
+#endif
+#if defined(NET_TCP_RMEM) || (defined(HAVE_DECL_NET_TCP_RMEM) && HAVE_DECL_NET_TCP_RMEM)
+	XLAT(NET_TCP_RMEM),
+#endif
+#if defined(NET_TCP_APP_WIN) || (defined(HAVE_DECL_NET_TCP_APP_WIN) && HAVE_DECL_NET_TCP_APP_WIN)
+	XLAT(NET_TCP_APP_WIN),
+#endif
+#if defined(NET_TCP_ADV_WIN_SCALE) || (defined(HAVE_DECL_NET_TCP_ADV_WIN_SCALE) && HAVE_DECL_NET_TCP_ADV_WIN_SCALE)
+	XLAT(NET_TCP_ADV_WIN_SCALE),
+#endif
+#if defined(NET_IPV4_NONLOCAL_BIND) || (defined(HAVE_DECL_NET_IPV4_NONLOCAL_BIND) && HAVE_DECL_NET_IPV4_NONLOCAL_BIND)
+	XLAT(NET_IPV4_NONLOCAL_BIND),
+#endif
+#if defined(NET_IPV4_ICMP_RATELIMIT) || (defined(HAVE_DECL_NET_IPV4_ICMP_RATELIMIT) && HAVE_DECL_NET_IPV4_ICMP_RATELIMIT)
+	XLAT(NET_IPV4_ICMP_RATELIMIT),
+#endif
+#if defined(NET_IPV4_ICMP_RATEMASK) || (defined(HAVE_DECL_NET_IPV4_ICMP_RATEMASK) && HAVE_DECL_NET_IPV4_ICMP_RATEMASK)
+	XLAT(NET_IPV4_ICMP_RATEMASK),
+#endif
+#if defined(NET_TCP_TW_REUSE) || (defined(HAVE_DECL_NET_TCP_TW_REUSE) && HAVE_DECL_NET_TCP_TW_REUSE)
+	XLAT(NET_TCP_TW_REUSE),
+#endif
+#if defined(NET_TCP_FRTO) || (defined(HAVE_DECL_NET_TCP_FRTO) && HAVE_DECL_NET_TCP_FRTO)
+	XLAT(NET_TCP_FRTO),
+#endif
+#if defined(NET_TCP_LOW_LATENCY) || (defined(HAVE_DECL_NET_TCP_LOW_LATENCY) && HAVE_DECL_NET_TCP_LOW_LATENCY)
+	XLAT(NET_TCP_LOW_LATENCY),
+#endif
+#if defined(NET_IPV4_IPFRAG_SECRET_INTERVAL) || (defined(HAVE_DECL_NET_IPV4_IPFRAG_SECRET_INTERVAL) && HAVE_DECL_NET_IPV4_IPFRAG_SECRET_INTERVAL)
+	XLAT(NET_IPV4_IPFRAG_SECRET_INTERVAL),
+#endif
+#if defined(NET_IPV4_IGMP_MAX_MSF) || (defined(HAVE_DECL_NET_IPV4_IGMP_MAX_MSF) && HAVE_DECL_NET_IPV4_IGMP_MAX_MSF)
+	XLAT(NET_IPV4_IGMP_MAX_MSF),
+#endif
+#if defined(NET_TCP_NO_METRICS_SAVE) || (defined(HAVE_DECL_NET_TCP_NO_METRICS_SAVE) && HAVE_DECL_NET_TCP_NO_METRICS_SAVE)
+	XLAT(NET_TCP_NO_METRICS_SAVE),
+#endif
+#if defined(NET_TCP_DEFAULT_WIN_SCALE) || (defined(HAVE_DECL_NET_TCP_DEFAULT_WIN_SCALE) && HAVE_DECL_NET_TCP_DEFAULT_WIN_SCALE)
+	XLAT(NET_TCP_DEFAULT_WIN_SCALE),
+#endif
+#if defined(NET_TCP_MODERATE_RCVBUF) || (defined(HAVE_DECL_NET_TCP_MODERATE_RCVBUF) && HAVE_DECL_NET_TCP_MODERATE_RCVBUF)
+	XLAT(NET_TCP_MODERATE_RCVBUF),
+#endif
+#if defined(NET_TCP_TSO_WIN_DIVISOR) || (defined(HAVE_DECL_NET_TCP_TSO_WIN_DIVISOR) && HAVE_DECL_NET_TCP_TSO_WIN_DIVISOR)
+	XLAT(NET_TCP_TSO_WIN_DIVISOR),
+#endif
+#if defined(NET_TCP_BIC_BETA) || (defined(HAVE_DECL_NET_TCP_BIC_BETA) && HAVE_DECL_NET_TCP_BIC_BETA)
+	XLAT(NET_TCP_BIC_BETA),
+#endif
+#if defined(NET_IPV4_ICMP_ERRORS_USE_INBOUND_IFADDR) || (defined(HAVE_DECL_NET_IPV4_ICMP_ERRORS_USE_INBOUND_IFADDR) && HAVE_DECL_NET_IPV4_ICMP_ERRORS_USE_INBOUND_IFADDR)
+	XLAT(NET_IPV4_ICMP_ERRORS_USE_INBOUND_IFADDR),
+#endif
+#if defined(NET_TCP_CONG_CONTROL) || (defined(HAVE_DECL_NET_TCP_CONG_CONTROL) && HAVE_DECL_NET_TCP_CONG_CONTROL)
+	XLAT(NET_TCP_CONG_CONTROL),
+#endif
+#if defined(NET_TCP_ABC) || (defined(HAVE_DECL_NET_TCP_ABC) && HAVE_DECL_NET_TCP_ABC)
+	XLAT(NET_TCP_ABC),
+#endif
+#if defined(NET_IPV4_IPFRAG_MAX_DIST) || (defined(HAVE_DECL_NET_IPV4_IPFRAG_MAX_DIST) && HAVE_DECL_NET_IPV4_IPFRAG_MAX_DIST)
+	XLAT(NET_IPV4_IPFRAG_MAX_DIST),
+#endif
+#if defined(NET_TCP_MTU_PROBING) || (defined(HAVE_DECL_NET_TCP_MTU_PROBING) && HAVE_DECL_NET_TCP_MTU_PROBING)
+	XLAT(NET_TCP_MTU_PROBING),
+#endif
+#if defined(NET_TCP_BASE_MSS) || (defined(HAVE_DECL_NET_TCP_BASE_MSS) && HAVE_DECL_NET_TCP_BASE_MSS)
+	XLAT(NET_TCP_BASE_MSS),
+#endif
+#if defined(NET_IPV4_TCP_WORKAROUND_SIGNED_WINDOWS) || (defined(HAVE_DECL_NET_IPV4_TCP_WORKAROUND_SIGNED_WINDOWS) && HAVE_DECL_NET_IPV4_TCP_WORKAROUND_SIGNED_WINDOWS)
+	XLAT(NET_IPV4_TCP_WORKAROUND_SIGNED_WINDOWS),
+#endif
+#if defined(NET_TCP_DMA_COPYBREAK) || (defined(HAVE_DECL_NET_TCP_DMA_COPYBREAK) && HAVE_DECL_NET_TCP_DMA_COPYBREAK)
+	XLAT(NET_TCP_DMA_COPYBREAK),
+#endif
+#if defined(NET_TCP_SLOW_START_AFTER_IDLE) || (defined(HAVE_DECL_NET_TCP_SLOW_START_AFTER_IDLE) && HAVE_DECL_NET_TCP_SLOW_START_AFTER_IDLE)
+	XLAT(NET_TCP_SLOW_START_AFTER_IDLE),
+#endif
+#if defined(NET_CIPSOV4_CACHE_ENABLE) || (defined(HAVE_DECL_NET_CIPSOV4_CACHE_ENABLE) && HAVE_DECL_NET_CIPSOV4_CACHE_ENABLE)
+	XLAT(NET_CIPSOV4_CACHE_ENABLE),
+#endif
+#if defined(NET_CIPSOV4_CACHE_BUCKET_SIZE) || (defined(HAVE_DECL_NET_CIPSOV4_CACHE_BUCKET_SIZE) && HAVE_DECL_NET_CIPSOV4_CACHE_BUCKET_SIZE)
+	XLAT(NET_CIPSOV4_CACHE_BUCKET_SIZE),
+#endif
+#if defined(NET_CIPSOV4_RBM_OPTFMT) || (defined(HAVE_DECL_NET_CIPSOV4_RBM_OPTFMT) && HAVE_DECL_NET_CIPSOV4_RBM_OPTFMT)
+	XLAT(NET_CIPSOV4_RBM_OPTFMT),
+#endif
+#if defined(NET_CIPSOV4_RBM_STRICTVALID) || (defined(HAVE_DECL_NET_CIPSOV4_RBM_STRICTVALID) && HAVE_DECL_NET_CIPSOV4_RBM_STRICTVALID)
+	XLAT(NET_CIPSOV4_RBM_STRICTVALID),
+#endif
+#if defined(NET_TCP_AVAIL_CONG_CONTROL) || (defined(HAVE_DECL_NET_TCP_AVAIL_CONG_CONTROL) && HAVE_DECL_NET_TCP_AVAIL_CONG_CONTROL)
+	XLAT(NET_TCP_AVAIL_CONG_CONTROL),
+#endif
+#if defined(NET_TCP_ALLOWED_CONG_CONTROL) || (defined(HAVE_DECL_NET_TCP_ALLOWED_CONG_CONTROL) && HAVE_DECL_NET_TCP_ALLOWED_CONG_CONTROL)
+	XLAT(NET_TCP_ALLOWED_CONG_CONTROL),
+#endif
+#if defined(NET_TCP_MAX_SSTHRESH) || (defined(HAVE_DECL_NET_TCP_MAX_SSTHRESH) && HAVE_DECL_NET_TCP_MAX_SSTHRESH)
+	XLAT(NET_TCP_MAX_SSTHRESH),
+#endif
+#if defined(NET_TCP_FRTO_RESPONSE) || (defined(HAVE_DECL_NET_TCP_FRTO_RESPONSE) && HAVE_DECL_NET_TCP_FRTO_RESPONSE)
+	XLAT(NET_TCP_FRTO_RESPONSE),
+#endif
+	XLAT_END
+};
diff --git a/xlat/sysctl_net_ipv4_conf.h b/xlat/sysctl_net_ipv4_conf.h
new file mode 100644
index 0000000..dde6230
--- /dev/null
+++ b/xlat/sysctl_net_ipv4_conf.h
@@ -0,0 +1,71 @@
+/* Generated by ./xlat/gen.sh from ./xlat/sysctl_net_ipv4_conf.in; do not edit. */
+
+static const struct xlat sysctl_net_ipv4_conf[] = {
+#if defined(NET_IPV4_CONF_FORWARDING) || (defined(HAVE_DECL_NET_IPV4_CONF_FORWARDING) && HAVE_DECL_NET_IPV4_CONF_FORWARDING)
+	XLAT(NET_IPV4_CONF_FORWARDING),
+#endif
+#if defined(NET_IPV4_CONF_MC_FORWARDING) || (defined(HAVE_DECL_NET_IPV4_CONF_MC_FORWARDING) && HAVE_DECL_NET_IPV4_CONF_MC_FORWARDING)
+	XLAT(NET_IPV4_CONF_MC_FORWARDING),
+#endif
+#if defined(NET_IPV4_CONF_PROXY_ARP) || (defined(HAVE_DECL_NET_IPV4_CONF_PROXY_ARP) && HAVE_DECL_NET_IPV4_CONF_PROXY_ARP)
+	XLAT(NET_IPV4_CONF_PROXY_ARP),
+#endif
+#if defined(NET_IPV4_CONF_ACCEPT_REDIRECTS) || (defined(HAVE_DECL_NET_IPV4_CONF_ACCEPT_REDIRECTS) && HAVE_DECL_NET_IPV4_CONF_ACCEPT_REDIRECTS)
+	XLAT(NET_IPV4_CONF_ACCEPT_REDIRECTS),
+#endif
+#if defined(NET_IPV4_CONF_SECURE_REDIRECTS) || (defined(HAVE_DECL_NET_IPV4_CONF_SECURE_REDIRECTS) && HAVE_DECL_NET_IPV4_CONF_SECURE_REDIRECTS)
+	XLAT(NET_IPV4_CONF_SECURE_REDIRECTS),
+#endif
+#if defined(NET_IPV4_CONF_SEND_REDIRECTS) || (defined(HAVE_DECL_NET_IPV4_CONF_SEND_REDIRECTS) && HAVE_DECL_NET_IPV4_CONF_SEND_REDIRECTS)
+	XLAT(NET_IPV4_CONF_SEND_REDIRECTS),
+#endif
+#if defined(NET_IPV4_CONF_SHARED_MEDIA) || (defined(HAVE_DECL_NET_IPV4_CONF_SHARED_MEDIA) && HAVE_DECL_NET_IPV4_CONF_SHARED_MEDIA)
+	XLAT(NET_IPV4_CONF_SHARED_MEDIA),
+#endif
+#if defined(NET_IPV4_CONF_RP_FILTER) || (defined(HAVE_DECL_NET_IPV4_CONF_RP_FILTER) && HAVE_DECL_NET_IPV4_CONF_RP_FILTER)
+	XLAT(NET_IPV4_CONF_RP_FILTER),
+#endif
+#if defined(NET_IPV4_CONF_ACCEPT_SOURCE_ROUTE) || (defined(HAVE_DECL_NET_IPV4_CONF_ACCEPT_SOURCE_ROUTE) && HAVE_DECL_NET_IPV4_CONF_ACCEPT_SOURCE_ROUTE)
+	XLAT(NET_IPV4_CONF_ACCEPT_SOURCE_ROUTE),
+#endif
+#if defined(NET_IPV4_CONF_BOOTP_RELAY) || (defined(HAVE_DECL_NET_IPV4_CONF_BOOTP_RELAY) && HAVE_DECL_NET_IPV4_CONF_BOOTP_RELAY)
+	XLAT(NET_IPV4_CONF_BOOTP_RELAY),
+#endif
+#if defined(NET_IPV4_CONF_LOG_MARTIANS) || (defined(HAVE_DECL_NET_IPV4_CONF_LOG_MARTIANS) && HAVE_DECL_NET_IPV4_CONF_LOG_MARTIANS)
+	XLAT(NET_IPV4_CONF_LOG_MARTIANS),
+#endif
+#if defined(NET_IPV4_CONF_TAG) || (defined(HAVE_DECL_NET_IPV4_CONF_TAG) && HAVE_DECL_NET_IPV4_CONF_TAG)
+	XLAT(NET_IPV4_CONF_TAG),
+#endif
+#if defined(NET_IPV4_CONF_ARPFILTER) || (defined(HAVE_DECL_NET_IPV4_CONF_ARPFILTER) && HAVE_DECL_NET_IPV4_CONF_ARPFILTER)
+	XLAT(NET_IPV4_CONF_ARPFILTER),
+#endif
+#if defined(NET_IPV4_CONF_MEDIUM_ID) || (defined(HAVE_DECL_NET_IPV4_CONF_MEDIUM_ID) && HAVE_DECL_NET_IPV4_CONF_MEDIUM_ID)
+	XLAT(NET_IPV4_CONF_MEDIUM_ID),
+#endif
+#if defined(NET_IPV4_CONF_NOXFRM) || (defined(HAVE_DECL_NET_IPV4_CONF_NOXFRM) && HAVE_DECL_NET_IPV4_CONF_NOXFRM)
+	XLAT(NET_IPV4_CONF_NOXFRM),
+#endif
+#if defined(NET_IPV4_CONF_NOPOLICY) || (defined(HAVE_DECL_NET_IPV4_CONF_NOPOLICY) && HAVE_DECL_NET_IPV4_CONF_NOPOLICY)
+	XLAT(NET_IPV4_CONF_NOPOLICY),
+#endif
+#if defined(NET_IPV4_CONF_FORCE_IGMP_VERSION) || (defined(HAVE_DECL_NET_IPV4_CONF_FORCE_IGMP_VERSION) && HAVE_DECL_NET_IPV4_CONF_FORCE_IGMP_VERSION)
+	XLAT(NET_IPV4_CONF_FORCE_IGMP_VERSION),
+#endif
+#if defined(NET_IPV4_CONF_ARP_ANNOUNCE) || (defined(HAVE_DECL_NET_IPV4_CONF_ARP_ANNOUNCE) && HAVE_DECL_NET_IPV4_CONF_ARP_ANNOUNCE)
+	XLAT(NET_IPV4_CONF_ARP_ANNOUNCE),
+#endif
+#if defined(NET_IPV4_CONF_ARP_IGNORE) || (defined(HAVE_DECL_NET_IPV4_CONF_ARP_IGNORE) && HAVE_DECL_NET_IPV4_CONF_ARP_IGNORE)
+	XLAT(NET_IPV4_CONF_ARP_IGNORE),
+#endif
+#if defined(NET_IPV4_CONF_PROMOTE_SECONDARIES) || (defined(HAVE_DECL_NET_IPV4_CONF_PROMOTE_SECONDARIES) && HAVE_DECL_NET_IPV4_CONF_PROMOTE_SECONDARIES)
+	XLAT(NET_IPV4_CONF_PROMOTE_SECONDARIES),
+#endif
+#if defined(NET_IPV4_CONF_ARP_ACCEPT) || (defined(HAVE_DECL_NET_IPV4_CONF_ARP_ACCEPT) && HAVE_DECL_NET_IPV4_CONF_ARP_ACCEPT)
+	XLAT(NET_IPV4_CONF_ARP_ACCEPT),
+#endif
+#if defined(NET_IPV4_CONF_ARP_NOTIFY) || (defined(HAVE_DECL_NET_IPV4_CONF_ARP_NOTIFY) && HAVE_DECL_NET_IPV4_CONF_ARP_NOTIFY)
+	XLAT(NET_IPV4_CONF_ARP_NOTIFY),
+#endif
+	XLAT_END
+};
diff --git a/xlat/sysctl_net_ipv4_route.h b/xlat/sysctl_net_ipv4_route.h
new file mode 100644
index 0000000..63820d6
--- /dev/null
+++ b/xlat/sysctl_net_ipv4_route.h
@@ -0,0 +1,62 @@
+/* Generated by ./xlat/gen.sh from ./xlat/sysctl_net_ipv4_route.in; do not edit. */
+
+static const struct xlat sysctl_net_ipv4_route[] = {
+#if defined(NET_IPV4_ROUTE_FLUSH) || (defined(HAVE_DECL_NET_IPV4_ROUTE_FLUSH) && HAVE_DECL_NET_IPV4_ROUTE_FLUSH)
+	XLAT(NET_IPV4_ROUTE_FLUSH),
+#endif
+#if defined(NET_IPV4_ROUTE_MIN_DELAY) || (defined(HAVE_DECL_NET_IPV4_ROUTE_MIN_DELAY) && HAVE_DECL_NET_IPV4_ROUTE_MIN_DELAY)
+	XLAT(NET_IPV4_ROUTE_MIN_DELAY),
+#endif
+#if defined(NET_IPV4_ROUTE_MAX_DELAY) || (defined(HAVE_DECL_NET_IPV4_ROUTE_MAX_DELAY) && HAVE_DECL_NET_IPV4_ROUTE_MAX_DELAY)
+	XLAT(NET_IPV4_ROUTE_MAX_DELAY),
+#endif
+#if defined(NET_IPV4_ROUTE_GC_THRESH) || (defined(HAVE_DECL_NET_IPV4_ROUTE_GC_THRESH) && HAVE_DECL_NET_IPV4_ROUTE_GC_THRESH)
+	XLAT(NET_IPV4_ROUTE_GC_THRESH),
+#endif
+#if defined(NET_IPV4_ROUTE_MAX_SIZE) || (defined(HAVE_DECL_NET_IPV4_ROUTE_MAX_SIZE) && HAVE_DECL_NET_IPV4_ROUTE_MAX_SIZE)
+	XLAT(NET_IPV4_ROUTE_MAX_SIZE),
+#endif
+#if defined(NET_IPV4_ROUTE_GC_MIN_INTERVAL) || (defined(HAVE_DECL_NET_IPV4_ROUTE_GC_MIN_INTERVAL) && HAVE_DECL_NET_IPV4_ROUTE_GC_MIN_INTERVAL)
+	XLAT(NET_IPV4_ROUTE_GC_MIN_INTERVAL),
+#endif
+#if defined(NET_IPV4_ROUTE_GC_TIMEOUT) || (defined(HAVE_DECL_NET_IPV4_ROUTE_GC_TIMEOUT) && HAVE_DECL_NET_IPV4_ROUTE_GC_TIMEOUT)
+	XLAT(NET_IPV4_ROUTE_GC_TIMEOUT),
+#endif
+#if defined(NET_IPV4_ROUTE_GC_INTERVAL) || (defined(HAVE_DECL_NET_IPV4_ROUTE_GC_INTERVAL) && HAVE_DECL_NET_IPV4_ROUTE_GC_INTERVAL)
+	XLAT(NET_IPV4_ROUTE_GC_INTERVAL),
+#endif
+#if defined(NET_IPV4_ROUTE_REDIRECT_LOAD) || (defined(HAVE_DECL_NET_IPV4_ROUTE_REDIRECT_LOAD) && HAVE_DECL_NET_IPV4_ROUTE_REDIRECT_LOAD)
+	XLAT(NET_IPV4_ROUTE_REDIRECT_LOAD),
+#endif
+#if defined(NET_IPV4_ROUTE_REDIRECT_NUMBER) || (defined(HAVE_DECL_NET_IPV4_ROUTE_REDIRECT_NUMBER) && HAVE_DECL_NET_IPV4_ROUTE_REDIRECT_NUMBER)
+	XLAT(NET_IPV4_ROUTE_REDIRECT_NUMBER),
+#endif
+#if defined(NET_IPV4_ROUTE_REDIRECT_SILENCE) || (defined(HAVE_DECL_NET_IPV4_ROUTE_REDIRECT_SILENCE) && HAVE_DECL_NET_IPV4_ROUTE_REDIRECT_SILENCE)
+	XLAT(NET_IPV4_ROUTE_REDIRECT_SILENCE),
+#endif
+#if defined(NET_IPV4_ROUTE_ERROR_COST) || (defined(HAVE_DECL_NET_IPV4_ROUTE_ERROR_COST) && HAVE_DECL_NET_IPV4_ROUTE_ERROR_COST)
+	XLAT(NET_IPV4_ROUTE_ERROR_COST),
+#endif
+#if defined(NET_IPV4_ROUTE_ERROR_BURST) || (defined(HAVE_DECL_NET_IPV4_ROUTE_ERROR_BURST) && HAVE_DECL_NET_IPV4_ROUTE_ERROR_BURST)
+	XLAT(NET_IPV4_ROUTE_ERROR_BURST),
+#endif
+#if defined(NET_IPV4_ROUTE_GC_ELASTICITY) || (defined(HAVE_DECL_NET_IPV4_ROUTE_GC_ELASTICITY) && HAVE_DECL_NET_IPV4_ROUTE_GC_ELASTICITY)
+	XLAT(NET_IPV4_ROUTE_GC_ELASTICITY),
+#endif
+#if defined(NET_IPV4_ROUTE_MTU_EXPIRES) || (defined(HAVE_DECL_NET_IPV4_ROUTE_MTU_EXPIRES) && HAVE_DECL_NET_IPV4_ROUTE_MTU_EXPIRES)
+	XLAT(NET_IPV4_ROUTE_MTU_EXPIRES),
+#endif
+#if defined(NET_IPV4_ROUTE_MIN_PMTU) || (defined(HAVE_DECL_NET_IPV4_ROUTE_MIN_PMTU) && HAVE_DECL_NET_IPV4_ROUTE_MIN_PMTU)
+	XLAT(NET_IPV4_ROUTE_MIN_PMTU),
+#endif
+#if defined(NET_IPV4_ROUTE_MIN_ADVMSS) || (defined(HAVE_DECL_NET_IPV4_ROUTE_MIN_ADVMSS) && HAVE_DECL_NET_IPV4_ROUTE_MIN_ADVMSS)
+	XLAT(NET_IPV4_ROUTE_MIN_ADVMSS),
+#endif
+#if defined(NET_IPV4_ROUTE_SECRET_INTERVAL) || (defined(HAVE_DECL_NET_IPV4_ROUTE_SECRET_INTERVAL) && HAVE_DECL_NET_IPV4_ROUTE_SECRET_INTERVAL)
+	XLAT(NET_IPV4_ROUTE_SECRET_INTERVAL),
+#endif
+#if defined(NET_IPV4_ROUTE_GC_MIN_INTERVAL_MS) || (defined(HAVE_DECL_NET_IPV4_ROUTE_GC_MIN_INTERVAL_MS) && HAVE_DECL_NET_IPV4_ROUTE_GC_MIN_INTERVAL_MS)
+	XLAT(NET_IPV4_ROUTE_GC_MIN_INTERVAL_MS),
+#endif
+	XLAT_END
+};
diff --git a/xlat/sysctl_net_ipv6.h b/xlat/sysctl_net_ipv6.h
new file mode 100644
index 0000000..514e2dd
--- /dev/null
+++ b/xlat/sysctl_net_ipv6.h
@@ -0,0 +1,35 @@
+/* Generated by ./xlat/gen.sh from ./xlat/sysctl_net_ipv6.in; do not edit. */
+
+static const struct xlat sysctl_net_ipv6[] = {
+#if defined(NET_IPV6_CONF) || (defined(HAVE_DECL_NET_IPV6_CONF) && HAVE_DECL_NET_IPV6_CONF)
+	XLAT(NET_IPV6_CONF),
+#endif
+#if defined(NET_IPV6_NEIGH) || (defined(HAVE_DECL_NET_IPV6_NEIGH) && HAVE_DECL_NET_IPV6_NEIGH)
+	XLAT(NET_IPV6_NEIGH),
+#endif
+#if defined(NET_IPV6_ROUTE) || (defined(HAVE_DECL_NET_IPV6_ROUTE) && HAVE_DECL_NET_IPV6_ROUTE)
+	XLAT(NET_IPV6_ROUTE),
+#endif
+#if defined(NET_IPV6_ICMP) || (defined(HAVE_DECL_NET_IPV6_ICMP) && HAVE_DECL_NET_IPV6_ICMP)
+	XLAT(NET_IPV6_ICMP),
+#endif
+#if defined(NET_IPV6_BINDV6ONLY) || (defined(HAVE_DECL_NET_IPV6_BINDV6ONLY) && HAVE_DECL_NET_IPV6_BINDV6ONLY)
+	XLAT(NET_IPV6_BINDV6ONLY),
+#endif
+#if defined(NET_IPV6_IP6FRAG_HIGH_THRESH) || (defined(HAVE_DECL_NET_IPV6_IP6FRAG_HIGH_THRESH) && HAVE_DECL_NET_IPV6_IP6FRAG_HIGH_THRESH)
+	XLAT(NET_IPV6_IP6FRAG_HIGH_THRESH),
+#endif
+#if defined(NET_IPV6_IP6FRAG_LOW_THRESH) || (defined(HAVE_DECL_NET_IPV6_IP6FRAG_LOW_THRESH) && HAVE_DECL_NET_IPV6_IP6FRAG_LOW_THRESH)
+	XLAT(NET_IPV6_IP6FRAG_LOW_THRESH),
+#endif
+#if defined(NET_IPV6_IP6FRAG_TIME) || (defined(HAVE_DECL_NET_IPV6_IP6FRAG_TIME) && HAVE_DECL_NET_IPV6_IP6FRAG_TIME)
+	XLAT(NET_IPV6_IP6FRAG_TIME),
+#endif
+#if defined(NET_IPV6_IP6FRAG_SECRET_INTERVAL) || (defined(HAVE_DECL_NET_IPV6_IP6FRAG_SECRET_INTERVAL) && HAVE_DECL_NET_IPV6_IP6FRAG_SECRET_INTERVAL)
+	XLAT(NET_IPV6_IP6FRAG_SECRET_INTERVAL),
+#endif
+#if defined(NET_IPV6_MLD_MAX_MSF) || (defined(HAVE_DECL_NET_IPV6_MLD_MAX_MSF) && HAVE_DECL_NET_IPV6_MLD_MAX_MSF)
+	XLAT(NET_IPV6_MLD_MAX_MSF),
+#endif
+	XLAT_END
+};
diff --git a/xlat/sysctl_net_ipv6_route.h b/xlat/sysctl_net_ipv6_route.h
new file mode 100644
index 0000000..1f363a5
--- /dev/null
+++ b/xlat/sysctl_net_ipv6_route.h
@@ -0,0 +1,35 @@
+/* Generated by ./xlat/gen.sh from ./xlat/sysctl_net_ipv6_route.in; do not edit. */
+
+static const struct xlat sysctl_net_ipv6_route[] = {
+#if defined(NET_IPV6_ROUTE_FLUSH) || (defined(HAVE_DECL_NET_IPV6_ROUTE_FLUSH) && HAVE_DECL_NET_IPV6_ROUTE_FLUSH)
+	XLAT(NET_IPV6_ROUTE_FLUSH),
+#endif
+#if defined(NET_IPV6_ROUTE_GC_THRESH) || (defined(HAVE_DECL_NET_IPV6_ROUTE_GC_THRESH) && HAVE_DECL_NET_IPV6_ROUTE_GC_THRESH)
+	XLAT(NET_IPV6_ROUTE_GC_THRESH),
+#endif
+#if defined(NET_IPV6_ROUTE_MAX_SIZE) || (defined(HAVE_DECL_NET_IPV6_ROUTE_MAX_SIZE) && HAVE_DECL_NET_IPV6_ROUTE_MAX_SIZE)
+	XLAT(NET_IPV6_ROUTE_MAX_SIZE),
+#endif
+#if defined(NET_IPV6_ROUTE_GC_MIN_INTERVAL) || (defined(HAVE_DECL_NET_IPV6_ROUTE_GC_MIN_INTERVAL) && HAVE_DECL_NET_IPV6_ROUTE_GC_MIN_INTERVAL)
+	XLAT(NET_IPV6_ROUTE_GC_MIN_INTERVAL),
+#endif
+#if defined(NET_IPV6_ROUTE_GC_TIMEOUT) || (defined(HAVE_DECL_NET_IPV6_ROUTE_GC_TIMEOUT) && HAVE_DECL_NET_IPV6_ROUTE_GC_TIMEOUT)
+	XLAT(NET_IPV6_ROUTE_GC_TIMEOUT),
+#endif
+#if defined(NET_IPV6_ROUTE_GC_INTERVAL) || (defined(HAVE_DECL_NET_IPV6_ROUTE_GC_INTERVAL) && HAVE_DECL_NET_IPV6_ROUTE_GC_INTERVAL)
+	XLAT(NET_IPV6_ROUTE_GC_INTERVAL),
+#endif
+#if defined(NET_IPV6_ROUTE_GC_ELASTICITY) || (defined(HAVE_DECL_NET_IPV6_ROUTE_GC_ELASTICITY) && HAVE_DECL_NET_IPV6_ROUTE_GC_ELASTICITY)
+	XLAT(NET_IPV6_ROUTE_GC_ELASTICITY),
+#endif
+#if defined(NET_IPV6_ROUTE_MTU_EXPIRES) || (defined(HAVE_DECL_NET_IPV6_ROUTE_MTU_EXPIRES) && HAVE_DECL_NET_IPV6_ROUTE_MTU_EXPIRES)
+	XLAT(NET_IPV6_ROUTE_MTU_EXPIRES),
+#endif
+#if defined(NET_IPV6_ROUTE_MIN_ADVMSS) || (defined(HAVE_DECL_NET_IPV6_ROUTE_MIN_ADVMSS) && HAVE_DECL_NET_IPV6_ROUTE_MIN_ADVMSS)
+	XLAT(NET_IPV6_ROUTE_MIN_ADVMSS),
+#endif
+#if defined(NET_IPV6_ROUTE_GC_MIN_INTERVAL_MS) || (defined(HAVE_DECL_NET_IPV6_ROUTE_GC_MIN_INTERVAL_MS) && HAVE_DECL_NET_IPV6_ROUTE_GC_MIN_INTERVAL_MS)
+	XLAT(NET_IPV6_ROUTE_GC_MIN_INTERVAL_MS),
+#endif
+	XLAT_END
+};
diff --git a/xlat/sysctl_net_unix.h b/xlat/sysctl_net_unix.h
new file mode 100644
index 0000000..cd660e7
--- /dev/null
+++ b/xlat/sysctl_net_unix.h
@@ -0,0 +1,14 @@
+/* Generated by ./xlat/gen.sh from ./xlat/sysctl_net_unix.in; do not edit. */
+
+static const struct xlat sysctl_net_unix[] = {
+#if defined(NET_UNIX_DESTROY_DELAY) || (defined(HAVE_DECL_NET_UNIX_DESTROY_DELAY) && HAVE_DECL_NET_UNIX_DESTROY_DELAY)
+	XLAT(NET_UNIX_DESTROY_DELAY),
+#endif
+#if defined(NET_UNIX_DELETE_DELAY) || (defined(HAVE_DECL_NET_UNIX_DELETE_DELAY) && HAVE_DECL_NET_UNIX_DELETE_DELAY)
+	XLAT(NET_UNIX_DELETE_DELAY),
+#endif
+#if defined(NET_UNIX_MAX_DGRAM_QLEN) || (defined(HAVE_DECL_NET_UNIX_MAX_DGRAM_QLEN) && HAVE_DECL_NET_UNIX_MAX_DGRAM_QLEN)
+	XLAT(NET_UNIX_MAX_DGRAM_QLEN),
+#endif
+	XLAT_END
+};
diff --git a/xlat/sysctl_root.h b/xlat/sysctl_root.h
new file mode 100644
index 0000000..71d90c3
--- /dev/null
+++ b/xlat/sysctl_root.h
@@ -0,0 +1,50 @@
+/* Generated by ./xlat/gen.sh from ./xlat/sysctl_root.in; do not edit. */
+
+static const struct xlat sysctl_root[] = {
+#if defined(CTL_KERN) || (defined(HAVE_DECL_CTL_KERN) && HAVE_DECL_CTL_KERN)
+	XLAT(CTL_KERN),
+#endif
+#if defined(CTL_VM) || (defined(HAVE_DECL_CTL_VM) && HAVE_DECL_CTL_VM)
+	XLAT(CTL_VM),
+#endif
+#if defined(CTL_NET) || (defined(HAVE_DECL_CTL_NET) && HAVE_DECL_CTL_NET)
+	XLAT(CTL_NET),
+#endif
+#if defined(CTL_PROC) || (defined(HAVE_DECL_CTL_PROC) && HAVE_DECL_CTL_PROC)
+	XLAT(CTL_PROC),
+#endif
+#if defined(CTL_FS) || (defined(HAVE_DECL_CTL_FS) && HAVE_DECL_CTL_FS)
+	XLAT(CTL_FS),
+#endif
+#if defined(CTL_DEBUG) || (defined(HAVE_DECL_CTL_DEBUG) && HAVE_DECL_CTL_DEBUG)
+	XLAT(CTL_DEBUG),
+#endif
+#if defined(CTL_DEV) || (defined(HAVE_DECL_CTL_DEV) && HAVE_DECL_CTL_DEV)
+	XLAT(CTL_DEV),
+#endif
+#if defined(CTL_BUS) || (defined(HAVE_DECL_CTL_BUS) && HAVE_DECL_CTL_BUS)
+	XLAT(CTL_BUS),
+#endif
+#if defined(CTL_ABI) || (defined(HAVE_DECL_CTL_ABI) && HAVE_DECL_CTL_ABI)
+	XLAT(CTL_ABI),
+#endif
+#if defined(CTL_CPU) || (defined(HAVE_DECL_CTL_CPU) && HAVE_DECL_CTL_CPU)
+	XLAT(CTL_CPU),
+#endif
+#if defined(CTL_ARLAN) || (defined(HAVE_DECL_CTL_ARLAN) && HAVE_DECL_CTL_ARLAN)
+	XLAT(CTL_ARLAN),
+#endif
+#if defined(CTL_S390DBF) || (defined(HAVE_DECL_CTL_S390DBF) && HAVE_DECL_CTL_S390DBF)
+	XLAT(CTL_S390DBF),
+#endif
+#if defined(CTL_SUNRPC) || (defined(HAVE_DECL_CTL_SUNRPC) && HAVE_DECL_CTL_SUNRPC)
+	XLAT(CTL_SUNRPC),
+#endif
+#if defined(CTL_PM) || (defined(HAVE_DECL_CTL_PM) && HAVE_DECL_CTL_PM)
+	XLAT(CTL_PM),
+#endif
+#if defined(CTL_FRV) || (defined(HAVE_DECL_CTL_FRV) && HAVE_DECL_CTL_FRV)
+	XLAT(CTL_FRV),
+#endif
+	XLAT_END
+};
diff --git a/xlat/sysctl_vm.h b/xlat/sysctl_vm.h
new file mode 100644
index 0000000..e2926ae
--- /dev/null
+++ b/xlat/sysctl_vm.h
@@ -0,0 +1,65 @@
+/* Generated by ./xlat/gen.sh from ./xlat/sysctl_vm.in; do not edit. */
+
+static const struct xlat sysctl_vm[] = {
+#if defined(VM_OVERCOMMIT_MEMORY) || (defined(HAVE_DECL_VM_OVERCOMMIT_MEMORY) && HAVE_DECL_VM_OVERCOMMIT_MEMORY)
+	XLAT(VM_OVERCOMMIT_MEMORY),
+#endif
+#if defined(VM_PAGE_CLUSTER) || (defined(HAVE_DECL_VM_PAGE_CLUSTER) && HAVE_DECL_VM_PAGE_CLUSTER)
+	XLAT(VM_PAGE_CLUSTER),
+#endif
+#if defined(VM_DIRTY_BACKGROUND) || (defined(HAVE_DECL_VM_DIRTY_BACKGROUND) && HAVE_DECL_VM_DIRTY_BACKGROUND)
+	XLAT(VM_DIRTY_BACKGROUND),
+#endif
+#if defined(VM_DIRTY_RATIO) || (defined(HAVE_DECL_VM_DIRTY_RATIO) && HAVE_DECL_VM_DIRTY_RATIO)
+	XLAT(VM_DIRTY_RATIO),
+#endif
+#if defined(VM_DIRTY_WB_CS) || (defined(HAVE_DECL_VM_DIRTY_WB_CS) && HAVE_DECL_VM_DIRTY_WB_CS)
+	XLAT(VM_DIRTY_WB_CS),
+#endif
+#if defined(VM_DIRTY_EXPIRE_CS) || (defined(HAVE_DECL_VM_DIRTY_EXPIRE_CS) && HAVE_DECL_VM_DIRTY_EXPIRE_CS)
+	XLAT(VM_DIRTY_EXPIRE_CS),
+#endif
+#if defined(VM_NR_PDFLUSH_THREADS) || (defined(HAVE_DECL_VM_NR_PDFLUSH_THREADS) && HAVE_DECL_VM_NR_PDFLUSH_THREADS)
+	XLAT(VM_NR_PDFLUSH_THREADS),
+#endif
+#if defined(VM_OVERCOMMIT_RATIO) || (defined(HAVE_DECL_VM_OVERCOMMIT_RATIO) && HAVE_DECL_VM_OVERCOMMIT_RATIO)
+	XLAT(VM_OVERCOMMIT_RATIO),
+#endif
+#if defined(VM_PAGEBUF) || (defined(HAVE_DECL_VM_PAGEBUF) && HAVE_DECL_VM_PAGEBUF)
+	XLAT(VM_PAGEBUF),
+#endif
+#if defined(VM_HUGETLB_PAGES) || (defined(HAVE_DECL_VM_HUGETLB_PAGES) && HAVE_DECL_VM_HUGETLB_PAGES)
+	XLAT(VM_HUGETLB_PAGES),
+#endif
+#if defined(VM_SWAPPINESS) || (defined(HAVE_DECL_VM_SWAPPINESS) && HAVE_DECL_VM_SWAPPINESS)
+	XLAT(VM_SWAPPINESS),
+#endif
+#if defined(VM_LOWMEM_RESERVE_RATIO) || (defined(HAVE_DECL_VM_LOWMEM_RESERVE_RATIO) && HAVE_DECL_VM_LOWMEM_RESERVE_RATIO)
+	XLAT(VM_LOWMEM_RESERVE_RATIO),
+#endif
+#if defined(VM_MIN_FREE_KBYTES) || (defined(HAVE_DECL_VM_MIN_FREE_KBYTES) && HAVE_DECL_VM_MIN_FREE_KBYTES)
+	XLAT(VM_MIN_FREE_KBYTES),
+#endif
+#if defined(VM_MAX_MAP_COUNT) || (defined(HAVE_DECL_VM_MAX_MAP_COUNT) && HAVE_DECL_VM_MAX_MAP_COUNT)
+	XLAT(VM_MAX_MAP_COUNT),
+#endif
+#if defined(VM_LAPTOP_MODE) || (defined(HAVE_DECL_VM_LAPTOP_MODE) && HAVE_DECL_VM_LAPTOP_MODE)
+	XLAT(VM_LAPTOP_MODE),
+#endif
+#if defined(VM_BLOCK_DUMP) || (defined(HAVE_DECL_VM_BLOCK_DUMP) && HAVE_DECL_VM_BLOCK_DUMP)
+	XLAT(VM_BLOCK_DUMP),
+#endif
+#if defined(VM_HUGETLB_GROUP) || (defined(HAVE_DECL_VM_HUGETLB_GROUP) && HAVE_DECL_VM_HUGETLB_GROUP)
+	XLAT(VM_HUGETLB_GROUP),
+#endif
+#if defined(VM_VFS_CACHE_PRESSURE) || (defined(HAVE_DECL_VM_VFS_CACHE_PRESSURE) && HAVE_DECL_VM_VFS_CACHE_PRESSURE)
+	XLAT(VM_VFS_CACHE_PRESSURE),
+#endif
+#if defined(VM_LEGACY_VA_LAYOUT) || (defined(HAVE_DECL_VM_LEGACY_VA_LAYOUT) && HAVE_DECL_VM_LEGACY_VA_LAYOUT)
+	XLAT(VM_LEGACY_VA_LAYOUT),
+#endif
+#if defined(VM_SWAP_TOKEN_TIMEOUT) || (defined(HAVE_DECL_VM_SWAP_TOKEN_TIMEOUT) && HAVE_DECL_VM_SWAP_TOKEN_TIMEOUT)
+	XLAT(VM_SWAP_TOKEN_TIMEOUT),
+#endif
+	XLAT_END
+};
diff --git a/xlat/syslog_action_type.h b/xlat/syslog_action_type.h
new file mode 100644
index 0000000..1083d35
--- /dev/null
+++ b/xlat/syslog_action_type.h
@@ -0,0 +1,16 @@
+/* Generated by ./xlat/gen.sh from ./xlat/syslog_action_type.in; do not edit. */
+
+static const struct xlat syslog_action_type[] = {
+	XLAT(SYSLOG_ACTION_CLOSE),
+	XLAT(SYSLOG_ACTION_OPEN),
+	XLAT(SYSLOG_ACTION_READ),
+	XLAT(SYSLOG_ACTION_READ_ALL),
+	XLAT(SYSLOG_ACTION_READ_CLEAR),
+	XLAT(SYSLOG_ACTION_CLEAR),
+	XLAT(SYSLOG_ACTION_CONSOLE_OFF),
+	XLAT(SYSLOG_ACTION_CONSOLE_ON),
+	XLAT(SYSLOG_ACTION_CONSOLE_LEVEL),
+	XLAT(SYSLOG_ACTION_SIZE_UNREAD),
+	XLAT(SYSLOG_ACTION_SIZE_BUFFER),
+	XLAT_END
+};
diff --git a/xlat/sysmips_operations.h b/xlat/sysmips_operations.h
new file mode 100644
index 0000000..6138107
--- /dev/null
+++ b/xlat/sysmips_operations.h
@@ -0,0 +1,20 @@
+/* Generated by ./xlat/gen.sh from ./xlat/sysmips_operations.in; do not edit. */
+
+static const struct xlat sysmips_operations[] = {
+#if defined(SETNAME) || (defined(HAVE_DECL_SETNAME) && HAVE_DECL_SETNAME)
+	XLAT(SETNAME),
+#endif
+#if defined(FLUSH_CACHE) || (defined(HAVE_DECL_FLUSH_CACHE) && HAVE_DECL_FLUSH_CACHE)
+	XLAT(FLUSH_CACHE),
+#endif
+#if defined(MIPS_FIXADE) || (defined(HAVE_DECL_MIPS_FIXADE) && HAVE_DECL_MIPS_FIXADE)
+	XLAT(MIPS_FIXADE),
+#endif
+#if defined(MIPS_RDNVRAM) || (defined(HAVE_DECL_MIPS_RDNVRAM) && HAVE_DECL_MIPS_RDNVRAM)
+	XLAT(MIPS_RDNVRAM),
+#endif
+#if defined(MIPS_ATOMIC_SET) || (defined(HAVE_DECL_MIPS_ATOMIC_SET) && HAVE_DECL_MIPS_ATOMIC_SET)
+	XLAT(MIPS_ATOMIC_SET),
+#endif
+	XLAT_END
+};
diff --git a/xlat/tcflsh_options.h b/xlat/tcflsh_options.h
new file mode 100644
index 0000000..83f77bf
--- /dev/null
+++ b/xlat/tcflsh_options.h
@@ -0,0 +1,14 @@
+/* Generated by ./xlat/gen.sh from ./xlat/tcflsh_options.in; do not edit. */
+
+static const struct xlat tcflsh_options[] = {
+#if defined(TCIFLUSH) || (defined(HAVE_DECL_TCIFLUSH) && HAVE_DECL_TCIFLUSH)
+	XLAT(TCIFLUSH),
+#endif
+#if defined(TCOFLUSH) || (defined(HAVE_DECL_TCOFLUSH) && HAVE_DECL_TCOFLUSH)
+	XLAT(TCOFLUSH),
+#endif
+#if defined(TCIOFLUSH) || (defined(HAVE_DECL_TCIOFLUSH) && HAVE_DECL_TCIOFLUSH)
+	XLAT(TCIOFLUSH),
+#endif
+	XLAT_END
+};
diff --git a/xlat/tcxonc_options.h b/xlat/tcxonc_options.h
new file mode 100644
index 0000000..a84f0ef
--- /dev/null
+++ b/xlat/tcxonc_options.h
@@ -0,0 +1,17 @@
+/* Generated by ./xlat/gen.sh from ./xlat/tcxonc_options.in; do not edit. */
+
+static const struct xlat tcxonc_options[] = {
+#if defined(TCOOFF) || (defined(HAVE_DECL_TCOOFF) && HAVE_DECL_TCOOFF)
+	XLAT(TCOOFF),
+#endif
+#if defined(TCOON) || (defined(HAVE_DECL_TCOON) && HAVE_DECL_TCOON)
+	XLAT(TCOON),
+#endif
+#if defined(TCIOFF) || (defined(HAVE_DECL_TCIOFF) && HAVE_DECL_TCIOFF)
+	XLAT(TCIOFF),
+#endif
+#if defined(TCION) || (defined(HAVE_DECL_TCION) && HAVE_DECL_TCION)
+	XLAT(TCION),
+#endif
+	XLAT_END
+};
diff --git a/xlat/timerfdflags.h b/xlat/timerfdflags.h
new file mode 100644
index 0000000..4fadfc4
--- /dev/null
+++ b/xlat/timerfdflags.h
@@ -0,0 +1,8 @@
+/* Generated by ./xlat/gen.sh from ./xlat/timerfdflags.in; do not edit. */
+
+static const struct xlat timerfdflags[] = {
+#if defined(TFD_TIMER_ABSTIME) || (defined(HAVE_DECL_TFD_TIMER_ABSTIME) && HAVE_DECL_TFD_TIMER_ABSTIME)
+	XLAT(TFD_TIMER_ABSTIME),
+#endif
+	XLAT_END
+};
diff --git a/xlat/ubi_volume_props.h b/xlat/ubi_volume_props.h
new file mode 100644
index 0000000..7aa90c6
--- /dev/null
+++ b/xlat/ubi_volume_props.h
@@ -0,0 +1,6 @@
+/* Generated by ./xlat/gen.sh from ./xlat/ubi_volume_props.in; do not edit. */
+
+static const struct xlat ubi_volume_props[] = {
+	XLAT(UBI_VOL_PROP_DIRECT_WRITE),
+	XLAT_END
+};
diff --git a/xlat/ubi_volume_types.h b/xlat/ubi_volume_types.h
new file mode 100644
index 0000000..36a2f07
--- /dev/null
+++ b/xlat/ubi_volume_types.h
@@ -0,0 +1,7 @@
+/* Generated by ./xlat/gen.sh from ./xlat/ubi_volume_types.in; do not edit. */
+
+static const struct xlat ubi_volume_types[] = {
+	XLAT(UBI_DYNAMIC_VOLUME),
+	XLAT(UBI_STATIC_VOLUME),
+	XLAT_END
+};
diff --git a/xlat/umount_flags.h b/xlat/umount_flags.h
new file mode 100644
index 0000000..304c1a6
--- /dev/null
+++ b/xlat/umount_flags.h
@@ -0,0 +1,14 @@
+/* Generated by ./xlat/gen.sh from ./xlat/umount_flags.in; do not edit. */
+
+static const struct xlat umount_flags[] = {
+#if defined(MNT_FORCE) || (defined(HAVE_DECL_MNT_FORCE) && HAVE_DECL_MNT_FORCE)
+	XLAT(MNT_FORCE),
+#endif
+#if defined(MNT_DETACH) || (defined(HAVE_DECL_MNT_DETACH) && HAVE_DECL_MNT_DETACH)
+	XLAT(MNT_DETACH),
+#endif
+#if defined(MNT_EXPIRE) || (defined(HAVE_DECL_MNT_EXPIRE) && HAVE_DECL_MNT_EXPIRE)
+	XLAT(MNT_EXPIRE),
+#endif
+	XLAT_END
+};
diff --git a/xlat/usagewho.h b/xlat/usagewho.h
new file mode 100644
index 0000000..860e0a0
--- /dev/null
+++ b/xlat/usagewho.h
@@ -0,0 +1,14 @@
+/* Generated by ./xlat/gen.sh from ./xlat/usagewho.in; do not edit. */
+
+static const struct xlat usagewho[] = {
+#if defined(RUSAGE_SELF) || (defined(HAVE_DECL_RUSAGE_SELF) && HAVE_DECL_RUSAGE_SELF)
+	XLAT(RUSAGE_SELF),
+#endif
+#if defined(RUSAGE_CHILDREN) || (defined(HAVE_DECL_RUSAGE_CHILDREN) && HAVE_DECL_RUSAGE_CHILDREN)
+	XLAT(RUSAGE_CHILDREN),
+#endif
+#if defined(RUSAGE_BOTH) || (defined(HAVE_DECL_RUSAGE_BOTH) && HAVE_DECL_RUSAGE_BOTH)
+	XLAT(RUSAGE_BOTH),
+#endif
+	XLAT_END
+};
diff --git a/xlat/wait4_options.h b/xlat/wait4_options.h
new file mode 100644
index 0000000..86df119
--- /dev/null
+++ b/xlat/wait4_options.h
@@ -0,0 +1,37 @@
+/* Generated by ./xlat/gen.sh from ./xlat/wait4_options.in; do not edit. */
+
+static const struct xlat wait4_options[] = {
+#if defined(WNOHANG) || (defined(HAVE_DECL_WNOHANG) && HAVE_DECL_WNOHANG)
+	XLAT(WNOHANG),
+#endif
+#ifndef WSTOPPED
+#if defined(WUNTRACED) || (defined(HAVE_DECL_WUNTRACED) && HAVE_DECL_WUNTRACED)
+	XLAT(WUNTRACED),
+#endif
+#endif
+#if defined(WEXITED) || (defined(HAVE_DECL_WEXITED) && HAVE_DECL_WEXITED)
+	XLAT(WEXITED),
+#endif
+#if defined(WTRAPPED) || (defined(HAVE_DECL_WTRAPPED) && HAVE_DECL_WTRAPPED)
+	XLAT(WTRAPPED),
+#endif
+#if defined(WSTOPPED) || (defined(HAVE_DECL_WSTOPPED) && HAVE_DECL_WSTOPPED)
+	XLAT(WSTOPPED),
+#endif
+#if defined(WCONTINUED) || (defined(HAVE_DECL_WCONTINUED) && HAVE_DECL_WCONTINUED)
+	XLAT(WCONTINUED),
+#endif
+#if defined(WNOWAIT) || (defined(HAVE_DECL_WNOWAIT) && HAVE_DECL_WNOWAIT)
+	XLAT(WNOWAIT),
+#endif
+#if defined(__WCLONE) || (defined(HAVE_DECL___WCLONE) && HAVE_DECL___WCLONE)
+	XLAT(__WCLONE),
+#endif
+#if defined(__WALL) || (defined(HAVE_DECL___WALL) && HAVE_DECL___WALL)
+	XLAT(__WALL),
+#endif
+#if defined(__WNOTHREAD) || (defined(HAVE_DECL___WNOTHREAD) && HAVE_DECL___WNOTHREAD)
+	XLAT(__WNOTHREAD),
+#endif
+	XLAT_END
+};
diff --git a/xlat/waitid_types.h b/xlat/waitid_types.h
new file mode 100644
index 0000000..333ecc2
--- /dev/null
+++ b/xlat/waitid_types.h
@@ -0,0 +1,32 @@
+/* Generated by ./xlat/gen.sh from ./xlat/waitid_types.in; do not edit. */
+
+static const struct xlat waitid_types[] = {
+#if defined(P_PID) || (defined(HAVE_DECL_P_PID) && HAVE_DECL_P_PID)
+	XLAT(P_PID),
+#endif
+#if defined(P_PPID) || (defined(HAVE_DECL_P_PPID) && HAVE_DECL_P_PPID)
+	XLAT(P_PPID),
+#endif
+#if defined(P_PGID) || (defined(HAVE_DECL_P_PGID) && HAVE_DECL_P_PGID)
+	XLAT(P_PGID),
+#endif
+#if defined(P_SID) || (defined(HAVE_DECL_P_SID) && HAVE_DECL_P_SID)
+	XLAT(P_SID),
+#endif
+#if defined(P_CID) || (defined(HAVE_DECL_P_CID) && HAVE_DECL_P_CID)
+	XLAT(P_CID),
+#endif
+#if defined(P_UID) || (defined(HAVE_DECL_P_UID) && HAVE_DECL_P_UID)
+	XLAT(P_UID),
+#endif
+#if defined(P_GID) || (defined(HAVE_DECL_P_GID) && HAVE_DECL_P_GID)
+	XLAT(P_GID),
+#endif
+#if defined(P_ALL) || (defined(HAVE_DECL_P_ALL) && HAVE_DECL_P_ALL)
+	XLAT(P_ALL),
+#endif
+#if defined(P_LWPID) || (defined(HAVE_DECL_P_LWPID) && HAVE_DECL_P_LWPID)
+	XLAT(P_LWPID),
+#endif
+	XLAT_END
+};
diff --git a/xlat/whence_codes.h b/xlat/whence_codes.h
new file mode 100644
index 0000000..2576b78
--- /dev/null
+++ b/xlat/whence_codes.h
@@ -0,0 +1,20 @@
+/* Generated by ./xlat/gen.sh from ./xlat/whence_codes.in; do not edit. */
+
+const struct xlat whence_codes[] = {
+#if defined(SEEK_SET) || (defined(HAVE_DECL_SEEK_SET) && HAVE_DECL_SEEK_SET)
+	XLAT(SEEK_SET),
+#endif
+#if defined(SEEK_CUR) || (defined(HAVE_DECL_SEEK_CUR) && HAVE_DECL_SEEK_CUR)
+	XLAT(SEEK_CUR),
+#endif
+#if defined(SEEK_END) || (defined(HAVE_DECL_SEEK_END) && HAVE_DECL_SEEK_END)
+	XLAT(SEEK_END),
+#endif
+#if defined(SEEK_DATA) || (defined(HAVE_DECL_SEEK_DATA) && HAVE_DECL_SEEK_DATA)
+	XLAT(SEEK_DATA),
+#endif
+#if defined(SEEK_HOLE) || (defined(HAVE_DECL_SEEK_HOLE) && HAVE_DECL_SEEK_HOLE)
+	XLAT(SEEK_HOLE),
+#endif
+	XLAT_END
+};
diff --git a/xlat/xattrflags.h b/xlat/xattrflags.h
new file mode 100644
index 0000000..33622c4
--- /dev/null
+++ b/xlat/xattrflags.h
@@ -0,0 +1,11 @@
+/* Generated by ./xlat/gen.sh from ./xlat/xattrflags.in; do not edit. */
+
+static const struct xlat xattrflags[] = {
+#if defined(XATTR_CREATE) || (defined(HAVE_DECL_XATTR_CREATE) && HAVE_DECL_XATTR_CREATE)
+	XLAT(XATTR_CREATE),
+#endif
+#if defined(XATTR_REPLACE) || (defined(HAVE_DECL_XATTR_REPLACE) && HAVE_DECL_XATTR_REPLACE)
+	XLAT(XATTR_REPLACE),
+#endif
+	XLAT_END
+};
diff --git a/xlat/xfs_dqblk_flags.h b/xlat/xfs_dqblk_flags.h
new file mode 100644
index 0000000..049bb34
--- /dev/null
+++ b/xlat/xfs_dqblk_flags.h
@@ -0,0 +1,14 @@
+/* Generated by ./xlat/gen.sh from ./xlat/xfs_dqblk_flags.in; do not edit. */
+
+static const struct xlat xfs_dqblk_flags[] = {
+#if defined(XFS_USER_QUOTA) || (defined(HAVE_DECL_XFS_USER_QUOTA) && HAVE_DECL_XFS_USER_QUOTA)
+	XLAT(XFS_USER_QUOTA),
+#endif
+#if defined(XFS_PROJ_QUOTA) || (defined(HAVE_DECL_XFS_PROJ_QUOTA) && HAVE_DECL_XFS_PROJ_QUOTA)
+	XLAT(XFS_PROJ_QUOTA),
+#endif
+#if defined(XFS_GROUP_QUOTA) || (defined(HAVE_DECL_XFS_GROUP_QUOTA) && HAVE_DECL_XFS_GROUP_QUOTA)
+	XLAT(XFS_GROUP_QUOTA),
+#endif
+	XLAT_END
+};
diff --git a/xlat/xfs_quota_flags.h b/xlat/xfs_quota_flags.h
new file mode 100644
index 0000000..a43321d
--- /dev/null
+++ b/xlat/xfs_quota_flags.h
@@ -0,0 +1,17 @@
+/* Generated by ./xlat/gen.sh from ./xlat/xfs_quota_flags.in; do not edit. */
+
+static const struct xlat xfs_quota_flags[] = {
+#if defined(XFS_QUOTA_UDQ_ACCT) || (defined(HAVE_DECL_XFS_QUOTA_UDQ_ACCT) && HAVE_DECL_XFS_QUOTA_UDQ_ACCT)
+	XLAT(XFS_QUOTA_UDQ_ACCT),
+#endif
+#if defined(XFS_QUOTA_UDQ_ENFD) || (defined(HAVE_DECL_XFS_QUOTA_UDQ_ENFD) && HAVE_DECL_XFS_QUOTA_UDQ_ENFD)
+	XLAT(XFS_QUOTA_UDQ_ENFD),
+#endif
+#if defined(XFS_QUOTA_GDQ_ACCT) || (defined(HAVE_DECL_XFS_QUOTA_GDQ_ACCT) && HAVE_DECL_XFS_QUOTA_GDQ_ACCT)
+	XLAT(XFS_QUOTA_GDQ_ACCT),
+#endif
+#if defined(XFS_QUOTA_GDQ_ENFD) || (defined(HAVE_DECL_XFS_QUOTA_GDQ_ENFD) && HAVE_DECL_XFS_QUOTA_GDQ_ENFD)
+	XLAT(XFS_QUOTA_GDQ_ENFD),
+#endif
+	XLAT_END
+};