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

Ryan Stone rstone at FreeBSD.org
Thu Nov 10 21:07:15 UTC 2011


Author: rstone
Date: Thu Nov 10 21:07:14 2011
New Revision: 227429
URL: http://svn.freebsd.org/changeset/base/227429

Log:
  The generated Makefile for the kernel was not running ctfconvert on
  object files corresponding to source files that had the compile-with
  option set in conf/files.  This means that any fbt probes for functions
  in that object file would not have correct argument types.
  
  The fix is to run ctfconvert on any target file that does not have the
  no-obj option set in files.
  
  PR:		bin/160275
  Reported by:	Paul Ambrose (ambrosehua AT gmail DOT com)
  MFC after:	1 week

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

Modified: head/usr.sbin/config/mkmakefile.c
==============================================================================
--- head/usr.sbin/config/mkmakefile.c	Thu Nov 10 20:28:30 2011	(r227428)
+++ head/usr.sbin/config/mkmakefile.c	Thu Nov 10 21:07:14 2011	(r227429)
@@ -762,16 +762,21 @@ do_rules(FILE *f)
 				break;
 			}
 			snprintf(cmd, sizeof(cmd),
-			    "${%s_%c%s}\n\t@${NORMAL_CTFCONVERT}", ftype,
+			    "${%s_%c%s}\n", ftype,
 			    toupper(och),
 			    ftp->f_flags & NOWERROR ? "_NOWERROR" : "");
 			compilewith = cmd;
 		}
 		*cp = och;
 		if (strlen(ftp->f_objprefix))
-			fprintf(f, "\t%s $S/%s\n\n", compilewith, np);
+			fprintf(f, "\t%s $S/%s\n", compilewith, np);
 		else
-			fprintf(f, "\t%s\n\n", compilewith);
+			fprintf(f, "\t%s\n", compilewith);
+
+		if (!(ftp->f_flags & NO_OBJ))
+			fprintf(f, "\t@${NORMAL_CTFCONVERT}\n\n");
+		else
+			fprintf(f, "\n");
 	}
 }
 


More information about the svn-src-all mailing list