2009/4/25 Dominic Fandrey <kamikaze@bsdforen.de>:> I'm trying to build RELENG_7 for i386 on an amd64 machine.
> I have done this quite often for a long time. It used to work this way:
>
> # env MAKEOBJDIRPREFIX=/usr/obj/VECTRA-7 make -j3 buildworld buildkernel
TARGET=i386 KERNCONF=VECTRA-7
>
> This is how it fails (pretty late during kernel build):
> ===> zyd (all)
> env CCACHE_PREFIX=/usr/local/bin/distcc /usr/local/bin/ccache cc -O2
-fno-strict
> -aliasing -pipe ?-D_KERNEL -DKLD_MODULE -std=c99 -nostdinc ?
-DHAVE_KERNEL_OPTIO
> N_HEADERS -include /usr/obj/VECTRA-7/i386/usr/src/sys/VECTRA-7/opt_global.h
-I.
> -I@ -I@/contrib/altq -finline-limit=8000 --param inline-unit-growth=100
--param
> large-function-growth=1000 -fno-common
?-I/usr/obj/VECTRA-7/i386/usr/src/sys/VEC
> TRA-7 -mno-align-long-strings -mpreferred-stack-boundary=2 ?-mno-mmx
-mno-3dnow
> -mno-sse -mno-sse2 -mno-sse3 -ffreestanding -Wall -Wredundant-decls
-Wnested-ext
> erns -Wstrict-prototypes ?-Wmissing-prototypes -Wpointer-arith -Winline
-Wcast-q
> ual ?-Wundef -Wno-pointer-sign -fformat-extensions -c
/usr/src/sys/modules/zyd/.
> ./../dev/usb/if_zyd.c
> ld ?-d -warn-common -r -d -o if_zyd.kld if_zyd.o
> :> export_syms
> awk -f /usr/src/sys/modules/zyd/../../conf/kmod_syms.awk if_zyd.kld
?export_syms
> ?| xargs -J% objcopy % if_zyd.kld
> ld -Bshareable ?-d -warn-common -o if_zyd.ko if_zyd.kld
> objcopy --strip-debug if_zyd.ko
> 1 error
> *** Error code 2
> 1 error
> *** Error code 2
>
> Stop in /usr/src.
>
> I don't care about the if_zyd module, to be true, but it still
> keeps me from finishing the build.
>
The -j3 build option hides the actual build error.
> Funny, though. The situation is even WORSE without -j3:
> ...
> cc -c -O2 -pipe -fno-strict-aliasing ?-std=c99 ?-Wall -Wredundant-decls
-Wnested
> -externs -Wstrict-prototypes ?-Wmissing-prototypes -Wpointer-arith -Winline
-Wca
> st-qual ?-Wundef -Wno-pointer-sign -fformat-extensions -nostdinc ?-I.
-I/usr/src
> /sys -I/usr/src/sys/contrib/altq -D_KERNEL -DHAVE_KERNEL_OPTION_HEADERS
-include
> ?opt_global.h -fno-common -finline-limit=8000 --param
inline-unit-growth=100 --p
> aram large-function-growth=1000 ?-mno-align-long-strings
-mpreferred-stack-bound
> ary=2 ?-mno-mmx -mno-3dnow -mno-sse -mno-sse2 -mno-sse3 -ffreestanding
-Werror
> /usr/src/sys/dev/ath/if_ath.c -I/usr/src/sys/dev/ath
> /usr/src/sys/dev/ath/if_ath.c: In function 'ath_rx_tap':
> /usr/src/sys/dev/ath/if_ath.c:3414: error: 'const struct
ath_rx_status' has no m
> ember named 'rs_flags'
> /usr/src/sys/dev/ath/if_ath.c:3416: error: 'const struct
ath_rx_status' has no m
> ember named 'rs_flags'
> *** Error code 1
>
> Stop in /usr/obj/VECTRA-7/i386/usr/src/sys/VECTRA-7.
> *** Error code 1
>
> Stop in /usr/src.
> *** Error code 1
>
> Stop in /usr/src.
>
>
> As you can see it breaks early during kernel build.
>
> I just recsupped and there've been no changes, so I didn't get
> my sources in the middle of an update.
>
Since March/12 you need the AH_SUPPORT_AR5416 kernel
configuration option (which is a prerequisite, actually).
See also src/UPDATING.
--
wbr,
pluknet