1# $FreeBSD$ 2 3# Don't use an OBJDIR 4.OBJDIR: ${.CURDIR} 5 6.include <bsd.sysdir.mk> 7.include <src.lua.mk> 8 9COMMON_GENERATED= proto.h \ 10 syscall.h \ 11 syscalls.c \ 12 sysent.c \ 13 systrace_args.c 14 15GENERATED_PREFIX?= 16GENERATED?= ${COMMON_GENERATED:S/^/${GENERATED_PREFIX}/} 17SYSENT_FILE?= syscalls.master 18SYSENT_CONF?= syscalls.conf 19 20# Including Makefile should override SYSENT_FILE and SYSENT_CONF as needed, 21# and set GENERATED. 22SRCS+= ${SYSENT_FILE} 23SRCS+= ${SYSENT_CONF} 24 25# Ensure that the target gets updated if the capabilities file is modified, 26# even though it is not an explicit input to makesyscalls.lua. For some 27# targets, like Linux system calls, this is unnecessary, but a spurious rebuild 28# is both rare and harmless. 29CAPABILITIES_CONF?= ${SYSDIR}/kern/capabilities.conf 30SRCS+= ${CAPABILITIES_CONF} 31 32MAKESYSCALLS_INTERP?= ${LUA} 33MAKESYSCALLS_SCRIPT?= ${SYSDIR}/tools/makesyscalls.lua 34MAKESYSCALLS= ${MAKESYSCALLS_INTERP} ${MAKESYSCALLS_SCRIPT} 35 36all: 37 @echo "make sysent only" 38 39# We .ORDER these explicitly so that we only run MAKESYSCALLS once, rather than 40# potentially once for each ${GENERATED} file. 41.ORDER: ${GENERATED} 42sysent: ${GENERATED} 43 44${GENERATED}: ${MAKESYSCALLS_SCRIPT} ${SRCS} 45 ${MAKESYSCALLS} ${SYSENT_FILE} ${SYSENT_CONF} 46