1 # -*- Mode: python; c-basic-offset: 4; 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 if CONFIG['OS_ARCH'] == 'Linux':
9 elif CONFIG['OS_ARCH'] == 'Darwin':
11 elif CONFIG['OS_ARCH'] == 'WINNT':
13 FORCE_STATIC_LIB = True
17 'win/src/sandboxbroker',
18 'win/src/sandboxtarget',
21 if (CONFIG['CPU_ARCH'] == 'x86' and CONFIG['_MSC_VER'] and not
23 DIRS += ['win/wow_helper']
25 EXPORTS.mozilla.sandboxing += [
26 'win/src/logging/loggingCallbacks.h',
27 'win/src/logging/loggingTypes.h',
28 'win/src/logging/sandboxLogging.h',
31 include('objs.mozbuild')
32 SOURCES += security_sandbox_cppsrcs
34 # Bug 1102853 tracks looking at removing this.
35 if CONFIG['CPU_ARCH'] == 'x86_64':
36 SOURCES['%s/security/sandbox/win/src/sharedmem_ipc_client.cc' % TOPSRCDIR].no_pgo = True
38 for var in ('UNICODE', '_UNICODE', 'NS_NO_XPCOM', 'SANDBOX_EXPORTS',
39 'NOMINMAX', '_CRT_RAND_S', 'CHROMIUM_SANDBOX_BUILD'):
42 LOCAL_INCLUDES += ['/security/sandbox/chromium/base/shim']
43 LOCAL_INCLUDES += ['/security/sandbox/chromium']
44 LOCAL_INCLUDES += ['/security']
45 LOCAL_INCLUDES += ['/nsprpub']
47 DISABLE_STL_WRAPPING = True
49 # Suppress warnings in third-party code.
50 if CONFIG['_MSC_VER']:
52 '-wd4275', # non dll-interface class exception used as base for dll-interface class
53 '-wd4717', # recursive on all control paths, function will cause runtime stack overflow
54 '-wd4996', # 'GetVersionExW': was declared deprecated
57 FAIL_ON_WARNINGS = True