automake-1.16: Limits of Conditionals
20.2 Limits of Conditionals
===========================
Conditionals should enclose complete statements like variables or rules
definitions. Automake cannot deal with conditionals used inside a
variable definition, for instance, and is not even able to diagnose this
situation. The following example would not work:
# This syntax is not understood by Automake
AM_CPPFLAGS = \
-DFEATURE_A \
if WANT_DEBUG
-DDEBUG \
endif
-DFEATURE_B
However the intended definition of ‘AM_CPPFLAGS’ can be achieved with
if WANT_DEBUG
DEBUGFLAGS = -DDEBUG
endif
AM_CPPFLAGS = -DFEATURE_A $(DEBUGFLAGS) -DFEATURE_B
or
AM_CPPFLAGS = -DFEATURE_A
if WANT_DEBUG
AM_CPPFLAGS += -DDEBUG
endif
AM_CPPFLAGS += -DFEATURE_B
More details and examples of conditionals are described alongside
DONTPRINTYET various Automake features in this manual (⇒Conditional
Subdirectories, ⇒Conditional Sources, *noteConditional
DONTPRINTYET DONTPRINTYET various Automake features in this manual (⇒Conditional
Subdirectories, ⇒Conditional Sources, ⇒Conditional
Programs, ⇒Conditional Libtool Libraries, *noteConditional
DONTPRINTYET DONTPRINTYET various Automake features in this manual (⇒Conditional
Subdirectories, ⇒Conditional Sources, ⇒Conditional
Programs, ⇒Conditional Libtool Libraries, ⇒Conditional
Libtool Sources).