Skip to content
Snippets Groups Projects
Commit cff18909 authored by Aline Gondim Santos's avatar Aline Gondim Santos
Browse files

windows: add support for Visual Studio 2022

Change-Id: I83e4fa98444bf4d025cce66aa8297b2d2b14ef01
parent 8d81b90b
No related branches found
No related tags found
No related merge requests found
...@@ -150,6 +150,7 @@ Only 64-bit MSVC build can be compiled. ...@@ -150,6 +150,7 @@ Only 64-bit MSVC build can be compiled.
- Using the online installer, install the following Qt 6.2.3 components: - Using the online installer, install the following Qt 6.2.3 components:
- Git 2.10.2
- MSVC 2019 64-bit - MSVC 2019 64-bit
- Qt 5 Compatibility Module - Qt 5 Compatibility Module
- Additional Libraries - Additional Libraries
...@@ -160,11 +161,11 @@ Only 64-bit MSVC build can be compiled. ...@@ -160,11 +161,11 @@ Only 64-bit MSVC build can be compiled.
- Qt WebSockets - Qt WebSockets
- Qt WebView - Qt WebView
- Download [Visual Studio](https://visualstudio.microsoft.com/) (version == 2019). Note: version 2022 does not work. _See the SDK and Toolset notes below._ - Download [Visual Studio](https://visualstudio.microsoft.com/) (versions 2019 or 2022). _See the SDK notes below._
| | SDK | Toolset | MFC | | | SDK | Toolset | MFC |
| ------------ | ------------ | ------- | ------ | | ------------ | ------------ | ---------------------------------------------------- | ---------------- |
| Requirement: | 10.0.18362.0 | V142 | latest | | Requirement: | 10.0.18362.0 | V142 (VisualStudio 2019) / V143 (VisualStudio 2022) | matching Toolset |
- Install Qt Vs Tools under extensions, and configure msvc2017_64 path under Qt Options. _See the Qt notes below._ - Install Qt Vs Tools under extensions, and configure msvc2017_64 path under Qt Options. _See the Qt notes below._
...@@ -199,11 +200,11 @@ Only 64-bit MSVC build can be compiled. ...@@ -199,11 +200,11 @@ Only 64-bit MSVC build can be compiled.
python build.py --install python build.py --install
``` ```
> **SDK and Toolset** Note: > **SDK** Note:
> Jami can be build with more recent Windows SDK and Toolset than the ones specified in the table above. However, if your have another version than SDK 10.0.18362.0 and/or Toolset v142 installed, you need to identify it according to the example below. For the SDK, you still need to have the required version in addition to the one you chose. > Jami can be build with more recent Windows SDK than the one specified in the table above. However, if your have another version than SDK 10.0.18362.0 installed, you need to identify it according to the example below. And you still need to have the required version in addition to the one you chose.
```bash ```bash
python build.py --install --sdk <your-sdk-version> --toolset <your-toolset-version> python build.py --install --sdk <your-sdk-version>
``` ```
> **Qt** Note: If you have another version than qt 6.2.3 installed this step will build daemon correctly but will fail for the client. > **Qt** Note: If you have another version than qt 6.2.3 installed this step will build daemon correctly but will fail for the client.
...@@ -227,7 +228,7 @@ Only 64-bit MSVC build can be compiled. ...@@ -227,7 +228,7 @@ Only 64-bit MSVC build can be compiled.
- On MSVC folder (daemon\MSVC): - On MSVC folder (daemon\MSVC):
```sh ```sh
cmake -DCMAKE_CONFIGURATION_TYPES="ReleaseLib_win32" -DCMAKE_VS_PLATFORM_NAME="x64" -G "Visual Studio 16 2019" -A x64 -T '$(DefaultPlatformToolset)' .. cmake -DCMAKE_CONFIGURATION_TYPES="ReleaseLib_win32" -DCMAKE_VS_PLATFORM_NAME="x64" -G "Visual Studio 17 2022" -A x64 -T '$(DefaultPlatformToolset)' ..
python winmake.py -b daemon python winmake.py -b daemon
``` ```
......
...@@ -33,7 +33,6 @@ WIN32_DISTRIBUTION_NAME = "win32" ...@@ -33,7 +33,6 @@ WIN32_DISTRIBUTION_NAME = "win32"
# vs vars # vs vars
win_sdk_default = '10.0.18362.0' win_sdk_default = '10.0.18362.0'
win_toolset_default = '142'
APT_BASED_DISTROS = [ APT_BASED_DISTROS = [
'debian', 'debian',
...@@ -358,7 +357,7 @@ def run_install(args): ...@@ -358,7 +357,7 @@ def run_install(args):
winmake = 'daemon/compat/msvc/winmake.py' winmake = 'daemon/compat/msvc/winmake.py'
with cwd(os.path.dirname(winmake)): with cwd(os.path.dirname(winmake)):
execute_script( execute_script(
f'python {winmake} -iv -t {args.toolset} -s {args.sdk} -b daemon') f'python {winmake} -iv -s {args.sdk} -b daemon')
build_windows = 'extras/scripts/build-windows.py' build_windows = 'extras/scripts/build-windows.py'
execute_script(f'python {build_windows} init') execute_script(f'python {build_windows} init')
execute_script(f'python {build_windows}') execute_script(f'python {build_windows}')
...@@ -615,8 +614,6 @@ def parse_args(): ...@@ -615,8 +614,6 @@ def parse_args():
dist = choose_distribution() dist = choose_distribution()
if dist == WIN32_DISTRIBUTION_NAME: if dist == WIN32_DISTRIBUTION_NAME:
ap.add_argument('--toolset', default=win_toolset_default, type=str,
help='Windows use only, specify Visual Studio toolset version')
ap.add_argument('--sdk', default=win_sdk_default, type=str, ap.add_argument('--sdk', default=win_sdk_default, type=str,
help='Windows use only, specify Windows SDK version') help='Windows use only, specify Windows SDK version')
......
daemon @ f18278a8
Subproject commit 3d3a8f67ce572bbc57b99b328df36e6b2efb5d26 Subproject commit f18278a87633dd71582f819d9ea8d4dd34365050
...@@ -320,8 +320,8 @@ def main(): ...@@ -320,8 +320,8 @@ def main():
print('These scripts will only run on a 64-bit Windows system for now!') print('These scripts will only run on a 64-bit Windows system for now!')
sys.exit(1) sys.exit(1)
if int(getLatestVSVersion()) < 15: if int(getLatestVSVersion()) < 16:
print('These scripts require at least Visual Studio v15 2017!') print('These scripts require at least Visual Studio v16 2019!')
sys.exit(1) sys.exit(1)
parsed_args = parse_args() parsed_args = parse_args()
......
...@@ -214,13 +214,13 @@ install_choco_packages $choco_packages ...@@ -214,13 +214,13 @@ install_choco_packages $choco_packages
install_msys2_packages $msys_packages install_msys2_packages $msys_packages
# Install VSNASM # Install VSNASM
download_file_to_temp 'VSNASM' "https://github.com/ShiftMediaProject/VSNASM/releases/download/0.5/VSNASM.zip" 'VSNASM.zip' download_file_to_temp 'VSNASM' "https://github.com/ShiftMediaProject/VSNASM/releases/download/0.8/VSNASM.zip" 'VSNASM.zip'
unzip_file_from_temp 'VSNASM' 'VSNASM.zip' 'VSNASM_UNZIP' unzip_file_from_temp 'VSNASM' 'VSNASM.zip' 'VSNASM_UNZIP'
$batch_path = "/c set ISINSTANCE=1 &&" + $env:TEMP + "\VSNASM_UNZIP\install_script.bat" $batch_path = "/c set ISINSTANCE=1 &&" + $env:TEMP + "\VSNASM_UNZIP\install_script.bat"
run_batch $batch_path "Install VSNASM" run_batch $batch_path "Install VSNASM"
# Install VSYASM # Install VSYASM
download_file_to_temp 'VSYASM' "https://github.com/ShiftMediaProject/VSYASM/releases/download/0.4/VSYASM.zip" 'VSYASM.zip' download_file_to_temp 'VSYASM' "https://github.com/ShiftMediaProject/VSYASM/releases/download/0.7/VSYASM.zip" 'VSYASM.zip'
unzip_file_from_temp 'VSYASM' 'VSYASM.zip' 'VSYASM_UNZIP' unzip_file_from_temp 'VSYASM' 'VSYASM.zip' 'VSYASM_UNZIP'
$batch_path = "/c set ISINSTANCE=1 &&" + $env:TEMP + "\VSYASM_UNZIP\install_script.bat" $batch_path = "/c set ISINSTANCE=1 &&" + $env:TEMP + "\VSYASM_UNZIP\install_script.bat"
run_batch $batch_path "Install VSYASM" run_batch $batch_path "Install VSYASM"
......
...@@ -48,7 +48,7 @@ index aabc6b6..8d8293b 100644 ...@@ -48,7 +48,7 @@ index aabc6b6..8d8293b 100644
<ProjectGuid>{9A90BF5C-84B0-41F6-B83C-C20EADC1F46C}</ProjectGuid> <ProjectGuid>{9A90BF5C-84B0-41F6-B83C-C20EADC1F46C}</ProjectGuid>
<RootNamespace>qrcodelib</RootNamespace> <RootNamespace>qrcodelib</RootNamespace>
<Keyword>Win32Proj</Keyword> <Keyword>Win32Proj</Keyword>
+ <WindowsTargetPlatformVersion>10.0.16299.0</WindowsTargetPlatformVersion> + <WindowsTargetPlatformVersion>10.0.18362.0</WindowsTargetPlatformVersion>
</PropertyGroup> </PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release-Lib|Win32'" Label="Configuration"> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release-Lib|Win32'" Label="Configuration">
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment