Date: Sun, 27 May 2012 00:34:57 +0000 (UTC) From: Ryan Stone <rstone@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-8@freebsd.org Subject: svn commit: r236132 - stable/8/usr.sbin/config Message-ID: <201205270034.q4R0Yvqd016071@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: rstone Date: Sun May 27 00:34:56 2012 New Revision: 236132 URL: http://svn.freebsd.org/changeset/base/236132 Log: MFC 227429 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) Modified: stable/8/usr.sbin/config/mkmakefile.c Directory Properties: stable/8/usr.sbin/config/ (props changed) Modified: stable/8/usr.sbin/config/mkmakefile.c ============================================================================== --- stable/8/usr.sbin/config/mkmakefile.c Sun May 27 00:21:27 2012 (r236131) +++ stable/8/usr.sbin/config/mkmakefile.c Sun May 27 00:34:56 2012 (r236132) @@ -742,15 +742,20 @@ do_rules(FILE *f) break; } snprintf(cmd, sizeof(cmd), - "${%s_%c%s}\n.if defined(NORMAL_CTFCONVERT) && " - "!empty(NORMAL_CTFCONVERT)\n" - "\t${NORMAL_CTFCONVERT}\n.endif", ftype, + "${%s_%c%s}\n", ftype, toupper(och), ftp->f_flags & NOWERROR ? "_NOWERROR" : ""); compilewith = cmd; } *cp = och; - fprintf(f, "\t%s\n\n", compilewith); + fprintf(f, "\t%s\n", compilewith); + + if (!(ftp->f_flags & NO_OBJ)) + fprintf(f, ".if defined(NORMAL_CTFCONVERT) && " + "!empty(NORMAL_CTFCONVERT)\n" + "\t${NORMAL_CTFCONVERT}\n.endif\n\n"); + else + fprintf(f, "\n"); } }
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201205270034.q4R0Yvqd016071>