From owner-freebsd-current@freebsd.org Sat Mar 11 23:31:01 2017 Return-Path: Delivered-To: freebsd-current@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 0259DD08CE1 for ; Sat, 11 Mar 2017 23:31:01 +0000 (UTC) (envelope-from ian@freebsd.org) Received: from outbound1b.ore.mailhop.org (outbound1b.ore.mailhop.org [54.200.247.200]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id D648114CD for ; Sat, 11 Mar 2017 23:31:00 +0000 (UTC) (envelope-from ian@freebsd.org) X-MHO-User: b6a7ec32-06b2-11e7-ba57-8bc134ee460a X-Report-Abuse-To: https://support.duocircle.com/support/solutions/articles/5000540958-duocircle-standard-smtp-abuse-information X-Originating-IP: 73.78.92.27 X-Mail-Handler: DuoCircle Outbound SMTP Received: from ilsoft.org (unknown [73.78.92.27]) by outbound1.ore.mailhop.org (Halon) with ESMTPSA id b6a7ec32-06b2-11e7-ba57-8bc134ee460a; Sat, 11 Mar 2017 23:30:30 +0000 (UTC) Received: from rev (rev [172.22.42.240]) by ilsoft.org (8.15.2/8.15.2) with ESMTP id v2BNTtL7002174; Sat, 11 Mar 2017 16:29:55 -0700 (MST) (envelope-from ian@freebsd.org) Message-ID: <1489274995.40576.65.camel@freebsd.org> Subject: Re: Deterministic rescue buildworld error with custom make.conf/src.conf/MAKEOBJDIRPREFIX From: Ian Lepore To: Lawrence Stewart , FreeBSD Current Date: Sat, 11 Mar 2017 16:29:55 -0700 In-Reply-To: References: Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: Evolution 3.18.5.1 FreeBSD GNOME Team Port Mime-Version: 1.0 Content-Transfer-Encoding: 8bit X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 11 Mar 2017 23:31:01 -0000 On Sun, 2017-03-12 at 10:22 +1100, Lawrence Stewart wrote: > Hi all, > > I'm unable to complete buildworld with 2 recent svn revs I've tried > (r314838 and r315059). I'm building for a slightly resource > constrained > production system so am specifying custom settings and a different > obj > tree location so I can copy it to the target system. The error > persists > after an "rm -rf /usr/obj/*", and if parallel building is disabled. > > The underlying build system built from r314838 via simple "make -C > /usr/src -s -j6 buildworld buildkernel" built and installed fine, so > the > problem seems to be around the use of the build customisations. > > Any clues? > > Cheers, > Lawrence > > > root@builder-head-amd64:/usr/src # cat cust_make.conf > KERNCONF=GENERIC-NODEBUG > MALLOC_PRODUCTION=YES > > root@builder-head-amd64:/usr/src # cat cust_src.conf > WITHOUT_PROFILE=1 > > root@builder-head-amd64:/usr/src # make > __MAKE_CONF=/usr/src/cust_make.conf SRCCONF=/usr/src/cust_src.conf > MAKEOBJDIRPREFIX=/usr/obj/cust buildworld buildkernel > [...] > MK_AUTO_OBJ=no MK_TESTS=no  UPDATE_DEPENDFILE=no  _RECURSING_CRUNCH=1 > CC="cc -target x86_64-unknown-freebsd12.0 > --sysroot=/usr/obj/cust/usr/src/tmp > -B/usr/obj/cust/usr/src/tmp/usr/bin > -O2 -pipe   -std=gnu99    -Qunused-arguments  "  CXX="c++  -target > x86_64-unknown-freebsd12.0 --sysroot=/usr/obj/cust/usr/src/tmp > -B/usr/obj/cust/usr/src/tmp/usr/bin -O2 -pipe -Qunused-arguments > -Wno-c++11-extensions  "  make .MAKE.MODE="normal curdirOk=yes" > .MAKE.META.IGNORE_PATHS=""  -f rescue.mk exe > cc -target x86_64-unknown-freebsd12.0 > --sysroot=/usr/obj/cust/usr/src/tmp > -B/usr/obj/cust/usr/src/tmp/usr/bin > -O2 -pipe   -std=gnu99    -Qunused-arguments   -nostdlib -Wl,-dc -r > -o > cat.lo cat_stub.o > /usr/obj/cust/usr/src/rescue/rescue//usr/src/bin/cat/cat.o > cc: error: no such file or directory: > '/usr/obj/cust/usr/src/rescue/rescue//usr/src/bin/cat/cat.o' > *** Error code 1 > > There appear to be a lot of missing .o files under the rescue obj > tree: > > root@builder-head-amd64:/usr/src # find > /usr/obj/cust/usr/src/rescue/rescue//usr -type f > /usr/obj/cust/usr/src/rescue/rescue//usr/src/bin/sh/mksyntax.o > /usr/obj/cust/usr/src/rescue/rescue//usr/src/bin/sh/mksyntax > /usr/obj/cust/usr/src/rescue/rescue//usr/src/bin/sh/mknodes.o > /usr/obj/cust/usr/src/rescue/rescue//usr/src/bin/sh/mknodes > /usr/obj/cust/usr/src/rescue/rescue//usr/src/bin/csh/sh.err.h > /usr/obj/cust/usr/src/rescue/rescue//usr/src/bin/csh/tc.const.h > /usr/obj/cust/usr/src/rescue/rescue//usr/src/bin/csh/gethost > > compared with an obj tree on a different head system: > > find /usr/obj/usr/src/rescue/rescue/usr/ -type f | wc -l >     1552 > _______________________________________________ > freebsd-current@freebsd.org mailing list > https://lists.freebsd.org/mailman/listinfo/freebsd-current > To unsubscribe, send any mail to "freebsd-current-unsubscribe@freebsd > .org" The MAKEOBJDIRPREFIX variable must be set in the environment, not in make.conf or on the make command line (documented in build(7)). -- Ian