mirror of
https://github.com/danoon2/Boxedwine.git
synced 2025-12-05 18:46:44 -06:00
build fix
This commit is contained in:
@@ -898,26 +898,3 @@ void StartUpArgs::setResolution(BString resolution) {
|
||||
this->resolutionSet = true;
|
||||
}
|
||||
}
|
||||
|
||||
void StartUpArgs::setOpenGlType(U32 type) {
|
||||
if (type == OPENGL_TYPE_DEFAULT) {
|
||||
type = GlobalSettings::getDefaultOpenGL();
|
||||
}
|
||||
#ifdef __MACH__
|
||||
if (type != OPENGL_TYPE_NATIVE) {
|
||||
GlobalSettings::startUpArgs.openGlLib = "osmesa";
|
||||
}
|
||||
#endif
|
||||
#ifdef BOXEDWINE_MSVC
|
||||
if (type != OPENGL_TYPE_NATIVE) {
|
||||
GlobalSettings::startUpArgs.openGlLib = GlobalSettings::alternativeOpenGlLocation();
|
||||
if (type == OPENGL_TYPE_LLVM_PIPE) {
|
||||
putenv("GALLIUM_DRIVER=llvmpipe");
|
||||
} else if (type == OPENGL_TYPE_ON_D3D12) {
|
||||
putenv("GALLIUM_DRIVER=d3d12");
|
||||
} else if (type == OPENGL_TYPE_ON_VULKAN) {
|
||||
putenv("GALLIUM_DRIVER=zink");
|
||||
}
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
@@ -72,8 +72,7 @@ public:
|
||||
void addArgs(const std::vector<BString>& args) {this->args.insert(this->args.end(), args.begin(), args.end());}
|
||||
void addZip(BString zip) {this->zips.push_back(zip);}
|
||||
void setRoot(BString root) {this->root = root;}
|
||||
void setCpuAffinity(int affinity) {this->cpuAffinity = affinity;}
|
||||
void setOpenGlType(U32 type);
|
||||
void setCpuAffinity(int affinity) {this->cpuAffinity = affinity;}
|
||||
|
||||
std::vector<BString> buildArgs();
|
||||
|
||||
|
||||
@@ -311,7 +311,7 @@ void InstallView::onInstall() {
|
||||
GlobalSettings::startUpArgs.setScale(GlobalSettings::getDefaultScale());
|
||||
GlobalSettings::startUpArgs.setVsync(GlobalSettings::getDefaultVsync());
|
||||
GlobalSettings::startUpArgs.setResolution(GlobalSettings::getDefaultResolution());
|
||||
GlobalSettings::startUpArgs.setOpenGlType(GlobalSettings::getDefaultOpenGL());
|
||||
GlobalSettings::setOpenGlTypeOnStartupArgs(GlobalSettings::getDefaultOpenGL());
|
||||
bool containerCreated = false;
|
||||
if (!container) {
|
||||
BString containerFilePath = GlobalSettings::createUniqueContainerPath(containerName);
|
||||
|
||||
@@ -285,7 +285,7 @@ void AppFile::install(bool chooseShortCut, BoxedContainer* container, std::list<
|
||||
GlobalSettings::startUpArgs.setScale(GlobalSettings::getDefaultScale());
|
||||
GlobalSettings::startUpArgs.setVsync(GlobalSettings::getDefaultVsync());
|
||||
GlobalSettings::startUpArgs.setResolution(GlobalSettings::getDefaultResolution());
|
||||
GlobalSettings::startUpArgs.setOpenGlType(GlobalSettings::getDefaultOpenGL());
|
||||
GlobalSettings::setOpenGlTypeOnStartupArgs(GlobalSettings::getDefaultOpenGL());
|
||||
container->launch();
|
||||
|
||||
if (GlobalSettings::isAutomationEnabled()) {
|
||||
|
||||
@@ -227,7 +227,7 @@ void BoxedApp::launch() {
|
||||
}
|
||||
}
|
||||
GlobalSettings::startUpArgs.setWorkingDir(this->path);
|
||||
GlobalSettings::startUpArgs.setOpenGlType(this->openGlType);
|
||||
GlobalSettings::setOpenGlTypeOnStartupArgs(this->openGlType);
|
||||
GlobalSettings::startUpArgs.readyToLaunch = true;
|
||||
}
|
||||
|
||||
|
||||
@@ -947,6 +947,29 @@ BString GlobalSettings::alternativeOpenGlUrl() {
|
||||
return BString::empty;
|
||||
}
|
||||
|
||||
void GlobalSettings::setOpenGlTypeOnStartupArgs(U32 type) {
|
||||
if (type == OPENGL_TYPE_DEFAULT) {
|
||||
type = GlobalSettings::getDefaultOpenGL();
|
||||
}
|
||||
#ifdef __MACH__
|
||||
if (type != OPENGL_TYPE_NATIVE) {
|
||||
GlobalSettings::startUpArgs.openGlLib = "osmesa";
|
||||
}
|
||||
#endif
|
||||
#ifdef BOXEDWINE_MSVC
|
||||
if (type != OPENGL_TYPE_NATIVE) {
|
||||
GlobalSettings::startUpArgs.openGlLib = GlobalSettings::alternativeOpenGlLocation();
|
||||
if (type == OPENGL_TYPE_LLVM_PIPE) {
|
||||
putenv("GALLIUM_DRIVER=llvmpipe");
|
||||
} else if (type == OPENGL_TYPE_ON_D3D12) {
|
||||
putenv("GALLIUM_DRIVER=d3d12");
|
||||
} else if (type == OPENGL_TYPE_ON_VULKAN) {
|
||||
putenv("GALLIUM_DRIVER=zink");
|
||||
}
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
U32 GlobalSettings::alternativeOpenGlDownloadSizeMB() {
|
||||
if (KSystem::isWindows()) {
|
||||
if (KSystem::getArchitecture() == "x86") {
|
||||
|
||||
@@ -175,6 +175,7 @@ public:
|
||||
static BString alternativeOpenGlUrl();
|
||||
static U32 alternativeOpenGlDownloadSizeMB();
|
||||
static bool cacheReads() { return GlobalSettings::enabledCachedReadFiles; }
|
||||
static void setOpenGlTypeOnStartupArgs(U32 type);
|
||||
|
||||
static StartUpArgs startUpArgs;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user