メイクファイルの環境変数に基づいて変数を設定する必要がありますMY_SERVER_ENV
。
私はこれを試しました:
gulp:=./node_modules/.bin/gulp
ifeq ($(MY_SERVER_ENV), 'prod')
branch:=production
else
branch:=deploy
endif
checkvariable:
@echo $$branch
私が得た結果は次のとおりです。
$ MY_SERVER_ENV = prodは変数検証を有効にします。
$
アイデアは、環境変数がと等しい場合は変数がにbranch
設定され、それ以外の場合に設定されることです。production
MY_SERVER_ENV
prod
branch
deploy
ご覧のとおり、echo $$branch
何も表示されません
ベストアンサー1
branch
でアクセス$(branch)
して使用する必要があります。
ifeq ($(MY_SERVER_ENV), 'prod')
値は$MY_SERVER_ENV
リテラル文字列(一重引用符を含む)と'prod'
比較されます。
gulp:=./node_modules/.bin/gulp
ifeq "$(MY_SERVER_ENV)" "prod"
branch:=production
else
branch:=deploy
endif
help:
@echo $(branch)
これはifeq
次の形式を取ることができます。
ifeq (arg1, arg2)
ifeq 'arg1' 'arg2'
ifeq "arg1" "arg2"
ifeq "arg1" 'arg2'
ifeq 'arg1' "arg2"
引用:https://ftp.gnu.org/old-gnu/Manuals/make-3.79.1/html_chapter/make_7.html