39 lines
544 B
C
39 lines
544 B
C
#ifndef TARGET_T
|
|
#define TARGET_T
|
|
|
|
#include "tier1/utlstring.h"
|
|
|
|
enum ETargetKernel
|
|
{
|
|
TARGET_KERNEL_LINUX,
|
|
TARGET_KERNEL_WINDOWS,
|
|
TARGET_KERNEL_DARWIN,
|
|
TARGET_KERNEL_IOS,
|
|
};
|
|
|
|
enum ETargetCPU
|
|
{
|
|
TARGET_CPU_AMD64,
|
|
TARGET_CPU_I386,
|
|
TARGET_CPU_AARCH64,
|
|
};
|
|
|
|
enum ETargetOptimization
|
|
{
|
|
TARGET_DEBUG,
|
|
TARGET_RELEASE_SPEED,
|
|
TARGET_RELEASE_SIZE
|
|
};
|
|
|
|
struct Target_t
|
|
{
|
|
ETargetKernel kernel;
|
|
ETargetCPU cpu;
|
|
ETargetOptimization optimization;
|
|
CUtlString GetTriplet();
|
|
static Target_t HostTarget();
|
|
static Target_t DefaultTarget();
|
|
};
|
|
|
|
#endif
|