Bug 1319223 - Generate interfaces.manifest files in the tup backend. draft
authorChris Manchester <cmanchester@mozilla.com>
Wed, 07 Jun 2017 16:27:58 -0700
changeset 590611 ec85bd7bccb2f68492d71bf06172ea2a5407ffb4
parent 590610 ee40f43a61560584ab03b63eae0f5c03d2c5c0e0
child 632279 b6e6fb4828fa975b51650dcbfa4067098fe90cae
push id62800
push userbmo:cmanchester@mozilla.com
push dateWed, 07 Jun 2017 23:32:56 +0000
bugs1319223
milestone55.0a1
Bug 1319223 - Generate interfaces.manifest files in the tup backend. MozReview-Commit-ID: 92N8ZqtqjUr
python/mozbuild/mozbuild/backend/tup.py
--- a/python/mozbuild/mozbuild/backend/tup.py
+++ b/python/mozbuild/mozbuild/backend/tup.py
@@ -367,16 +367,23 @@ class TupOnly(CommonBackend, PartialBack
                     '$(MOZ_OBJ_ROOT)/xpcom/idl-parser/xpidl/xpidlyacc.py',
                     self._installed_files,
                 ],
                 display='XPIDL %s' % module,
                 cmd=cmd,
                 outputs=outputs,
             )
 
+        for manifest, entries in manager.interface_manifests.items():
+            for xpt in entries:
+                self._manifest_entries[manifest].add('interfaces %s' % xpt)
+
+        for m in manager.chrome_manifests:
+            self._manifest_entries[m].add('manifest components/interfaces.manifest')
+
     def _preprocess(self, backend_file, input_file, destdir=None):
         # .css files use '%' as the preprocessor marker, which must be scaped as
         # '%%' in the Tupfile.
         marker = '%%' if input_file.endswith('.css') else '#'
 
         cmd = self._py_action('preprocessor')
         cmd.extend([shell_quote(d) for d in backend_file.defines])
         cmd.extend(['$(ACDEFINES)', '%f', '-o', '%o', '--marker=%s' % marker])