各 rule ファイルについて
各 rule ファイルを include する前に, cmd.mk を include して下さい.
例) Makefile の書き方の例 (C, C++ 混在)
TOPDIR=.
-include $(TOPDIR)/config/*.mk
-include $(TOPDIR)/env.mk
# ~ 各種設定 ~
-include $(TOPDIR)/config/*-com.rule
-include $(TOPDIR)/config/o-c.rule
-include $(TOPDIR)/config/*-cpp.rule
-include $(DEPEND_FILE)
--------------------------------------------------------------------------------
mkdir-com.rule
make に必要なディレクトリを生成するルール
事前に下記定義が必要となります.
OBJDIR オブジェクトファイルを格納するディレクトリ
--------------------------------------------------------------------------------
o-c.rule
Cソースファイルからオブジェクトファイルを生成するルール
事前に下記定義が必要となります.
OBJDIR オブジェクトファイルを格納するディレクトリ
SRCDIR ソースファイルを格納するディレクトリ
CFLAGS コンパイルオプション
--------------------------------------------------------------------------------
o-cpp.rule
C++ソースファイルからオブジェクトファイルを生成するルール
事前に下記定義が必要となります.
OBJDIR オブジェクトファイルを格納するディレクトリ
SRCDIR ソースファイルを格納するディレクトリ
CXXFLAG コンパイルオプション
--------------------------------------------------------------------------------
liba-com.rule
Linux 用 static ライブラリを生成するルール
事前に下記定義が必要となります.
TARGET_NAME
ターゲット名.
lib$(TARGET_NAME).a というファイルが生成されます.
OBJS
依存するオブジェクト
--------------------------------------------------------------------------------
libso-c.rule
libso-cpp.rule
Linux 用 共有ライブラリを生成するルール
事前に下記定義が必要となります.
TARGET_NAME
ターゲット名.
lib$(TARGET_NAME).so.$(MAJOR_VER).$(MINOR_VER) という
ファイルが生成されます.
MAJOR_VER
メジャーバージョン
MINOR_VER
マイナーバージョン
OBJS
依存するオブジェクト
LDFLAGS
リンクオプション
LIBS
ライブラリ
--------------------------------------------------------------------------------
dll-c.rule
dll-cpp.rule
Windows 用 DLL を生成するルール
事前に下記定義が必要となります.
TARGET_NAME
ターゲット名.
lib$(TARGET_NAME).so.$(MAJOR_VER).$(MINOR_VER) という
ファイルが生成されます.
OBJS
依存するオブジェクト
LDFLAGS
リンクオプション
LIBS
ライブラリ
--------------------------------------------------------------------------------
exe-c.rule
exe-cpp.rule
実行ファイルを生成するルール
事前に下記定義が必要となります.
TARGET_NAME
ターゲット名.
OBJS
依存するオブジェクト
LDFLAGS
リンクオプション
LIBS
ライブラリ
--------------------------------------------------------------------------------
cov-com.rule
カバレッジを生成するルール
事前に下記定義が必要となります.
COVREPORTDIR
カバレッジ結果ファイル格納ディレクトリ
OBJDIR
オブジェクトが格納されているディレクトリ
--------------------------------------------------------------------------------
depend-com.rule
依存関係を生成するルール
事前に下記定義が必要となります.
DEPEND_FILE
依存関係出力先ファイル
SRCS
対象ソースファイル
OBJDIR
オブジェクトが格納されているディレクトリ
CFLAGS
Cコンパイルオプション
CXXFLAGS
C++ コンパイルオプション
--------------------------------------------------------------------------------
docs-com.rule
ドキュメントを生成するルール
事前に下記定義が必要となります.
DOXYGEN_CONFIG
ドキュメント化設定ファイル