summaryrefslogtreecommitdiffstats
path: root/usr.sbin/config/mkmakefile.c
diff options
context:
space:
mode:
authorrstone <rstone@FreeBSD.org>2011-11-10 21:07:14 +0000
committerrstone <rstone@FreeBSD.org>2011-11-10 21:07:14 +0000
commit975afb573ac8cf465f2b2fd0a57385899e446948 (patch)
tree294715c8c19a96bf30b4a7a7aacfd94406b8344d /usr.sbin/config/mkmakefile.c
parentb920116b3673773e5155e62548e2b97c3a5d3e65 (diff)
downloadFreeBSD-src-975afb573ac8cf465f2b2fd0a57385899e446948.zip
FreeBSD-src-975afb573ac8cf465f2b2fd0a57385899e446948.tar.gz
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
Diffstat (limited to 'usr.sbin/config/mkmakefile.c')
-rw-r--r--usr.sbin/config/mkmakefile.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/usr.sbin/config/mkmakefile.c b/usr.sbin/config/mkmakefile.c
index 2372839..28edb1c 100644
--- a/usr.sbin/config/mkmakefile.c
+++ b/usr.sbin/config/mkmakefile.c
@@ -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");
}
}
OpenPOWER on IntegriCloud