From owner-svn-src-head@FreeBSD.ORG Thu Nov 7 22:50:43 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 5F77AA2D; Thu, 7 Nov 2013 22:50:43 +0000 (UTC) (envelope-from ian@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 32C9C246F; Thu, 7 Nov 2013 22:50:43 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id rA7MohOK093368; Thu, 7 Nov 2013 22:50:43 GMT (envelope-from ian@svn.freebsd.org) Received: (from ian@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id rA7Mohmm093366; Thu, 7 Nov 2013 22:50:43 GMT (envelope-from ian@svn.freebsd.org) Message-Id: <201311072250.rA7Mohmm093366@svn.freebsd.org> From: Ian Lepore Date: Thu, 7 Nov 2013 22:50:43 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r257825 - head X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 07 Nov 2013 22:50:43 -0000 Author: ian Date: Thu Nov 7 22:50:42 2013 New Revision: 257825 URL: http://svnweb.freebsd.org/changeset/base/257825 Log: Instead of modeling the kernel-tools build after the bootstrap tools, build kernel tools the way cross-tools get built. This seems to result in the tool getting installed in the right place. It also seems more correct in retrospect, because if a tool emitted code or binary data as part of building the kernel, it should do so in target-specific ways (endianess, architecture, whatever). That issue is moot for aicasm, our only current tool, but it still seems to be more correct in principle. Modified: head/Makefile.inc1 Modified: head/Makefile.inc1 ============================================================================== --- head/Makefile.inc1 Thu Nov 7 22:47:52 2013 (r257824) +++ head/Makefile.inc1 Thu Nov 7 22:50:42 2013 (r257825) @@ -439,16 +439,6 @@ IMAKE_MTREE= MTREE_CMD="nmtree ${MTREEFL KMAKEENV= ${WMAKEENV} KMAKE= ${KMAKEENV} ${MAKE} ${.MAKEFLAGS} ${KERNEL_FLAGS} KERNEL=${INSTKERNNAME} -# kernel build-tools stage -KTMAKE= MAKEOBJDIRPREFIX=${WORLDTMP} \ - ${WMAKEENV} ${MAKE} -f Makefile.inc1 \ - TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \ - DESTDIR= \ - BOOTSTRAPPING=${OSRELDATE} \ - SSP_CFLAGS= \ - -DNO_LINT \ - -DNO_CPU_CFLAGS -DNO_WARNS -DNO_CTF -DEARLY_BUILD - # # buildworld # @@ -1029,7 +1019,7 @@ buildkernel: @echo "--------------------------------------------------------------" @echo ">>> stage 2.3: build tools" @echo "--------------------------------------------------------------" - ${_+_}cd ${.CURDIR}; ${KTMAKE} kernel-tools + ${_+_}cd ${.CURDIR}; ${XMAKE} kernel-tools .if !defined(NO_KERNELDEPEND) @echo @echo "--------------------------------------------------------------" @@ -1360,9 +1350,9 @@ build-tools: .MAKE # kernel-tools: Build kernel-building tools # kernel-tools: .MAKE - mkdir -p ${WORLDTMP}/usr + mkdir -p ${MAKEOBJDIRPREFIX}/usr mtree -deU -f ${.CURDIR}/etc/mtree/BSD.usr.dist \ - -p ${WORLDTMP}/usr >/dev/null + -p ${MAKEOBJDIRPREFIX}/usr >/dev/null .for _tool in \ sys/dev/aic7xxx/aicasm ${_+_}@${ECHODIR} "===> ${_tool} (obj,depend,all,install)"; \ @@ -1370,7 +1360,7 @@ kernel-tools: .MAKE ${MAKE} DIRPRFX=${_tool}/ obj && \ ${MAKE} DIRPRFX=${_tool}/ depend && \ ${MAKE} DIRPRFX=${_tool}/ all && \ - ${MAKE} DIRPRFX=${_tool}/ DESTDIR=${WORLDTMP} install + ${MAKE} DIRPRFX=${_tool}/ DESTDIR=${MAKEOBJDIRPREFIX} install .endfor #