2011-05-03 7 views
4

최상위 레벨 make에서 재귀 적 make로 전체 명령 행 (목표, 링크 행, 옵션 작성 등)을 전달하는 방법 :GNU make : 명령 행 인자를위한 변수

targets : prerequisites 
    $(MAKE) $(this should expand to top level command line) additional_args 

고마워.

답변

6

나는 여러분이 얻을 수있는 가장 가까운 것이 일치하는 파일 이름이 포함 된 $(MAKE)의 조합을 사용하고 있다고 생각합니다. 명령 줄에 지정한 목표를 포함하는 $(MAKECMDGOALS)과 변수 정의가 들어있는 $(MAKEFLAGS)과 명령 행에 지정된 스위치의 일부 (서브 세트).

3

$(MAKE) 매크로는 특수하며 일부 관련 옵션을 포함하도록 확장됩니다. 자세한 내용은 문서 만들기의 How the MAKE variable works 섹션을 참조하십시오. 그러나 이것은 목표 등을 포함한 전체 라인을 포함하지 않으며, 그것이 가능하다는 것을 확신하지 못합니다.

보통 재귀 적으로 만들기를 사용하지 않으려 고합니다. 여기에 대한 좋은 기사가 있습니다 : Recursive Make Considered Harmful.

+0

링크를 제공해 주셔서 감사합니다. – pic11

관련 문제