# Arg1: List of conditions to generate block for # Arg2: List of variables containing rules to add defineTest(addMMPRules) { unset(myConditions) unset(myVariables) unset(myIfDef) myConditions = $$eval($$1) default myVariables = $$eval($$2) myIfDef = if for(condition, $$list($$myConditions)) { contains(condition, default) { libBlock = "$${LITERAL_HASH}else" } else { libBlock = "$${LITERAL_HASH}$${myIfDef} defined($${condition})" myIfDef = elif } for(var, $$list($$myVariables)) { varVal = $$eval($${var}.$${condition}) isEmpty(varVal) { # No value defined for current condition, so use default varVal = $$eval($${var}.default) } !isEmpty(varVal): libBlock += "$$join(varVal,$$escape_expand(\\n))" } MMP_RULES += $$libBlock } MMP_RULES += "$${LITERAL_HASH}endif" export(MMP_RULES) }