В одном из моих make-файлов у меня есть следующие правила:
$(BUILD_DIRECTORY)/$(LIBRARY): $(BUILD_DIRECTORY)
@clang -c $(COMMON_INCLUDE_PATHS) $(LIBRARY_COMPILER_FLAGS) $(LIBRARY_SOURCES)
@ar rcs $(LIBRARY) *.o
@mv $(LIBRARY) $(BUILD_DIRECTORY)
@rm -f *.o
$(BUILD_DIRECTORY):
@mkdir $(BUILD_DIRECTORY)
$(BUILD_DIRECTORY)
- это зависимость $(BUILD_DIRECTORY)/$(LIBRARY)
.
Если вы не хотите создавать правилоДля создания каталога вы можете использовать следующее:
mkdir -p <directory>
Опция -p
- игнорировать ошибку, если каталог уже существует.