#include "helper.h" #include "c.h" #include "ld.h" #include "tier1/utlstring.h" #include "tier1/commandline.h" ADD_DEPENDENCY_BUILD_FILE(MaterialSystem, "../materialsystem/") ADD_DEPENDENCY_BUILD_FILE(tier0, "../tier0/"); ADD_DEPENDENCY_BUILD_FILE(tier1, "../tier1/"); ADD_DEPENDENCY_BUILD_FILE(tier2, "../tier2/"); DECLARE_BUILD_STAGE(engine) { CProject_t compileProject = {}; LinkProject_t ldProject = {}; compileProject.m_szName = "engine"; compileProject.files = { "engine.cpp", "cvar.cpp", "gamewindow_sdl.cpp", "sv_dll.cpp", "cl_dll.cpp", }; compileProject.includeDirectories = { "../public", "../external/SDL/include", }; compileProject.bFPIC = true; ldProject = ccompiler->Compile(&compileProject); ldProject.linkType = ELINK_DYNAMIC_LIBRARY; ldProject.libraryObjects = { GET_PROJECT_LIBRARY("tier1", "tier1"), GET_PROJECT_LIBRARY("tier2", "tier2"), }; ldProject.libraries = { "SDL3" }; CUtlString outputProject = linker->Link(&ldProject); ADD_OUTPUT_OBJECT("engine", outputProject) return 0; };