Subject: port-sparc64/25265: sparc64 release build broken
To: None <gnats-bugs@gnats.netbsd.org>
From: None <dmcmahill@NetBSD.org>
List: netbsd-bugs
Date: 04/20/2004 22:19:49
>Number: 25265
>Category: port-sparc64
>Synopsis: sparc64 release build broken
>Confidential: no
>Severity: critical
>Priority: high
>Responsible: port-sparc64-maintainer
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Wed Apr 21 02:20:00 UTC 2004
>Closed-Date:
>Last-Modified:
>Originator: Dan McMahill
>Release: NetBSD 2.0C
>Organization:
NetBSD
>Environment:
System: NetBSD mudshark 2.0C NetBSD 2.0C (MUDSHARK) #19: Sun Apr 18 22:38:53 EDT 2004 root@mudshark:/usr/cvs/src/sys/arch/sparc64/compile/MUDSHARK sparc64
Architecture: sparc64
Machine: sparc64
rev 1.11 of src/distrib/common/list.sysinst
>Description:
rev 1.11 of src/distrib/common/list.sysinst breaks the building of a sparc64 release.
The build was done with:
./build.sh -a sparc64 -m sparc64 -T /usr/build/tools \
-D /usr/build/destdir.sparc64 -R /usr/build/release release
The failure is at:
cp: /usr/cvs/src/distrib/sparc64/xminiroot/obj/sysinst/sysinstmsgs.fr: No such file or directory
*** Failed target: work.built
*** Failed command: [ "ramdiskbin /usr/cvs/src/distrib/sparc64/xminiroot/../instfs/disktab.preinstall /usr/cvs/src/dist
rib/sparc64/xminiroot/../instfs/dot.profile /usr/cvs/src/distrib/sparc64/xminiroot/../instfs/termcap.mini /usr/cvs/src/
etc/group /usr/cvs/src/etc/master.passwd /usr/cvs/src/etc/netconfig /usr/cvs/src/etc/protocols /usr/cvs/src/etc/service
s netbsd.gz work.spec /usr/cvs/src/distrib/common/parselist.awk /usr/cvs/src/distrib/sparc64/xminiroot/../instfs/list /
usr/cvs/src/distrib/common/list.sysinst /usr/cvs/src/distrib/sparc64/xminiroot/list.miniroot" = ramdiskbin -a -f work.b
uilt -a work.built -nt ramdiskbin ] || { echo "Building tree into work"; rm -rf work work.built; mkdir -m 755 work && /
usr/build/tools/bin/nbmtree -def work.spec -p work/ -UW && INSTFSDIR=/usr/cvs/src/distrib/sparc64/xminiroot/../instfs N
ETBSDSRCDIR=/usr/cvs/src CRUNCHBIN=ramdiskbin CURDIR=/usr/cvs/src/distrib/sparc64/xminiroot DESTDIR=/usr/build/destdir.
sparc64 DISTRIBDIR=/usr/cvs/src/distrib MACHINE=sparc64 MACHINE_ARCH=sparc64 MAKE=/usr/build/tools/bin/nbmake OBJDIR=/u
sr/cvs/src/distrib/sparc64/xminiroot/obj TARGETDIR=/usr/cvs/src/distrib/sparc64/xminiroot/obj/work awk -f /usr/cvs/src/
distrib/common/parselist.awk -v mode=populate /usr/cvs/src/distrib/sparc64/xminiroot/../instfs/list /usr/cvs/src/distri
b/common/list.sysinst /usr/cvs/src/distrib/sparc64/xminiroot/list.miniroot | sh -e && touch work.built ; }
*** Error code 1
Stop.
nbmake: stopped in /usr/cvs/src/distrib/sparc64/xminiroot
This is because in src/distrib/sparc64/xminiroot/Makefile we have:
.include "${.CURDIR}/../instfs/Makefile.instfs"
which includes the line:
LISTS= ${INSTFSDIR}/list ${DISTRIBDIR}/common/list.sysinst
rev 1.11 of list.sysinst has:
COPY ${OBJDIR}/sysinst/sysinstmsgs.fr sysinstmsgs.fr
COPY ${OBJDIR}/sysinst/sysinstmsgs.de sysinstmsgs.de
COPY ${OBJDIR}/sysinst/sysinstmsgs.pl sysinstmsgs.pl
This is fine while building in distrib/sparc64/instfs because
OBJDIR=/usr/cvs/src/distrib/sparc64/instfs/obj
however while bulding in distrib/sparc64/xminiroot, we have
OBJDIR=/usr/cvs/src/distrib/sparc64/xminiroot/obj
but the 3 sysinstmsgs files don't live under ...../xminiroot/obj but rather
..../instfs/obj and you lose.
>How-To-Repeat:
./build.sh -a sparc64 -m sparc64 -T /usr/build/tools \
-D /usr/build/destdir.sparc64 -R /usr/build/release release
wait several hours.
>Fix:
either use a different variable in the list.sysinst which is set right, or
modify something in xminiroot to copy or build a sysinst there too.
>Release-Note:
>Audit-Trail:
>Unformatted: