build: Move enabled-driver defines to a header, instead of compiler options for every target.
Retry part of !75 (merged) in a way that shouldn't break on older CMake. (Had no idea I was using a newer cmake feature...) Should also be more transparent: if you want those defines listing available drivers, gotta include the header.