Makefile.ioctl-c revision 1.36
11.36Schristos#	$NetBSD: Makefile.ioctl-c,v 1.36 2018/06/12 15:40:39 christos Exp $
21.5Slukem
31.5Slukem# NOTE: <bsd.own.mk> needs to be previously .included for NETBSDSRCDIR
41.1Smrg
51.24Sdsl# We are trying to get the list of .h files that define all ioctls
61.24Sdsl# This version grabs the non-obsolete .h files from the set lists
71.24Sdsl# and silently ignores any that don't exist in ${DESTDIR}.
81.24Sdsl# NB: The compiler uses the .h files in ${NETBSDSRCDIR}.
91.24Sdsl
101.26SchristosSETBASES=	${NETBSDSRCDIR}/distrib/sets/lists/comp \
111.26Schristos		${NETBSDSRCDIR}/distrib/sets/lists/xcomp
121.26Schristos
131.26Schristos.for sb in ${SETBASES}
141.26Schristos.if exists(${sb}/mi)
151.26SchristosSETFILES:=${SETFILES} ${sb}/mi
161.26Schristos.endif
171.24Sdsl.for md in md.${MACHINE} /md.${MACHINE}.${MACHINE_ARCH}
181.26Schristos.if exists(${sb}/${md})
191.26SchristosSETFILES:= ${SETFILES} ${sb}/${md}
201.24Sdsl.endif
211.24Sdsl.endfor
221.26Schristos.endfor
231.30Sjoerg.if ${MKDTRACE} != "no"
241.29SchristosEXTRAS=	${NETBSDSRCDIR}/external/cddl/osnet/dist/uts/common/sys/dtrace.h
251.29Schristos.endif
261.8Sthorpej
271.25Suebayasi.if !make(cleandir) && !make(obj) && !make(includes) && !make(install)
281.34SchristosDEPFILEGLOB = ${TOOL_SED} \
291.34Schristos    -ne '/\/usr\/.*include\/.*\.h[ 	]/{s/[ 	,]obsolete//;t' \
301.34Schristos    -e "s/xorg_server_ver=${XORG_SERVER_VER}//;t skipserver" \
311.34Schristos    -e "s/xorg_server_ver=//;t" \
321.34Schristos    -e ":skipserver" \
331.34Schristos    -e 's/xenio//;t' \
341.34Schristos    -e 's,\.\([^ 	]*\).*,${DESTDIR}\1,;p;}' ${SETFILES}
351.29SchristosDEPFILES != (${DEPFILEGLOB}; echo ${EXTRAS}) | xargs egrep -l '(_IO\(|_IOR\(|_IOW\(|_IOWR\()' 2>/dev/null || :
361.7Schristos.endif
371.6Schristos
381.16Stron
391.16StronSRCS+=		${PROG}-ioctl.c
401.16StronCLEANFILES+=	${PROG}-ioctl.c
411.19SmattDPSRCS+=	${PROG}-ioctl.c
421.26SchristosCPPFLAGS+=	-I${DESTDIR}/usr/X11R7/include/libdrm
431.26SchristosCPPFLAGS+=	-I${DESTDIR}/usr/X11R7/include/pixman-1
441.26SchristosCPPFLAGS+=	-I${DESTDIR}/usr/X11R7/include
451.32Sknakahar.if ${MKDTRACE} != "no"
461.29SchristosCPPFLAGS+=	-I${NETBSDSRCDIR}/external/cddl/osnet/sys
471.29SchristosCPPFLAGS+=	-I${NETBSDSRCDIR}/external/cddl/osnet/dist/uts/common
481.35SchsCWARNFLAGS+=	-Wno-unknown-pragmas
491.33Smrg.endif
501.31SjoergCPPFLAGS+=	-D_DEV_IC_BT8XX_H_
511.26SchristosCPPFLAGS+=	-D_ALTQ_ALTQ_JOBS_H_	# redefinition of inline
521.26Schristos# De-select one, dup ioctls
531.26SchristosCPPFLAGS+=	-D_VIA_DRM_H_		# Missing header
541.28Schristos#CPPFLAGS+=	-D_I915_DRM_H_		# Dup ioctls
551.28SchristosCPPFLAGS+=	-DQXL_DRM_H		# Dup ioctls
561.26SchristosCPPFLAGS+=	-D__R128_DRM_H__	# Dup ioctls
571.26SchristosCPPFLAGS+=	-D__SIS_DRM_H__		# Dup ioctls
581.26SchristosCPPFLAGS+=	-D__SAVAGE_DRM_H__	# Dup ioctls
591.26SchristosCPPFLAGS+=	-D__RADEON_DRM_H__	# Dup ioctls
601.26SchristosCPPFLAGS+=	-D__MACH64_DRM_H__	# Dup ioctls
611.26SchristosCPPFLAGS+=	-D__MGA_DRM_H__		# Dup ioctls
621.2Smrg
631.36Schristos${PROG}-ioctl.c: mkioctls Makefile ${DEPFILES} ${SETFILES}
641.36Schristos	${_MKTARGET_CREATE}
651.36Schristos	AWK=${TOOL_AWK:q} CC="${CC:q}" DESTDIR=${DESTDIR:q} SED=${TOOL_SED:q} \
661.36Schristos	    NETBSDSRCDIR=${NETBSDSRCDIR:q} CPPFLAGS=${CPPFLAGS:q} \
671.36Schristos	    ${HOST_SH} ${NETBSDSRCDIR}/usr.bin/kdump/mkioctls \
681.36Schristos	    ${DEPFILES} >${.TARGET}
691.36Schristos
701.6Schristos${DEPFILES}: .PRECIOUS
71