종속성이있는 Makefile을 설정하려고합니다. 종속성은 변수에 지정됩니다.Makefile Linux 각 변수에 대해 함수를 실행하는 방법
MATH_VER=1.1
EXTERNAL_DEPS=MATH GC LOG
사용할 수있는 것을 기반으로 각 외부 라이브러리의 위치를 파악하려고하는 함수를 실행하고 싶습니다. 하지만 난 그게 임 찾고 무엇의 좋은 아이디어를 제공합니다 생각 - 그래서 나는 내가 확인
checklib = ifeq ($(wildcard $(ROOT)/$(var)/$(var)_VER),)
echo 'Bad dir'
$(var)_ROOT=$SOMEOTHERDIR
else
echo 'Good dir'
$(var)_ROOR=$(ROOT)/$(var)/$(var)_VER
endif
이 dosent 작업을 수행하는 기능이 규칙하려면 setVersion,
all:setversion myexe
setversion:
$(foreach CHKLIB, $(EXTERNAL_DEPS), $(call checklib, $(CHKLIB)))
을 추가했다. 아무도 나를이 방법을 수행 할 수 가리킬 수 있습니까? 이 site 도움이 될 감사
조만간 당신이 autotools를 필요거야, 왜 지금 학습을 시작하지 : http://sourceware.org/autobook/autobook/autobook_toc.html – yasar
당신이 외부 변수를'whatever_ROOT' 사용 하시겠습니까 'setversion' 규칙? – Beta
예 exec를 빌드 할 때 MATH_ROOT가 사용됩니다. – excalibur