Bug 1518392 [wpt PR 14744] - content-security-policy/unsafe-hashes/javascript_src_all...
[gecko.git] / image / moz.build
blob9b96b5734736ef4d1d7be1e5a33a4e7a79d1a502
1 # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
2 # vim: set filetype=python:
3 # This Source Code Form is subject to the terms of the Mozilla Public
4 # License, v. 2.0. If a copy of the MPL was not distributed with this
5 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
7 DIRS += ['build', 'decoders', 'encoders']
8 if CONFIG['ENABLE_TESTS']:
9     DIRS += ['test/gtest']
11 if CONFIG['FUZZING_INTERFACES']:
12     DIRS += ['test/fuzzing']
14 with Files('**'):
15     BUG_COMPONENT = ('Core', 'ImageLib')
17 BROWSER_CHROME_MANIFESTS += ['test/browser/browser.ini']
19 MOCHITEST_MANIFESTS += ['test/mochitest/mochitest.ini']
21 MOCHITEST_CHROME_MANIFESTS += ['test/mochitest/chrome.ini']
23 XPCSHELL_TESTS_MANIFESTS += ['test/unit/xpcshell.ini']
25 XPIDL_SOURCES += [
26     'imgICache.idl',
27     'imgIContainer.idl',
28     'imgIContainerDebug.idl',
29     'imgIEncoder.idl',
30     'imgILoader.idl',
31     'imgINotificationObserver.idl',
32     'imgIRequest.idl',
33     'imgIScriptedNotificationObserver.idl',
34     'imgITools.idl',
35     'nsIIconURI.idl',
38 XPIDL_MODULE = 'imglib2'
40 EXPORTS += [
41     'FrameTimeout.h',
42     'ImageCacheKey.h',
43     'ImageLogging.h',
44     'ImageMetadata.h',
45     'ImageOps.h',
46     'ImageRegion.h',
47     'ImgDrawResult.h',
48     'imgLoader.h',
49     'imgRequest.h',
50     'imgRequestProxy.h',
51     'IProgressObserver.h',
52     'Orientation.h',
53     'SurfaceCacheUtils.h',
56 EXPORTS.mozilla.image += [
57     'encoders/bmp/nsBMPEncoder.h',
58     'encoders/ico/nsICOEncoder.h',
59     'encoders/jpeg/nsJPEGEncoder.h',
60     'encoders/png/nsPNGEncoder.h',
61     'ICOFileHeaders.h',
62     'ImageMemoryReporter.h',
63     'RecyclingSourceSurface.h',
66 UNIFIED_SOURCES += [
67     'AnimationFrameBuffer.cpp',
68     'AnimationSurfaceProvider.cpp',
69     'ClippedImage.cpp',
70     'DecodedSurfaceProvider.cpp',
71     'DecodePool.cpp',
72     'Decoder.cpp',
73     'DecoderFactory.cpp',
74     'DynamicImage.cpp',
75     'FrameAnimator.cpp',
76     'FrozenImage.cpp',
77     'IDecodingTask.cpp',
78     'Image.cpp',
79     'ImageCacheKey.cpp',
80     'ImageFactory.cpp',
81     'ImageMemoryReporter.cpp',
82     'ImageOps.cpp',
83     'ImageWrapper.cpp',
84     'imgFrame.cpp',
85     'imgLoader.cpp',
86     'imgRequest.cpp',
87     'imgRequestProxy.cpp',
88     'imgTools.cpp',
89     'MultipartImage.cpp',
90     'OrientedImage.cpp',
91     'ProgressTracker.cpp',
92     'RasterImage.cpp',
93     'ScriptedNotificationObserver.cpp',
94     'ShutdownTracker.cpp',
95     'SourceBuffer.cpp',
96     'SurfaceCache.cpp',
97     'SurfaceCacheUtils.cpp',
98     'SurfacePipe.cpp',
99     'SVGDocumentWrapper.cpp',
100     'VectorImage.cpp',
102 if CONFIG['MOZ_ENABLE_SKIA']:
103     UNIFIED_SOURCES += [ 'Downscaler.cpp']
105 include('/ipc/chromium/chromium-config.mozbuild')
107 FINAL_LIBRARY = 'xul'
109 LOCAL_INCLUDES += [
110     # Because SVGDocumentWrapper.cpp includes "mozilla/dom/SVGSVGElement.h"
111     '/dom/base',
112     '/dom/svg',
113     # We need to instantiate the decoders
114     '/image/decoders',
115     # Because VectorImage.cpp includes nsSVGUtils.h and SVGObserverUtils.h
116     '/layout/svg',
117     # For URI-related functionality
118     '/netwerk/base',
119     # DecodePool uses thread-related facilities.
120     '/xpcom/threads',
123 # Because imgFrame.cpp includes "cairo.h"
124 CXXFLAGS += CONFIG['MOZ_CAIRO_CFLAGS']
126 LOCAL_INCLUDES += CONFIG['SKIA_INCLUDES']
128 if CONFIG['CC_TYPE'] in ('clang', 'gcc'):
129     CXXFLAGS += ['-Wno-error=shadow']
131 # Add libFuzzer configuration directives
132 include('/tools/fuzzing/libfuzzer-config.mozbuild')