summaryrefslogtreecommitdiffstats
path: root/usr.sbin/config/mkmakefile.c
diff options
context:
space:
mode:
authorpeter <peter@FreeBSD.org>2002-02-20 23:35:56 +0000
committerpeter <peter@FreeBSD.org>2002-02-20 23:35:56 +0000
commitcf06489c2d4eab716cf9a022f801ae33d4a2a1ba (patch)
tree582d416db8501b0a42f46101a40d50ca531d43ea /usr.sbin/config/mkmakefile.c
parent73a8c2ba1edcf7da7d21bc535e061af8110779eb (diff)
downloadFreeBSD-src-cf06489c2d4eab716cf9a022f801ae33d4a2a1ba.zip
FreeBSD-src-cf06489c2d4eab716cf9a022f801ae33d4a2a1ba.tar.gz
Commit some infrastructure for turning on -Werror for kernel compiles.
It doesn't actually do it yet though. This adds a flag to config so that we can exclude certain vendor files from this even when the rest of the kernel has it on. make -DNO_WERROR would also bypass all of it.
Diffstat (limited to 'usr.sbin/config/mkmakefile.c')
-rw-r--r--usr.sbin/config/mkmakefile.c14
1 files changed, 11 insertions, 3 deletions
diff --git a/usr.sbin/config/mkmakefile.c b/usr.sbin/config/mkmakefile.c
index dda72b6..c24a121 100644
--- a/usr.sbin/config/mkmakefile.c
+++ b/usr.sbin/config/mkmakefile.c
@@ -317,7 +317,7 @@ read_files(void)
char *wd, *this, *needs, *compilewith, *depends, *clean, *warning;
char fname[MAXPATHLEN];
int nreqs, first = 1, isdup, std, filetype,
- imp_rule, no_obj, needcount, before_depend, mandatory;
+ imp_rule, no_obj, needcount, before_depend, mandatory, nowerror;
ftab = 0;
if (ident == NULL) {
@@ -384,6 +384,7 @@ next:
no_obj = 0;
needcount = 0;
before_depend = 0;
+ nowerror = 0;
filetype = NORMAL;
if (eq(wd, "standard")) {
std = 1;
@@ -475,6 +476,10 @@ nextparam:
filetype = PROFILING;
goto nextparam;
}
+ if (eq(wd, "nowerror")) {
+ nowerror = 1;
+ goto nextparam;
+ }
if (needs == 0 && nreqs == 1)
needs = ns(wd);
if (isdup)
@@ -547,6 +552,8 @@ doneparam:
tp->f_flags |= BEFORE_DEPEND;
if (needcount)
tp->f_flags |= NEED_COUNT;
+ if (nowerror)
+ tp->f_flags |= NOWERROR;
tp->f_needs = needs;
tp->f_compilewith = compilewith;
tp->f_depends = depends;
@@ -736,8 +743,9 @@ do_rules(FILE *f)
printf("config: don't know rules for %s\n", np);
break;
}
- snprintf(cmd, sizeof(cmd), "${%s_%c}", ftype,
- toupper(och));
+ snprintf(cmd, sizeof(cmd), "${%s_%c%s}", ftype,
+ toupper(och),
+ ftp->f_flags & NOWERROR ? "_NOWERROR" : "");
compilewith = cmd;
}
*cp = och;
OpenPOWER on IntegriCloud