Visual Studio 2022を使用したローカルビルドに対応する #1764
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
PR の目的
タイトルの通りです。
カテゴリ
PR の背景
#1755
PR のメリット
Visual Studio 2022でビルドができるようになります。
PR のデメリット (トレードオフとかあれば)
ビルド成果物の動作確認中のため、CI対応は後程別のPRで対応します。
それまではVS2019とVS2022の双方でビルドできるコードかどうかを検証できないと思います。
仕様・動作説明
ソリューションの設定ファイルへツールセットとSDKのバージョン指定を追記したのと、ビルドツールの探索を行うバッチファイルで「2022」及び「17」を引数に指定できるようにしました。
なお、find-tools.batの以下の部分はVS2017に付属するvswhereコマンドが意図通りに機能しない場合のフォールバックだと考えられることから変更していません。
sakura/tools/find-tools.bat
Lines 231 to 232 in f095569
なお、本年4月中に予定されている.NET Framework 4.6.1以前のサポート終了によるものだとは思いますが、Visual Studio 2022には.NET Framework 4.6.1 Targeting Packが含まれなくなります。
このためヘルプファイルのビルドができなくなりますので、あらかじめ #1756 で2017~2022間で共通して利用できる.NET Framework 4.7.2への再ターゲットを実施済みです。
PR の影響範囲
既存のビルド処理(VS上・コマンドラインとも)に影響します。
テスト内容
関連 issue, PR
#1752 … Azure Pipelinesにおいて、Windows Server 2016(
VS2017-Win2016
)で動いているジョブをWindows Server 2022(windows-2022
)に移す場合はfind-tools.batの変更が必要になります。参考資料