シェルとPythonを組合せたツールを配布する際に、Makefileでリリース用と開発用で設定を切り替えれるようにしたい。
解決策
make
はコマンドライン引数で以下のように変数に値を設定できる。
make install 変数=1
例えば、以下を実行した場合、変数RELEASEには1が設定され、 Makefileでは、変数RELEASEに1が設定された状態で実行される。
make install RELEASE=1
これを利用し、ifeq
〜else
〜endif
を使用して、RELEASE=1
の場合とそれ以外の場合で設定を変更する。
# リリース用(1) or 開発用(0)
RELEASE ?= 0
# 環境に合せてインストール先とBlenderコマンドを変更してください
ifeq ($(RELEASE), 1) # リリース用設定
DST_BIN=${HOME}/bin
DST_DIR=${HOME}/opt/slide2video
else # 開発用設定
DST_BIN=./bin
DST_DIR=./build/slide2video
endif