security/sandbox/moz.build

Tue, 06 Jan 2015 21:39:09 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Tue, 06 Jan 2015 21:39:09 +0100
branch
TOR_BUG_9701
changeset 8
97036ab72558
permissions
-rw-r--r--

Conditionally force memory storage according to privacy.thirdparty.isolate;
This solves Tor bug #9701, complying with disk avoidance documented in
https://www.torproject.org/projects/torbrowser/design/#disk-avoidance.

michael@0 1 # -*- Mode: python; c-basic-offset: 4; indent-tabs-mode: nil; tab-width: 40 -*-
michael@0 2 # vim: set filetype=python:
michael@0 3 # This Source Code Form is subject to the terms of the Mozilla Public
michael@0 4 # License, v. 2.0. If a copy of the MPL was not distributed with this
michael@0 5 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
michael@0 6
michael@0 7 if CONFIG['OS_ARCH'] == 'Linux':
michael@0 8
michael@0 9 DIRS += ['linux']
michael@0 10
michael@0 11 elif CONFIG['OS_ARCH'] == 'WINNT':
michael@0 12 LIBRARY_NAME = 'sandbox_s'
michael@0 13 EXPORT_LIBRARY = True
michael@0 14 FORCE_STATIC_LIB = True
michael@0 15
michael@0 16 DIRS += [
michael@0 17 'win/src/sandboxbroker',
michael@0 18 'win/src/sandboxtarget',
michael@0 19 ]
michael@0 20
michael@0 21 SOURCES += [
michael@0 22 'chromium/base/at_exit.cc',
michael@0 23 'chromium/base/base_switches.cc',
michael@0 24 'chromium/base/callback_internal.cc',
michael@0 25 'chromium/base/cpu.cc',
michael@0 26 'chromium/base/debug/alias.cc',
michael@0 27 'chromium/base/debug/profiler.cc',
michael@0 28 'chromium/base/lazy_instance.cc',
michael@0 29 'chromium/base/location.cc',
michael@0 30 'chromium/base/memory/ref_counted.cc',
michael@0 31 'chromium/base/memory/singleton.cc',
michael@0 32 'chromium/base/shim/base/logging.cpp',
michael@0 33 'chromium/base/strings/nullable_string16.cc',
michael@0 34 'chromium/base/strings/string_number_conversions.cc',
michael@0 35 'chromium/base/strings/string_piece.cc',
michael@0 36 'chromium/base/strings/string_util_constants.cc',
michael@0 37 'chromium/base/strings/string_util_stripped.cc',
michael@0 38 'chromium/base/strings/stringprintf.cc',
michael@0 39 'chromium/base/strings/utf_string_conversion_utils.cc',
michael@0 40 'chromium/base/strings/utf_string_conversions.cc',
michael@0 41 'chromium/base/synchronization/lock.cc',
michael@0 42 'chromium/base/synchronization/lock_impl_win.cc',
michael@0 43 'chromium/base/third_party/dmg_fp/dtoa.cc',
michael@0 44 'chromium/base/third_party/dmg_fp/g_fmt.cc',
michael@0 45 'chromium/base/third_party/icu/icu_utf.cc',
michael@0 46 'chromium/base/threading/platform_thread_win.cc',
michael@0 47 'chromium/base/threading/thread_collision_warner.cc',
michael@0 48 'chromium/base/threading/thread_id_name_manager.cc',
michael@0 49 'chromium/base/threading/thread_local_win.cc',
michael@0 50 'chromium/base/threading/thread_restrictions.cc',
michael@0 51 'chromium/base/time/time.cc',
michael@0 52 'chromium/base/time/time_win.cc',
michael@0 53 'chromium/base/win/event_trace_provider.cc',
michael@0 54 'chromium/base/win/pe_image.cc',
michael@0 55 'chromium/base/win/registry.cc',
michael@0 56 'chromium/base/win/scoped_handle.cc',
michael@0 57 'chromium/base/win/scoped_process_information.cc',
michael@0 58 'chromium/base/win/startup_information.cc',
michael@0 59 'chromium/base/win/windows_version.cc',
michael@0 60 'win/src/acl.cc',
michael@0 61 'win/src/app_container.cc',
michael@0 62 'win/src/broker_services.cc',
michael@0 63 'win/src/crosscall_server.cc',
michael@0 64 'win/src/eat_resolver.cc',
michael@0 65 'win/src/filesystem_dispatcher.cc',
michael@0 66 'win/src/filesystem_interception.cc',
michael@0 67 'win/src/filesystem_policy.cc',
michael@0 68 'win/src/handle_closer.cc',
michael@0 69 'win/src/handle_closer_agent.cc',
michael@0 70 'win/src/handle_dispatcher.cc',
michael@0 71 'win/src/handle_interception.cc',
michael@0 72 'win/src/handle_policy.cc',
michael@0 73 'win/src/handle_table.cc',
michael@0 74 'win/src/interception.cc',
michael@0 75 'win/src/interception_agent.cc',
michael@0 76 'win/src/job.cc',
michael@0 77 'win/src/named_pipe_dispatcher.cc',
michael@0 78 'win/src/named_pipe_interception.cc',
michael@0 79 'win/src/named_pipe_policy.cc',
michael@0 80 'win/src/policy_broker.cc',
michael@0 81 'win/src/policy_engine_opcodes.cc',
michael@0 82 'win/src/policy_engine_processor.cc',
michael@0 83 'win/src/policy_low_level.cc',
michael@0 84 'win/src/policy_target.cc',
michael@0 85 'win/src/process_mitigations.cc',
michael@0 86 'win/src/process_thread_dispatcher.cc',
michael@0 87 'win/src/process_thread_interception.cc',
michael@0 88 'win/src/process_thread_policy.cc',
michael@0 89 'win/src/registry_dispatcher.cc',
michael@0 90 'win/src/registry_interception.cc',
michael@0 91 'win/src/registry_policy.cc',
michael@0 92 'win/src/resolver.cc',
michael@0 93 'win/src/restricted_token.cc',
michael@0 94 'win/src/restricted_token_utils.cc',
michael@0 95 'win/src/sandbox.cc',
michael@0 96 'win/src/sandbox_nt_util.cc',
michael@0 97 'win/src/sandbox_policy_base.cc',
michael@0 98 'win/src/sandbox_utils.cc',
michael@0 99 'win/src/service_resolver.cc',
michael@0 100 'win/src/shared_handles.cc',
michael@0 101 'win/src/sharedmem_ipc_client.cc',
michael@0 102 'win/src/sharedmem_ipc_server.cc',
michael@0 103 'win/src/sid.cc',
michael@0 104 'win/src/sync_dispatcher.cc',
michael@0 105 'win/src/sync_interception.cc',
michael@0 106 'win/src/sync_policy.cc',
michael@0 107 'win/src/target_interceptions.cc',
michael@0 108 'win/src/target_process.cc',
michael@0 109 'win/src/target_services.cc',
michael@0 110 'win/src/win2k_threadpool.cc',
michael@0 111 'win/src/win_utils.cc',
michael@0 112 'win/src/window.cc',
michael@0 113 ]
michael@0 114
michael@0 115 if CONFIG['CPU_ARCH'] == 'x86_64':
michael@0 116 SOURCES += [
michael@0 117 'win/src/interceptors_64.cc',
michael@0 118 'win/src/resolver_64.cc',
michael@0 119 'win/src/service_resolver_64.cc',
michael@0 120 'win/src/Wow64_64.cc',
michael@0 121 ]
michael@0 122 else:
michael@0 123 SOURCES += [
michael@0 124 'win/src/resolver_32.cc',
michael@0 125 'win/src/service_resolver_32.cc',
michael@0 126 'win/src/sidestep/ia32_modrm_map.cpp',
michael@0 127 'win/src/sidestep/ia32_opcode_map.cpp',
michael@0 128 'win/src/sidestep/mini_disassembler.cpp',
michael@0 129 'win/src/sidestep/preamble_patcher_with_stub.cpp',
michael@0 130 'win/src/sidestep_resolver.cc',
michael@0 131 'win/src/Wow64.cc',
michael@0 132 ]
michael@0 133
michael@0 134 for var in ('UNICODE', '_UNICODE', 'NS_NO_XPCOM', 'SANDBOX_EXPORTS',
michael@0 135 'NOMINMAX', '_CRT_RAND_S', 'CHROMIUM_SANDBOX_BUILD'):
michael@0 136 DEFINES[var] = True
michael@0 137
michael@0 138 LOCAL_INCLUDES += ['/security/sandbox/chromium/base/shim']
michael@0 139 LOCAL_INCLUDES += ['/security/sandbox/chromium']
michael@0 140 LOCAL_INCLUDES += ['/security']
michael@0 141 LOCAL_INCLUDES += ['/nsprpub']
michael@0 142
michael@0 143 DISABLE_STL_WRAPPING = True

mercurial