1# Copyright 2021 The Chromium Authors 2# Use of this source code is governed by a BSD-style license that can be 3# found in the LICENSE file. 4 5# PartitionAlloc is planned to be extracted into a standalone library, and 6# therefore dependencies need to be strictly controlled and minimized. 7 8gclient_gn_args_file = 'partition_allocator/build/config/gclient_args.gni' 9 10# Only these hosts are allowed for dependencies in this DEPS file. 11# This is a subset of chromium/src/DEPS's allowed_hosts. 12allowed_hosts = [ 13 'chromium.googlesource.com', 14] 15 16vars = { 17 'chromium_git': 'https://chromium.googlesource.com', 18} 19 20deps = { 21 'partition_allocator/build': 22 Var('chromium_git') + '/chromium/src/build.git', 23 'partition_allocator/buildtools': 24 Var('chromium_git') + '/chromium/src/buildtools.git', 25 'partition_allocator/buildtools/clang_format/script': 26 Var('chromium_git') + 27 '/external/github.com/llvm/llvm-project/clang/tools/clang-format.git', 28 'partition_allocator/buildtools/linux64': { 29 'packages': [ 30 { 31 'package': 'gn/gn/linux-${{arch}}', 32 'version': 'latest', 33 } 34 ], 35 'dep_type': 'cipd', 36 'condition': 'host_os == "linux"', 37 }, 38 'partition_allocator/buildtools/mac': { 39 'packages': [ 40 { 41 'package': 'gn/gn/mac-${{arch}}', 42 'version': 'latest', 43 } 44 ], 45 'dep_type': 'cipd', 46 'condition': 'host_os == "mac"', 47 }, 48 'partition_allocator/buildtools/win': { 49 'packages': [ 50 { 51 'package': 'gn/gn/windows-amd64', 52 'version': 'latest', 53 } 54 ], 55 'dep_type': 'cipd', 56 'condition': 'host_os == "win"', 57 }, 58 'partition_allocator/buildtools/third_party/libc++/trunk': 59 Var('chromium_git') + '/external/github.com/llvm/llvm-project/libcxx.git', 60 'partition_allocator/buildtools/third_party/libc++abi/trunk': 61 Var('chromium_git') + 62 '/external/github.com/llvm/llvm-project/libcxxabi.git', 63 'partition_allocator/tools/clang': 64 Var('chromium_git') + '/chromium/src/tools/clang.git', 65} 66 67hooks = [ 68 { 69 'name': 'sysroot_arm', 70 'pattern': '.', 71 'condition': 'checkout_linux and checkout_arm', 72 'action': [ 73 'python3', 74 'partition_allocator/build/linux/sysroot_scripts/install-sysroot.py', 75 '--arch=arm'], 76 }, 77 { 78 'name': 'sysroot_arm64', 79 'pattern': '.', 80 'condition': 'checkout_linux and checkout_arm64', 81 'action': [ 82 'python3', 83 'partition_allocator/build/linux/sysroot_scripts/install-sysroot.py', 84 '--arch=arm64'], 85 }, 86 { 87 'name': 'sysroot_x86', 88 'pattern': '.', 89 'condition': 'checkout_linux and (checkout_x86 or checkout_x64)', 90 'action': [ 91 'python3', 92 'partition_allocator/build/linux/sysroot_scripts/install-sysroot.py', 93 '--arch=x86'], 94 }, 95 { 96 'name': 'sysroot_mips', 97 'pattern': '.', 98 'condition': 'checkout_linux and checkout_mips', 99 'action': [ 100 'python3', 101 'partition_allocator/build/linux/sysroot_scripts/install-sysroot.py', 102 '--arch=mips'], 103 }, 104 { 105 'name': 'sysroot_mips64', 106 'pattern': '.', 107 'condition': 'checkout_linux and checkout_mips64', 108 'action': [ 109 'python3', 110 'partition_allocator/build/linux/sysroot_scripts/install-sysroot.py', 111 '--arch=mips64el'], 112 }, 113 { 114 'name': 'sysroot_x64', 115 'pattern': '.', 116 'condition': 'checkout_linux and checkout_x64', 117 'action': [ 118 'python3', 119 'partition_allocator/build/linux/sysroot_scripts/install-sysroot.py', 120 '--arch=x64'], 121 }, 122 { 123 # Update the prebuilt clang toolchain. 124 # Note: On Win, this should run after win_toolchain, as it may use it. 125 'name': 'clang', 126 'pattern': '.', 127 'action': ['python3', 'partition_allocator/tools/clang/scripts/update.py'], 128 }, 129] 130 131noparent = True 132 133include_rules = [ 134 "+build/build_config.h", 135 "+build/buildflag.h", 136 "+third_party/lss/linux_syscall_support.h", 137] 138 139specific_include_rules = { 140 ".*_(perf|unit)test\.cc$": [ 141 "+base/allocator/allocator_shim_default_dispatch_to_partition_alloc.h", 142 "+base/allocator/dispatcher/dispatcher.h", 143 "+base/debug/allocation_trace.h", 144 "+base/debug/debugging_buildflags.h", 145 "+base/debug/proc_maps_linux.h", 146 "+base/system/sys_info.h", 147 "+base/test/gtest_util.h", 148 "+base/timer/lap_timer.h", 149 "+base/win/windows_version.h", 150 "+testing/gmock/include/gmock/gmock.h", 151 "+testing/gtest/include/gtest/gtest.h", 152 "+testing/perf/perf_result_reporter.h", 153 ], 154 "extended_api\.cc$": [ 155 "+base/allocator/allocator_shim_default_dispatch_to_partition_alloc.h", 156 ], 157 "gtest_prod_util\.h$": [ 158 "+testing/gtest/include/gtest/gtest_prod.h", 159 ], 160 "raw_(ptr|ref)_unittest\.cc$": [ 161 "+base", 162 "+third_party/abseil-cpp/absl/types/optional.h", 163 "+third_party/abseil-cpp/absl/types/variant.h", 164 ], 165 "raw_ptr_test_support\.h$": [ 166 "+testing/gmock/include/gmock/gmock.h", 167 "+third_party/abseil-cpp/absl/types/optional.h", 168 ] 169} 170