Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 1 Jun 2005 10:14:36 +0100 (BST)
From:      Robert Watson <rwatson@FreeBSD.org>
To:        current@FreeBSD.org
Subject:   UP kernel build -- broken by bus/interrupt-related changes?
Message-ID:  <20050601101156.M24311@fledge.watson.org>

next in thread | raw e-mail | index | archive | help

When building a 6.x UP kernel on a 5.x build box, I get the following 
build problem.  Adding an explicit include of <sys/bus.h> to sched_4bsd.c 
fixes the problem, but probably isn't the right answer.  Presumably, 
interrupt.h relies on the definition of interrupt-related types by means 
of prior includes, and it worked for sched_4bsd.c due to pollution earlier 
in the include chain.  I've not tracked this down to a specific commit, 
but presumably it was one of the recent changes to the busspace API 
include files, and works in the SMP case due to conditional pollution. 
If someone who is at one with the include files and types in question 
could fix this, that would be great!

zoo:/zoo/rwatson/p4/vendor/freebsd/src/sys/i386/compile/UP> make 
sched_4bsd.o
cc -c -O -pipe  -Wall -Wredundant-decls -Wnested-externs 
-Wstrict-prototypes  -Wmissing-prototypes -Wpointer-arith -Winline 
-Wcast-qual  -fformat-extensions -std=c99 -g -nostdinc -I-  -I. -I../../.. 
-I../../../contrib/dev/acpica -I../../../contrib/altq 
-I../../../contrib/ipfilter -I../../../contrib/pf 
-I../../../contrib/dev/ath -I../../../contrib/dev/ath/freebsd 
-I../../../contrib/ngatm -I../../../dev/twa -D_KERNEL -include 
opt_global.h -fno-common -finline-limit=8000 --param 
inline-unit-growth=100 --param large-function-growth=1000 
-mno-align-long-strings -mpreferred-stack-boundary=2  -mno-mmx -mno-3dnow 
-mno-sse -mno-sse2 -ffreestanding -Werror  ../../../kern/sched_4bsd.c
In file included from ../../../kern/sched_4bsd.c:303:
../../../sys/interrupt.h:42: error: syntax error before "driver_intr_t"
../../../sys/interrupt.h:121: warning: "enum intr_type" declared inside 
parameter list
../../../sys/interrupt.h:121: warning: its scope is only this definition 
or declaration, which is probably not what you want
../../../sys/interrupt.h:121: warning: parameter has incomplete type
../../../sys/interrupt.h:123: error: syntax error before "driver_intr_t"
../../../sys/interrupt.h:124: warning: function declaration isn't a 
prototype
../../../sys/interrupt.h:129: error: syntax error before "driver_intr_t"
../../../sys/interrupt.h:130: warning: function declaration isn't a 
prototype
*** Error code 1

Stop in /zoo/rwatson/p4/vendor/freebsd/src/sys/i386/compile/UP.

Thanks,

Robert N M Watson



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20050601101156.M24311>