[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Target Specific Variables
From: |
psmith |
Subject: |
Target Specific Variables |
Date: |
Thu, 29 Nov 2001 09:15:18 -0700 |
I have two questions regarding target specific variables.
1. I want to use $@ in a dependency of the current target by assigning
it to another variable. This does not appear to work because $@
changes whenever a new target is in operation.
2. I want to override a variable and then test its value in a later
target. This does not appear to work. See examples below.
The documentation states that: '...when you define a target-specific
variable,
that variable value is also in effect for all prerequisites of this
target...'
Our installed version is 3.79 on Solaris, but I have also tried 3.79.1.
Makefile
all: $(TESTS)
TESTS = mytest bist scan
.PHONY: $(TESTS)
$(TESTS): TESTBENCH=$@
$(TESTS): override TESTVAR=TRUE
$(TESTS): COMPILE
@echo "\nLVTESTS Target"
@echo "target $@, dep $<""
@echo "TESTBENCH=$(TESTBENCH)"
@echo "TESTVAR=$(TESTVAR)"
COMPILE:
@echo "\nCOMPILE Target"
@echo "target $@, dep $<"
@echo "TESTBENCH=$(TESTBENCH)"
@echo "TESTVAR=$(TESTVAR)"
ifeq ($(TESTVAR),TRUE)
@echo "TESTVAR is TRUE"
else
@echo "TESTVAR is NOT TRUE!"
endif
$ make -f Makefile.test mytest TESTVAR=FALSE
COMPILE Target
target COMPILE, dep
TESTBENCH=COMPILE <<<<< I want this to be mytest at this point
TESTVAR=TRUE
TESTVAR is NOT TRUE! <<<< should be overridden
LVTESTS Target
target mytest, dep COMPILE
TESTBENCH=mytest
TESTVAR=TRUE
$ make -f Makefile.test mytest
COMPILE Target
target COMPILE, dep
TESTBENCH=COMPILE
TESTVAR=TRUE
TESTVAR is NOT TRUE! <<<< should be overridden
LVTESTS Target
target mytest, dep COMPILE
TESTBENCH=mytest
TESTVAR=TRUE
$ make -f Makefile.test mytest TESTVAR=TRUE
COMPILE Target
target COMPILE, dep
TESTBENCH=COMPILE
TESTVAR=TRUE
TESTVAR is TRUE <<<< yes, but it's taken from the command line
LVTESTS Target
target mytest, dep COMPILE
TESTBENCH=mytest
TESTVAR=TRUE
- Paul Smith
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- Target Specific Variables,
psmith <=