makefile에 하위 디렉토리를 만들려고합니다. 각각의 하위 디렉토리에 대한 규칙을 사용하여이를 수행하는 방법을 알고 있습니다. 루프를 사용하거나 SUBDIRs 목록을 사용하여 모든 하위 디렉터리에 대해 하나의 규칙을 사용하는 구문을 찾고 있습니다. 예를 들어makefile에서 하나의 규칙을 사용하여 일부 하위 디렉토리 만들기
:
는$(dst_dir)/%.o : $(M2M_GENERIC_DIR)/rm/src/%.c
$(TRACE_CC)
$(Q)$(GCC) -c $(CFLAGS) $< -o [email protected]
$(Q)$(GCC) -c $(CFLAGS) -MM -MT [email protected] -MF $(subst .o,.d,[email protected]) $< -o $(subst .o,.d,[email protected])
$(dst_dir)/%.o : $(M2M_GENERIC_DIR)/utility/src/%.c
$(TRACE_CC)
$(Q)$(GCC) -c $(CFLAGS) $< -o [email protected]
$(Q)$(GCC) -c $(CFLAGS) -MM -MT [email protected] -MF $(subst .o,.d,[email protected]) $< -o $(subst .o,.d,[email protected])
$(dst_dir)/%.o : $(M2M_GENERIC_DIR)/fota/src/%.c
$(TRACE_CC)
$(Q)$(GCC) -c $(CFLAGS) $< -o [email protected]
$(Q)$(GCC) -c $(CFLAGS) -MM -MT [email protected] -MF $(subst .o,.d,[email protected]) $< -o $(subst .o,.d,[email protected])
$(dst_dir)/%.o : $(M2M_GENERIC_DIR)/fota/src/lzo/%.c
$(TRACE_CC)
$(Q)$(GCC) -c $(CFLAGS) $< -o [email protected]
$(Q)$(GCC) -c $(CFLAGS) -MM -MT [email protected] -MF $(subst .o,.d,[email protected]) $< -o $(subst .o,.d,[email protected])
무거운 반복은 당신이 성취하고자하는 것을보기가 더 어렵게 만들고, 그 자체로 반 패턴입니다. https://en.wikipedia.org/wiki/Don%27t_repeat_yourself – tripleee
'mkdir -p "$ (dst_dir)"'을 찾고 계신가요? – tripleee