Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 19 Oct 2012 11:01:39 +0000 (UTC)
From:      John Baldwin <jhb@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: r241728 - in stable/8: . share/man/man7 share/mk sys/conf usr.sbin/config
Message-ID:  <201210191101.q9JB1djW071142@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: jhb
Date: Fri Oct 19 11:01:39 2012
New Revision: 241728
URL: http://svn.freebsd.org/changeset/base/241728

Log:
  MFC 206082,206179,207056,207057,210612,210636,210656,212423,212426,228121,
  228124,228137,228140,228141,228147,228153,228158,228311,241395,241396:
  Convert WITH_CTF into a normal build option where MK_CTF is set to yes/no
  depending on WITH_CTF/WITHOUT_CTF.  In addition, WITH_CTF can now be
  specified in src.conf (not recommended, there are some problems with
  static executables), make.conf (would also affect ports which do not use
  GNU make and do not override the compile targets) or in the kernel config
  (via "makeoptions WITH_CTF=yes").
  
  Eyeballed by:	netchild, fjoe

Modified:
  stable/8/Makefile.inc1   (contents, props changed)
  stable/8/UPDATING   (contents, props changed)
  stable/8/share/man/man7/build.7
  stable/8/share/mk/bsd.lib.mk
  stable/8/share/mk/bsd.own.mk
  stable/8/share/mk/bsd.port.mk
  stable/8/share/mk/bsd.prog.mk
  stable/8/share/mk/sys.mk
  stable/8/sys/conf/kern.post.mk
  stable/8/sys/conf/kern.pre.mk
  stable/8/sys/conf/kmod.mk
  stable/8/usr.sbin/config/mkmakefile.c
Directory Properties:
  stable/8/share/man/man7/   (props changed)
  stable/8/share/mk/   (props changed)
  stable/8/sys/   (props changed)
  stable/8/sys/conf/   (props changed)
  stable/8/usr.sbin/config/   (props changed)

Modified: stable/8/Makefile.inc1
==============================================================================
--- stable/8/Makefile.inc1	Fri Oct 19 10:38:32 2012	(r241727)
+++ stable/8/Makefile.inc1	Fri Oct 19 11:01:39 2012	(r241728)
@@ -48,8 +48,6 @@ SUBDIR+=games
 .endif
 .if ${MK_CDDL} != "no"
 SUBDIR+=cddl
-.else
-NO_CTF=1
 .endif
 SUBDIR+=gnu include
 .if ${MK_KERBEROS} != "no"

Modified: stable/8/UPDATING
==============================================================================
--- stable/8/UPDATING	Fri Oct 19 10:38:32 2012	(r241727)
+++ stable/8/UPDATING	Fri Oct 19 11:01:39 2012	(r241728)
@@ -15,6 +15,16 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 8.
 	debugging tools present in HEAD were left in place because
 	sun4v support still needs work to become production ready.
 
+20121018:
+	WITH_CTF can now be specified in src.conf (not recommended, there
+	are some problems with static executables), make.conf (would also
+	affect ports which do not use GNU make and do not override the
+	compile targets) or in the kernel config (via "makeoptions
+	WITH_CTF=yes").
+	When WITH_CTF was specified there before this was silently ignored,
+	so make sure that WITH_CTF is not used in places which could lead
+	to unwanted behavior.
+
 20120913:
 	The random(4) support for the VIA hardware random number
 	generator (`PADLOCK') is no longer enabled unconditionally.

Modified: stable/8/share/man/man7/build.7
==============================================================================
--- stable/8/share/man/man7/build.7	Fri Oct 19 10:38:32 2012	(r241727)
+++ stable/8/share/man/man7/build.7	Fri Oct 19 11:01:39 2012	(r241728)
@@ -24,7 +24,7 @@
 .\"
 .\" $FreeBSD$
 .\"
-.Dd July 2, 2012
+.Dd October 10, 2012
 .Dt BUILD 7
 .Os
 .Sh NAME
@@ -354,6 +354,9 @@ or the command line.
 .It Va NO_WERROR
 If defined, compiler warnings will not cause the build to halt,
 even if the makefile says otherwise.
+.It Va WITH_CTF
+If defined, the build process will run the DTrace CTF conversion
+tools on built objects.
 .El
 .Pp
 Additionally, builds in

Modified: stable/8/share/mk/bsd.lib.mk
==============================================================================
--- stable/8/share/mk/bsd.lib.mk	Fri Oct 19 10:38:32 2012	(r241727)
+++ stable/8/share/mk/bsd.lib.mk	Fri Oct 19 11:01:39 2012	(r241728)
@@ -36,7 +36,7 @@ NO_WERROR=
 .if defined(DEBUG_FLAGS)
 CFLAGS+= ${DEBUG_FLAGS}
 
-.if !defined(NO_CTF) && (${DEBUG_FLAGS:M-g} != "")
+.if ${MK_CTF} != "no" && ${DEBUG_FLAGS:M-g} != ""
 CTFFLAGS+= -g
 .endif
 .endif
@@ -68,15 +68,11 @@ PO_FLAG=-pg
 
 .c.po:
 	${CC} ${PO_FLAG} ${CFLAGS} -c ${.IMPSRC} -o ${.TARGET}
-.if defined(CTFCONVERT)
-	${CTFCONVERT} ${CTFFLAGS} ${.TARGET}
-.endif
+	${CTFCONVERT_CMD}
 
 .c.So:
 	${CC} ${PICFLAG} -DPIC ${CFLAGS} -c ${.IMPSRC} -o ${.TARGET}
-.if defined(CTFCONVERT)
-	${CTFCONVERT} ${CTFFLAGS} ${.TARGET}
-.endif
+	${CTFCONVERT_CMD}
 
 .cc.po .C.po .cpp.po .cxx.po:
 	${CXX} ${PO_FLAG} ${CXXFLAGS} -c ${.IMPSRC} -o ${.TARGET}
@@ -86,58 +82,40 @@ PO_FLAG=-pg
 
 .f.po:
 	${FC} -pg ${FFLAGS} -o ${.TARGET} -c ${.IMPSRC}
-.if defined(CTFCONVERT)
-	${CTFCONVERT} ${CTFFLAGS} ${.TARGET}
-.endif
+	${CTFCONVERT_CMD}
 
 .f.So:
 	${FC} ${PICFLAG} -DPIC ${FFLAGS} -o ${.TARGET} -c ${.IMPSRC}
-.if defined(CTFCONVERT)
-	${CTFCONVERT} ${CTFFLAGS} ${.TARGET}
-.endif
+	${CTFCONVERT_CMD}
 
 .m.po:
 	${OBJC} ${OBJCFLAGS} -pg -c ${.IMPSRC} -o ${.TARGET}
-.if defined(CTFCONVERT)
-	${CTFCONVERT} ${CTFFLAGS} ${.TARGET}
-.endif
+	${CTFCONVERT_CMD}
 
 .m.So:
 	${OBJC} ${PICFLAG} -DPIC ${OBJCFLAGS} -c ${.IMPSRC} -o ${.TARGET}
-.if defined(CTFCONVERT)
-	${CTFCONVERT} ${CTFFLAGS} ${.TARGET}
-.endif
+	${CTFCONVERT_CMD}
 
 .s.po .s.So:
 	${AS} ${AFLAGS} -o ${.TARGET} ${.IMPSRC}
-.if defined(CTFCONVERT)
-	${CTFCONVERT} ${CTFFLAGS} ${.TARGET}
-.endif
+	${CTFCONVERT_CMD}
 
 .asm.po:
 	${CC} -x assembler-with-cpp -DPROF ${CFLAGS} -c ${.IMPSRC} -o ${.TARGET}
-.if defined(CTFCONVERT)
-	${CTFCONVERT} ${CTFFLAGS} ${.TARGET}
-.endif
+	${CTFCONVERT_CMD}
 
 .asm.So:
 	${CC} -x assembler-with-cpp ${PICFLAG} -DPIC ${CFLAGS} \
 	    -c ${.IMPSRC} -o ${.TARGET}
-.if defined(CTFCONVERT)
-	${CTFCONVERT} ${CTFFLAGS} ${.TARGET}
-.endif
+	${CTFCONVERT_CMD}
 
 .S.po:
 	${CC} -DPROF ${CFLAGS} -c ${.IMPSRC} -o ${.TARGET}
-.if defined(CTFCONVERT)
-	${CTFCONVERT} ${CTFFLAGS} ${.TARGET}
-.endif
+	${CTFCONVERT_CMD}
 
 .S.So:
 	${CC} ${PICFLAG} -DPIC ${CFLAGS} -c ${.IMPSRC} -o ${.TARGET}
-.if defined(CTFCONVERT)
-	${CTFCONVERT} ${CTFFLAGS} ${.TARGET}
-.endif
+	${CTFCONVERT_CMD}
 
 all: objwarn
 
@@ -193,7 +171,11 @@ SOBJS+=		${OBJS:.o=.So}
 .if defined(SHLIB_NAME)
 _LIBS+=		${SHLIB_NAME}
 
+.if target(beforelinking)
+${SHLIB_NAME}: ${SOBJS} beforelinking
+.else
 ${SHLIB_NAME}: ${SOBJS}
+.endif
 	@${ECHO} building shared library ${SHLIB_NAME}
 	@rm -f ${.TARGET} ${SHLIB_LINK}
 .if defined(SHLIB_LINK)
@@ -208,7 +190,7 @@ ${SHLIB_NAME}: ${SOBJS}
 	    -o ${.TARGET} -Wl,-soname,${SONAME} \
 	    `NM='${NM}' lorder ${SOBJS} | tsort -q` ${LDADD}
 .endif
-.if defined(CTFMERGE)
+.if ${MK_CTF} != "no"
 	${CTFMERGE} ${CTFFLAGS} -o ${.TARGET} ${SOBJS}
 .endif
 .endif

Modified: stable/8/share/mk/bsd.own.mk
==============================================================================
--- stable/8/share/mk/bsd.own.mk	Fri Oct 19 10:38:32 2012	(r241727)
+++ stable/8/share/mk/bsd.own.mk	Fri Oct 19 11:01:39 2012	(r241728)
@@ -203,6 +203,7 @@ COMPRESS_EXT?=	.gz
 # regardless of user's setting).
 #
 .for var in \
+    CTF \
     INSTALLLIB \
     MAN \
     PROFILE
@@ -427,6 +428,7 @@ MK_${var}:=	yes
     BIND_LIBS \
     BIND_SIGCHASE \
     BIND_XML \
+    CTF \
     HESIOD \
     IDEA
 .if defined(WITH_${var}) && defined(WITHOUT_${var})
@@ -470,6 +472,7 @@ MK_BIND_ETC:=	no
 
 .if ${MK_CDDL} == "no"
 MK_ZFS:=	no
+MK_CTF:=	no
 .endif
 
 .if ${MK_CRYPT} == "no"
@@ -564,6 +567,14 @@ MK_${vv:H}:=	${MK_${vv:T}}
 .endif
 .endfor
 
+.if ${MK_CTF} != "no"
+CTFCONVERT_CMD=	${CTFCONVERT} ${CTFFLAGS} ${.TARGET}
+.elif ${MAKE_VERSION} >= 5201111300
+CTFCONVERT_CMD=
+.else
+CTFCONVERT_CMD=	@:
+.endif 
+
 .endif # !_WITHOUT_SRCCONF
 
 .endif	# !target(__<bsd.own.mk>__)

Modified: stable/8/share/mk/bsd.port.mk
==============================================================================
--- stable/8/share/mk/bsd.port.mk	Fri Oct 19 10:38:32 2012	(r241727)
+++ stable/8/share/mk/bsd.port.mk	Fri Oct 19 11:01:39 2012	(r241728)
@@ -7,5 +7,10 @@ BSDPORTMK?=	${PORTSDIR}/Mk/bsd.port.mk
 # and setting MK_* variables when building ports.
 _WITHOUT_SRCCONF=
 
+# Enable CTF conversion on request.
+.if defined(WITH_CTF)
+.undef NO_CTF
+.endif
+
 .include <bsd.own.mk>
 .include "${BSDPORTMK}"

Modified: stable/8/share/mk/bsd.prog.mk
==============================================================================
--- stable/8/share/mk/bsd.prog.mk	Fri Oct 19 10:38:32 2012	(r241727)
+++ stable/8/share/mk/bsd.prog.mk	Fri Oct 19 11:01:39 2012	(r241728)
@@ -18,7 +18,7 @@ NO_WERROR=
 .if defined(DEBUG_FLAGS)
 CFLAGS+=${DEBUG_FLAGS}
 
-.if !defined(NO_CTF) && (${DEBUG_FLAGS:M-g} != "")
+.if ${MK_CTF} != "no" && ${DEBUG_FLAGS:M-g} != ""
 CTFFLAGS+= -g
 .endif
 .endif
@@ -54,13 +54,17 @@ LDADD+=	-lobjc -lpthread
 
 OBJS+=  ${SRCS:N*.h:R:S/$/.o/g}
 
+.if target(beforelinking)
+${PROG}: ${OBJS} beforelinking
+.else
 ${PROG}: ${OBJS}
+.endif
 .if defined(PROG_CXX)
 	${CXX} ${CXXFLAGS} ${LDFLAGS} -o ${.TARGET} ${OBJS} ${LDADD}
 .else
 	${CC} ${CFLAGS} ${LDFLAGS} -o ${.TARGET} ${OBJS} ${LDADD}
 .endif
-.if defined(CTFMERGE)
+.if ${MK_CTF} != "no"
 	${CTFMERGE} ${CTFFLAGS} -o ${.TARGET} ${OBJS}
 .endif
 
@@ -80,13 +84,17 @@ SRCS=	${PROG}.c
 # - it's useful to keep objects around for crunching.
 OBJS=	${PROG}.o
 
+.if target(beforelinking)
+${PROG}: ${OBJS} beforelinking
+.else
 ${PROG}: ${OBJS}
+.endif
 .if defined(PROG_CXX)
 	${CXX} ${CXXFLAGS} ${LDFLAGS} -o ${.TARGET} ${OBJS} ${LDADD}
 .else
 	${CC} ${CFLAGS} ${LDFLAGS} -o ${.TARGET} ${OBJS} ${LDADD}
 .endif
-.if defined(CTFMERGE)
+.if ${MK_CTF} != "no"
 	${CTFMERGE} ${CTFFLAGS} -o ${.TARGET} ${OBJS}
 .endif
 .endif

Modified: stable/8/share/mk/sys.mk
==============================================================================
--- stable/8/share/mk/sys.mk	Fri Oct 19 10:38:32 2012	(r241727)
+++ stable/8/share/mk/sys.mk	Fri Oct 19 11:01:39 2012	(r241728)
@@ -45,23 +45,17 @@ CFLAGS		+=	-fno-strict-aliasing
 .endif
 .endif
 
-# Turn CTF conversion off by default for now. This default could be
-# changed later if DTrace becomes popular.
-.if !defined(WITH_CTF)
-NO_CTF		=	1
-.endif
-
 # C Type Format data is required for DTrace
 CTFFLAGS	?=	-L VERSION
 
-.if !defined(NO_CTF)
 CTFCONVERT	?=	ctfconvert
 CTFMERGE	?=	ctfmerge
 .if defined(CFLAGS) && (${CFLAGS:M-g} != "")
 CTFFLAGS	+=	-g
 .else
-CFLAGS		+=	-g
-.endif
+# XXX: What to do here? Is removing the CFLAGS part completely ok here?
+# For now comment it out to not compile with -g unconditionally.
+#CFLAGS		+=	-g
 .endif
 
 CXX		?=	c++
@@ -142,15 +136,11 @@ YFLAGS		?=	-d
 # SINGLE SUFFIX RULES
 .c:
 	${CC} ${CFLAGS} ${LDFLAGS} -o ${.TARGET} ${.IMPSRC}
-.if defined(CTFCONVERT)
-	${CTFCONVERT} ${CTFFLAGS} ${.TARGET}
-.endif
+	${CTFCONVERT_CMD}
 
 .f:
 	${FC} ${FFLAGS} ${LDFLAGS} -o ${.TARGET} ${.IMPSRC}
-.if defined(CTFCONVERT)
-	${CTFCONVERT} ${CTFFLAGS} ${.TARGET}
-.endif
+	${CTFCONVERT_CMD}
 
 .sh:
 	cp ${.IMPSRC} ${.TARGET}
@@ -160,33 +150,25 @@ YFLAGS		?=	-d
 
 .c.o:
 	${CC} ${CFLAGS} -c ${.IMPSRC}
-.if defined(CTFCONVERT)
-	${CTFCONVERT} ${CTFFLAGS} ${.TARGET}
-.endif
+	${CTFCONVERT_CMD}
 
 .f.o:
 	${FC} ${FFLAGS} -c ${.IMPSRC}
-.if defined(CTFCONVERT)
-	${CTFCONVERT} ${CTFFLAGS} ${.TARGET}
-.endif
+	${CTFCONVERT_CMD}
 
 .y.o:
 	${YACC} ${YFLAGS} ${.IMPSRC}
 	${CC} ${CFLAGS} -c y.tab.c
 	rm -f y.tab.c
 	mv y.tab.o ${.TARGET}
-.if defined(CTFCONVERT)
-	${CTFCONVERT} ${CTFFLAGS} ${.TARGET}
-.endif
+	${CTFCONVERT_CMD}
 
 .l.o:
 	${LEX} ${LFLAGS} ${.IMPSRC}
 	${CC} ${CFLAGS} -c lex.yy.c
 	rm -f lex.yy.c
 	mv lex.yy.o ${.TARGET}
-.if defined(CTFCONVERT)
-	${CTFCONVERT} ${CTFFLAGS} ${.TARGET}
-.endif
+	${CTFCONVERT_CMD}
 
 .y.c:
 	${YACC} ${YFLAGS} ${.IMPSRC}
@@ -224,15 +206,11 @@ YFLAGS		?=	-d
 
 .c:
 	${CC} ${CFLAGS} ${LDFLAGS} ${.IMPSRC} ${LDLIBS} -o ${.TARGET}
-.if defined(CTFCONVERT)
-	${CTFCONVERT} ${CTFFLAGS} ${.TARGET}
-.endif
+	${CTFCONVERT_CMD}
 
 .c.o:
 	${CC} ${CFLAGS} -c ${.IMPSRC}
-.if defined(CTFCONVERT)
-	${CTFCONVERT} ${CTFFLAGS} ${.TARGET}
-.endif
+	${CTFCONVERT_CMD}
 
 .cc .cpp .cxx .C:
 	${CXX} ${CXXFLAGS} ${LDFLAGS} ${.IMPSRC} ${LDLIBS} -o ${.TARGET}
@@ -242,15 +220,11 @@ YFLAGS		?=	-d
 
 .m.o:
 	${OBJC} ${OBJCFLAGS} -c ${.IMPSRC}
-.if defined(CTFCONVERT)
-	${CTFCONVERT} ${CTFFLAGS} ${.TARGET}
-.endif
+	${CTFCONVERT_CMD}
 
 .p.o:
 	${PC} ${PFLAGS} -c ${.IMPSRC}
-.if defined(CTFCONVERT)
-	${CTFCONVERT} ${CTFFLAGS} ${.TARGET}
-.endif
+	${CTFCONVERT_CMD}
 
 .e .r .F .f:
 	${FC} ${RFLAGS} ${EFLAGS} ${FFLAGS} ${LDFLAGS} ${.IMPSRC} ${LDLIBS} \
@@ -261,38 +235,28 @@ YFLAGS		?=	-d
 
 .S.o:
 	${CC} ${CFLAGS} -c ${.IMPSRC}
-.if defined(CTFCONVERT)
-	${CTFCONVERT} ${CTFFLAGS} ${.TARGET}
-.endif
+	${CTFCONVERT_CMD}
 
 .asm.o:
 	${CC} -x assembler-with-cpp ${CFLAGS} -c ${.IMPSRC}
-.if defined(CTFCONVERT)
-	${CTFCONVERT} ${CTFFLAGS} ${.TARGET}
-.endif
+	${CTFCONVERT_CMD}
 
 .s.o:
 	${AS} ${AFLAGS} -o ${.TARGET} ${.IMPSRC}
-.if defined(CTFCONVERT)
-	${CTFCONVERT} ${CTFFLAGS} ${.TARGET}
-.endif
+	${CTFCONVERT_CMD}
 
 # XXX not -j safe
 .y.o:
 	${YACC} ${YFLAGS} ${.IMPSRC}
 	${CC} ${CFLAGS} -c y.tab.c -o ${.TARGET}
 	rm -f y.tab.c
-.if defined(CTFCONVERT)
-	${CTFCONVERT} ${CTFFLAGS} ${.TARGET}
-.endif
+	${CTFCONVERT_CMD}
 
 .l.o:
 	${LEX} -t ${LFLAGS} ${.IMPSRC} > ${.PREFIX}.tmp.c
 	${CC} ${CFLAGS} -c ${.PREFIX}.tmp.c -o ${.TARGET}
 	rm -f ${.PREFIX}.tmp.c
-.if defined(CTFCONVERT)
-	${CTFCONVERT} ${CTFFLAGS} ${.TARGET}
-.endif
+	${CTFCONVERT_CMD}
 
 # XXX not -j safe
 .y.c:
@@ -304,34 +268,26 @@ YFLAGS		?=	-d
 
 .s.out .c.out .o.out:
 	${CC} ${CFLAGS} ${LDFLAGS} ${.IMPSRC} ${LDLIBS} -o ${.TARGET}
-.if defined(CTFCONVERT)
-	${CTFCONVERT} ${CTFFLAGS} ${.TARGET}
-.endif
+	${CTFCONVERT_CMD}
 
 .f.out .F.out .r.out .e.out:
 	${FC} ${EFLAGS} ${RFLAGS} ${FFLAGS} ${LDFLAGS} ${.IMPSRC} \
 	    ${LDLIBS} -o ${.TARGET}
 	rm -f ${.PREFIX}.o
-.if defined(CTFCONVERT)
-	${CTFCONVERT} ${CTFFLAGS} ${.TARGET}
-.endif
+	${CTFCONVERT_CMD}
 
 # XXX not -j safe
 .y.out:
 	${YACC} ${YFLAGS} ${.IMPSRC}
 	${CC} ${CFLAGS} ${LDFLAGS} y.tab.c ${LDLIBS} -ly -o ${.TARGET}
 	rm -f y.tab.c
-.if defined(CTFCONVERT)
-	${CTFCONVERT} ${CTFFLAGS} ${.TARGET}
-.endif
+	${CTFCONVERT_CMD}
 
 .l.out:
 	${LEX} -t ${LFLAGS} ${.IMPSRC} > ${.PREFIX}.tmp.c
 	${CC} ${CFLAGS} ${LDFLAGS} ${.PREFIX}.tmp.c ${LDLIBS} -ll -o ${.TARGET}
 	rm -f ${.PREFIX}.tmp.c
-.if defined(CTFCONVERT)
-	${CTFCONVERT} ${CTFFLAGS} ${.TARGET}
-.endif
+	${CTFCONVERT_CMD}
 
 # FreeBSD build pollution.  Hide it in the non-POSIX part of the ifdef.
 __MAKE_CONF?=/etc/make.conf

Modified: stable/8/sys/conf/kern.post.mk
==============================================================================
--- stable/8/sys/conf/kern.post.mk	Fri Oct 19 10:38:32 2012	(r241727)
+++ stable/8/sys/conf/kern.post.mk	Fri Oct 19 11:01:39 2012	(r241728)
@@ -15,6 +15,10 @@ MKMODULESENV+=	DESTDIR="${DESTDIR}"
 SYSDIR?= ${S:C;^[^/];${.CURDIR}/&;}
 MKMODULESENV+=	KERNBUILDDIR="${.CURDIR}" SYSDIR="${SYSDIR}"
 
+.if defined(WITH_CTF)
+MKMODULESENV+=	WITH_CTF="${WITH_CTF}"
+.endif
+
 .MAIN: all
 
 .for target in all clean cleandepend cleandir clobber depend install \
@@ -117,8 +121,8 @@ ${FULLKERNEL}: ${SYSTEM_DEP} vers.o
 	@rm -f ${.TARGET}
 	@echo linking ${.TARGET}
 	${SYSTEM_LD}
-.if defined(CTFMERGE)
-	${SYSTEM_CTFMERGE}
+.if ${MK_CTF} != "no"
+	${CTFMERGE} ${CTFFLAGS} -o ${.TARGET} ${SYSTEM_OBJS} vers.o
 .endif
 .if !defined(DEBUG)
 	${OBJCOPY} --strip-debug ${.TARGET}
@@ -267,9 +271,7 @@ kernel-reinstall:
 
 config.o env.o hints.o vers.o vnode_if.o:
 	${NORMAL_C}
-.if defined(CTFCONVERT)
-	${CTFCONVERT} ${CTFFLAGS} ${.TARGET}
-.endif
+	${NORMAL_CTFCONVERT}
 
 config.ln env.ln hints.ln vers.ln vnode_if.ln:
 	${NORMAL_LINT}

Modified: stable/8/sys/conf/kern.pre.mk
==============================================================================
--- stable/8/sys/conf/kern.pre.mk	Fri Oct 19 10:38:32 2012	(r241727)
+++ stable/8/sys/conf/kern.pre.mk	Fri Oct 19 11:01:39 2012	(r241728)
@@ -135,10 +135,12 @@ NORMAL_FW= uudecode -o ${.TARGET} ${.ALL
 NORMAL_FWO= ${LD} -b binary --no-warn-mismatch -d -warn-common -r \
 	-o ${.TARGET} ${.ALLSRC:M*.fw}
 
-.if defined(CTFCONVERT)
-NORMAL_CTFCONVERT= ${CTFCONVERT} ${CTFFLAGS} ${.TARGET}
-.else
+.if ${MK_CTF} != "no"
+NORMAL_CTFCONVERT=	${CTFCONVERT} ${CTFFLAGS} ${.TARGET}
+.elif ${MAKE_VERSION} >= 5201111300
 NORMAL_CTFCONVERT=
+.else
+NORMAL_CTFCONVERT=	@:
 .endif
 
 NORMAL_LINT=	${LINT} ${LINTFLAGS} ${CFLAGS:M-[DIU]*} ${.IMPSRC}
@@ -149,10 +151,6 @@ SYSTEM_DEP= Makefile ${SYSTEM_OBJS}
 SYSTEM_OBJS= locore.o ${MDOBJS} ${OBJS}
 SYSTEM_OBJS+= ${SYSTEM_CFILES:.c=.o}
 SYSTEM_OBJS+= hack.So
-.if defined(CTFMERGE)
-SYSTEM_CTFMERGE= ${CTFMERGE} ${CTFFLAGS} -o ${.TARGET} ${SYSTEM_OBJS} vers.o
-LD+= -g
-.endif
 SYSTEM_LD= @${LD} -Bdynamic -T ${LDSCRIPT} --no-warn-mismatch \
 	-warn-common -export-dynamic -dynamic-linker /red/herring \
 	-o ${.TARGET} -X ${SYSTEM_OBJS} vers.o

Modified: stable/8/sys/conf/kmod.mk
==============================================================================
--- stable/8/sys/conf/kmod.mk	Fri Oct 19 10:38:32 2012	(r241727)
+++ stable/8/sys/conf/kmod.mk	Fri Oct 19 11:01:39 2012	(r241728)
@@ -133,7 +133,7 @@ CFLAGS+=	-G0 -fno-pic -mno-abicalls -mlo
 .endif
 
 .if defined(DEBUG) || defined(DEBUG_FLAGS)
-CTFFLAGS+=      -g
+CTFFLAGS+=	-g
 .endif
 
 .if defined(FIRMWS)
@@ -201,7 +201,7 @@ ${KMOD}.kld: ${OBJS}
 ${FULLPROG}: ${OBJS}
 .endif
 	${LD} ${LDFLAGS} -r -d -o ${.TARGET} ${OBJS}
-.if defined(WITH_CTF)
+.if defined(MK_CTF) && ${MK_CTF} != "no"
 	${CTFMERGE} ${CTFFLAGS} -o ${.TARGET} ${OBJS}
 .endif
 .if defined(EXPORT_SYMS)

Modified: stable/8/usr.sbin/config/mkmakefile.c
==============================================================================
--- stable/8/usr.sbin/config/mkmakefile.c	Fri Oct 19 10:38:32 2012	(r241727)
+++ stable/8/usr.sbin/config/mkmakefile.c	Fri Oct 19 11:01:39 2012	(r241728)
@@ -426,7 +426,7 @@ nextparam:
 		next_quoted_word(fp, wd);
 		if (wd == 0) {
 			fprintf(stderr,
-			    "%s: %s missing compile command string.\n",
+			    "%s: %s missing dependency string.\n",
 			    fname, this);
 			exit(1);
 		}
@@ -742,7 +742,7 @@ do_rules(FILE *f)
 				break;
 			}
 			snprintf(cmd, sizeof(cmd),
-			    "${%s_%c%s}\n", ftype,
+			    "${%s_%c%s}", ftype,
 			    toupper(och),
 			    ftp->f_flags & NOWERROR ? "_NOWERROR" : "");
 			compilewith = cmd;
@@ -751,9 +751,7 @@ do_rules(FILE *f)
 		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");
+			fprintf(f, "\t${NORMAL_CTFCONVERT}\n\n");
 		else
 			fprintf(f, "\n");
 	}



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201210191101.q9JB1djW071142>