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']:
11 if CONFIG['FUZZING_INTERFACES']:
12 DIRS += ['test/fuzzing']
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']
28 'imgIContainerDebug.idl',
31 'imgINotificationObserver.idl',
33 'imgIScriptedNotificationObserver.idl',
38 XPIDL_MODULE = 'imglib2'
52 'IProgressObserver.h',
54 'SurfaceCacheUtils.h',
57 EXPORTS.mozilla.image += [
58 'encoders/bmp/nsBMPEncoder.h',
59 'encoders/ico/nsICOEncoder.h',
60 'encoders/jpeg/nsJPEGEncoder.h',
61 'encoders/png/nsPNGEncoder.h',
63 'ImageMemoryReporter.h',
67 'AnimationFrameBuffer.cpp',
68 'AnimationSurfaceProvider.cpp',
70 'DecodedSurfaceProvider.cpp',
81 'ImageMemoryReporter.cpp',
87 'imgRequestProxy.cpp',
91 'ProgressTracker.cpp',
93 'ScriptedNotificationObserver.cpp',
94 'ShutdownTracker.cpp',
97 'SurfaceCacheUtils.cpp',
99 'SVGDocumentWrapper.cpp',
102 if CONFIG['MOZ_ENABLE_SKIA']:
103 UNIFIED_SOURCES += [ 'Downscaler.cpp']
105 if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'windows':
106 SOURCES += [ 'DecodePool.cpp']
108 UNIFIED_SOURCES += [ 'DecodePool.cpp']
110 include('/ipc/chromium/chromium-config.mozbuild')
112 FINAL_LIBRARY = 'xul'
115 # Because SVGDocumentWrapper.cpp includes "mozilla/dom/SVGSVGElement.h"
118 # We need to instantiate the decoders
120 # Because VectorImage.cpp includes nsSVGUtils.h and SVGObserverUtils.h
122 # For URI-related functionality
124 # DecodePool uses thread-related facilities.
128 # Because imgFrame.cpp includes "cairo.h"
129 CXXFLAGS += CONFIG['MOZ_CAIRO_CFLAGS']
131 LOCAL_INCLUDES += CONFIG['SKIA_INCLUDES']
133 if CONFIG['CC_TYPE'] in ('clang', 'gcc'):
134 CXXFLAGS += ['-Wno-error=shadow']
136 # Add libFuzzer configuration directives
137 include('/tools/fuzzing/libfuzzer-config.mozbuild')