mirror of
https://git.FreeBSD.org/src.git
synced 2024-12-05 09:14:03 +00:00
0d7cc1d0eb
were recently), a simple 'make cleandepend; make depend' is sufficient to keep the tree buildable after a cvs update when doing incremental builds. However, kdump and truss use a script which searches for header files that define ioctls, and generates C code that includes them. This script will usually not need updating when a header file is removed, so the normal dependency mechanism will not realize that it needs to be re-run. One is therefore left with code that references dead files but will only be removed by a full 'make clean', which defeats the purpose of incremental builds. To work around this, modify the cleandepend target in bsd.dep.mk to also remove any files listed in a new variable named CLEANDEPFILES, and modify kdump's and truss's Makefiles accordingly. MFC after: 2 weeks
36 lines
964 B
Makefile
36 lines
964 B
Makefile
# $FreeBSD$
|
|
|
|
WARNS?= 6
|
|
NO_WERROR=
|
|
PROG= truss
|
|
SRCS= main.c setup.c syscalls.c syscalls.h ioctl.c ${MACHINE_ARCH}-fbsd.c
|
|
.if ${MACHINE_ARCH} == "i386"
|
|
SRCS+= i386-linux.c linux_syscalls.h
|
|
.endif
|
|
|
|
CFLAGS+= -I${.CURDIR} -I.
|
|
CLEANDEPFILES=i386l-syscalls.master syscalls.master linux_syscalls.h \
|
|
syscalls.h ioctl.c
|
|
CLEANFILES+=${CLEANDEPFILES}
|
|
|
|
.SUFFIXES: .master
|
|
|
|
i386l-syscalls.master: ${.CURDIR}/../../sys/i386/linux/syscalls.master
|
|
cat ${.ALLSRC} > i386l-syscalls.master
|
|
|
|
linux_syscalls.h: i386l-syscalls.master
|
|
/bin/sh ${.CURDIR}/../../sys/kern/makesyscalls.sh i386l-syscalls.master \
|
|
${.CURDIR}/i386linux.conf
|
|
|
|
syscalls.master: ${.CURDIR}/../../sys/kern/syscalls.master
|
|
cat ${.ALLSRC} > syscalls.master
|
|
|
|
syscalls.h: syscalls.master
|
|
/bin/sh ${.CURDIR}/../../sys/kern/makesyscalls.sh syscalls.master \
|
|
${.CURDIR}/i386.conf
|
|
|
|
ioctl.c: ${.CURDIR}/../kdump/mkioctls
|
|
sh ${.CURDIR}/../kdump/mkioctls ${DESTDIR}/usr/include > ${.TARGET}
|
|
|
|
.include <bsd.prog.mk>
|