333
edits
Rootfather (talk | contribs) |
Rootfather (talk | contribs) |
||
Line 8: | Line 8: | ||
We don't recommend using this method if you want to distribute your ScummVM builds. Release builds should be done using [[Compiling ScummVM/MXE|MXE]] if possible, since this allows building an (almost) statically linked executable for easy distribution. Feel free to contact me (rootfather) either via eMail or IRC if you have questions regarding MSYS2/MinGW-w64. | We don't recommend using this method if you want to distribute your ScummVM builds. Release builds should be done using [[Compiling ScummVM/MXE|MXE]] if possible, since this allows building an (almost) statically linked executable for easy distribution. Feel free to contact me (rootfather) either via eMail or IRC if you have questions regarding MSYS2/MinGW-w64. | ||
|} | |} | ||
{| border="0" cellpadding="1" cellspacing="2" style="margin-left:5em; background:#FF9999; width:80%" | {| border="0" cellpadding="1" cellspacing="2" style="margin-left:5em; background:#FF9999; width:80%" | ||
Line 19: | Line 18: | ||
If you need to support older Windows, check out [[Compiling_ScummVM/MinGW|MinGW]]. | If you need to support older Windows, check out [[Compiling_ScummVM/MinGW|MinGW]]. | ||
|} | |} | ||
== Prepare your build environment == | == Prepare your build environment == | ||
Line 50: | Line 47: | ||
=== Install modified curl package === | === Install modified curl package === | ||
The default curl version shipped with MSYS2 relies on an external certificate bundle for verifying SSL/TLS certificates. While this works fine in the mingw-w64 shell itself, it will break SSL verification outside the mingw-w64 shell. Since our cloud integration features rely on a working SSL implementation, we need to build our own curl release. Thanks to the PKGBUILD already provided by the MSYS2/Mingw-w64 developers, this is pretty straight forward. | The default curl version shipped with MSYS2 relies on an external certificate bundle for verifying SSL/TLS certificates. While this works fine in the mingw-w64 shell itself, it will break SSL verification outside the mingw-w64 shell. Since our cloud integration features rely on a working SSL implementation, we need to build our own curl release using the winssl backend instead. WinSSL - as the name implies - is the SSL/TLS library shipped withing Windows itself, so we can rely on the Windows certificate store. | ||
Thanks to the PKGBUILD already provided by the MSYS2/Mingw-w64 developers, this is pretty straight forward. | |||
First | First, clone the repository containing the mingw-w64 package files in a seperate directory: | ||
git clone <nowiki>https://github.com/msys2/MINGW-packages</nowiki> | |||
Now, we need to modify the file mingw-w64-curl/PKGBUILD which contains all the instructions makepkg uses for building the final package. At the beginning of the file, select the winssl variant instead of the default openssl version. | |||
git clone https://github.com/msys2/MINGW-packages | #_variant=-openssl | ||
_variant=-winssl | |||
#_variant=-gnutls | |||
Since support for METALINK seems to be broken at the moment (and we don't need it), modify the PKGBUILD file as shown below: | |||
79 if [ "${_variant}" = "-winssl" ]; then | |||
... | |||
86 _variant_config+=("--without-librtmp") | |||
87 _variant_config+=("--without-libmetalink") | |||
== Let's get compiling! == | == Let's get compiling! == |
edits