#include "target.h"
#include "tier1/utlstring.h"
#include "helper.h"

CUtlVector<CUtlString> all_IncludeDirectories = {
	"public",
	"external/cglm/include",
	"external/stb",
	"external/SDL/include",
};
	
auto szTarget = Target_t::DefaultTarget().GetTriplet();
auto szOutputDir = CUtlString("build/funnygame/%s/game",szTarget.GetString());

bool bStaticBuild = false;

extern "C" void Preinit()
{
	if (Target_t::DefaultTarget().kernel == TARGET_KERNEL_IOS)
	{
		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");
	}
};

CUtlString tier0_lib;
CUtlString engine_lib;
CUtlString server_lib;
CUtlString client_lib;

#include "tier0/__build.cpp"
#include "tier1/__build.cpp"

#include "game/server/__build.cpp"
#include "game/client/__build.cpp"

#include "rapier/__build.cpp"
#include "engine/__build.cpp"

#include "launcher/__build.cpp"

#include "funnyassets/__build.cpp"
