Add a Notification Settings Button to all web notifications behind the web platform...
[chromium-blink-merge.git] / sandbox / mac / sandbox_mac.gypi
blob91ad20bac7aaaf4163f90461ec7cc2608bd4e1fb
1 # Copyright 2014 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.
6   'targets': [
7     {
8       'target_name': 'sandbox',
9       'type': '<(component)',
10       'sources': [
11         'bootstrap_sandbox.cc',
12         'bootstrap_sandbox.h',
13         'launchd_interception_server.cc',
14         'launchd_interception_server.h',
15         'mach_message_server.cc',
16         'mach_message_server.h',
17         'message_server.h',
18         'os_compatibility.cc',
19         'os_compatibility.h',
20         'policy.cc',
21         'policy.h',
22         'pre_exec_delegate.cc',
23         'pre_exec_delegate.h',
24         'xpc.cc',
25         'xpc.h',
26         'xpc_message_server.cc',
27         'xpc_message_server.h',
28       ],
29       'dependencies': [
30         '../base/base.gyp:base',
31       ],
32       'include_dirs': [
33         '..',
34         '<(SHARED_INTERMEDIATE_DIR)',
35       ],
36       'defines': [
37         'SANDBOX_IMPLEMENTATION',
38       ],
39       'link_settings': {
40         'libraries': [
41           '$(SDKROOT)/usr/lib/libbsm.dylib',
42         ],
43       },
44       'conditions': [
45         # When the build SDK is 10.6, generate a dynamic stub loader. When the
46         # SDK is higher, then libxpc.dylib will be loaded automatically as part
47         # of libSystem, and only forward declarations of private symbols are
48         # necessary.
49         ['mac_sdk == "10.6"', {
50           'actions': [
51             {
52               'variables': {
53                 'generate_stubs_script': '../tools/generate_stubs/generate_stubs.py',
54                 'generate_stubs_header_path': 'xpc_stubs_header.fragment',
55                 'generate_stubs_sig_public_path': 'xpc_stubs.sig',
56                 'generate_stubs_sig_private_path': 'xpc_private_stubs.sig',
57                 'generate_stubs_project': 'sandbox/mac',
58                 'generate_stubs_output_stem': 'xpc_stubs',
59               },
60               'action_name': 'generate_stubs',
61               'inputs': [
62                 '<(generate_stubs_script)',
63                 '<(generate_stubs_header_path)',
64                 '<(generate_stubs_sig_public_path)',
65                 '<(generate_stubs_sig_private_path)',
66               ],
67               'outputs': [
68                 '<(INTERMEDIATE_DIR)/<(generate_stubs_output_stem).cc',
69                 '<(SHARED_INTERMEDIATE_DIR)/<(generate_stubs_project)/<(generate_stubs_output_stem).h',
70               ],
71               'action': [
72                 'python',
73                 '<(generate_stubs_script)',
74                 '-i', '<(INTERMEDIATE_DIR)',
75                 '-o', '<(SHARED_INTERMEDIATE_DIR)/<(generate_stubs_project)',
76                 '-t', 'posix_stubs',
77                 '-e', '<(generate_stubs_header_path)',
78                 '-s', '<(generate_stubs_output_stem)',
79                 '-p', '<(generate_stubs_project)',
80                 '-x', 'SANDBOX_EXPORT',
81                 '<(generate_stubs_sig_public_path)',
82                 '<(generate_stubs_sig_private_path)',
83               ],
84               'process_outputs_as_sources': 1,
85               'message': 'Generating XPC stubs for 10.6 compatability.',
86             },
87           ],
88         }],
89       ],
90     },
91     {
92       'target_name': 'sandbox_mac_unittests',
93       'type': 'executable',
94       'sources': [
95         'bootstrap_sandbox_unittest.mm',
96         'policy_unittest.cc',
97         'xpc_message_server_unittest.cc',
98       ],
99       'dependencies': [
100         'sandbox',
101         '../base/base.gyp:base',
102         '../base/base.gyp:run_all_unittests',
103         '../testing/gtest.gyp:gtest',
104       ],
105       'include_dirs': [
106         '..',
107       ],
108       'link_settings': {
109         'libraries': [
110           '$(SDKROOT)/System/Library/Frameworks/CoreFoundation.framework',
111           '$(SDKROOT)/System/Library/Frameworks/Foundation.framework',
112         ],
113       },
114     },
115   ],
116   'conditions': [
117     ['test_isolation_mode != "noop"', {
118       'targets': [
119         {
120           'target_name': 'sandbox_mac_unittests_run',
121           'type': 'none',
122           'dependencies': [
123             'sandbox_mac_unittests',
124           ],
125           'includes': [ '../../build/isolate.gypi' ],
126           'sources': [ '../sandbox_mac_unittests.isolate' ],
127         },
128       ],
129     }],
130   ],