Чтобы получить текущий каталог в Makefile и выполнить различные операции, вы можете использовать встроенные функции и переменные, предоставляемые GNU Make. Вот несколько методов с примерами кода:
Метод 1: использование переменной $(CURDIR)
.PHONY: print_directory
print_directory:
@echo "Current Directory: $(CURDIR)"
Метод 2: использование функции $(shell)
.PHONY: print_directory
print_directory:
@echo "Current Directory: $(shell pwd)"
Метод 3: использование функции $(abspath)
.PHONY: print_directory
print_directory:
@echo "Current Directory: $(abspath .)"
Метод 4. Использование функции $(realpath)
.PHONY: print_directory
print_directory:
@echo "Current Directory: $(realpath .)"
Метод 5: использование функции $(notdir) с фиктивной переменной
.PHONY: print_directory
print_directory:
$(eval CURRENT_DIR := $(shell pwd))
@echo "Current Directory: $(notdir $(CURRENT_DIR))"
Эти методы отобразят текущий каталог при запуске команды make print_directory.