#ifndef TARGET_T #define TARGET_T enum ETargetKernel { TARGET_KERNEL_LINUX, TARGET_KERNEL_WINDOWS, TARGET_KERNEL_DARWIN, }; enum ETargetCPU { TARGET_CPU_AMD64, TARGET_CPU_I386, }; enum ETargetOptimization { TARGET_DEBUG, TARGET_RELEASE_SPEED, TARGET_RELEASE_SIZE }; struct Target_t { ETargetKernel kernel; ETargetCPU cpu; ETargetOptimization optimization; static Target_t DefaultTarget(); }; #endif