svn commit: r360443 - head/usr.sbin/config

Bryan Drewery bdrewery at FreeBSD.org
Tue Apr 28 16:09:23 UTC 2020


Author: bdrewery
Date: Tue Apr 28 16:09:22 2020
New Revision: 360443
URL: https://svnweb.freebsd.org/changeset/base/360443

Log:
  config: Add no-ctfconvert support.
  
  Bump CONFIGVERS to 600018 for this support.
  
  Some files may purposely have debug info disabled or are *source files*
  that attempt to run ctfconvert on them. Currently ctfconvert ignores
  these errors but I have a change to make the errors real so we can
  catch real problems like exceeding type limits.
  
  Sponsored by:		Dell EMC
  Reviewed by:		imp, cem, kevans
  Differential Revision:	https://reviews.freebsd.org/D24535

Modified:
  head/usr.sbin/config/config.h
  head/usr.sbin/config/configvers.h
  head/usr.sbin/config/mkmakefile.c

Modified: head/usr.sbin/config/config.h
==============================================================================
--- head/usr.sbin/config/config.h	Tue Apr 28 16:09:18 2020	(r360442)
+++ head/usr.sbin/config/config.h	Tue Apr 28 16:09:22 2020	(r360443)
@@ -82,6 +82,7 @@ struct files_name {
 #define NO_OBJ		2
 #define BEFORE_DEPEND	4
 #define NOWERROR	16
+#define NO_CTFCONVERT	32
 
 struct device {
 	int	d_done;			/* processed */

Modified: head/usr.sbin/config/configvers.h
==============================================================================
--- head/usr.sbin/config/configvers.h	Tue Apr 28 16:09:18 2020	(r360442)
+++ head/usr.sbin/config/configvers.h	Tue Apr 28 16:09:22 2020	(r360443)
@@ -49,7 +49,7 @@
  *
  * $FreeBSD$
  */
-#define	CONFIGVERS	600017
+#define	CONFIGVERS	600018
 #define	MAJOR_VERS(x)	((x) / 100000)
 
 /* Last config(8) version to require envmode/hintmode */

Modified: head/usr.sbin/config/mkmakefile.c
==============================================================================
--- head/usr.sbin/config/mkmakefile.c	Tue Apr 28 16:09:18 2020	(r360442)
+++ head/usr.sbin/config/mkmakefile.c	Tue Apr 28 16:09:22 2020	(r360443)
@@ -397,7 +397,7 @@ read_file(char *fname)
 	char *wd, *this, *compilewith, *depends, *clean, *warning;
 	const char *objprefix;
 	int compile, match, nreqs, std, filetype, not,
-	    imp_rule, no_obj, before_depend, nowerror;
+	    imp_rule, no_ctfconvert, no_obj, before_depend, nowerror;
 
 	fp = fopen(fname, "r");
 	if (fp == NULL)
@@ -452,6 +452,7 @@ next:
 	warning = 0;
 	std = 0;
 	imp_rule = 0;
+	no_ctfconvert = 0;
 	no_obj = 0;
 	before_depend = 0;
 	nowerror = 0;
@@ -479,6 +480,10 @@ next:
 			nreqs = 0;
 			continue;
 		}
+		if (eq(wd, "no-ctfconvert")) {
+			no_ctfconvert++;
+			continue;
+		}
 		if (eq(wd, "no-obj")) {
 			no_obj++;
 			continue;
@@ -591,8 +596,10 @@ nextparam:;
 			tp->f_srcprefix = "$S/";
 		if (imp_rule)
 			tp->f_flags |= NO_IMPLCT_RULE;
+		if (no_ctfconvert)
+			tp->f_flags |= NO_CTFCONVERT;
 		if (no_obj)
-			tp->f_flags |= NO_OBJ;
+			tp->f_flags |= NO_OBJ | NO_CTFCONVERT;
 		if (before_depend)
 			tp->f_flags |= BEFORE_DEPEND;
 		if (nowerror)
@@ -805,7 +812,7 @@ do_rules(FILE *f)
 		else
 			fprintf(f, "\t%s\n", compilewith);
 
-		if (!(ftp->f_flags & NO_OBJ))
+		if (!(ftp->f_flags & NO_CTFCONVERT))
 			fprintf(f, "\t${NORMAL_CTFCONVERT}\n\n");
 		else
 			fprintf(f, "\n");


More information about the svn-src-head mailing list