unix - signo - Cómo usar la condición múltiple en la declaración ''ifeq''
usar funciones en bash (2)
Aunque la solución de Hasturkun funcionará, creo que la forma idiomática de escribir esto es:
ifeq ($(TEST_FLAG),TRUE)
ifeq ($(DEBUG_FLAG),FALSE)
# Stuff
endif
endif
Me gustaría verificar múltiples condiciones en un bucle if
de GNU make file. Aquí hay un ejemplo:
ifeq ($(TEST_FLAG),TRUE && ($(DEBUG_FLAG),FALSE))
true statement
else
false statement
endif
¿Cuál es la forma correcta de hacerlo?
Puede usar ifeq
con una concatenación de sus valores, ej.
ifeq ($(TEST_FLAG)$(DEBUG_FLAG),TRUEFALSE)
do something
endif
También es posible utilizar las funciones Conditional, que es más probable que sean útiles en un bucle (ya que ifeq
probablemente no hará lo que espera en un bucle, se probará exactamente una vez).