Ah, that'll be because the version you're using is too old to support it.
Download a later 3.4 from the web site, run BSD/kupgrade, build a new kernel and do "make freebsd4 && make install-bsd" to sort things out. ^^^^ s/freebsd4/netbsd Darren
The fun continues... I fetched the latest 3.4.33 source, ran BSD/kupgrade, and then proceeded to compile a new GENERIC kernel. When it gets to the IPF bits, this is what happens:
cc -mno-fpu -ffreestanding -O2 -Werror -Wall -Wno-main -Wno-format-zero-length -Wpointer-arith -Wmissing-prototypes -Wstrict-prototypes -Wno-uninitialized -I. -I../../../../arch -I../../../.. -nostdinc -DRASTERCONSOLE -DLKM -DMAXUSERS=32 -D_KERNEL -D_KERNEL_OPT -c /usr/src/sys/arch/sparc/compile/GENERIC/../../../../netinet/fil.c
cc1: warnings being treated as errors
/usr/src/sys/arch/sparc/compile/GENERIC/../../../../netinet/fil.c: In function `ipf_pullup':
/usr/src/sys/arch/sparc/compile/GENERIC/../../../../netinet/fil.c:2374: warning: unused variable `inc'
*** Error code 1
Stop. make: stopped in /usr/src/sys/arch/sparc/compile/GENERIC
For completeness's sake, I also did a 'make netbsd' in the IPF source directory. It also stops with:
bash-2.05b# make netbsd
if [ ! -f netinet/done ] ; then (cd netinet; ln -s ../*.h .; ln -s ../ip_*_pxy.c .; ); (cd netinet; ln -s ../ipsend/tcpip.h tcpip.h); touch netinet/done; fi
make setup "TARGOS=BSD" "CPUDIR=`uname -s|sed -e 's@/@@g'`-`uname -r`-`uname -m`"
if [ ! -d BSD/NetBSD-1.6.2-sparc ] ; then mkdir BSD/NetBSD-1.6.2-sparc; fi
rm -f BSD/NetBSD-1.6.2-sparc/Makefile BSD/NetBSD-1.6.2-sparc/Makefile.ipsend
ln -s ../Makefile BSD/NetBSD-1.6.2-sparc/Makefile
if [ ! -f BSD/NetBSD-1.6.2-sparc/Makefile.std -a -f BSD/Makefile.std ] ; then ln -s ../Makefile.std BSD/NetBSD-1.6.2-sparc/Makefile.std; fi
if [ ! -f BSD/NetBSD-1.6.2-sparc/Makefile.ipsend.std -a -f BSD/Makefile.ipsend.std ] ; then ln -s ../Makefile.ipsend.std BSD/NetBSD-1.6.2-sparc/Makefile.ipsend.std; fi
ln -s ../Makefile.ipsend BSD/NetBSD-1.6.2-sparc/Makefile.ipsend
(cd BSD/`uname -s|sed -e 's@/@@g'`-`uname -r`-`uname -m`; make build TOP=../.. 'CFLAGS=-I$(TOP) -DIPFILTER_LOG' "IPFLOG=-DIPFILTER_LOG" "LOGFAC=-DLOGFAC=LOG_LOCAL0" "POLICY=-DIPF_DEFAULT_PASS=FR_PASS" "SOLARIS2=" "DEBUG=-g" "DCPU=`uname -m`" "CPUDIR=`uname -s|sed -e 's@/@@g'`-`uname -r`-`uname -m`" 'STATETOP_CFLAGS=-DSTATETOP' 'STATETOP_INC=' 'STATETOP_LIB=-lcurses' "BITS=" "OBJ=" "IPFLKM=-DIPFILTER_LKM" 'DLKM=-D_LKM' "ML=mln_ipl.c"; cd ..)
make: "/home/mikef/ip_fil3.4.33/BSD/NetBSD-1.6.2-sparc/Makefile" line 18: warning: Couldn't read shell's output for "/usr/bin/lsvfs 2>&1 | sed -n 's/.*devfs.*/-DDEVFS/p'"
cc -Wall -Wstrict-prototypes -Wuninitialized -O -g -I../.. -DIPFILTER_LOG -DIPFILTER_LKM -Dsparc -D__sparc__ -DINET -DKERNEL -D_KERNEL -I/usr/include -I/sys -I/sys/sys -I/sys/arch -D_LKM -c ../../ip_fil.c -o ip_fil.o
In file included from /usr/include/machine/param.h:62,
from /usr/include/sys/param.h:146,
from ../../ip_fil.c:17:
/usr/include/machine/cpu.h:77: machine/intr.h: No such file or directory
*** Error code 1
Stop. make: stopped in /home/mikef/ip_fil3.4.33/BSD/NetBSD-1.6.2-sparc *** Error code 1
Stop. make: stopped in /home/mikef/ip_fil3.4.33
During the kernel build, aparrently the warnings are being treated as errors, and the compile is aborted. I haven't had any luck figuring out how to let it continue, however. During the 'make netbsd' phase, it seems to be missing files. I have the NetBSD syssrc.tgz, src.tgz, and sharesrc.tgz source sets installed, so I can't imagine there being anything missing from the source. - Mike
