mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-11-25 05:41:12 +00:00
124 lines
3.1 KiB
Python
124 lines
3.1 KiB
Python
# -*- 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']
|
|
|
|
if CONFIG['FUZZING']:
|
|
DIRS += ['test/fuzzing']
|
|
|
|
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',
|
|
'imgIRequest.idl',
|
|
'imgIScriptedNotificationObserver.idl',
|
|
'imgITools.idl',
|
|
'nsIIconURI.idl',
|
|
]
|
|
|
|
XPIDL_MODULE = 'imglib2'
|
|
|
|
EXPORTS += [
|
|
'DrawResult.h',
|
|
'FrameTimeout.h',
|
|
'ImageCacheKey.h',
|
|
'ImageLogging.h',
|
|
'ImageMetadata.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',
|
|
'imgLoader.cpp',
|
|
'imgRequest.cpp',
|
|
'imgRequestProxy.cpp',
|
|
'imgTools.cpp',
|
|
'MultipartImage.cpp',
|
|
'OrientedImage.cpp',
|
|
'ProgressTracker.cpp',
|
|
'RasterImage.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']
|
|
|
|
include('/ipc/chromium/chromium-config.mozbuild')
|
|
|
|
FINAL_LIBRARY = 'xul'
|
|
|
|
LOCAL_INCLUDES += [
|
|
# Because SVGDocumentWrapper.cpp includes "mozilla/dom/SVGSVGElement.h"
|
|
'/dom/base',
|
|
'/dom/svg',
|
|
# We need to instantiate the decoders
|
|
'/image/decoders',
|
|
# Because VectorImage.cpp includes nsSVGUtils.h and SVGObserverUtils.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']
|
|
|
|
if CONFIG['FUZZING']:
|
|
if CONFIG['LIBFUZZER']:
|
|
# Add trace-pc coverage for libfuzzer
|
|
CFLAGS += ['-fsanitize-coverage=trace-pc-guard']
|
|
CXXFLAGS += ['-fsanitize-coverage=trace-pc-guard']
|