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

MinGWビルドをappveyorに組み込む #494

Merged

Conversation

berryzplus
Copy link
Contributor

目的

MinGWビルドをappveyorに組み込みます。
手元にMinGW環境を用意しなくても、
appveyorがビルドチェックをしてくれる環境を作ります。

変更内容

MinGWビルドでは成果物を作らず、ビルドテストのみを行うイメージを持っています。
純粋に MinGW でのビルドを行うだけの導入提案です。
 参考:#427 (comment)

PR内容は #476 で共有した方法ほぼそのままです。

MinGWビルドを扱うコミットは稀なので、
同時に以下コメントで書いているバッチファイルのASCII化を行います。
#112 (comment)

途中終了の実行制御が 'goto :EOF' になっていたのを訂正。
途中終了の場合も ENDLOCAL するように変更。
@berryzplus berryzplus added x64 x64 対応 CI appveyor など CI 関連 【ChangeLog除外】 MinGW MinGW labels Sep 29, 2018
build-gnu.bat Outdated
)

@rem https://www.appveyor.com/docs/environment-variables/
path=C:\mingw-w64\x86_64-7.2.0-posix-seh-rt_v5-rev1\mingw64\bin;%path%
Copy link
Member

Choose a reason for hiding this comment

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

64bit バイナリ固定ですか?
appveyor 固定ですか?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

appveyor固定です。

Copy link
Member

Choose a reason for hiding this comment

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

今時MSYS2以外のMinGW-w64って使う必要あるの?と思ってる人←

Copy link
Contributor Author

Choose a reason for hiding this comment

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

msysはレジストリを触らないcygwinで、
windowsでbashを使えるようにするutilだと思ってます。

MinGWはGCCをwindowsで動かすためのもので、
cygwinのGCCをさらにwindows寄りに移植しなおしたものと思ってます。

どちらもcygwinベースのGCCを使える環境ですが、目的の違うベツモノと認識してます。
今回はwindows向けプログラムをビルドしたいのでMinGWを選びました。

msys2にはpacmanというパッケージマネージャがあって
最新のMinGW-GCCを簡単に取得できるようになってます。
msys2経由でインストールするほうが圧倒的に簡単なので人に奨めるときはそっちです。

appveyorのMinGWのバージョンはたぶん滅多に変わらないので、
何かで最新バージョンが必要になったらmsys2+pacmanに乗り換えるかもです。
ただ、pacmanのインストールめちゃめちゃ時間がかかったような気がするのが懸念点です。

Copy link
Member

Choose a reason for hiding this comment

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

MSYS2の64bitなら
path=C:\msys64\mingw64\bin;%path%
でいいはず。短くて覚えやすいし、AppVeyorに限らずデフォルトでインストールしている人はみんなこれ。

Copy link
Member

Choose a reason for hiding this comment

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

↑ これ以外 OK です。

Copy link
Contributor Author

Choose a reason for hiding this comment

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

変更コミット積みました a24dbd3

Copy link
Contributor Author

Choose a reason for hiding this comment

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

@k-takata さん

MSYS2の64bitなら
path=C:\msys64\mingw64\bin;%path%
でいいはず。

こっちでイケることを確認できたので、msys2のmingw使うようにしました。

build-all.bat Outdated Show resolved Hide resolved
@m-tmatma
Copy link
Member

MinGWビルド実行するの思ったより速いなと思ったら、 build-all.bat で途中で抜けているからなんですね。グッドアイデアです。
https://ci.appveyor.com/project/sakuraeditor/sakura/build/1.0.898

@m-tmatma
Copy link
Member

あと、markdown の追従もお願いします。

@berryzplus
Copy link
Contributor Author

あと、markdown の追従もお願いします。

了解っす。

別PR作ります。

https://github.com/sakura-editor/sakura/blob/master/appveyor.md

・・・うっ、気付いたら大変な量になってますね 😢
がんばります。

@m-tmatma
Copy link
Member

あと、markdown の追従もお願いします。
了解っす。
別PR作ります。

構造が変わるという前提で、markdown で platformMinGW を指定できるという点だけ
この PR で追加お願いします。
それ以外は後でもいいです。

MinGWビルドの追加分をmarkdownに追加
@m-tmatma
Copy link
Member

構造が変わるという前提で、markdown で platformMinGW を指定できるという点だけ
この PR で追加お願いします。
それ以外は後でもいいです。

確認しました。

@m-tmatma m-tmatma added this to the next release milestone Sep 30, 2018
@berryzplus berryzplus merged commit fa3a0c6 into sakura-editor:master Oct 1, 2018
@berryzplus berryzplus deleted the feature/build_mingw_in_appveyor branch October 1, 2018 14:22
HoppingTappy pushed a commit to HoppingTappy/sakura that referenced this pull request Jun 11, 2019
…ngw_in_appveyor

MinGWビルドをappveyorに組み込む
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CI appveyor など CI 関連 【ChangeLog除外】 MinGW MinGW x64 x64 対応
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants