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. 29SRCS+= ${CAPABILITIES_CONF} 30 31MAKESYSCALLS_INTERP?= ${LUA} 32MAKESYSCALLS_SCRIPT?= ${SYSDIR}/tools/makesyscalls.lua 33MAKESYSCALLS= ${MAKESYSCALLS_INTERP} ${MAKESYSCALLS_SCRIPT} 34 35all: 36 @echo "make sysent only" 37 38# We .ORDER these explicitly so that we only run MAKESYSCALLS once, rather than 39# potentially once for each ${GENERATED} file. 40.ORDER: ${GENERATED} 41sysent: ${GENERATED} 42 43${GENERATED}: ${MAKESYSCALLS_SCRIPT} ${SRCS} 44 ${MAKESYSCALLS} ${SYSENT_FILE} ${SYSENT_CONF} 45