I found the culprit, but don't know what the proper fix is.
File - What to remove or comment out
/usr/src/linux/include/asm/cpu-features.h - #include <cpu-feature-overrides.h>
/usr/src/linux/include/asm/addrspace.h - #include <spaces.h>
But it still fails, because it looks at the headers in /usr/include and the ones is /usr/src/linux/include, which is what the problem is. Namely socket.h
What I noticed is some of the mips architectures includes have these files and some do not.
A workaround for those who use the linux-libc-headers to build iptables with the following commands, but I would still comment out those files to prevent other build issues later
make KERNEL_DIR=/usr
But I'm not sure of the stability and the functionality.
You need to patch the headers for these things -- i.e.:
#include <cpu-feature-overrides.h>
becomes
#include <asm/mach-generic/cpu-feature-overrides.h>
Same goes for references to spaces.h, and most other files directly referenced as '#include <file.h>' in 'include/asm-mips/*'. mach-generic is best suited for this despite the actual machine because these are geared for userland, and userland shouldn't really care about what particular mips machine it's running on.
--Kumba
--
"Such is oft the course of deeds that move the wheels of the world: small hands do them because they must, while the eyes of the great are elsewhere." --Elrond