1d6fb4894SJohn Baldwin# $FreeBSD$ 2d6fb4894SJohn Baldwin 3d6fb4894SJohn Baldwin.include <src.opts.mk> 4d6fb4894SJohn Baldwin 5d6fb4894SJohn BaldwinLIB= sysdecode 6d6fb4894SJohn Baldwin 79289f547SJohn BaldwinSRCS= errno.c flags.c ioctl.c signal.c syscallnames.c utrace.c 8d6fb4894SJohn BaldwinINCS= sysdecode.h 9d6fb4894SJohn Baldwin 109289f547SJohn BaldwinCFLAGS+= -I${.OBJDIR} 11914108c8SEnji CooperCFLAGS+= -I${SRCTOP}/sys 12914108c8SEnji CooperCFLAGS+= -I${SRCTOP}/libexec/rtld-elf 13a5f14abfSJohn Baldwin 149289f547SJohn BaldwinMAN= sysdecode.3 \ 15287b96ddSJohn Baldwin sysdecode_abi_to_freebsd_errno.3 \ 169289f547SJohn Baldwin sysdecode_cap_rights.3 \ 17a826eb5aSMichael Tuexen sysdecode_cmsg_type.3 \ 189289f547SJohn Baldwin sysdecode_enum.3 \ 199289f547SJohn Baldwin sysdecode_fcntl_arg.3 \ 20ffb66079SJohn Baldwin sysdecode_kevent.3 \ 21265e5898SJohn Baldwin sysdecode_ioctlname.3 \ 229289f547SJohn Baldwin sysdecode_mask.3 \ 239289f547SJohn Baldwin sysdecode_quotactl_cmd.3 \ 241e6455d8SMichael Tuexen sysdecode_sctp_sinfo_flags.3 \ 259289f547SJohn Baldwin sysdecode_sigcode.3 \ 269289f547SJohn Baldwin sysdecode_sockopt_name.3 \ 27738a93a4SMichael Tuexen sysdecode_socket_protocol.3 \ 28a5f14abfSJohn Baldwin sysdecode_syscallnames.3 \ 29d6fb4894SJohn Baldwin sysdecode_utrace.3 309289f547SJohn BaldwinMLINKS= sysdecode_abi_to_freebsd_errno.3 sysdecode_freebsd_to_abi_errno.3 319289f547SJohn BaldwinMLINKS+=sysdecode_enum.3 sysdecode_acltype.3 \ 329289f547SJohn Baldwin sysdecode_enum.3 sysdecode_atfd.3 \ 339289f547SJohn Baldwin sysdecode_enum.3 sysdecode_extattrnamespace.3 \ 349289f547SJohn Baldwin sysdecode_enum.3 sysdecode_fadvice.3 \ 359289f547SJohn Baldwin sysdecode_enum.3 sysdecode_fcntl_cmd.3 \ 3648f79574SJohn Baldwin sysdecode_enum.3 sysdecode_getfsstat_mode.3 \ 37ee8aa41dSJohn Baldwin sysdecode_enum.3 sysdecode_getrusage_who.3 \ 389289f547SJohn Baldwin sysdecode_enum.3 sysdecode_idtype.3 \ 399289f547SJohn Baldwin sysdecode_enum.3 sysdecode_ipproto.3 \ 409289f547SJohn Baldwin sysdecode_enum.3 sysdecode_kldsym_cmd.3 \ 419289f547SJohn Baldwin sysdecode_enum.3 sysdecode_kldunload_flags.3 \ 429289f547SJohn Baldwin sysdecode_enum.3 sysdecode_lio_listio_mode.3 \ 439289f547SJohn Baldwin sysdecode_enum.3 sysdecode_madvice.3 \ 449289f547SJohn Baldwin sysdecode_enum.3 sysdecode_minherit_flags.3 \ 459289f547SJohn Baldwin sysdecode_enum.3 sysdecode_msgctl_cmd.3 \ 469289f547SJohn Baldwin sysdecode_enum.3 sysdecode_nfssvc_flags.3 \ 4739a3a438SJohn Baldwin sysdecode_enum.3 sysdecode_pathconf_name.3 \ 489289f547SJohn Baldwin sysdecode_enum.3 sysdecode_prio_which.3 \ 499289f547SJohn Baldwin sysdecode_enum.3 sysdecode_procctl_cmd.3 \ 509289f547SJohn Baldwin sysdecode_enum.3 sysdecode_ptrace_request.3 \ 519289f547SJohn Baldwin sysdecode_enum.3 sysdecode_rlimit.3 \ 529289f547SJohn Baldwin sysdecode_enum.3 sysdecode_rtprio_function.3 \ 539289f547SJohn Baldwin sysdecode_enum.3 sysdecode_scheduler_policy.3 \ 54a62bf68dSMichael Tuexen sysdecode_enum.3 sysdecode_sctp_pr_policy.3 \ 559289f547SJohn Baldwin sysdecode_enum.3 sysdecode_semctl_cmd.3 \ 569289f547SJohn Baldwin sysdecode_enum.3 sysdecode_shmctl_cmd.3 \ 579289f547SJohn Baldwin sysdecode_enum.3 sysdecode_shutdown_how.3 \ 589289f547SJohn Baldwin sysdecode_enum.3 sysdecode_sigbus_code.3 \ 599289f547SJohn Baldwin sysdecode_enum.3 sysdecode_sigchld_code.3 \ 609289f547SJohn Baldwin sysdecode_enum.3 sysdecode_sigfpe_code.3 \ 619289f547SJohn Baldwin sysdecode_enum.3 sysdecode_sigill_code.3 \ 629289f547SJohn Baldwin sysdecode_enum.3 sysdecode_signal.3 \ 639289f547SJohn Baldwin sysdecode_enum.3 sysdecode_sigprocmask_how.3 \ 649289f547SJohn Baldwin sysdecode_enum.3 sysdecode_sigsegv_code.3 \ 659289f547SJohn Baldwin sysdecode_enum.3 sysdecode_sigtrap_code.3 \ 669289f547SJohn Baldwin sysdecode_enum.3 sysdecode_sockaddr_family.3 \ 679289f547SJohn Baldwin sysdecode_enum.3 sysdecode_socketdomain.3 \ 689289f547SJohn Baldwin sysdecode_enum.3 sysdecode_sockettype.3 \ 699289f547SJohn Baldwin sysdecode_enum.3 sysdecode_sockopt_level.3 \ 7039a3a438SJohn Baldwin sysdecode_enum.3 sysdecode_sysarch_number.3 \ 719289f547SJohn Baldwin sysdecode_enum.3 sysdecode_umtx_op.3 \ 729289f547SJohn Baldwin sysdecode_enum.3 sysdecode_vmresult.3 \ 739289f547SJohn Baldwin sysdecode_enum.3 sysdecode_whence.3 749289f547SJohn BaldwinMLINKS+=sysdecode_fcntl_arg.3 sysdecode_fcntl_arg_p.3 75ffb66079SJohn BaldwinMLINKS+=sysdecode_kevent.3 sysdecode_kevent_fflags.3 \ 76ffb66079SJohn Baldwin sysdecode_kevent.3 sysdecode_kevent_filter.3 \ 77ffb66079SJohn Baldwin sysdecode_kevent.3 sysdecode_kevent_flags.3 789289f547SJohn BaldwinMLINKS+=sysdecode_mask.3 sysdecode_accessmode.3 \ 7939a3a438SJohn Baldwin sysdecode_mask.3 sysdecode_atflags.3 \ 809289f547SJohn Baldwin sysdecode_mask.3 sysdecode_capfcntlrights.3 \ 819289f547SJohn Baldwin sysdecode_mask.3 sysdecode_fcntl_fileflags.3 \ 829289f547SJohn Baldwin sysdecode_mask.3 sysdecode_fileflags.3 \ 839289f547SJohn Baldwin sysdecode_mask.3 sysdecode_filemode.3 \ 849289f547SJohn Baldwin sysdecode_mask.3 sysdecode_flock_operation.3 \ 859289f547SJohn Baldwin sysdecode_mask.3 sysdecode_mlockall_flags.3 \ 869289f547SJohn Baldwin sysdecode_mask.3 sysdecode_mmap_flags.3 \ 879289f547SJohn Baldwin sysdecode_mask.3 sysdecode_mmap_prot.3 \ 889289f547SJohn Baldwin sysdecode_mask.3 sysdecode_mount_flags.3 \ 899289f547SJohn Baldwin sysdecode_mask.3 sysdecode_msg_flags.3 \ 909289f547SJohn Baldwin sysdecode_mask.3 sysdecode_msync_flags.3 \ 919289f547SJohn Baldwin sysdecode_mask.3 sysdecode_open_flags.3 \ 929289f547SJohn Baldwin sysdecode_mask.3 sysdecode_pipe2_flags.3 \ 939289f547SJohn Baldwin sysdecode_mask.3 sysdecode_reboot_howto.3 \ 949289f547SJohn Baldwin sysdecode_mask.3 sysdecode_rfork_flags.3 \ 959289f547SJohn Baldwin sysdecode_mask.3 sysdecode_semget_flags.3 \ 969289f547SJohn Baldwin sysdecode_mask.3 sysdecode_sendfile_flags.3 \ 979289f547SJohn Baldwin sysdecode_mask.3 sysdecode_shmat_flags.3 \ 980faae8b9SMichael Tuexen sysdecode_mask.3 sysdecode_sctp_nxt_flags.3 \ 990faae8b9SMichael Tuexen sysdecode_mask.3 sysdecode_sctp_rcv_flags.3 \ 1000faae8b9SMichael Tuexen sysdecode_mask.3 sysdecode_sctp_snd_flags.3 \ 1019289f547SJohn Baldwin sysdecode_mask.3 sysdecode_socket_type.3 \ 1029289f547SJohn Baldwin sysdecode_mask.3 sysdecode_thr_create_flags.3 \ 1039289f547SJohn Baldwin sysdecode_mask.3 sysdecode_umtx_cvwait_flags.3 \ 1049289f547SJohn Baldwin sysdecode_mask.3 sysdecode_umtx_rwlock_flags.3 \ 1059289f547SJohn Baldwin sysdecode_mask.3 sysdecode_vmprot.3 \ 1069289f547SJohn Baldwin sysdecode_mask.3 sysdecode_wait4_options.3 \ 1079289f547SJohn Baldwin sysdecode_mask.3 sysdecode_wait6_options.3 108d6fb4894SJohn Baldwin 109dc89d069SBryan DreweryCLEANFILES= ioctl.c ioctl.c.tmp tables.h 110265e5898SJohn Baldwin 111265e5898SJohn Baldwin.if defined(COMPAT_32BIT) 112265e5898SJohn BaldwinCPP+= -m32 113265e5898SJohn Baldwin.endif 114265e5898SJohn Baldwin 115265e5898SJohn Baldwin.if ${MK_PF} != "no" 116265e5898SJohn BaldwinCFLAGS+=-DPF 117265e5898SJohn Baldwin.endif 118265e5898SJohn Baldwin 119265e5898SJohn Baldwin# Workaround duplicate declarations in <netinet/ip_compat.h> 120265e5898SJohn BaldwinCFLAGS.gcc.ioctl.c+= -Wno-redundant-decls 121a5f14abfSJohn Baldwin 1227a9cfa08SJohn BaldwinCFLAGS.gcc+= ${CFLAGS.gcc.${.IMPSRC}} 1238d8a74e6SJohn Baldwin 1245e1eb60dSBryan DreweryDEPENDOBJS+= tables.h 125dc89d069SBryan Drewerytables.h: mktables 126dc89d069SBryan Drewery sh ${.CURDIR}/mktables ${SYSROOT:U${DESTDIR}}${INCLUDEDIR} ${.TARGET} 1279289f547SJohn Baldwin 1287c6d0bb1SBryan Drewery# mkioctls runs find(1) for headers so needs to rebuild every time. This used 1297c6d0bb1SBryan Drewery# to be a hack only done in buildworld. 1307c6d0bb1SBryan Drewery.if !defined(_SKIP_BUILD) 13123ff19c6SAlex Richardsonioctl.c.tmp: .PHONY 1327c6d0bb1SBryan Drewery.endif 13323ff19c6SAlex Richardsonioctl.c.tmp: mkioctls .META 134a342f435SKristof Provost env CPP="${CPP}" MK_PF="${MK_PF}" \ 135c99b67a7SBryan Drewery /bin/sh ${.CURDIR}/mkioctls ${SYSROOT:U${DESTDIR}}${INCLUDEDIR} > ${.TARGET} 136265e5898SJohn Baldwin 13723ff19c6SAlex Richardsonioctl.c: ioctl.c.tmp 13823ff19c6SAlex Richardson if [ ! -e ${.TARGET} ] || ! cmp -s ${.TARGET} ${.TARGET}.tmp; then \ 13923ff19c6SAlex Richardson mv -f ${.TARGET}.tmp ${.TARGET}; \ 14023ff19c6SAlex Richardson fi 14123ff19c6SAlex Richardson 1429289f547SJohn Baldwinbeforedepend: ioctl.c tables.h 143265e5898SJohn Baldwin 144*d0f245d2SMark JohnstonHAS_TESTS= 145*d0f245d2SMark JohnstonSUBDIR.${MK_TESTS}+= tests 146*d0f245d2SMark Johnston 147d6fb4894SJohn Baldwin.include <bsd.lib.mk> 148