From 271703650a9d74cbc3d1865243b355056aa07c9f Mon Sep 17 00:00:00 2001 From: Phil Ringnalda Date: Tue, 3 Sep 2013 23:21:30 -0700 Subject: [PATCH] Back out ce03cc2994aa:ae9f95fc1136 (bug 896797) for SpiderMonkey shell build bustage CLOSED TREE --- Makefile.in | 1 - accessible/public/ia2/Makefile.in | 5 --- accessible/public/ia2/moz.build | 44 +++++++++++++++++++ accessible/public/msaa/Makefile.in | 14 ------ accessible/public/msaa/moz.build | 9 ++++ accessible/src/xpcom/Makefile.in | 5 --- accessible/src/xpcom/moz.build | 4 ++ dom/bindings/Makefile.in | 1 - dom/bindings/moz.build | 1 + gfx/cairo/cairo/src/Makefile.in | 5 --- gfx/cairo/cairo/src/moz.build | 1 + gfx/layers/moz.build | 8 ++-- js/src/Makefile.in | 11 ----- js/src/moz.build | 6 +++ js/xpconnect/src/Makefile.in | 17 ++++--- js/xpconnect/src/moz.build | 1 + layout/style/Makefile.in | 5 --- layout/style/moz.build | 1 + netwerk/Makefile.in | 15 ------- netwerk/moz.build | 5 +++ .../action/process_install_manifest.py | 9 ++-- .../mozbuild/backend/recursivemake.py | 38 ++++++++-------- python/mozbuild/mozbuild/frontend/data.py | 6 +-- python/mozbuild/mozbuild/frontend/emitter.py | 3 +- .../mozbuild/test/backend/data/exports/dom1.h | 0 .../mozbuild/test/backend/data/exports/dom2.h | 0 .../mozbuild/test/backend/data/exports/foo.h | 0 .../mozbuild/test/backend/data/exports/gfx.h | 0 .../test/backend/data/exports/mozilla1.h | 0 .../test/backend/data/exports/mozilla2.h | 0 .../test/backend/data/exports/pprio.h | 0 .../test/backend/test_recursivemake.py | 38 +++++++++++----- toolkit/components/telemetry/Makefile.in | 5 --- toolkit/components/telemetry/moz.build | 1 + uriloader/exthandler/moz.build | 8 ++-- xpcom/Makefile.in | 15 ------- xpcom/base/Makefile.in | 8 ---- xpcom/base/moz.build | 2 + xpcom/moz.build | 5 +++ 39 files changed, 149 insertions(+), 148 deletions(-) delete mode 100644 netwerk/Makefile.in delete mode 100644 python/mozbuild/mozbuild/test/backend/data/exports/dom1.h delete mode 100644 python/mozbuild/mozbuild/test/backend/data/exports/dom2.h delete mode 100644 python/mozbuild/mozbuild/test/backend/data/exports/foo.h delete mode 100644 python/mozbuild/mozbuild/test/backend/data/exports/gfx.h delete mode 100644 python/mozbuild/mozbuild/test/backend/data/exports/mozilla1.h delete mode 100644 python/mozbuild/mozbuild/test/backend/data/exports/mozilla2.h delete mode 100644 python/mozbuild/mozbuild/test/backend/data/exports/pprio.h delete mode 100644 xpcom/Makefile.in diff --git a/Makefile.in b/Makefile.in index 6bfc1eff78b..3d3bc0f5bce 100644 --- a/Makefile.in +++ b/Makefile.in @@ -62,7 +62,6 @@ ifndef MOZ_PROFILE_USE default alldep all:: CLOBBER $(topsrcdir)/configure config.status backend.RecursiveMakeBackend.built $(call SUBMAKE,backend.RecursiveMakeBackend.built,js/src,1) $(call py_action,purge_manifests,-d _build_manifests/purge .) - $(call py_action,process_install_manifest,$(DIST)/include _build_manifests/install/dist_include js/src/_build_manifests/install/dist_include) endif CLOBBER: $(topsrcdir)/CLOBBER diff --git a/accessible/public/ia2/Makefile.in b/accessible/public/ia2/Makefile.in index 35fd596d697..ba08b512606 100644 --- a/accessible/public/ia2/Makefile.in +++ b/accessible/public/ia2/Makefile.in @@ -67,11 +67,6 @@ MIDL_GENERATED_FILES = \ EMBED_MANIFEST_AT = 2 -INSTALL_TARGETS += midl -midl_FILES := $(filter %.h %_i.c,$(MIDL_GENERATED_FILES)) -midl_DEST = $(DIST)/include -midl_TARGET := export - include $(topsrcdir)/config/rules.mk OS_LIBS = $(call EXPAND_LIBNAME,uuid kernel32 rpcns4 rpcrt4 ole32 oleaut32) diff --git a/accessible/public/ia2/moz.build b/accessible/public/ia2/moz.build index ba9c2b6207f..308e3aaeb26 100644 --- a/accessible/public/ia2/moz.build +++ b/accessible/public/ia2/moz.build @@ -5,5 +5,49 @@ # file, You can obtain one at http://mozilla.org/MPL/2.0/. MODULE = 'accessibility' + +# Please keep this list in sync with the Makefile.in until the rest of that file +# is ported over. +midl_interfaces = [ + 'Accessible2', + 'Accessible2_2', + 'AccessibleAction', + 'AccessibleApplication', + 'AccessibleComponent', + 'AccessibleDocument', + 'AccessibleEditableText', + 'AccessibleHyperlink', + 'AccessibleHypertext', + 'AccessibleHypertext2', + 'AccessibleImage', + 'AccessibleRelation', + 'AccessibleTable', + 'AccessibleTable2', + 'AccessibleTableCell', + 'AccessibleText', + 'AccessibleText2', + 'AccessibleValue', +] + +# Please keep this list in sync with the Makefile.in until the rest of that file +# is ported over. +midl_enums = [ + 'AccessibleEventId', + 'AccessibleRole', + 'AccessibleStates', + 'IA2CommonTypes', +] + +headers = ['%s.h' % x for x in midl_enums] +interfaces_h = ['%s.h' % x for x in midl_interfaces] +interfaces_c = ['%s_i.c' % x for x in midl_interfaces] + +# The underscore throws off sorting and EXPORTS expects sorted lists. +interfaces_c.sort() + +EXPORTS += headers +EXPORTS += interfaces_h +EXPORTS += interfaces_c + LIBRARY_NAME = 'IA2Marshal' diff --git a/accessible/public/msaa/Makefile.in b/accessible/public/msaa/Makefile.in index a72b5c89d80..452959f73fb 100644 --- a/accessible/public/msaa/Makefile.in +++ b/accessible/public/msaa/Makefile.in @@ -60,19 +60,5 @@ register:: EMBED_MANIFEST_AT = 2 -midl_exports := \ - ISimpleDOMDocument.h \ - ISimpleDOMDocument_i.c \ - ISimpleDOMNode.h \ - ISimpleDOMNode_i.c \ - ISimpleDOMText.h \ - ISimpleDOMText_i.c \ - $(NULL) - -INSTALL_TARGETS += midl_exports -midl_exports_FILES := $(midl_exports) -midl_exports_DEST = $(DIST)/include -midl_exports_TARGET := export - include $(topsrcdir)/config/rules.mk diff --git a/accessible/public/msaa/moz.build b/accessible/public/msaa/moz.build index 0b8d28869db..d4cace7276a 100644 --- a/accessible/public/msaa/moz.build +++ b/accessible/public/msaa/moz.build @@ -6,5 +6,14 @@ MODULE = 'accessibility' +EXPORTS += [ + 'ISimpleDOMDocument.h', + 'ISimpleDOMDocument_i.c', + 'ISimpleDOMNode.h', + 'ISimpleDOMNode_i.c', + 'ISimpleDOMText.h', + 'ISimpleDOMText_i.c', +] + LIBRARY_NAME = 'AccessibleMarshal' diff --git a/accessible/src/xpcom/Makefile.in b/accessible/src/xpcom/Makefile.in index d8e5659645c..a87748938cc 100644 --- a/accessible/src/xpcom/Makefile.in +++ b/accessible/src/xpcom/Makefile.in @@ -11,11 +11,6 @@ include $(DEPTH)/config/autoconf.mk EXTRA_MDDEPEND_FILES = xpcAccEvents.pp -INSTALL_TARGETS += xpcaccevents -xpcaccevents_FILES := xpcAccEvents.h -xpcaccevents_DEST = $(DIST)/include -xpcaccevents_TARGET := export - include $(topsrcdir)/config/rules.mk LOCAL_INCLUDES = \ diff --git a/accessible/src/xpcom/moz.build b/accessible/src/xpcom/moz.build index da9fcd374cb..9bbe8560717 100644 --- a/accessible/src/xpcom/moz.build +++ b/accessible/src/xpcom/moz.build @@ -6,6 +6,10 @@ MODULE = 'accessibility' +EXPORTS += [ + 'xpcAccEvents.h', +] + CPP_SOURCES += [ 'nsAccessibleRelation.cpp', 'xpcAccEvents.cpp', diff --git a/dom/bindings/Makefile.in b/dom/bindings/Makefile.in index 78b39789502..b4fc965b457 100644 --- a/dom/bindings/Makefile.in +++ b/dom/bindings/Makefile.in @@ -110,7 +110,6 @@ INSTALL_TARGETS += EXPORTS_GENERATED # be in the same target/subtier as GlobalGen.py, otherwise the files will not # get installed into the appropriate location as they are generated. globalgen_headers_FILES := \ - GeneratedAtomList.h \ PrototypeList.h \ RegisterBindings.h \ UnionConversions.h \ diff --git a/dom/bindings/moz.build b/dom/bindings/moz.build index 3368a276e81..69b28606ed6 100644 --- a/dom/bindings/moz.build +++ b/dom/bindings/moz.build @@ -21,6 +21,7 @@ EXPORTS.mozilla.dom += [ 'DOMJSProxyHandler.h', 'Date.h', 'Errors.msg', + 'GeneratedAtomList.h', 'JSSlots.h', 'NonRefcountedDOMObject.h', 'Nullable.h', diff --git a/gfx/cairo/cairo/src/Makefile.in b/gfx/cairo/cairo/src/Makefile.in index 993d7d2d6c7..21e1506502e 100644 --- a/gfx/cairo/cairo/src/Makefile.in +++ b/gfx/cairo/cairo/src/Makefile.in @@ -93,11 +93,6 @@ endif LOCAL_INCLUDES += -I$(srcdir) -INSTALL_TARGETS += cairo_features -cairo_features_FILES := cairo-features.h -cairo_features_DEST = $(DIST)/include/cairo -cairo_features_TARGET := export - include $(topsrcdir)/config/rules.mk ifdef GNU_CC diff --git a/gfx/cairo/cairo/src/moz.build b/gfx/cairo/cairo/src/moz.build index afe9dcf114c..53535922c5a 100644 --- a/gfx/cairo/cairo/src/moz.build +++ b/gfx/cairo/cairo/src/moz.build @@ -10,6 +10,7 @@ MODULE = 'cairo' EXPORTS.cairo += [ 'cairo-deprecated.h', + 'cairo-features.h', 'cairo-platform.h', 'cairo-rename.h', 'cairo-tee.h', diff --git a/gfx/layers/moz.build b/gfx/layers/moz.build index 1c49fb3efae..529846e1853 100644 --- a/gfx/layers/moz.build +++ b/gfx/layers/moz.build @@ -53,8 +53,8 @@ if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'windows': 'd3d9/LayerManagerD3D9.h', ] EXPORTS.mozilla.layers += [ - 'd3d9/CompositorD3D9.h', - 'd3d9/TextureD3D9.h', + 'CompositorD3D9.h', + 'TextureD3D9.h', ] CPP_SOURCES += [ 'CompositorD3D9.cpp', @@ -100,6 +100,8 @@ EXPORTS.mozilla.layers += [ 'CompositorTypes.h', 'D3D9SurfaceImage.h', 'Effects.h', + 'GrallocTextureClient.h', + 'GrallocTextureHost.h', 'ImageDataSerializer.h', 'LayersTypes.h', 'RenderTrace.h', @@ -143,8 +145,6 @@ EXPORTS.mozilla.layers += [ 'ipc/TaskThrottler.h', 'opengl/CompositingRenderTargetOGL.h', 'opengl/CompositorOGL.h', - 'opengl/GrallocTextureClient.h', - 'opengl/GrallocTextureHost.h', 'opengl/TextureClientOGL.h', 'opengl/TextureHostOGL.h', ] diff --git a/js/src/Makefile.in b/js/src/Makefile.in index 73b679aa72f..0f860609431 100644 --- a/js/src/Makefile.in +++ b/js/src/Makefile.in @@ -177,7 +177,6 @@ MOZILLA_DTRACE_SRC = $(srcdir)/devtools/javascript-trace.d endif default:: - $(call py_action,process_install_manifest,$(if $(JS_STANDALONE),,--no-remove) $(DIST)/include _build_manifests/install/dist_include) ifneq (,$(CROSS_COMPILE)$(filter-out WINNT OS2,$(OS_ARCH))) # nsinstall doesn't get built until we enter config/ in the exports phase, @@ -202,16 +201,6 @@ symverscript: symverscript.in EXTRA_DEPS += symverscript endif -export_files = js-config.h -ifdef HAVE_DTRACE -export_files += $(CURDIR)/javascript-trace.h -endif - -INSTALL_TARGETS += jsconfig -jsconfig_FILES = $(export_files) -jsconfig_DEST = $(DIST)/include -jsconfig_TARGETS := export - include $(topsrcdir)/config/rules.mk ifdef JS_HAS_CTYPES diff --git a/js/src/moz.build b/js/src/moz.build index e9348ff0953..850f778eb49 100644 --- a/js/src/moz.build +++ b/js/src/moz.build @@ -31,6 +31,7 @@ CONFIGURE_SUBST_FILES += ['devtools/rootAnalysis/Makefile'] # browser builds. Don't add new files here unless you know what you're # doing! EXPORTS += [ + 'js-config.h', 'js.msg', 'jsalloc.h', 'jsapi.h', @@ -48,6 +49,11 @@ EXPORTS += [ 'perf/jsperf.h', ] +if CONFIG['HAVE_DTRACE']: + EXPORTS += [ + '$(CURDIR)/javascript-trace.h', + ] + # If you add a header here, add it to js/src/jsapi-tests/testIntTypesABI.cpp so # that we ensure we don't over-expose our internal integer typedefs. Note that # LegacyIntTypes.h below is deliberately exempted from this requirement. diff --git a/js/xpconnect/src/Makefile.in b/js/xpconnect/src/Makefile.in index 2911973d5fd..74105ae9933 100644 --- a/js/xpconnect/src/Makefile.in +++ b/js/xpconnect/src/Makefile.in @@ -40,15 +40,6 @@ SHARED_LIBRARY_LIBS = \ EXTRA_MDDEPEND_FILES = dom_qsgen.pp dictionary_helper_gen.pp event_impl_gen.pp -INSTALL_TARGETS += extra_export_files -extra_export_files_FILES := \ - DictionaryHelpers.h \ - GeneratedEventClasses.h \ - GeneratedEvents.h \ - $(NULL) -extra_export_files_DEST = $(DIST)/include -extra_export_files_TARGET := export - include $(topsrcdir)/config/rules.mk include $(topsrcdir)/ipc/chromium/chromium-config.mk @@ -156,6 +147,14 @@ GeneratedEvents-webidl: event_impl_gen.conf --webidltarget=$(top_srcdir)/dom/webidl \ event_impl_gen.conf +_EXTRA_EXPORT_FILES = \ + DictionaryHelpers.h \ + GeneratedEventClasses.h \ + $(NULL) + +libs:: $(_EXTRA_EXPORT_FILES) + $(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/dist/include + GARBAGE += \ dom_quickstubs.h \ dom_quickstubs.cpp \ diff --git a/js/xpconnect/src/moz.build b/js/xpconnect/src/moz.build index 5d6ff8bd59c..b47d77abd48 100644 --- a/js/xpconnect/src/moz.build +++ b/js/xpconnect/src/moz.build @@ -8,6 +8,7 @@ MODULE = 'xpconnect' EXPORTS += [ 'BackstagePass.h', + 'GeneratedEvents.h', 'XPCJSMemoryReporter.h', 'nsCxPusher.h', 'qsObjectHelper.h', diff --git a/layout/style/Makefile.in b/layout/style/Makefile.in index 776f3bea45f..e526b903499 100644 --- a/layout/style/Makefile.in +++ b/layout/style/Makefile.in @@ -14,11 +14,6 @@ OS_CFLAGS := $(OS_CFLAGS) -Wshadow OS_CXXFLAGS := $(OS_CXXFLAGS) -Wshadow endif -INSTALL_TARGETS += structlist -structlist_FILES := nsStyleStructList.h -structlist_DEST = $(DIST)/include -structlist_TARGET := export - include $(topsrcdir)/config/rules.mk include $(topsrcdir)/ipc/chromium/chromium-config.mk diff --git a/layout/style/moz.build b/layout/style/moz.build index 5bf1ae4184c..0d4ed279a21 100644 --- a/layout/style/moz.build +++ b/layout/style/moz.build @@ -54,6 +54,7 @@ EXPORTS += [ 'nsStyleStruct.h', 'nsStyleStructFwd.h', 'nsStyleStructInlines.h', + 'nsStyleStructList.h', 'nsStyleTransformMatrix.h', 'nsStyleUtil.h', ] diff --git a/netwerk/Makefile.in b/netwerk/Makefile.in deleted file mode 100644 index 900f0ea07a1..00000000000 --- a/netwerk/Makefile.in +++ /dev/null @@ -1,15 +0,0 @@ -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. - -DEPTH := @DEPTH@ -topsrcdir := @top_srcdir@ -srcdir := @srcdir@ -VPATH := @srcdir@ - -INSTALL_TARGETS += neckoconfig -neckoconfig_FILES := necko-config.h -neckoconfig_DEST = $(DIST)/include -neckoconfig_TARGET := export - -include $(topsrcdir)/config/rules.mk diff --git a/netwerk/moz.build b/netwerk/moz.build index 9a2dfa6d13b..ad37d15c7cc 100644 --- a/netwerk/moz.build +++ b/netwerk/moz.build @@ -35,3 +35,8 @@ DIRS += ['build'] TEST_TOOL_DIRS += ['test'] MODULE = 'necko' + +EXPORTS += [ + 'necko-config.h', +] + diff --git a/python/mozbuild/mozbuild/action/process_install_manifest.py b/python/mozbuild/mozbuild/action/process_install_manifest.py index 9c5aec14196..33468703145 100644 --- a/python/mozbuild/mozbuild/action/process_install_manifest.py +++ b/python/mozbuild/mozbuild/action/process_install_manifest.py @@ -13,14 +13,14 @@ COMPLETE = 'From {dest}: Kept {existing} existing; Added/updated {updated}; ' \ 'Removed {rm_files} files and {rm_dirs} directories.' -def process_manifest(destdir, paths, remove_unaccounted=True): +def process_manifest(destdir, *paths): manifest = InstallManifest() for path in paths: manifest |= InstallManifest(path=path) copier = FileCopier() manifest.populate_registry(copier) - return copier.copy(destdir, remove_unaccounted=remove_unaccounted) + return copier.copy(destdir) if __name__ == '__main__': @@ -29,13 +29,10 @@ if __name__ == '__main__': parser.add_argument('destdir', help='Destination directory.') parser.add_argument('manifests', nargs='+', help='Path to manifest file(s).') - parser.add_argument('--no-remove', action='store_true', - help='Do not remove unaccounted files from destination.') args = parser.parse_args() - result = process_manifest(args.destdir, args.manifests, - remove_unaccounted=not args.no_remove) + result = process_manifest(args.destdir, *args.manifests) print(COMPLETE.format(dest=args.destdir, existing=result.existing_files_count, diff --git a/python/mozbuild/mozbuild/backend/recursivemake.py b/python/mozbuild/mozbuild/backend/recursivemake.py index 765f329d004..05b08ef56ed 100644 --- a/python/mozbuild/mozbuild/backend/recursivemake.py +++ b/python/mozbuild/mozbuild/backend/recursivemake.py @@ -149,8 +149,11 @@ class RecursiveMakeBackend(CommonBackend): self.backend_input_files.add(os.path.join(self.environment.topobjdir, 'config', 'autoconf.mk')) + self._install_manifests = dict() + self._purge_manifests = dict( dist_bin=PurgeManifest(relpath='dist/bin'), + dist_include=PurgeManifest(relpath='dist/include'), dist_private=PurgeManifest(relpath='dist/private'), dist_public=PurgeManifest(relpath='dist/public'), dist_sdk=PurgeManifest(relpath='dist/sdk'), @@ -160,7 +163,6 @@ class RecursiveMakeBackend(CommonBackend): self._install_manifests = dict( dist_idl=InstallManifest(), - dist_include=InstallManifest(), ) def _update_from_avoid_write(self, result): @@ -206,7 +208,7 @@ class RecursiveMakeBackend(CommonBackend): else: backend_file.write('%s := %s\n' % (k, v)) elif isinstance(obj, Exports): - self._process_exports(obj, obj.exports, backend_file) + self._process_exports(obj.exports, backend_file) elif isinstance(obj, IPDLFile): self._ipdl_sources.add(mozpath.join(obj.srcdir, obj.basename)) @@ -365,28 +367,29 @@ class RecursiveMakeBackend(CommonBackend): fh.write('PARALLEL_DIRS += %s\n' % ' '.join(obj.parallel_external_make_dirs)) - def _process_exports(self, obj, exports, backend_file, namespace=""): - # This may not be needed, but is present for backwards compatibility - # with the old make rules, just in case. - if not obj.dist_install: - return - + def _process_exports(self, exports, backend_file, namespace=""): strings = exports.get_strings() if namespace: + if strings: + backend_file.write('EXPORTS_NAMESPACES += %s\n' % namespace) + export_name = 'EXPORTS_%s' % namespace namespace += '/' + else: + export_name = 'EXPORTS' - for s in strings: - source = os.path.normpath(os.path.join(obj.srcdir, s)) - dest = '%s%s' % (namespace, os.path.basename(s)) - self._install_manifests['dist_include'].add_symlink(source, dest) + # Iterate over the list of export filenames, printing out an EXPORTS + # declaration for each. + if strings: + backend_file.write('%s += %s\n' % (export_name, ' '.join(strings))) - if not os.path.exists(source): - raise Exception('File listed in EXPORTS does not exist: %s' % source) + for s in strings: + p = '%s%s' % (namespace, s) + self._purge_manifests['dist_include'].add(p) children = exports.get_children() for subdir in sorted(children): - self._process_exports(obj, children[subdir], backend_file, - namespace=namespace + subdir) + self._process_exports(children[subdir], backend_file, + namespace=namespace + subdir) def _handle_idl_manager(self, manager): build_files = self._purge_manifests['xpidl'] @@ -398,8 +401,7 @@ class RecursiveMakeBackend(CommonBackend): for idl in manager.idls.values(): self._install_manifests['dist_idl'].add_symlink(idl['source'], idl['basename']) - self._install_manifests['dist_include'].add_optional_exists('%s.h' - % idl['root']) + self._purge_manifests['dist_include'].add('%s.h' % idl['root']) build_files.add(mozpath.join('headers', '%s.h' % idl['root'])) for module in manager.modules: diff --git a/python/mozbuild/mozbuild/frontend/data.py b/python/mozbuild/mozbuild/frontend/data.py index 9db3d89079c..0ca88f36cdf 100644 --- a/python/mozbuild/mozbuild/frontend/data.py +++ b/python/mozbuild/mozbuild/frontend/data.py @@ -161,13 +161,11 @@ class Exports(SandboxDerived): this object fills that role. It just has a reference to the underlying HierarchicalStringList, which is created when parsing EXPORTS. """ - __slots__ = ('exports', 'dist_install') + __slots__ = ('exports') - def __init__(self, sandbox, exports, dist_install=True): + def __init__(self, sandbox, exports): SandboxDerived.__init__(self, sandbox) self.exports = exports - self.dist_install = dist_install - class IPDLFile(SandboxDerived): """Describes an individual .ipdl source file.""" diff --git a/python/mozbuild/mozbuild/frontend/emitter.py b/python/mozbuild/mozbuild/frontend/emitter.py index 3e8bd677582..4979e8b02c5 100644 --- a/python/mozbuild/mozbuild/frontend/emitter.py +++ b/python/mozbuild/mozbuild/frontend/emitter.py @@ -154,8 +154,7 @@ class TreeMetadataEmitter(LoggingMixin): exports = sandbox.get('EXPORTS') if exports: - yield Exports(sandbox, exports, - dist_install=not sandbox.get('NO_DIST_INSTALL', False)) + yield Exports(sandbox, exports) program = sandbox.get('PROGRAM') if program: diff --git a/python/mozbuild/mozbuild/test/backend/data/exports/dom1.h b/python/mozbuild/mozbuild/test/backend/data/exports/dom1.h deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/python/mozbuild/mozbuild/test/backend/data/exports/dom2.h b/python/mozbuild/mozbuild/test/backend/data/exports/dom2.h deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/python/mozbuild/mozbuild/test/backend/data/exports/foo.h b/python/mozbuild/mozbuild/test/backend/data/exports/foo.h deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/python/mozbuild/mozbuild/test/backend/data/exports/gfx.h b/python/mozbuild/mozbuild/test/backend/data/exports/gfx.h deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/python/mozbuild/mozbuild/test/backend/data/exports/mozilla1.h b/python/mozbuild/mozbuild/test/backend/data/exports/mozilla1.h deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/python/mozbuild/mozbuild/test/backend/data/exports/mozilla2.h b/python/mozbuild/mozbuild/test/backend/data/exports/mozilla2.h deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/python/mozbuild/mozbuild/test/backend/data/exports/pprio.h b/python/mozbuild/mozbuild/test/backend/data/exports/pprio.h deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/python/mozbuild/mozbuild/test/backend/test_recursivemake.py b/python/mozbuild/mozbuild/test/backend/test_recursivemake.py index a2d64e8b31c..ff411d2701c 100644 --- a/python/mozbuild/mozbuild/test/backend/test_recursivemake.py +++ b/python/mozbuild/mozbuild/test/backend/test_recursivemake.py @@ -234,16 +234,33 @@ class TestRecursiveMakeBackend(BackendTester): self.assertEqual(found, val) def test_exports(self): - """Ensure EXPORTS is handled properly.""" + """Ensure EXPORTS is written out correctly.""" env = self._consume('exports', RecursiveMakeBackend) - # EXPORTS files should appear in the dist_include install manifest. - m = InstallManifest(path=os.path.join(env.topobjdir, - '_build_manifests', 'install', 'dist_include')) - self.assertEqual(len(m), 7) - self.assertIn('foo.h', m) - self.assertIn('mozilla/mozilla1.h', m) - self.assertIn('mozilla/dom/dom2.h', m) + backend_path = os.path.join(env.topobjdir, 'backend.mk') + lines = [l.strip() for l in open(backend_path, 'rt').readlines()[2:]] + + self.assertEqual(lines, [ + 'MOZBUILD_DERIVED := 1', + 'NO_MAKEFILE_RULE := 1', + 'NO_SUBMAKEFILES_RULE := 1', + 'EXPORTS += foo.h', + 'EXPORTS_NAMESPACES += mozilla', + 'EXPORTS_mozilla += mozilla1.h mozilla2.h', + 'EXPORTS_NAMESPACES += mozilla/dom', + 'EXPORTS_mozilla/dom += dom1.h dom2.h', + 'EXPORTS_NAMESPACES += mozilla/gfx', + 'EXPORTS_mozilla/gfx += gfx.h', + 'EXPORTS_NAMESPACES += nspr/private', + 'EXPORTS_nspr/private += pprio.h', + ]) + + # EXPORTS files should appear in the dist_include purge manifest. + m = PurgeManifest(path=os.path.join(env.topobjdir, + '_build_manifests', 'purge', 'dist_include')) + self.assertIn('foo.h', m.entries) + self.assertIn('mozilla/mozilla1.h', m.entries) + self.assertIn('mozilla/dom/dom2.h', m.entries) def test_xpcshell_manifests(self): """Ensure XPCSHELL_TESTS_MANIFESTS is written out correctly.""" @@ -280,8 +297,8 @@ class TestRecursiveMakeBackend(BackendTester): self.assertIn('bar.idl', m) self.assertIn('foo.idl', m) - m = InstallManifest(path=os.path.join(install_dir, 'dist_include')) - self.assertIn('foo.h', m) + m = PurgeManifest(path=os.path.join(purge_dir, 'dist_include')) + self.assertIn('foo.h', m.entries) p = os.path.join(env.topobjdir, 'config/makefiles/xpidl') self.assertTrue(os.path.isdir(p)) @@ -308,6 +325,7 @@ class TestRecursiveMakeBackend(BackendTester): expected = [ 'dist_bin', + 'dist_include', 'dist_private', 'dist_public', 'dist_sdk', diff --git a/toolkit/components/telemetry/Makefile.in b/toolkit/components/telemetry/Makefile.in index c91cbad5609..96de16c4932 100644 --- a/toolkit/components/telemetry/Makefile.in +++ b/toolkit/components/telemetry/Makefile.in @@ -30,11 +30,6 @@ ifdef MOZ_HISTOGRAMS_VERSION DEFINES += -DHISTOGRAMS_FILE_VERSION="$(MOZ_HISTOGRAMS_VERSION)" endif -INSTALL_TARGETS += histoenums -histoenums_FILES := TelemetryHistogramEnums.h -histoenums_DEST = $(DIST)/include/mozilla -histoenums_TARGET := export - include $(topsrcdir)/config/rules.mk include $(topsrcdir)/ipc/chromium/chromium-config.mk diff --git a/toolkit/components/telemetry/moz.build b/toolkit/components/telemetry/moz.build index bb4f01a543b..363cff19012 100644 --- a/toolkit/components/telemetry/moz.build +++ b/toolkit/components/telemetry/moz.build @@ -16,6 +16,7 @@ MODULE = 'telemetry' EXPORTS.mozilla += [ 'ProcessedStack.h', 'Telemetry.h', + 'TelemetryHistogramEnums.h', ] CPP_SOURCES += [ diff --git a/uriloader/exthandler/moz.build b/uriloader/exthandler/moz.build index 78f69f77031..ed9a37031d6 100644 --- a/uriloader/exthandler/moz.build +++ b/uriloader/exthandler/moz.build @@ -42,14 +42,12 @@ EXPORTS += [ if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'android': EXPORTS += [ - osdir + '/nsExternalSharingAppService.h', - osdir + '/nsExternalURLHandlerService.h', + 'nsExternalSharingAppService.h', + 'nsExternalURLHandlerService.h', ] if CONFIG['MOZ_ENABLE_MEEGOTOUCHSHARE']: - EXPORTS += [ - osdir + '/nsExternalSharingAppService.h', - ] + EXPORTS += ['nsExternalSharingAppService.h'] EXPORTS.mozilla.dom += [ 'ExternalHelperAppChild.h', diff --git a/xpcom/Makefile.in b/xpcom/Makefile.in deleted file mode 100644 index e7f6c35a192..00000000000 --- a/xpcom/Makefile.in +++ /dev/null @@ -1,15 +0,0 @@ -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. - -DEPTH := @DEPTH@ -topsrcdir := @top_srcdir@ -srcdir := @srcdir@ -VPATH := @srcdir@ - -INSTALL_TARGETS += xpcom -xpcom_FILES := xpcom-config.h -xpcom_DEST = $(DIST)/include -xpcom_TARGET := export - -include $(topsrcdir)/config/rules.mk diff --git a/xpcom/base/Makefile.in b/xpcom/base/Makefile.in index 5e34139d291..cdb4b4ae698 100644 --- a/xpcom/base/Makefile.in +++ b/xpcom/base/Makefile.in @@ -19,14 +19,6 @@ endif endif #if OS_ARCH == WINNT -INSTALL_TARGETS += errorlist -errorlist_FILES := \ - ErrorListCDefines.h \ - ErrorListCxxDefines.h \ - $(NULL) -errorlist_DEST = $(DIST)/include -errorlist_TARGET := export - include $(topsrcdir)/config/rules.mk include $(topsrcdir)/ipc/chromium/chromium-config.mk diff --git a/xpcom/base/moz.build b/xpcom/base/moz.build index 8a6c76f29be..b46a78f0cec 100644 --- a/xpcom/base/moz.build +++ b/xpcom/base/moz.build @@ -43,6 +43,8 @@ MODULE = 'xpcom' EXPORTS += [ 'ErrorList.h', + 'ErrorListCDefines.h', + 'ErrorListCxxDefines.h', 'nsAgg.h', 'nsAutoPtr.h', 'nsAutoRef.h', diff --git a/xpcom/moz.build b/xpcom/moz.build index 3ff09e57340..133e68d21ed 100644 --- a/xpcom/moz.build +++ b/xpcom/moz.build @@ -39,3 +39,8 @@ if CONFIG['DEHYDRA_PATH']: DIRS += ['analysis'] MODULE = 'xpcom' + +# xpcom-config.h is generated by configure +EXPORTS += [ + 'xpcom-config.h', +]