summaryrefslogtreecommitdiffstats
path: root/image/moz.build
diff options
context:
space:
mode:
Diffstat (limited to 'image/moz.build')
-rw-r--r--image/moz.build119
1 files changed, 119 insertions, 0 deletions
diff --git a/image/moz.build b/image/moz.build
new file mode 100644
index 000000000..7e7e0fe70
--- /dev/null
+++ b/image/moz.build
@@ -0,0 +1,119 @@
+# -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
+# vim: set filetype=python:
+# 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/.
+
+DIRS += ['build', 'decoders', 'encoders']
+if CONFIG['ENABLE_TESTS']:
+ DIRS += ['test/gtest']
+
+with Files('**'):
+ BUG_COMPONENT = ('Core', 'ImageLib')
+
+BROWSER_CHROME_MANIFESTS += ['test/browser/browser.ini']
+
+MOCHITEST_MANIFESTS += ['test/mochitest/mochitest.ini']
+
+MOCHITEST_CHROME_MANIFESTS += ['test/mochitest/chrome.ini']
+
+XPCSHELL_TESTS_MANIFESTS += ['test/unit/xpcshell.ini']
+
+XPIDL_SOURCES += [
+ 'imgICache.idl',
+ 'imgIContainer.idl',
+ 'imgIContainerDebug.idl',
+ 'imgIEncoder.idl',
+ 'imgILoader.idl',
+ 'imgINotificationObserver.idl',
+ 'imgIOnloadBlocker.idl',
+ 'imgIRequest.idl',
+ 'imgIScriptedNotificationObserver.idl',
+ 'imgITools.idl',
+ 'nsIIconURI.idl',
+]
+
+XPIDL_MODULE = 'imglib2'
+
+EXPORTS += [
+ 'DrawResult.h',
+ 'ImageCacheKey.h',
+ 'ImageLogging.h',
+ 'ImageOps.h',
+ 'ImageRegion.h',
+ 'imgLoader.h',
+ 'imgRequest.h',
+ 'imgRequestProxy.h',
+ 'IProgressObserver.h',
+ 'Orientation.h',
+ 'SurfaceCacheUtils.h',
+]
+
+UNIFIED_SOURCES += [
+ 'AnimationSurfaceProvider.cpp',
+ 'ClippedImage.cpp',
+ 'DecodedSurfaceProvider.cpp',
+ 'DecodePool.cpp',
+ 'Decoder.cpp',
+ 'DecoderFactory.cpp',
+ 'DynamicImage.cpp',
+ 'FrameAnimator.cpp',
+ 'FrozenImage.cpp',
+ 'IDecodingTask.cpp',
+ 'Image.cpp',
+ 'ImageCacheKey.cpp',
+ 'ImageFactory.cpp',
+ 'ImageOps.cpp',
+ 'ImageWrapper.cpp',
+ 'imgFrame.cpp',
+ 'imgTools.cpp',
+ 'MultipartImage.cpp',
+ 'OrientedImage.cpp',
+ 'ScriptedNotificationObserver.cpp',
+ 'ShutdownTracker.cpp',
+ 'SourceBuffer.cpp',
+ 'SurfaceCache.cpp',
+ 'SurfaceCacheUtils.cpp',
+ 'SurfacePipe.cpp',
+ 'SVGDocumentWrapper.cpp',
+ 'VectorImage.cpp',
+]
+if CONFIG['MOZ_ENABLE_SKIA']:
+ UNIFIED_SOURCES += [ 'Downscaler.cpp']
+
+# These files can't be unified because of ImageLogging.h #include order issues.
+SOURCES += [
+ 'imgLoader.cpp',
+ 'imgRequest.cpp',
+ 'imgRequestProxy.cpp',
+ 'ProgressTracker.cpp',
+ 'RasterImage.cpp',
+]
+
+include('/ipc/chromium/chromium-config.mozbuild')
+
+FINAL_LIBRARY = 'xul'
+
+LOCAL_INCLUDES += [
+ # Because SVGDocumentWrapper.cpp includes "mozilla/dom/SVGSVGElement.h"
+ '/dom/base',
+ '/dom/svg',
+ # Access to Skia headers for Downscaler
+ '/gfx/2d',
+ # We need to instantiate the decoders
+ '/image/decoders',
+ # Because VectorImage.cpp includes nsSVGUtils.h and nsSVGEffects.h
+ '/layout/svg',
+ # For URI-related functionality
+ '/netwerk/base',
+ # DecodePool uses thread-related facilities.
+ '/xpcom/threads',
+]
+
+# Because imgFrame.cpp includes "cairo.h"
+CXXFLAGS += CONFIG['MOZ_CAIRO_CFLAGS']
+
+LOCAL_INCLUDES += CONFIG['SKIA_INCLUDES']
+
+if CONFIG['GNU_CXX']:
+ CXXFLAGS += ['-Wno-error=shadow']