Subject: bin/31470: building current as of October 4th, 2005 fails in ofwboot
To: None <gnats-admin@netbsd.org, netbsd-bugs@netbsd.org>
From: None <timo.schoeler@riscworks.net>
List: netbsd-bugs
Date: 10/04/2005 18:49:00
>Number:         31470
>Category:       bin
>Synopsis:       building current as of October 4th, 2005 fails in ofwboot
>Confidential:   no
>Severity:       serious
>Priority:       high
>Responsible:    bin-bug-people
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Tue Oct 04 18:49:00 +0000 2005
>Originator:     Timo Schoeler
>Release:        NetBSD 2.0.2-RELEASE
>Organization:
RISCworks
>Environment:
NetBSD blackjack-a.riscworks.net 2.0.2 NetBSD 2.0.2 (BLACKJACK-A) #0: Sun Sep 25 22:11:01 CEST 2005  tis@blackjack-a.riscworks.net:/usr/obj/sys/arch/i386/compile/BLACKJACK-A i386
>Description:
crossbuilding macppc from i386 fails:

(...)

#      link  ofwboot/ofwboot
/usr/tools/bin/powerpc--netbsd-ld -s -N -Ttext E00000 -Bstatic -o ofwboot.el1  Locore.o boot.o ofdev.o hfs.o net.o netif_of.o alloc.o vers.o ofwmagic.o byteorder.o /usr/obj/sys/arch/macppc/stand/ofwboot/lib/sa/libsa.a /usr/obj/sys/arch/macppc/stand/ofwboot/lib/z/libz.a /usr/obj/sys/arch/macppc/stand/ofwboot/lib/kern/libkern.a
Locore.o(.text+0x90): In function `_start':
: undefined reference to `startup'

*** Failed target:  ofwboot
*** Failed command: /usr/tools/bin/powerpc--netbsd-ld -s -N -Ttext E00000 -Bstatic -o ofwboot.el1 Locore.o boot.o ofdev.o hfs.o net.o netif_of.o alloc.o vers.o ofwmagic.o byteorder.o /usr/obj/sys/arch/macppc/stand/ofwboot/lib/sa/libsa.a /usr/obj/sys/arch/macppc/stand/ofwboot/lib/z/libz.a /usr/obj/sys/arch/macppc/stand/ofwboot/lib/kern/libkern.a
*** Error code 1

Stop.
nbmake: stopped in /usr/src/sys/arch/macppc/stand/ofwboot

*** Failed target:  dependall
*** Failed command: cd /usr/src/sys/arch/macppc/stand/ofwboot; /usr/tools/bin/nbmake realall
*** Error code 1

Stop.
nbmake: stopped in /usr/src/sys/arch/macppc/stand/ofwboot

*** Failed target:  dependall-ofwboot
*** Failed command: _makedirtarget() { dir="$1"; shift; target="$1"; shift; case "${dir}" in /*) this="${dir}/"; real="${dir}" ;; .) this="sys/arch/macppc/stand/"; real="/usr/src/sys/arch/macppc/stand" ;; *) this="sys/arch/macppc/stand/${dir}/"; real="/usr/src/sys/arch/macppc/stand/${dir}" ;; esac; show=${this:-.}; echo "${target} ===> ${show%/}${1:+ (with: $@)}"; cd "${real}" && /usr/tools/bin/nbmake _THISDIR_="${this}" "$@" ${target}; }; _makedirtarget ofwboot dependall
*** Error code 1

Stop.
nbmake: stopped in /usr/src/sys/arch/macppc/stand

*** Failed target:  dependall-stand
*** Failed command: _makedirtarget() { dir="$1"; shift; target="$1"; shift; case "${dir}" in /*) this="${dir}/"; real="${dir}" ;; .) this="sys/arch/macppc/"; real="/usr/src/sys/arch/macppc" ;; *) this="sys/arch/macppc/${dir}/"; real="/usr/src/sys/arch/macppc/${dir}" ;; esac; show=${this:-.}; echo "${target} ===> ${show%/}${1:+ (with: $@)}"; cd "${real}" && /usr/tools/bin/nbmake _THISDIR_="${this}" "$@" ${target}; }; _makedirtarget stand dependall
*** Error code 1

Stop.
nbmake: stopped in /usr/src/sys/arch/macppc

*** Failed target:  dependall-macppc
*** Failed command: _makedirtarget() { dir="$1"; shift; target="$1"; shift; case "${dir}" in /*) this="${dir}/"; real="${dir}" ;; .) this="sys/arch/"; real="/usr/src/sys/arch" ;; *) this="sys/arch/${dir}/"; real="/usr/src/sys/arch/${dir}" ;; esac; show=${this:-.}; echo "${target} ===> ${show%/}${1:+ (with: $@)}"; cd "${real}" && /usr/tools/bin/nbmake _THISDIR_="${this}" "$@" ${target}; }; _makedirtarget macppc dependall
*** Error code 1

Stop.
nbmake: stopped in /usr/src/sys/arch

*** Failed target:  dependall-arch
*** Failed command: _makedirtarget() { dir="$1"; shift; target="$1"; shift; case "${dir}" in /*) this="${dir}/"; real="${dir}" ;; .) this="sys/"; real="/usr/src/sys" ;; *) this="sys/${dir}/"; real="/usr/src/sys/${dir}" ;; esac; show=${this:-.}; echo "${target} ===> ${show%/}${1:+ (with: $@)}"; cd "${real}" && /usr/tools/bin/nbmake _THISDIR_="${this}" "$@" ${target}; }; _makedirtarget arch dependall
*** Error code 1

Stop.
nbmake: stopped in /usr/src/sys

*** Failed target:  dependall-sys
*** Failed command: _makedirtarget() { dir="$1"; shift; target="$1"; shift; case "${dir}" in /*) this="${dir}/"; real="${dir}" ;; .) this=""; real="/usr/src" ;; *) this="${dir}/"; real="/usr/src/${dir}" ;; esac; show=${this:-.}; echo "${target} ===> ${show%/}${1:+ (with: $@)}"; cd "${real}" && /usr/tools/bin/nbmake _THISDIR_="${this}" "$@" ${target}; }; _makedirtarget sys dependall
*** Error code 1

Stop.
nbmake: stopped in /usr/src

*** Failed target:  do-build
*** Failed command: _makedirtarget() { dir="$1"; shift; target="$1"; shift; case "${dir}" in /*) this="${dir}/"; real="${dir}" ;; .) this=""; real="/usr/src" ;; *) this="${dir}/"; real="/usr/src/${dir}" ;; esac; show=${this:-.}; echo "${target} ===> ${show%/}${1:+ (with: $@)}"; cd "${real}" && /usr/tools/bin/nbmake _THISDIR_="${this}" "$@" ${target}; }; _makedirtarget . dependall BUILD_tools=no BUILD_lib=no
*** Error code 1

Stop.
nbmake: stopped in /usr/src

*** Failed target:  build
*** Failed command: _makedirtarget() { dir="$1"; shift; target="$1"; shift; case "${dir}" in /*) this="${dir}/"; real="${dir}" ;; .) this=""; real="/usr/src" ;; *) this="${dir}/"; real="/usr/src/${dir}" ;; esac; show=${this:-.}; echo "${target} ===> ${show%/}${1:+ (with: $@)}"; cd "${real}" && /usr/tools/bin/nbmake _THISDIR_="${this}" "$@" ${target}; }; _makedirtarget . do-build
*** Error code 1

Stop.
nbmake: stopped in /usr/src

*** Failed target:  distribution
*** Failed command: _makedirtarget() { dir="$1"; shift; target="$1"; shift; case "${dir}" in /*) this="${dir}/"; real="${dir}" ;; .) this=""; real="/usr/src" ;; *) this="${dir}/"; real="/usr/src/${dir}" ;; esac; show=${this:-.}; echo "${target} ===> ${show%/}${1:+ (with: $@)}"; cd "${real}" && /usr/tools/bin/nbmake _THISDIR_="${this}" "$@" ${target}; }; _makedirtarget . build NOPOSTINSTALL=1
*** Error code 1

Stop.
nbmake: stopped in /usr/src

*** Failed target:  release
*** Failed command: _makedirtarget() { dir="$1"; shift; target="$1"; shift; case "${dir}" in /*) this="${dir}/"; real="${dir}" ;; .) this=""; real="/usr/src" ;; *) this="${dir}/"; real="/usr/src/${dir}" ;; esac; show=${this:-.}; echo "${target} ===> ${show%/}${1:+ (with: $@)}"; cd "${real}" && /usr/tools/bin/nbmake _THISDIR_="${this}" "$@" ${target}; }; _makedirtarget . distribution
*** Error code 1

Stop.
nbmake: stopped in /usr/src

ERROR: Failed to make release
*** BUILD ABORTED ***

(...)

command invoking the build process:

./build.sh -m macppc -O /usr/obj -T /usr/tools -D /usr/dest release

src tree was freshly checked out, obj/ etc. were empty.
>How-To-Repeat:
check out current and build (native on macppc or cross from i386 e.g.)
>Fix:
yes, please