가끔 상위 디렉토리에서 make를 할 때, 하위의 makefile을 한번에 동작시켜야 하는 경우가 있다.
이때, 어떤 식으로 Makefile을 작성해야 하는지 알아보자!!
target :
$(MAKE) -C ./하위디렉토리루트1
하위 디렉토리 하나의 Makefile을 실행시키려면 간단하게 위와같이 작성하면 된다. 하지만 하위 디렉토리마다 Makefile이 있으면 어떻게 해야할까?
SUBDIRS = 하위디렉토리루트1 \\
하위디렉토리루트2 \\
하위디렉토리루트3
target :
for DIRS in $(SUBDIRS); do \\
$(MAKE) -C $$DIRS; \\
done
이렇게 for문을 활용해서 하위 디렉토리의 Makefile을 순차적으로 동작시킬 수 있다.
SUBDIRS = 하위디렉토리루트1 \\
하위디렉토리루트2 \\
하위디렉토리루트3
clean :
rm -rf (OBJS)
for DIRS in $(SUBDIRS); do \\
$(MAKE) -C $$DIRS clean; \\
done