This stuff should be ifdefs.