前にも似たようなエントリで書いてるけど、Macを付け足しておかないと。 ifeq (\$(OS),Windows_NT) # for Windows ..... else UNAME = \${shell uname} ifeq (\$(UNAME),Linux) # for Linux ..... endif ifeq (\$(UNAME),Darwin) # for MacOSX ..... endif endif
同じマシンに入った Windows と Linux でクロスプラットフォーム対応のアプリケーションを開発していると、コンパイルのためにコードをいちいちコピーするのは面倒。片方でガリガリ書き進めたコードを、誤ってもう片方のコードで上書きしてしまったり。 そこで、ソースコード自体は Windows 側に置き、 make がどちらの OS で実行されたかによって、生成ファイルの格納されるディレクトリを分けることにした。 で、 Makefile はこんな感じ。 ifeq ($(OS),Windows_NT) # Windows 上で実行された include Makefile.win else include Makefile.lin endif それぞれファイルを分けておき、環境変数の内容で条件分岐させてその内容を取り込んでいる。
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く