Something like ${FLAVORS[1]} looks up a variable named FLAVORS[1].
It is not equivalent to ${FLAVORS:[1]} which looks up the first
word of a variable named FLAVORS. The second form is what should
be used to set FLAVOR as otherwise it is set to an empty value
and we might as well replace FLAVOR?=${FLAVORS[1]} with FLAVOR?=.
This potentially breaks ports builds of the default flavor outside
of Poudriere since something like
FLAVORS= foo bar FLAVOR?= ${FLAVORS[1]} .if ${FLAVOR} == foo # ... .else # ... .endif
will *always* take the else branch.
In the asterisk-* ports we do not really need to set FLAVOR but
I left it in anyway.