я следующие вещи в моем Makefile (GNU)Как изменить значение переменного, когда цель называется
DLIB = $(DLIB_STATIC)
DLIBFLAGS = $(DLIB_STATIC)
DLIB_BUILDS = $(DLIB_STATIC) LIBDDUMMY
# DLIB = $(DLIB_SHARED)
# DLIBFLAGS = -Llib -lD
# DLIB_BUILDS = $(DLIB_SHARED)
all: BUILDALL TB
tgt2: BUILDALL TB
TB: $(DLIB_BUILDS)
Мне нужно изменить значение DLIB, DLIBFLAGS & DLIB_BUILDS
следующего
DLIB = $(DLIB_SHARED)
DLIBFLAGS = -Llib -lD
DLIB_BUILDS = $(DLIB_SHARED)
когда tgt2
называется ,
Я попытался следующие
TEMP:
DLIB = $(DLIB_SHARED)
DLIBFLAGS = -Llib -lD
DLIB_BUILDS = $(DLIB_SHARED)
tgt2: TEMP BUILDALL
Но это не работает, как я могу это сделать?
Нет, его не работает .... –
Хм, он работает для меня, если цель 'BUILDALL' имеет только' echo $ (DLIB) 'получение. Как именно ваша цель «BUILDALL» использует данные переменные? Обратите внимание, что если у вас есть необходимые файлы для цели 'BUILDALL', уже построенные с помощью' make all', то вызов 'make tgt2' не перестраивает эти файлы. Сначала вам нужно очистить их. – Tsyvarev