make -f
を実行しているときにエンドユーザーがMakefileを指定しなくても、フラグを適切に設定できるように、アーキテクチャー(この場合はIntel OS X vs Linux)を識別するGNU make
Makefileに条件を書き込むにはどうすればよいですか?Intel OS XとLinuxの違いを示すMakefileをコーディングするにはどうすればよいですか?
'commands commence before first target. Stop.'
make -f
を実行しているときにエンドユーザーがMakefileを指定しなくても、フラグを適切に設定できるように、アーキテクチャー(この場合はIntel OS X vs Linux)を識別するGNU make
Makefileに条件を書き込むにはどうすればよいですか?Intel OS XとLinuxの違いを示すMakefileをコーディングするにはどうすればよいですか?
'commands commence before first target. Stop.'
あなたはuname
バリエーションのうちの1つの出力を確認し、その依存makefile
をwithing異なるアクションを選択することができるはずです。
詳細については、man uname
を実行してください。あなたはGNUからそれをどのように使用するかという点で
あなたはshell
関数から変数に情報を取得し、その変数にifeq
を使用することができ、作る:
platform=$(shell uname -o)
ifeq ($(platform),Cygwin)
defrule:
echo I am running in Cygwin.
else
defrule:
echo I am running elsewhere.
endif
uname
は次のようになります。この条件は、対象外に配置されている場合、私は、私はシェルコマンドが含まれていifeq
の文からメイクファイルのエラーを取得することを指定する必要があり
EDIT
あなたの友達。
$ uname -o
GNU/Linux
'はuname -o'実際ではありませんOS Xで有効です。 'uname -s'で十分でしょう。 –