brought back functionality from previous builds but now cross-platform

This commit is contained in:
2025-07-07 15:34:34 +03:00
parent 99eafb9443
commit 83bc9b7f16
61 changed files with 1210 additions and 581 deletions

View File

@@ -33,7 +33,6 @@ int launcher_build()
ldProject.objects.AppendTail((CObject){client_lib});
if (Target_t::DefaultTarget().kernel == TARGET_KERNEL_IOS)
{
ldProject.objects.AppendTail((CObject){"external/ios/libMoltenVK.a"});
ldProject.frameworks.AppendTail("SDL3");
ldProject.frameworks.AppendTail("CoreFoundation");
ldProject.frameworks.AppendTail("CoreGraphics");
@@ -43,7 +42,30 @@ int launcher_build()
ldProject.frameworks.AppendTail("QuartzCore");
ldProject.frameworks.AppendTail("UIKit");
ldProject.frameworkDirectories.AppendTail("external/ios");
IFileSystem2::CopyDirectory(CUtlString("%s/bin", szOutputDir.GetString()), "external/ios/SDL3.framework");
};
if (Target_t::DefaultTarget().kernel == TARGET_KERNEL_WINDOWS)
{
ldProject.objects.AppendTail((CObject){"external/windows/vulkan-1.dll"});
ldProject.objects.AppendTail((CObject){"external/windows/libSDL3.a"});
ldProject.objects.AppendTail((CObject){"external/windows/libdbghelp.a"});
ldProject.objects.AppendTail((CObject){"external/windows/libpthread.a"});
ldProject.objects.AppendTail((CObject){"external/windows/libstdc++.a"});
ldProject.libraries.AppendTail("ws2_32");
ldProject.libraries.AppendTail("ntdll");
ldProject.libraries.AppendTail("userenv");
ldProject.libraries.AppendTail("winmm");
ldProject.libraries.AppendTail("ole32");
ldProject.libraries.AppendTail("setupapi");
ldProject.libraries.AppendTail("gdi32");
ldProject.libraries.AppendTail("cfgmgr32");
ldProject.libraries.AppendTail("uuid");
ldProject.libraries.AppendTail("imm32");
ldProject.libraries.AppendTail("version");
ldProject.libraries.AppendTail("oleaut32");
IFileSystem2::CopyFile(CUtlString("%s/bin", szOutputDir.GetString()), "external/windows/libgcc_s_seh-1.dll");
IFileSystem2::CopyFile(CUtlString("%s/bin", szOutputDir.GetString()), "external/windows/libwinpthread-1.dll");
}
};
CUtlString outputProject = ldProject.Link();

View File

@@ -6,6 +6,9 @@
#ifdef __APPLE__
#include <mach-o/dyld.h>
#endif
#ifdef __WIN32__
#include "windows.h"
#endif
#if defined(__APPLE__) && defined(__MACH__)
#include "TargetConditionals.h"
@@ -19,7 +22,9 @@
// Other platforms
#endif
#ifndef MAX_PATH
#define MAX_PATH 4096
#endif
static char szLauncherPath[MAX_PATH];
static char szEnginePath[MAX_PATH];
@@ -72,6 +77,11 @@ int main( int argc, char **argv ) {
pEngineMain(argc, argv);
dlclose(pEngineLib);
#else
#ifdef __WIN32__
GetModuleFileNameA(NULL, szLauncherPath, MAX_PATH);
dirname(szLauncherPath);
SetCurrentDirectoryA(szLauncherPath);
#endif
FunnyMain(argc, argv);
#endif
};