security/sandbox/moz.build
author Bob Owen <bobowencode@gmail.com>
Thu, 22 Jan 2015 08:37:30 +0000
changeset 253891 43f1f9eef449ef029ab5b2d54552e3de4203c2a6
parent 250098 c2845100484dfbeb1063bc3c22f3fca715d366b6
child 253892 c607c8d4dacfc947942fa1bd4ab626f5faa16ef1
permissions -rw-r--r--
Bug 1102215: Move security/sandbox/chromium/base/shim/ to new directory security/sandbox/chromium-shim/ r=ted

# -*- Mode: python; c-basic-offset: 4; 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/.

if CONFIG['OS_ARCH'] == 'Linux':
    DIRS += ['linux']
elif CONFIG['OS_ARCH'] == 'Darwin':
    DIRS += ['mac']
elif CONFIG['OS_ARCH'] == 'WINNT':
    Library('sandbox_s')
    FORCE_STATIC_LIB = True

    DIRS += [
        'staticruntime',
        'win/src/sandboxbroker',
        'win/src/sandboxtarget',
    ]

    if (CONFIG['CPU_ARCH'] == 'x86' and CONFIG['_MSC_VER'] and not
            CONFIG['CLANG_CL']):
        DIRS += ['win/wow_helper']

    EXPORTS.mozilla.sandboxing += [
        'chromium-shim/sandbox/win/loggingCallbacks.h',
        'chromium-shim/sandbox/win/loggingTypes.h',
        'chromium-shim/sandbox/win/sandboxLogging.h',
    ]

    include('objs.mozbuild')
    SOURCES += security_sandbox_cppsrcs

    # Bug 1102853 tracks looking at removing this.
    if CONFIG['CPU_ARCH'] == 'x86_64':
        SOURCES['%s/security/sandbox/win/src/sharedmem_ipc_client.cc' % TOPSRCDIR].no_pgo = True

    for var in ('UNICODE', '_UNICODE', 'NS_NO_XPCOM', 'SANDBOX_EXPORTS',
                'NOMINMAX', '_CRT_RAND_S', 'CHROMIUM_SANDBOX_BUILD'):
        DEFINES[var] = True

    LOCAL_INCLUDES += ['/security/sandbox/chromium-shim']
    LOCAL_INCLUDES += ['/security/sandbox/chromium']
    LOCAL_INCLUDES += ['/security']
    LOCAL_INCLUDES += ['/nsprpub']

    DISABLE_STL_WRAPPING = True

    # Suppress warnings in third-party code.
    if CONFIG['_MSC_VER']:
        CXXFLAGS += [
            '-wd4275', # non dll-interface class exception used as base for dll-interface class
            '-wd4717', # recursive on all control paths, function will cause runtime stack overflow
            '-wd4996', # 'GetVersionExW': was declared deprecated
        ]

FAIL_ON_WARNINGS = True