Add a syntax-only target which attempts to compile the entire kernel as one

entity.  Think of it as super-lint.  Due to bugs in the GCC C frontend it
doesn't quite work right but it does provide useful feedback.
This commit is contained in:
matt 2008-02-03 06:46:29 +00:00
parent 4d24afd74c
commit 06531ceafe
1 changed files with 8 additions and 1 deletions

View File

@ -1,4 +1,4 @@
# $NetBSD: Makefile.kern.inc,v 1.107 2008/01/17 20:14:49 joerg Exp $
# $NetBSD: Makefile.kern.inc,v 1.108 2008/02/03 06:46:29 matt Exp $
#
# This file contains common `MI' targets and definitions and it is included
# at the bottom of each `MD' ${MACHINE}/conf/Makefile.${MACHINE}.
@ -375,6 +375,13 @@ lint: ${LOBJS}
${LINT} ${KERNLINTFLAGS} ${CPPFLAGS:M-[IDU]*} ${LOBJS}
.endif
# Attempt to do a syntax-only compile of the entire kernel as one entity.
# Alas, bugs in the GCC C frontend prevent this from completely effective
# but information can be gleaned from the output.
syntax-only: ${CFILES} ${MD_CFILES}
${CC} -fsyntax-only -combine ${CFLAGS} ${CPPFLAGS} \
${CFILES} ${MD_CFILES}
# List of kernel images that will be installed into the root file system.
# Some platforms may need to install more than one (e.g. a netbsd.aout file
# to be loaded directly by the firmware), so this can be overriden by them.