From owner-freebsd-current@FreeBSD.ORG Wed Jun 1 09:13:54 2005 Return-Path: X-Original-To: current@FreeBSD.org Delivered-To: freebsd-current@FreeBSD.ORG Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 2033E16A41C for ; Wed, 1 Jun 2005 09:13:54 +0000 (GMT) (envelope-from rwatson@FreeBSD.org) Received: from cyrus.watson.org (cyrus.watson.org [204.156.12.53]) by mx1.FreeBSD.org (Postfix) with ESMTP id CCB8743D49 for ; Wed, 1 Jun 2005 09:13:53 +0000 (GMT) (envelope-from rwatson@FreeBSD.org) Received: from fledge.watson.org (fledge.watson.org [204.156.12.50]) by cyrus.watson.org (Postfix) with ESMTP id 5AB1E46B09 for ; Wed, 1 Jun 2005 05:13:53 -0400 (EDT) Date: Wed, 1 Jun 2005 10:14:36 +0100 (BST) From: Robert Watson X-X-Sender: robert@fledge.watson.org To: current@FreeBSD.org Message-ID: <20050601101156.M24311@fledge.watson.org> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed Cc: Subject: UP kernel build -- broken by bus/interrupt-related changes? X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 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: Wed, 01 Jun 2005 09:13:54 -0000 When building a 6.x UP kernel on a 5.x build box, I get the following build problem. Adding an explicit include of 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