/sys/amd64/conf/GENERIC COMPAT_FREEBSD7 a prerequisite for COMPAT_IA32

Julian H. Stacey jhs at berklix.com
Thu Apr 22 09:54:48 UTC 2010


Hi,
Reference:
> From:		Gary Jennejohn <gary.jennejohn at freenet.de> 
> Reply-to:	gary.jennejohn at freenet.de 
> Date:		Thu, 22 Apr 2010 11:14:40 +0200 
> Message-id:	<20100422111440.69a017b2 at ernst.jennejohn.org> 

Gary Jennejohn wrote:
> On Wed, 21 Apr 2010 20:57:59 +0200
> "Julian H. Stacey" <jhs at berklix.com> wrote:
> 
> > Hi hackers at freebsd.org
> > with amd64, but not with i386,
> > /sys/amd64/conf/GENERIC COMPAT_FREEBSD7 is an undocemneted
> > pre-requisite for COMPAT_IA32
> > (so those who enable COMPAT_IA32 for ports/emulators, but disable
> > COMPAT_FREEBSD7 as they compile all binaries on upgrade, will trip
> > up on it as I did).  Currently I see:
> > 
> > cc -c -O2 -frename-registers -pipe -fno-strict-aliasing  -std=c99 -g -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes  -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual  -Wundef -Wno-pointer-sign -fformat-extensions -nostdinc  -I. -I../../.. -I../../../contrib/altq -D_KERNEL -DHAVE_KERNEL_OPTION_HEADERS -include opt_global.h -fno-common -finline-limit=8000 --param inline-unit-growth=100 --param large-function-growth=1000  -fno-omit-frame-pointer -mcmodel=kernel -mno-red-zone  -mfpmath=387 -mno-sse -mno-sse2 -mno-sse3 -mno-mmx -mno-3dnow  -msoft-float -fno-asynchronous-unwind-tables -ffreestanding -fstack-protector -Werror  ../../../compat/freebsd32/freebsd32_misc.c
> > cc1: warnings being treated as errors
> > ../../../compat/freebsd32/freebsd32_misc.c: In function 'freebsd32_semsys':
> > ../../../compat/freebsd32/freebsd32_misc.c:1420: warning: implicit declaration of function 'freebsd7_freebsd32_semctl'
> > ../../../compat/freebsd32/freebsd32_misc.c:1420: warning: nested extern declaration of 'freebsd7_freebsd32_semctl'
> > ...
> > ../../../compat/freebsd32/freebsd32_misc.c:1845: error: dereferencing pointer to incomplete type
> > *** Error code 1
> > 
> > It could be documented in GENERIC, but better to fix it.  I could
> > dig through sources, but I think there's people closer to config
> > who would prefer to commit their own fix, rather than me write a patch ?
> > (Does that translate as "I'm lazy" ? ;-)
> > 
> 
> The switch is documented in /usr/src/UPDATING on my box.  This is the
> usual place for this kind of heads-up.

Thanks Gary,
It seems COMPAT_FREEBSD7 has more scope than [456]
( /usr/src/UPDATING I should read more often. )

But /usr/src/UPDATING is a transition log, & as new things occur,
the entry re COMPAT_FREEBSD7 will get buried deeper.

Requirement from COMPAT_IA32 for COMPAT_FREEBSD7 applies with
amd64 but not i386, so I'd suggest that could be documented in
/sys/amd64/conf/GENERIC , eg

From
options         COMPAT_FREEBSD7         # Compatible with FreeBSD7
To
options         COMPAT_FREEBSD7	# Compatible with FreeBSD7, req. by COMPAT_IA32

Cheers,
Julian
-- 
Julian Stacey: BSD Unix Linux C Sys Eng Consultants Munich http://berklix.com
Mail plain text,  Not HTML quoted-printable Base64 http://www.asciiribbon.org


More information about the freebsd-hackers mailing list