fix tpacket3_hdr build failure

It is declared iff TPACKET3_HDRLEN is...
compat: define MS_BORN constant
compat: define some KVM_* constants
fix stupid header requirements

pppox needs if_ether.h for ETH_ALEN in if_pppox.h otherwise on old
systems we get:
In file included from net/pppox.c:6:
/usr/include/linux/if_pppox.h:39: error: 'ETH_ALEN' undeclared here (not in a function)

rose needs ax25.h for ax25_address in rose.h otherwise on old
systems we get:
In file included from net/rose.c:5:
/usr/include/linux/rose.h:49: error: expected specifier-qualifier-list before 'ax25_address'
/usr/include/linux/rose.h:57: error: expected specifier-qualifier-list before 'ax25_address'
/usr/include/linux/rose.h:65: error: expected specifier-qualifier-list before 'ax25_address'
/usr/include/linux/rose.h:78: error: expected specifier-qualifier-list before 'ax25_address'
net/rose.c: In function 'gen_rose':
net/rose.c:24: error: 'struct sockaddr_rose' has no member named 'srose_call'
net/rose.c:26: error: 'struct sockaddr_rose' has no member named 'srose_ndigis'
net/rose.c:27: error: 'struct sockaddr_rose' has no member named 'srose_digi'