Bug 896797 - Part 2: Don't list autogenerated files in EXPORTS; r=glandium

This commit is contained in:
Gregory Szorc 2013-09-03 20:28:05 -07:00
parent 8f08f64511
commit 9df929a380
34 changed files with 114 additions and 99 deletions

View File

@ -67,6 +67,11 @@ 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)

View File

@ -5,49 +5,5 @@
# 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'

View File

@ -60,5 +60,19 @@ 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

View File

@ -6,14 +6,5 @@
MODULE = 'accessibility'
EXPORTS += [
'ISimpleDOMDocument.h',
'ISimpleDOMDocument_i.c',
'ISimpleDOMNode.h',
'ISimpleDOMNode_i.c',
'ISimpleDOMText.h',
'ISimpleDOMText_i.c',
]
LIBRARY_NAME = 'AccessibleMarshal'

View File

@ -11,6 +11,11 @@ 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 = \

View File

@ -6,10 +6,6 @@
MODULE = 'accessibility'
EXPORTS += [
'xpcAccEvents.h',
]
CPP_SOURCES += [
'nsAccessibleRelation.cpp',
'xpcAccEvents.cpp',

View File

@ -110,6 +110,7 @@ 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 \

View File

@ -21,7 +21,6 @@ EXPORTS.mozilla.dom += [
'DOMJSProxyHandler.h',
'Date.h',
'Errors.msg',
'GeneratedAtomList.h',
'JSSlots.h',
'NonRefcountedDOMObject.h',
'Nullable.h',

View File

@ -93,6 +93,11 @@ 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

View File

@ -10,7 +10,6 @@ MODULE = 'cairo'
EXPORTS.cairo += [
'cairo-deprecated.h',
'cairo-features.h',
'cairo-platform.h',
'cairo-rename.h',
'cairo-tee.h',

View File

@ -53,8 +53,8 @@ if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'windows':
'd3d9/LayerManagerD3D9.h',
]
EXPORTS.mozilla.layers += [
'CompositorD3D9.h',
'TextureD3D9.h',
'd3d9/CompositorD3D9.h',
'd3d9/TextureD3D9.h',
]
CPP_SOURCES += [
'CompositorD3D9.cpp',
@ -100,8 +100,6 @@ EXPORTS.mozilla.layers += [
'CompositorTypes.h',
'D3D9SurfaceImage.h',
'Effects.h',
'GrallocTextureClient.h',
'GrallocTextureHost.h',
'ImageDataSerializer.h',
'LayersTypes.h',
'RenderTrace.h',
@ -145,6 +143,8 @@ EXPORTS.mozilla.layers += [
'ipc/TaskThrottler.h',
'opengl/CompositingRenderTargetOGL.h',
'opengl/CompositorOGL.h',
'opengl/GrallocTextureClient.h',
'opengl/GrallocTextureHost.h',
'opengl/TextureClientOGL.h',
'opengl/TextureHostOGL.h',
]

View File

@ -201,6 +201,16 @@ 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

View File

@ -31,7 +31,6 @@ 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',
@ -49,11 +48,6 @@ 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.

View File

@ -40,6 +40,15 @@ 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
@ -147,14 +156,6 @@ 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 \

View File

@ -8,7 +8,6 @@ MODULE = 'xpconnect'
EXPORTS += [
'BackstagePass.h',
'GeneratedEvents.h',
'XPCJSMemoryReporter.h',
'nsCxPusher.h',
'qsObjectHelper.h',

View File

@ -14,6 +14,11 @@ 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

View File

@ -54,7 +54,6 @@ EXPORTS += [
'nsStyleStruct.h',
'nsStyleStructFwd.h',
'nsStyleStructInlines.h',
'nsStyleStructList.h',
'nsStyleTransformMatrix.h',
'nsStyleUtil.h',
]

15
netwerk/Makefile.in Normal file
View File

@ -0,0 +1,15 @@
# 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

View File

@ -35,8 +35,3 @@ DIRS += ['build']
TEST_TOOL_DIRS += ['test']
MODULE = 'necko'
EXPORTS += [
'necko-config.h',
]

View File

@ -208,7 +208,7 @@ class RecursiveMakeBackend(CommonBackend):
else:
backend_file.write('%s := %s\n' % (k, v))
elif isinstance(obj, Exports):
self._process_exports(obj.exports, backend_file)
self._process_exports(obj, obj.exports, backend_file)
elif isinstance(obj, IPDLFile):
self._ipdl_sources.add(mozpath.join(obj.srcdir, obj.basename))
@ -367,7 +367,7 @@ class RecursiveMakeBackend(CommonBackend):
fh.write('PARALLEL_DIRS += %s\n' %
' '.join(obj.parallel_external_make_dirs))
def _process_exports(self, exports, backend_file, namespace=""):
def _process_exports(self, obj, exports, backend_file, namespace=""):
strings = exports.get_strings()
if namespace:
if strings:
@ -383,13 +383,17 @@ class RecursiveMakeBackend(CommonBackend):
backend_file.write('%s += %s\n' % (export_name, ' '.join(strings)))
for s in strings:
source = os.path.normpath(os.path.join(obj.srcdir, s))
if not os.path.isfile(source):
raise Exception('File listed in EXPORTS does not exist: %s' % source)
p = '%s%s' % (namespace, s)
self._purge_manifests['dist_include'].add(p)
children = exports.get_children()
for subdir in sorted(children):
self._process_exports(children[subdir], backend_file,
namespace=namespace + subdir)
self._process_exports(obj, children[subdir], backend_file,
namespace=namespace + subdir)
def _handle_idl_manager(self, manager):
build_files = self._purge_manifests['xpidl']

View File

@ -30,6 +30,11 @@ 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

View File

@ -16,7 +16,6 @@ MODULE = 'telemetry'
EXPORTS.mozilla += [
'ProcessedStack.h',
'Telemetry.h',
'TelemetryHistogramEnums.h',
]
CPP_SOURCES += [

View File

@ -42,12 +42,14 @@ EXPORTS += [
if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'android':
EXPORTS += [
'nsExternalSharingAppService.h',
'nsExternalURLHandlerService.h',
osdir + '/nsExternalSharingAppService.h',
osdir + '/nsExternalURLHandlerService.h',
]
if CONFIG['MOZ_ENABLE_MEEGOTOUCHSHARE']:
EXPORTS += ['nsExternalSharingAppService.h']
EXPORTS += [
osdir + '/nsExternalSharingAppService.h',
]
EXPORTS.mozilla.dom += [
'ExternalHelperAppChild.h',

15
xpcom/Makefile.in Normal file
View File

@ -0,0 +1,15 @@
# 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

View File

@ -19,6 +19,14 @@ 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

View File

@ -43,8 +43,6 @@ MODULE = 'xpcom'
EXPORTS += [
'ErrorList.h',
'ErrorListCDefines.h',
'ErrorListCxxDefines.h',
'nsAgg.h',
'nsAutoPtr.h',
'nsAutoRef.h',

View File

@ -39,8 +39,3 @@ if CONFIG['DEHYDRA_PATH']:
DIRS += ['analysis']
MODULE = 'xpcom'
# xpcom-config.h is generated by configure
EXPORTS += [
'xpcom-config.h',
]