image/moz.build
author Andrew Halberstadt <ahalberstadt@mozilla.com>
Thu, 19 Apr 2018 16:12:26 -0400
changeset 416926 9a2ba1c7b0ec32f81e067acd2610e47b9be7d764
parent 405771 209a5b6b89b9f3f97c383203417809a862d156cd
child 420447 e8eb0005b50cbcd82856604682d8dfceb7be1ab7
permissions -rw-r--r--
Bug 1451159 - [testing/profiles] Store profile data in actual profile look alike folders r=gbrown This moves testing/profiles/prefs_general.js to testing/profiles/common/user.js. It also adds an 'extensions' folder to the common profile. Dropping extension files here will get them installed in all test harnesses (useful for testing on try). The idea is that all test harnesses will eventually use this 'common' profile. We'll also create some new per harness profiles, e.g testing/profiles/mochitest and testing/profiles/reftest. This way there will be a single location developers can go to set preferences, both for a specific harness, and across all harnesses. MozReview-Commit-ID: 8sqBqLiypgU

# -*- 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_INTERFACES']:
    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 += [
    'FrameTimeout.h',
    'ImageCacheKey.h',
    'ImageLogging.h',
    'ImageMetadata.h',
    'ImageOps.h',
    'ImageRegion.h',
    'ImgDrawResult.h',
    'imgLoader.h',
    'imgRequest.h',
    'imgRequestProxy.h',
    'IProgressObserver.h',
    'Orientation.h',
    'SurfaceCacheUtils.h',
]

UNIFIED_SOURCES += [
    'AnimationFrameBuffer.cpp',
    '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['CC_TYPE'] in ('clang', 'gcc'):
    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']