2010-04-20 2 views
1

처음에 내가 질문을 할 때 나는 문제를 와일드 카드로 돌렸지 만, 문제는 분명히 더 큰 문제였다. 오류를 올바르게 이해했다면, GNU make는 make-subprocessing이 없기 때문에 Boor 's make의 일부 파생물로 전환해야합니다. 나는 그것을 잘못 이해하고 있을지 모르지만 나는이 문제를 더 쉽게 이해하려고 노력한다.new make를 호출하여 내부 부품을 실행할 수있는 방법은 무엇입니까?

메이크 : 자체 여러 번 부분을 실행하려고 메이크, 나는 당신은 길을 잘못하고있는

all: 
     make clean 
     make $$(.??*) 
#I want to replace below-like-things with a wildcard above 
#  make .lambda 
#  make .lambda_t 
# 
# KEY: It should run NEW make-processes! how? 
clean: 
     -rm .??* 
.lambda: 
#do something 
.lambda_t: 
+0

그래서 이유 무엇 매번 다른 make 프로세스에서 파일을 빌드 하시겠습니까? – Macmade

+0

@Macmade : 죄송하지만 무슨 뜻인지 확실하지 않습니다. Boor 's는 다음과 같은 보조 연산을 병렬 처리합니다. http://www.freebsd.org/doc/en/books/porters-handbook/building.html. 나는이 질문에서 내가하고있는 일이 내가 GNU make에서 지원했는지 여부를 확신하지 못한다. 나는이 질문을 한 시간을 사용하고 있었다. 죄송하지만 아직 답변을 드릴 수는 없습니다 :) – hhh

답변

1

을 subprocessing을 의미하는 것은.
이와 같이 make를 호출 할 필요는 없습니다. 추가 목표를 선언하고 목표 종속성을 사용합니다. 당신이 파일이 패턴과 일치하는 얻을 만들기 'foreach는 디렉토리'기능을 사용할 수 있습니다
참고 :

_FILES_HIDDEN = $ (foreach는 디렉토리, /, $ (와일드 카드 *)..)