#include "helper.h" #include "c.h" #include "ld.h" #include "tier1/utlstring.h" #include "tier1/commandline.h" CUtlVector tier0_CompiledFiles = { "tier0/lib.cpp", "tier0/mem.cpp", "tier0/platform.cpp", "tier0/network.cpp", }; int tier0_build() { CCProject compileProject = {}; CLDProject ldProject = {}; compileProject.m_szName = "tier0"; compileProject.files = tier0_CompiledFiles; compileProject.includeDirectories = all_IncludeDirectories; compileProject.bFPIC = true; ldProject = compileProject.Compile(); if (bStaticBuild) ldProject.linkType = ELINK_STATIC_LIBRARY; else ldProject.linkType = ELINK_DYNAMIC_LIBRARY; CUtlString outputProject = ldProject.Link(); if (!bStaticBuild) { IFileSystem2::MakeDirectory(CUtlString("%s/bin",szOutputDir.GetString())); IFileSystem2::CopyFile(CUtlString("%s/bin", szOutputDir.GetString()), outputProject); } else { tier0_lib = outputProject; } return 0; }; DECLARE_BUILD_STAGE(tier0, tier0_build);