diff --git a/meta-phosphor/classes/obmc-phosphor-utils.bbclass b/meta-phosphor/classes/obmc-phosphor-utils.bbclass
index 036af9b..b5073a6 100644
--- a/meta-phosphor/classes/obmc-phosphor-utils.bbclass
+++ b/meta-phosphor/classes/obmc-phosphor-utils.bbclass
@@ -27,3 +27,18 @@
 
 def listvar_to_list(d, list_var, sep=' '):
     return filter(bool, (d.getVar(list_var, True) or '').split(sep))
+
+
+def compose_list(d, fmtvar, *listvars, **kw):
+    import itertools
+    fmt = d.getVar(fmtvar, True)
+    lists = [listvar_to_list(d, x) for x in listvars]
+    lst = [fmt.format(*x) for x in itertools.product(*lists)]
+    return (kw.get('sep') or ' ').join(lst)
+
+
+def compose_list_zip(d, fmtvar, *listvars, **kw):
+    fmt = d.getVar(fmtvar, True)
+    lists = [listvar_to_list(d, x) for x in listvars]
+    lst = [fmt.format(*x) for x in zip(*lists)]
+    return (kw.get('sep') or ' ').join(lst)
