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 # For URI-related functionality
122 # DecodePool uses thread-related facilities.
126 # Because imgFrame.cpp includes "cairo.h"
127 CXXFLAGS += CONFIG["MOZ_CAIRO_CFLAGS"]
129 LOCAL_INCLUDES += CONFIG["SKIA_INCLUDES"]
131 if CONFIG["CC_TYPE"] in ("clang", "gcc"):
132 CXXFLAGS += ["-Wno-error=shadow"]
134 # Add libFuzzer configuration directives
135 include("/tools/fuzzing/libfuzzer-config.mozbuild")