You can cross-compile the source, say, on a Linux platform, but dealing with an SD card with a virtual machine is slightly tedious.
I preferred to continue local building by throwing away unnecessary packages like X11 related ones.
pi@raspberrypi:~ $ df -h Filesystem Size Used Avail Use% Mounted on /dev/root 5.8G 2.1G 3.4G 38% / pi@raspberrypi:~/Zkernel/linux $ time make -j4 zImage modules dtbs real 65m26.604s user 235m23.420s sys 11m3.260s
With the option -j4, the CPU temperature gets rather high, so I used a small fan to cool the device.
pi@raspberrypi:~ $ vcgencmd measure_temp temp=60.5'C
And finally, you will get:
pi@raspberrypi:~ $ uname -a Linux raspberrypi 4.9.30-v7+ #1 SMP Mon May 29 07:24:28 UTC 2017 armv7l GNU/Linux pi@raspberrypi:~ $ cat /proc/version Linux version 4.9.30-v7+ (pi@raspberrypi) (gcc version 4.9.2 (Raspbian 4.9.2-10) ) #1 SMP Mon May 29 07:24:28 UTC 2017 pi@raspberrypi:~ $ df -h Filesystem Size Used Avail Use% Mounted on /dev/root 5.8G 3.6G 2.0G 66% /