#include "target.h" #include "helper.h" #include "tier1/utlstring.h" CUtlVector all_IncludeDirectories = { "public", "external", "external/Vulkan-Headers/include", "external/Vulkan-Utility-Libraries/include", "external/volk", "external/cglm/include", "external/stb", "external/SDL/include", "external/steamworks/public", "external/GameNetworkingSockets/include", }; auto szTarget = Target_t::DefaultTarget().GetTriplet(); auto szOutputDir = CUtlString("build/funnygame/%s/game",szTarget.GetString()); bool bStaticBuild = false; bool bSteam = false; CUtlString steam_lib; extern "C" void Preinit() { if (Target_t::DefaultTarget().kernel == TARGET_KERNEL_IOS || Target_t::DefaultTarget().kernel == TARGET_KERNEL_WINDOWS) { bStaticBuild = true; } if (Target_t::DefaultTarget().kernel == TARGET_KERNEL_IOS || Target_t::DefaultTarget().kernel == TARGET_KERNEL_DARWIN) { all_IncludeDirectories.AppendTail("external/metal-cpp"); } else { all_IncludeDirectories.AppendTail("external/Vulkan-Headers/include"); all_IncludeDirectories.AppendTail("external/VulkanMemoryAllocator/include"); } switch ( Target_t::DefaultTarget().kernel ) { case TARGET_KERNEL_WINDOWS: bSteam = true; steam_lib = "external/steamworks/redistributable_bin/win64/steam_api64.dll"; break; case TARGET_KERNEL_LINUX: bSteam = true; steam_lib = "external/steamworks/redistributable_bin/linux64/libsteam_api.so"; break; case TARGET_KERNEL_DARWIN: bSteam = true; break; default: break; } if (bSteam) { if (bStaticBuild) { filesystem2->MakeDirectory(CUtlString("%s/bin", szOutputDir.GetString())); filesystem2->CopyFile(CUtlString("%s/bin", szOutputDir.GetString()), steam_lib); } else { filesystem2->MakeDirectory(CUtlString("%s/bin", szOutputDir.GetString())); filesystem2->CopyFile(CUtlString("%s/bin", szOutputDir.GetString()), steam_lib); } } }; CUtlString tier0_lib; CUtlString engine_lib; CUtlString server_lib; CUtlString client_lib; #include "tier0/__build.cpp" #include "tier1/__build.cpp" #include "tier2/__build.cpp" #include "game/server/__build.cpp" #include "game/client/__build.cpp" #include "materialsystem/__build.cpp" #include "rapier/__build.cpp" #include "engine/__build.cpp" #include "launcher/__build.cpp" #include "funnyassets/__build.cpp"