Bug 1063874 - Move the parts of XPIDL_SOURCES handling in misc to export. r=gps

This commit is contained in:
Mike Hommey 2015-02-11 08:44:31 +09:00
parent f4c26f919f
commit cfddf46217
3 changed files with 9 additions and 3 deletions

View File

@ -1158,7 +1158,7 @@ ifdef XPT_NAME #{
ifndef NO_DIST_INSTALL
ifndef NO_INTERFACES_MANIFEST
misc:: $(call mkdir_deps,$(FINAL_TARGET)/components)
export:: $(call mkdir_deps,$(FINAL_TARGET)/components)
$(call py_action,buildlist,$(FINAL_TARGET)/components/interfaces.manifest 'interfaces $(XPT_NAME)')
$(call py_action,buildlist,$(FINAL_TARGET)/chrome.manifest 'manifest components/interfaces.manifest')
endif

View File

@ -276,6 +276,7 @@ class RecursiveMakeBackend(CommonBackend):
CommonBackend._init(self)
self._backend_files = {}
self._idl_dirs = set()
def detailed(summary):
s = '{:d} total backend files; ' \
@ -347,6 +348,7 @@ class RecursiveMakeBackend(CommonBackend):
if isinstance(obj, XPIDLFile):
backend_file.idls.append(obj)
backend_file.xpt_name = '%s.xpt' % obj.module
self._idl_dirs.add(obj.relobjdir)
elif isinstance(obj, TestManifest):
self._process_test_manifest(obj, backend_file)
@ -576,9 +578,13 @@ class RecursiveMakeBackend(CommonBackend):
main, all_deps = \
self._traversal.compute_dependencies(filter)
for dir, deps in all_deps.items():
if deps is not None:
if deps is not None or (dir in self._idl_dirs \
and tier == 'export'):
rule = root_deps_mk.create_rule(['%s/%s' % (dir, tier)])
if deps:
rule.add_dependencies('%s/%s' % (d, tier) for d in deps if d)
if dir in self._idl_dirs and tier == 'export':
rule.add_dependencies(['xpcom/xpidl/%s' % tier])
rule = root_deps_mk.create_rule(['recurse_%s' % tier])
if main:
rule.add_dependencies('%s/%s' % (d, tier) for d in main)

View File

@ -896,7 +896,7 @@ VARIABLES = {
This is a list of files that define XPCOM interface definitions.
Entries must be files that exist. Entries are almost certainly ``.idl``
files.
""", 'misc'),
""", 'export'),
'XPIDL_MODULE': (unicode, unicode,
"""XPCOM Interface Definition Module Name.