-
Notifications
You must be signed in to change notification settings - Fork 163
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
プロジェクトファイルをsakura配下に集めませんか?の実装案 #36
プロジェクトファイルをsakura配下に集めませんか?の実装案 #36
Conversation
標準のデバッグ機能のいくつかを殺してしまうため、msvcrt.dllを使うでは無効になるように設定。 VC++ランタイムのデバッグ版newには初期値0xcdcdcdcdを設定するコードが組み込まれている。
添付のようにしてみるのはいかかでしょうか?
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
この変更は、プルリクエストの内容とは関係ないように思います。
MINGW または VC 以外の場合に、FILL_STRANGE_IN_NEW_MEMORY を有効にするようになっていますが、
有効としたいコンパイラを指定したほうがいいと思います。VC や MINGW 以外で同様のことをしているコンパイラが出てきたときにこのコードが邪魔します。
なので、無効値で埋めてくれないコンパイラに対して明示的に指定するようにしたほうがいいと思います。
b035f41 を指しています。 |
@m-tmatma さん、確認ありがとうございます。
検討してみました。
rejectです。
acceptです。 他6つはrejectです。 HeaderMakeは機能コードのenum/defineを MakefileMakeについてはよく知りません。 sakura.vcxprojをMakefile化する、という特性から、 |
おっしゃるとおりです。対応します。 |
sakura_lang_en_US のプロジェクトで sakura_lang.h から Funccode_define.h のヘッダが 現状の構成では、 sakura のプロジェクトをビルドすると preBuild.bat が実行されて sakura_lang_en_US のプロジェクトの依存関係に sakura のプロジェクトを含めれば HeaderMake.exe の postBuild で HeaderMake.exe を実行することで特に sakura また @berryzplus さんのプルリクエストで mklink でハードリンクを設定していますが、
sakura_core/Funccode_*.h のファイルは Funccode_x.hsrc というファイルからの |
ただ現実的には、Funccode_x.hsrc が更新されたら sakura のプロジェクトもビルドが |
すみません。大事なところ省略しました。 MaikefileMakeの実行タイミングを |
MinGW用の makefile を生成するのが、MakefileMake の役割なら |
でも現状では、GitHash とかの生成するのが、sakura のプロジェクトのpreBuild だから |
理解しました。 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
この修正はよろしくないと思います。
preBuild.bat の処理と重複しています。
仕様を変えたら複数箇所変更しないと
いけなくなる
sakura/sakura_lang.vcxproj
Outdated
@@ -62,6 +62,10 @@ | |||
<Link> | |||
<NoEntryPoint>true</NoEntryPoint> | |||
</Link> | |||
<PreBuildEvent> | |||
<Command>HeaderMake -in=..\sakura_core\Funccode_x.hsrc -out=..\sakura_core\Funccode_define.h -mode=define |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
この修正はよろしくないと思います。
preBuild.bat の処理と重複していますし、
Debug/Release でも同じ処理を書いています。
仕様を変えたら複数箇所変更しないといけなくなります。
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
preBuild.batを呼ぶように変更するのが良さそうですね。
わざわざ指摘いただいて申し訳ないですが、本件は一旦閉じさせていただきます。
ハードリンクにこだわる気はありません。 preBuild.batでの実行をやめてsakura.vcxprojのpreBuildに組み込むなら、 |
MinGWのみを使う人は 現状の構成だと、登録済みの Makefile を使うか 自分で Makefile を書くのが面倒で、Visual Studio も使える場合、 MakefileMake は Visual Studio の sakura のプロジェクトのビルドには関係ないです。 |
趣旨了解しました。 |
$> g++ -o MakefileMake.exe MakefileMake/MakefileMake.cpp 環境によって「g++」の部分が変わります。 本件はsakura配下にプロジェクトを集めたらどうなるかを示すことが目的です。 検証中の議題が残っているように見えるので本件は一旦閉じさせていただきます。 |
変更イメージを示すために作ってみました。
関連
#24
#20
NTFSじゃないドライブで実行すると失敗するかも知れません。