Makefile에서 환경 변수 값 확인

환경 변수의 값을 확인 해야하는 Makefile 대상이 있습니다. 그러나 정확한 구문을 얻지 못했습니다. 열심히했지만 찾을 수 없습니다. 도움을 주시면 감사하겠습니다.

환경 변수 이름 : TEST, 값 : “TRUE”

test_target:
    ifeq ($(TEST),"TRUE")
            echo "Do something"
    endif

다음과 같은 오류가 발생합니다.

/bin/sh: -c: line 0: syntax error near unexpected token `"TRUE","TRUE"'
/bin/sh: -c: line 0: `ifeq ("TRUE","TRUE")'


답변

ifeq()지시어는 1 열 제거 선행 공백 예에이어야한다

test_target:
ifeq ($(TEST),"TRUE")
        echo "Do something"
endif

^ 공백 없음


답변

ifeqTAB 뒤에 두어서는 안됩니다 . 공백이 허용됩니다. GNU Make 문서를 읽으 십시오 .

test_target:
ifeq ($(TEST),"TRUE")
    echo "Do something"
endif

또한 다음 $(TEST)"TRUE"같이 비교합니다 .

$ make TEST=TRUE
make: Nothing to be done for 'test_target'.

$ make TEST='"TRUE"'
echo "Do something"
Do something