blob: f1253938762523a8c882035afcfaab333ffd0251 [file] [log] [blame]
[email protected]dd363682009-12-28 20:30:461# Copyright (c) 2009 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.
4
5{
6 'target_defaults': {
7 'variables': {
8 'nacl_target': 0,
9 },
10 'target_conditions': [
11 # This part is shared between the targets defined below. Only files and
12 # settings relevant for building the Win64 target should be added here.
13 ['nacl_target==1', {
14 'include_dirs': [
15 '<(INTERMEDIATE_DIR)',
16 ],
17 'defines': [
18 'NACL_BLOCK_SHIFT=5',
19 'NACL_BLOCK_SIZE=32',
20 '<@(nacl_defines)',
21 ],
22 'sources': [
23 # .cc, .h, and .mm files under nacl that are used on all
24 # platforms, including both 32-bit and 64-bit Windows.
25 # Test files are also not included.
26 'nacl/nacl_main.cc',
[email protected]23acfc02010-07-15 23:02:5227 'nacl/nacl_main_platform_delegate.h',
28 'nacl/nacl_main_platform_delegate_linux.cc',
29 'nacl/nacl_main_platform_delegate_mac.mm',
30 'nacl/nacl_main_platform_delegate_win.cc',
[email protected]dd363682009-12-28 20:30:4631 'nacl/nacl_thread.cc',
32 'nacl/nacl_thread.h',
[email protected]dd363682009-12-28 20:30:4633 ],
34 # TODO(gregoryd): consider switching NaCl to use Chrome OS defines
35 'conditions': [
36 ['OS=="win"', {
37 'defines': [
[email protected]3b32fa62010-02-25 23:17:0938 '__STDC_LIMIT_MACROS=1',
[email protected]dd363682009-12-28 20:30:4639 ],
40 'include_dirs': [
[email protected]cd134c8c2010-03-09 05:23:1241 '<(DEPTH)/third_party/wtl/include',
[email protected]dd363682009-12-28 20:30:4642 ],
43 },],
[email protected]3b32fa62010-02-25 23:17:0944 ['OS=="linux"', {
45 'defines': [
46 '__STDC_LIMIT_MACROS=1',
47 ],
48 },],
[email protected]dd363682009-12-28 20:30:4649 ],
50 }],
51 ],
52 },
53 'targets': [
54 {
55 'target_name': 'nacl',
[email protected]d23ca4a2010-02-23 16:12:1956 # The TLS (Thread Local Storage) access used by NaCl on x86-64
57 # on Linux/ELF can't be linked into a shared library, so we
58 # can't use '<(library)' here. See http://crbug.com/35829.
59 'type': 'static_library',
[email protected]dd363682009-12-28 20:30:4660 'msvs_guid': '83E86DAF-5763-4711-AD34-5FDAE395560C',
61 'variables': {
62 'nacl_target': 1,
63 },
64 'dependencies': [
65 # TODO(gregoryd): chrome_resources and chrome_strings could be
66 # shared with the 64-bit target, but it does not work due to a gyp
67 #issue
68 'chrome_resources',
69 'chrome_strings',
70 'common',
[email protected]69d3dfe82010-05-14 03:21:5571 '../webkit/support/webkit_support.gyp:glue',
[email protected]71e3e732011-01-06 04:28:3072 '../native_client/src/trusted/plugin/plugin.gyp:ppGoogleNaClPluginChrome',
[email protected]dd363682009-12-28 20:30:4673 '../native_client/src/trusted/service_runtime/service_runtime.gyp:sel',
74 '../native_client/src/trusted/validator_x86/validator_x86.gyp:ncvalidate',
75 '../native_client/src/trusted/platform_qualify/platform_qualify.gyp:platform_qual_lib',
76 ],
[email protected]3b32fa62010-02-25 23:17:0977 'direct_dependent_settings': {
78 'defines': [
79 'NACL_BLOCK_SHIFT=5',
80 'NACL_BLOCK_SIZE=32',
81 '<@(nacl_defines)',
82 ],
83 },
[email protected]dd363682009-12-28 20:30:4684 },
85 ],
86 'conditions': [
87 ['OS=="win"', {
88 'targets': [
89 {
90 'target_name': 'nacl_win64',
91 'type': '<(library)',
92 'msvs_guid': '14135464-9FB9-42E3-99D8-791116FA1204',
93 'variables': {
94 'nacl_target': 1,
95 },
96 'dependencies': [
97 # TODO(gregoryd): chrome_resources and chrome_strings could be
98 # shared with the 32-bit target, but it does not work due to a gyp
99 #issue
100 'chrome_resources',
101 'chrome_strings',
102 'common_nacl_win64',
[email protected]3b32fa62010-02-25 23:17:09103 '../native_client/src/trusted/service_runtime/service_runtime.gyp:sel64',
104 '../native_client/src/trusted/platform_qualify/platform_qualify.gyp:platform_qual_lib64',
[email protected]dd363682009-12-28 20:30:46105 ],
[email protected]103607e2010-02-01 18:57:09106 'sources': [
107 'nacl/broker_thread.cc',
108 'nacl/broker_thread.h',
109 ],
[email protected]dd363682009-12-28 20:30:46110 'defines': [
111 '<@(nacl_win64_defines)',
112 ],
113 'configurations': {
114 'Common_Base': {
115 'msvs_target_platform': 'x64',
116 },
117 },
[email protected]3b32fa62010-02-25 23:17:09118 'direct_dependent_settings': {
119 'defines': [
120 'NACL_BLOCK_SHIFT=5',
121 'NACL_BLOCK_SIZE=32',
122 '<@(nacl_defines)',
123 ],
124 },
[email protected]dd363682009-12-28 20:30:46125 },
126 ],
127 }],
128 ],
129}