Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Visual Studio 2022を使用したローカルビルドに対応する #1764

Merged
1 commit merged into from Jan 12, 2022
Merged

Visual Studio 2022を使用したローカルビルドに対応する #1764

1 commit merged into from Jan 12, 2022

Conversation

ghost
Copy link

@ghost ghost commented Jan 10, 2022

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

:find_msbuild_legacy
for /f "usebackq delims=" %%d in (`"%CMD_VSWHERE%" -requires Microsoft.Component.MSBuild -property installationPath -version [15^,16^)`) do (

なお、本年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上・コマンドラインとも)に影響します。

テスト内容

  • ローカル環境にインストールしたVisual Studio 2022でsakura.slnを開き、ビルドが通ること。
  • build-sln.batを使用したコマンドラインビルドが成功すること。
  • find-tools.batでVS2022のMSBuildを発見できること。

関連 issue, PR

#1752 … Azure Pipelinesにおいて、Windows Server 2016(VS2017-Win2016)で動いているジョブをWindows Server 2022(windows-2022)に移す場合はfind-tools.batの変更が必要になります。

参考資料

@ghost ghost added the visual studio 2022 label Jan 10, 2022
@ghost
Copy link
Author

ghost commented Jan 10, 2022

どうしてもVS2022を使いたいんだとかであれば別ですが。

そう言われれば、その通りです。
PRの説明にもある通り困っているので、投稿しています。
ぜひよろしくお願いします

Originally posted by @dep5 in #1755 (comment)

…とのことなので手持ちを出しておきます。

@sonarqubecloud
Copy link

Kudos, SonarCloud Quality Gate passed!    Quality Gate passed

Bug A 0 Bugs
Vulnerability A 0 Vulnerabilities
Security Hotspot A 0 Security Hotspots
Code Smell A 0 Code Smells

No Coverage information No Coverage information
No Duplication information No Duplication information

@AppVeyorBot
Copy link

Build sakura 1.0.3992 completed (commit 21446300d5 by @kazasaku)

Copy link
Contributor

@berryzplus berryzplus left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

vs2022対応としてはこの内容で十分だと思います。
#1763 は関係ない変更を含んでいるので、
一度これで入れるのが分かりやすいのではないかと。

@ghost ghost marked this pull request as ready for review January 11, 2022 04:11
@ghost
Copy link
Author

ghost commented Jan 12, 2022

それではいったんこの内容でマージします。
何かありましたらご連絡ください。

@ghost ghost merged commit b8bb61e into sakura-editor:master Jan 12, 2022
@ghost ghost deleted the feature/add_support_vs2022 branch January 12, 2022 05:19
This pull request was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants