Subject: port-i386/8262: locore.s gives link errors if npx support is left out
To: None <gnats-bugs@gnats.netbsd.org>
From: None <bjh21@cam.ac.uk>
List: netbsd-bugs
Date: 08/24/1999 05:42:57
>Number:         8262
>Category:       port-i386
>Synopsis:       locore.s gives link errors if npx support is left out
>Confidential:   no
>Severity:       serious
>Priority:       high
>Responsible:    port-i386-maintainer (NetBSD/i386 Portmaster)
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Tue Aug 24 04:20:01 1999
>Last-Modified:
>Originator:     Ben Harris
>Organization:
>Release:        1.4K (current as of about 1999-08-22)
>Environment:

>Description:
If you try to build a kernel without the "npx" device (eg for a 386
without a 387), the link fails because locore.s references
npx_intrs_while_probing and npx_traps_while_probing, which are defined
in npx.c, and hence not in my kernel.
>How-To-Repeat:
Probably just try to build a GENERIC kernel with the "npx0 at isa?" line
commented out, though mine was a rather more minimal kernel than that.
>Fix:
It looks like this bug was introduced in locore.s 1.206, where some code
was moved in from npx.c without protecting it with "#if NNPX > 0".

I tried just #iffing out the "incl" lines, and this produced a bootable
kernel, but I suspect that the whole of the last three subroutines in
locore.s should be conditionalised.
>Audit-Trail:
>Unformatted: