依存関係のあるMakefileを設定しようとしています。依存関係は変数で指定されます。Makefile Linux各変数の関数の実行方法
MATH_VER=1.1
EXTERNAL_DEPS=MATH GC LOG
利用可能なものに基づいて各外部ライブラリの場所を把握しようとする機能を実行します。 だから、私はこのdosent仕事
checklib = ifeq ($(wildcard $(ROOT)/$(var)/$(var)_VER),)
echo 'Bad dir'
$(var)_ROOT=$SOMEOTHERDIR
else
echo 'Good dir'
$(var)_ROOR=$(ROOT)/$(var)/$(var)_VER
endif
をチェックしない機能を持って、
all:setversion myexe
setversion:
$(foreach CHKLIB, $(EXTERNAL_DEPS), $(call checklib, $(CHKLIB)))
をルールsetversionを追加しました - しかし、私はそれがImが探しているものの良いアイデアを与えると思います。どのようにこれを達成することができますか?このsiteは役立つかもしれない おかげ
遅かれ早かれ、あなたはautotoolsのを必要としている、なぜ今学んで起動しない:http://sourceware.org/autobook/autobook/autobook_toc.html – yasar
あなたが外で変数を 'whatever_ROOT'使用しますか'setversion'ルール? – Beta
はいexecをビルドするときにMATH_ROOTが使用される – excalibur