Add support for backgrounding processes on the Mac
[chromium-blink-merge.git] / base / process / BUILD.gn
blob814459b13e0381efb42d0974f65b8b0bf4bab58e
1 # Copyright (c) 2015 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file.
5 source_set("process") {
6   sources = [
7     "internal_linux.cc",
8     "internal_linux.h",
9     "kill.cc",
10     "kill.h",
11     "kill_mac.cc",
12     "kill_posix.cc",
13     "kill_win.cc",
14     "launch.cc",
15     "launch.h",
16     "launch_ios.cc",
17     "launch_mac.cc",
18     "launch_posix.cc",
19     "launch_win.cc",
20     "memory.cc",
21     "memory.h",
22     "memory_linux.cc",
23     "memory_mac.mm",
24     "memory_win.cc",
25     "process.h",
26     "process_handle_freebsd.cc",
27     "process_handle_linux.cc",
28     "process_handle_mac.cc",
29     "process_handle_openbsd.cc",
30     "process_handle_posix.cc",
31     "process_handle_win.cc",
32     "process_info.h",
33     "process_info_linux.cc",
34     "process_info_mac.cc",
35     "process_info_win.cc",
36     "process_iterator.cc",
37     "process_iterator.h",
38     "process_iterator_freebsd.cc",
39     "process_iterator_linux.cc",
40     "process_iterator_mac.cc",
41     "process_iterator_openbsd.cc",
42     "process_iterator_win.cc",
43     "process_linux.cc",
44     "process_mac.cc",
45     "process_metrics.cc",
46     "process_metrics.h",
47     "process_metrics_freebsd.cc",
48     "process_metrics_ios.cc",
49     "process_metrics_linux.cc",
50     "process_metrics_mac.cc",
51     "process_metrics_openbsd.cc",
52     "process_metrics_posix.cc",
53     "process_metrics_win.cc",
54     "process_posix.cc",
55     "process_win.cc",
56   ]
58   sources -= [
59     "process_handle_freebsd.cc",
60     "process_handle_openbsd.cc",
61     "process_iterator_freebsd.cc",
62     "process_iterator_openbsd.cc",
63     "process_metrics_freebsd.cc",
64     "process_metrics_openbsd.cc",
65   ]
67   if (is_android) {
68     # Android uses some Linux sources, put those back.
69     set_sources_assignment_filter([])
70     sources += [
71       "internal_linux.cc",
72       "memory_linux.cc",
73       "process_handle_linux.cc",
74       "process_iterator_linux.cc",
75       "process_metrics_linux.cc",
76     ]
77     set_sources_assignment_filter(sources_assignment_filter)
78   }
80   if (is_nacl) {
81     sources -= [
82       "kill.cc",
83       "kill.h",
84       "kill_posix.cc",
85       "launch.cc",
86       "launch.h",
87       "launch_posix.cc",
88       "memory.cc",
89       "memory.h",
90       "process_iterator.cc",
91       "process_iterator.h",
92       "process_metrics.cc",
93       "process_metrics_posix.cc",
94       "process_posix.cc",
95     ]
96   }
98   configs += [ "//base:base_implementation" ]
100   deps = [
101     "//base/memory",
102     "//base/third_party/dynamic_annotations",
103   ]
105   allow_circular_includes_from = [ "//base/memory" ]
107   visibility = [ "//base/*" ]