gecko/security/sandbox/linux/moz.build

48 lines
1.4 KiB
Python

# -*- 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/.
FAIL_ON_WARNINGS = True
SharedLibrary('mozsandbox')
EXPORTS.mozilla += [
'Sandbox.h',
]
SOURCES += [
'../chromium/base/shim/base/logging.cpp',
'../chromium/sandbox/linux/seccomp-bpf/basicblock.cc',
'../chromium/sandbox/linux/seccomp-bpf/codegen.cc',
'../chromium/sandbox/linux/seccomp-bpf/die.cc',
'../chromium/sandbox/linux/seccomp-bpf/syscall.cc',
'Sandbox.cpp',
'SandboxAssembler.cpp',
'SandboxFilter.cpp',
]
# gcc lto likes to put the top level asm in syscall.cc in a different partition
# from the function using it which breaks the build. Work around that by
# forcing there to be only one partition.
if '-flto' in CONFIG['OS_CXXFLAGS'] and not CONFIG['CLANG_CXX']:
LDFLAGS += ['--param lto-partitions=1']
DEFINES['NS_NO_XPCOM'] = True
DISABLE_STL_WRAPPING = True
LOCAL_INCLUDES += ['/security/sandbox/chromium/base/shim']
LOCAL_INCLUDES += ['/security/sandbox/chromium']
LOCAL_INCLUDES += ['/security/sandbox']
if CONFIG['OS_TARGET'] != 'Android':
# Needed for clock_gettime with glibc < 2.17:
OS_LIBS += [
'rt',
]
DIRS += [
'glue',
]