85 lines
2.2 KiB
C++
85 lines
2.2 KiB
C++
#include "build/tools/public/target.h"
|
|
#include "target.h"
|
|
#include "tier1/utlstring.h"
|
|
#include "helper.h"
|
|
|
|
CUtlVector<CUtlString> all_IncludeDirectories = {
|
|
"public",
|
|
"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)
|
|
{
|
|
IFileSystem2::MakeDirectory(CUtlString("%s/bin", szOutputDir.GetString()));
|
|
IFileSystem2::CopyFile(CUtlString("%s/bin", szOutputDir.GetString()), steam_lib);
|
|
} else
|
|
{
|
|
IFileSystem2::MakeDirectory(CUtlString("%s/bin", szOutputDir.GetString()));
|
|
IFileSystem2::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 "fgui/__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"
|