ビルド定義 Makefile

Makefileはbuild/Makefileに格納されています。makeコマンドを実行することで、アクトをビルドするよう予め定義されています。

MWSDK 2020-04 では、プロジェクトディレクトリ中の .cpp ファイルを自動で検出するため、通常は Makefile の修正は不要です。

ソースファイルをサブディレクトリに格納するような場合は、編集が必要になります。

MWSDK 2019-12では、.cpp ファイルが複数ある場合は、Makefile の編集が必要です。

makeのパラメータ

TWELITE=

ビルド対象をBLUEまたはREDで指定します。TWELITE BLUEならmake TWELITE=BLUEと指定します。

all

ビルドを実行します。通常は省略してmake TWELITE=BLUEのように実行します。

clean

 ビルドの中間ファイルを削除します。make TWELITE=BLUE cleanのように実行します。

cleanall

すべての中間ファイルを削除します。make cleanallのように実行します。buildディレクトリのobjs_???ディレクトリをすべて削除するのと同じです。

USE_APPDEPS=0 または 1

1 (デフォルト) を設定すると、ファイルの依存関係をもとに、ビルドファイルを決定します。例えば、ヘッダファイルに変更があった場合に関連するソースファイルが再コンパイル対象となります。

0 では依存関係を評価しません。0 に設定した場合、矛盾ある中間ファイルが残っていても makefile がエラーになりません。

Makefile 定義

アクトの規模に応じて、また、ビヘイビアの定義をする場合には、通常はソースファイルを分割してビルドします。

ビルドファイルの一つは{プロジェクトフォルダ名.cpp}です。

他にファイルを定義する場合は、プロジェクトフォルダのbuild/Makefileを編集します。

上記はサンプルPAL_AMB-bihaviorでのMakefileの例です。

VERSION_???

バージョン番号を指定します。ビルド結果ファイル名に反映されます。

コンパイル中は -DVERSION_MAIN=0 -DVERSION_SUB=1 -DVERSION_VAR=0のように定義として渡されます。

ソースファイルの追加

ソースファイルを追加する際に必要なのはAPPSRC_CXXAPP_COMMON_SRC_DIR_ADD?です。

サブディレクトリにソースファイルを配置する場合は必ずディレクトリ APP_COMMON_SRC_DIR_ADD? の指定が必要です。

ソースファイル名をAPPSRC_CXXに追記します。このファイル名にはディレクトリ名が含まれてはいけません。サブディレクトリにあるものもディレクトリなしで指定します(つまり同じファイル名がサブディレクトリにある場合は、ビルドが失敗します)

次にソースファイルがプロジェクトディレクトリ以外の場所に格納されている場合の検索パスを指定します。最大4つまで設定できます。

ディレクトリの指定はMakefileからの相対パスになります。

コンパイル・リンカオプション

その他にもいくつかのオプションをコンパイラ・リンカに渡すことができます。

指定

内容

CXXFLAGS

C++ソースファイルに対してコンパイルオプションを指定します。

CFLAGS

C/C++ソースファイルに対してコンパイルオプションを指定します。

INCFLAGS

ヘッダファイルのインクルードファイル指定をします。

OPTFLAGS

特別な理由があって-Os以外のコンパイルオプションを適用したい場合に定義します。

LDFLAGS

リンカオプションを指定します。(上記Makefileのコメントには記述はありませんが指定は可能です)

最終更新