cache output of cpp -dM

saves some cycles on slower machines (e.g. rpi)