1 1.5 sjg # $Id: varmisc.mk,v 1.5 2015/10/12 17:09:29 sjg Exp $ 2 1.1 apb # 3 1.1 apb # Miscellaneous variable tests. 4 1.1 apb 5 1.5 sjg all: unmatched_var_paren D_true U_true D_false U_false Q_lhs Q_rhs NQ_none 6 1.1 apb 7 1.1 apb unmatched_var_paren: 8 1.2 sjg @echo ${foo::=foo-text} 9 1.3 sjg 10 1.4 sjg True = ${echo true >&2:L:sh}TRUE 11 1.4 sjg False= ${echo false >&2:L:sh}FALSE 12 1.3 sjg 13 1.3 sjg VSET= is set 14 1.3 sjg .undef UNDEF 15 1.3 sjg 16 1.3 sjg U_false: 17 1.3 sjg @echo :U skipped when var set 18 1.3 sjg @echo ${VSET:U${False}} 19 1.3 sjg 20 1.3 sjg D_false: 21 1.3 sjg @echo :D skipped if var undef 22 1.3 sjg @echo ${UNDEF:D${False}} 23 1.3 sjg 24 1.3 sjg U_true: 25 1.3 sjg @echo :U expanded when var undef 26 1.3 sjg @echo ${UNDEF:U${True}} 27 1.3 sjg 28 1.3 sjg D_true: 29 1.3 sjg @echo :D expanded when var set 30 1.3 sjg @echo ${VSET:D${True}} 31 1.3 sjg 32 1.3 sjg Q_lhs: 33 1.3 sjg @echo :? only lhs when value true 34 1.3 sjg @echo ${1:L:?${True}:${False}} 35 1.3 sjg 36 1.3 sjg Q_rhs: 37 1.3 sjg @echo :? only rhs when value false 38 1.3 sjg @echo ${0:L:?${True}:${False}} 39 1.5 sjg 40 1.5 sjg NQ_none: 41 1.5 sjg @echo do not evaluate or expand :? if discarding 42 1.5 sjg @echo ${VSET:U${1:L:?${True}:${False}}} 43