From 41fc179104b48bd4ac52e684855b4ee598c2751e Mon Sep 17 00:00:00 2001 From: Zemogiter Date: Sun, 23 Sep 2018 11:42:48 +0200 Subject: [PATCH 1/2] Add files via upload --- Engines/Wine/Verbs/d3dx11/script.js | 62 +++++++++++++++++++++++++++ Engines/Wine/Verbs/d3dx11/script.json | 11 +++++ 2 files changed, 73 insertions(+) create mode 100644 Engines/Wine/Verbs/d3dx11/script.js create mode 100644 Engines/Wine/Verbs/d3dx11/script.json diff --git a/Engines/Wine/Verbs/d3dx11/script.js b/Engines/Wine/Verbs/d3dx11/script.js new file mode 100644 index 0000000000..1890da44a3 --- /dev/null +++ b/Engines/Wine/Verbs/d3dx11/script.js @@ -0,0 +1,62 @@ +include(["engines", "wine", "engine", "object"]); +include(["engines", "wine", "plugins", "override_dll"]); +include(["utils", "functions", "net", "resource"]); + +/** +* Verb to install D3DX11 +* @returns {Wine} Wine object +*/ +Wine.prototype.d3dx11 = function () { + var that = this; + + var extractDirectXtoSystemDirectory = function (progressBar, filesToExtract, destination, pattern) { + var numberOfExtractedFiles = 0; + filesToExtract.forEach(function (cabFile) { + print(tr("Extracting {0} ...", cabFile)); + progressBar.setText(tr("Extracting {0} ...", "DirectX 11")); + progressBar.setProgressPercentage(numberOfExtractedFiles * 100 / filesToExtract.length); + + new CabExtract() + .archive(that.prefixDirectory() + "/drive_c/d3dx11/" + cabFile) + .to(destination) + .extract(["-L", "-F", pattern]); + + numberOfExtractedFiles++; + }); + }; + + var setupFile = new Resource() + .wizard(this.wizard()) + .url("http://download.microsoft.com/download/8/4/A/84A35BF1-DAFE-4AE8-82AF-AD2AE20B6B14/directx_Jun2010_redist.exe") + .checksum("7c1fc2021cf57fed3c25c9b03cd0c31a") + .algorithm("MD5") + .name("directx_Jun2010_redist.exe") + .get(); + + var progressBar = this.wizard().progressBar(tr("Please wait ...")); + progressBar.setText(tr("Extracting {0} ...", "DirectX 11")); + progressBar.setProgressPercentage(0.); + + new CabExtract() + .archive(setupFile) + .to(this.prefixDirectory() + "/drive_c/d3dx11/") + .extract(["-L", "-F", "*d3dx11*x86*"]); + + var filesToExtractx86 = ["Aug2009_d3dx11_42_x86.cab", "Jun2010_d3dx11_43_x86.cab"]; + extractDirectXtoSystemDirectory(progressBar, filesToExtractx86, that.system32directory(), "*.dll"); + + if (this.architecture() == "amd64") { + new CabExtract() + .archive(setupFile) + .to(this.prefixDirectory() + "/drive_c/d3dx11/") + .extract(["-L", "-F", "*d3dx11*x64*"]); + + var filesToExtractx64 = ["Aug2009_d3dx11_42_x86.cab","Jun2010_d3dx11_43_x86.cab", "Aug2009_d3dx11_42_x64.cab"," Jun2010_d3dx11_43_x64.cab"]; + extractDirectXtoSystemDirectory(progressBar, filesToExtractx64, that.system64directory(), "*.dll"); + } + + this.overrideDLL() + .set("native, builtin", ["d3dx11_42", "d3dx11_43"]) + .do(); + return this; +}; diff --git a/Engines/Wine/Verbs/d3dx11/script.json b/Engines/Wine/Verbs/d3dx11/script.json new file mode 100644 index 0000000000..4bfa5b593e --- /dev/null +++ b/Engines/Wine/Verbs/d3dx11/script.json @@ -0,0 +1,11 @@ +{ + "scriptName" : "d3dx11", + "id" : "d3dx11", + "compatibleOperatingSystems" : [ + "MACOSX", + "LINUX" + ], + "testingOperatingSystems" : [], + "free" : true, + "requiresPatch" : false +} From 4ee37ee517f38ab34b0c4d1f3a58f7a9ad350471 Mon Sep 17 00:00:00 2001 From: Zemogiter Date: Sun, 23 Sep 2018 11:55:15 +0200 Subject: [PATCH 2/2] Update script.js Added missing spaces in `filesToExtractx64` variable. --- Engines/Wine/Verbs/d3dx11/script.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Engines/Wine/Verbs/d3dx11/script.js b/Engines/Wine/Verbs/d3dx11/script.js index 1890da44a3..b5cd07f1fc 100644 --- a/Engines/Wine/Verbs/d3dx11/script.js +++ b/Engines/Wine/Verbs/d3dx11/script.js @@ -51,7 +51,7 @@ Wine.prototype.d3dx11 = function () { .to(this.prefixDirectory() + "/drive_c/d3dx11/") .extract(["-L", "-F", "*d3dx11*x64*"]); - var filesToExtractx64 = ["Aug2009_d3dx11_42_x86.cab","Jun2010_d3dx11_43_x86.cab", "Aug2009_d3dx11_42_x64.cab"," Jun2010_d3dx11_43_x64.cab"]; + var filesToExtractx64 = ["Aug2009_d3dx11_42_x86.cab", "Jun2010_d3dx11_43_x86.cab", "Aug2009_d3dx11_42_x64.cab", " Jun2010_d3dx11_43_x64.cab"]; extractDirectXtoSystemDirectory(progressBar, filesToExtractx64, that.system64directory(), "*.dll"); }