OLD | NEW |
1 # Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 # Copyright (c) 2011 The Chromium Authors. All rights reserved. |
2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
4 | 4 |
5 { | 5 { |
6 ###################################################################### | 6 ###################################################################### |
7 'includes': [ | 7 'includes': [ |
8 'build/common.gypi', | 8 'build/common.gypi', |
9 ], | 9 ], |
10 ###################################################################### | 10 ###################################################################### |
11 'conditions': [ | 11 'targets' : [ |
12 ['target_arch!="arm"', { | 12 { |
13 'targets' : [ | 13 'target_name': 'prep_toolchain', |
| 14 'type': 'none', |
| 15 'conditions': [ |
| 16 ['target_arch=="ia32"', { |
| 17 'dependencies': [ |
| 18 'crt_init_32', |
| 19 'crt_fini_32', |
| 20 ], |
| 21 }], |
| 22 ['target_arch=="x64" or OS=="win"', { |
| 23 'dependencies': [ |
| 24 'crt_init_64', |
| 25 'crt_fini_64', |
| 26 ], |
| 27 }], |
| 28 ], |
| 29 }, |
| 30 { |
| 31 'target_name': 'copy_headers', |
| 32 'type': 'none', |
| 33 'actions': [ |
14 { | 34 { |
15 'target_name': 'prep_toolchain', | 35 'action_name': 'Install crt1.o 32', |
16 'type': 'none', | 36 'msvs_cygwin_shell': 0, |
17 'conditions': [ | 37 'description': 'Install crt1.o 32', |
18 ['target_arch=="ia32"', { | 38 'inputs': [ |
19 'dependencies': [ | 39 'src/untrusted/stubs/crt1.x', |
20 'crt_init_32', | 40 ], |
21 'crt_fini_32', | 41 'outputs': [ |
22 ], | 42 '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib32/32/crt1.o', |
23 }], | 43 ], |
24 ['target_arch=="x64" or OS=="win"', { | 44 'action': [ |
25 'dependencies': [ | 45 '>(python_exe)', |
26 'crt_init_64', | 46 '<(DEPTH)/native_client/build/copy_sources.py', |
27 'crt_fini_64', | 47 'src/untrusted/stubs/crt1.x', |
28 ], | 48 '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib32/32/crt1.o', |
29 }], | |
30 ], | 49 ], |
31 }, | 50 }, |
32 { | 51 { |
33 'target_name': 'copy_headers', | 52 'action_name': 'Install crt1.o 64', |
34 'type': 'none', | 53 'msvs_cygwin_shell': 0, |
35 'actions': [ | 54 'description': 'Install crt1.o 64', |
36 { | 55 'inputs': [ |
37 'action_name': 'Install crt1.o 32', | 56 'src/untrusted/stubs/crt1.x', |
38 'msvs_cygwin_shell': 0, | |
39 'description': 'Install crt1.o 32', | |
40 'inputs': [ | |
41 'src/untrusted/stubs/crt1.x', | |
42 ], | |
43 'outputs': [ | |
44 '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib32/32/crt1.o', | |
45 ], | |
46 'action': [ | |
47 '>(python_exe)', | |
48 '<(DEPTH)/native_client/build/copy_sources.py', | |
49 'src/untrusted/stubs/crt1.x', | |
50 '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib32/32/crt1.o', | |
51 ], | |
52 }, | |
53 { | |
54 'action_name': 'Install crt1.o 64', | |
55 'msvs_cygwin_shell': 0, | |
56 'description': 'Install crt1.o 64', | |
57 'inputs': [ | |
58 'src/untrusted/stubs/crt1.x', | |
59 ], | |
60 'outputs': [ | |
61 '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib64/crt1.o', | |
62 ], | |
63 'action': [ | |
64 '>(python_exe)', | |
65 '<(DEPTH)/native_client/build/copy_sources.py', | |
66 'src/untrusted/stubs/crt1.x', | |
67 '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib64/crt1.o', | |
68 ], | |
69 }, | |
70 ], | 57 ], |
71 'copies': [ | 58 'outputs': [ |
72 # NEWLIB copies | 59 '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib64/crt1.o', |
73 { | 60 ], |
74 'destination': '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/include/nacl'
, | 61 'action': [ |
75 # Alphabetical order in dst dir for easier verification. | 62 '>(python_exe)', |
76 'files': [ | 63 '<(DEPTH)/native_client/build/copy_sources.py', |
77 '<(DEPTH)/native_client/src/trusted/weak_ref/call_on_main_thread
.h', | 64 'src/untrusted/stubs/crt1.x', |
78 '<(DEPTH)/native_client/src/shared/platform/nacl_check.h', | 65 '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib64/crt1.o', |
79 '<(DEPTH)/native_client/src/untrusted/nacl//nacl_dyncode.h', | |
80 '<(DEPTH)/native_client/src/untrusted/ppapi/nacl_file.h', | |
81 '<(DEPTH)/native_client/src/shared/imc/nacl_imc_c.h', | |
82 '<(DEPTH)/native_client/src/shared/imc/nacl_imc.h', | |
83 '<(DEPTH)/native_client/src/include/nacl/nacl_inttypes.h', | |
84 '<(DEPTH)/native_client/src/shared/platform/nacl_log.h', | |
85 '<(DEPTH)/native_client/src/shared/srpc/nacl_srpc.h', | |
86 '<(DEPTH)/native_client/src/shared/platform/nacl_threads.h', | |
87 '<(DEPTH)/ppapi/native_client/src/shared/ppapi_proxy/ppruntime.h
', | |
88 '<(DEPTH)/native_client/src/shared/platform/refcount_base.h', | |
89 '<(DEPTH)/native_client/src/trusted/weak_ref/weak_ref.h' | |
90 ], | |
91 }, | |
92 { | |
93 'destination': '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/include', | |
94 'files': [ | |
95 '<(DEPTH)/native_client/src/untrusted/pthread/pthread.h', | |
96 '<(DEPTH)/native_client/src/untrusted/pthread/semaphore.h' | |
97 ], | |
98 }, | |
99 # GLIBC copies | |
100 { | |
101 # Alphabetical order in dst dir for easier verification. | |
102 'destination': '<(SHARED_INTERMEDIATE_DIR)/tc_glibc/include/nacl', | |
103 'files': [ | |
104 '<(DEPTH)/native_client/src/trusted/weak_ref/call_on_main_thread
.h', | |
105 '<(DEPTH)/native_client/src/shared/platform/nacl_check.h', | |
106 '<(DEPTH)/native_client/src/untrusted/ppapi/nacl_file.h', | |
107 '<(DEPTH)/native_client/src/shared/imc/nacl_imc.h', | |
108 '<(DEPTH)/native_client/src/include/nacl/nacl_inttypes.h', | |
109 '<(DEPTH)/native_client/src/shared/platform/nacl_log.h', | |
110 '<(DEPTH)/native_client/src/shared/srpc/nacl_srpc.h', | |
111 '<(DEPTH)/native_client/src/shared/platform/nacl_threads.h', | |
112 '<(DEPTH)/ppapi/native_client/src/shared/ppapi_proxy/ppruntime.h
', | |
113 '<(DEPTH)/native_client/src/shared/platform/refcount_base.h', | |
114 '<(DEPTH)/native_client/src/trusted/weak_ref/weak_ref.h' | |
115 ], | |
116 }, | |
117 ], | 66 ], |
118 }, | 67 }, |
119 ], | 68 ], |
120 }], | 69 'copies': [ |
| 70 # NEWLIB copies |
| 71 { |
| 72 'destination': '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/include/nacl', |
| 73 # Alphabetical order in dst dir for easier verification. |
| 74 'files': [ |
| 75 '<(DEPTH)/native_client/src/trusted/weak_ref/call_on_main_thread.h', |
| 76 '<(DEPTH)/native_client/src/shared/platform/nacl_check.h', |
| 77 '<(DEPTH)/native_client/src/untrusted/nacl/nacl_dyncode.h', |
| 78 '<(DEPTH)/native_client/src/untrusted/ppapi/nacl_file.h', |
| 79 '<(DEPTH)/native_client/src/shared/imc/nacl_imc_c.h', |
| 80 '<(DEPTH)/native_client/src/shared/imc/nacl_imc.h', |
| 81 '<(DEPTH)/native_client/src/include/nacl/nacl_inttypes.h', |
| 82 '<(DEPTH)/native_client/src/shared/platform/nacl_log.h', |
| 83 '<(DEPTH)/native_client/src/shared/srpc/nacl_srpc.h', |
| 84 '<(DEPTH)/native_client/src/shared/platform/nacl_threads.h', |
| 85 '<(DEPTH)/ppapi/native_client/src/shared/ppapi_proxy/ppruntime.h', |
| 86 '<(DEPTH)/native_client/src/shared/platform/refcount_base.h', |
| 87 '<(DEPTH)/native_client/src/trusted/weak_ref/weak_ref.h' |
| 88 ], |
| 89 }, |
| 90 { |
| 91 'destination': '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/include', |
| 92 'files': [ |
| 93 '<(DEPTH)/native_client/src/untrusted/pthread/pthread.h', |
| 94 '<(DEPTH)/native_client/src/untrusted/pthread/semaphore.h' |
| 95 ], |
| 96 }, |
| 97 # GLIBC copies |
| 98 { |
| 99 # Alphabetical order in dst dir for easier verification. |
| 100 'destination': '<(SHARED_INTERMEDIATE_DIR)/tc_glibc/include/nacl', |
| 101 'files': [ |
| 102 '<(DEPTH)/native_client/src/trusted/weak_ref/call_on_main_thread.h', |
| 103 '<(DEPTH)/native_client/src/shared/platform/nacl_check.h', |
| 104 '<(DEPTH)/native_client/src/untrusted/ppapi/nacl_file.h', |
| 105 '<(DEPTH)/native_client/src/shared/imc/nacl_imc.h', |
| 106 '<(DEPTH)/native_client/src/include/nacl/nacl_inttypes.h', |
| 107 '<(DEPTH)/native_client/src/shared/platform/nacl_log.h', |
| 108 '<(DEPTH)/native_client/src/shared/srpc/nacl_srpc.h', |
| 109 '<(DEPTH)/native_client/src/shared/platform/nacl_threads.h', |
| 110 '<(DEPTH)/ppapi/native_client/src/shared/ppapi_proxy/ppruntime.h', |
| 111 '<(DEPTH)/native_client/src/shared/platform/refcount_base.h', |
| 112 '<(DEPTH)/native_client/src/trusted/weak_ref/weak_ref.h' |
| 113 ], |
| 114 }, |
| 115 ], |
| 116 }, |
| 117 ], |
| 118 |
| 119 'conditions': [ |
121 ['target_arch=="x64" or OS=="win"', { | 120 ['target_arch=="x64" or OS=="win"', { |
122 'targets' : [ | 121 'targets' : [ |
123 { | 122 { |
124 'target_name': 'crt_init_64', | 123 'target_name': 'crt_init_64', |
125 'type': 'none', | 124 'type': 'none', |
126 'dependencies': [ | 125 'dependencies': [ |
127 'copy_headers' | 126 'copy_headers' |
128 ], | 127 ], |
129 'variables': { | 128 'variables': { |
130 'nlib_target': 'crt_init_dummy', | 129 'nlib_target': 'crt_init_dummy', |
131 'build_glibc': 0, | 130 'build_glibc': 0, |
132 'build_newlib': 1, | 131 'build_newlib': 1, |
133 'enable_x86_32': 0, | 132 'enable_x86_32': 0, |
134 'extra_args': [ | 133 'extra_args': [ |
135 '--compile', | 134 '--compile', |
136 '--no-suffix', | 135 '--no-suffix', |
137 '--strip=_x86_64' | 136 '--strip=_x86_64' |
138 ], | 137 ], |
139 'out64': '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib64/crti.o', | 138 'out64': '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib64/crti.o', |
140 'objdir': '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib64', | 139 'objdir': '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib64', |
141 'sources': [ | 140 'sources': [ |
142 'src/untrusted/stubs/crti_x86_64.S', | 141 'src/untrusted/stubs/crti_x86_64.S', |
143 ] | 142 ] |
144 }, | 143 }, |
145 }, | 144 }, |
146 { | 145 { |
147 'target_name': 'crt_fini_64', | 146 'target_name': 'crt_fini_64', |
148 'type': 'none', | 147 'type': 'none', |
149 'dependencies': [ | 148 'dependencies': [ |
150 'copy_headers' | 149 'copy_headers' |
151 ], | 150 ], |
152 'variables': { | 151 'variables': { |
153 'nlib_target': 'crt_fini_dummy', | 152 'nlib_target': 'crt_fini_dummy', |
154 'build_glibc': 0, | 153 'build_glibc': 0, |
155 'build_newlib': 1, | 154 'build_newlib': 1, |
156 'enable_x86_32': 0, | 155 'enable_x86_32': 0, |
157 'extra_args': [ | 156 'extra_args': [ |
158 '--compile', | 157 '--compile', |
159 '--no-suffix', | 158 '--no-suffix', |
160 '--strip=_x86_64' | 159 '--strip=_x86_64' |
161 ], | 160 ], |
162 'out64': '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib64/crtn.o', | 161 'out64': '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib64/crtn.o', |
163 'objdir': '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib64', | 162 'objdir': '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib64', |
164 'sources': [ | 163 'sources': [ |
165 'src/untrusted/stubs/crtn_x86_64.S' | 164 'src/untrusted/stubs/crtn_x86_64.S' |
166 ] | 165 ] |
167 }, | 166 }, |
168 } | 167 } |
169 ], | 168 ], |
170 }], | 169 }], |
171 ['target_arch=="ia32"', { | 170 ['target_arch=="ia32"', { |
172 'targets' : [ | 171 'targets' : [ |
173 { | 172 { |
174 'target_name': 'crt_init_32', | 173 'target_name': 'crt_init_32', |
175 'type': 'none', | 174 'type': 'none', |
176 'dependencies': [ | 175 'dependencies': [ |
177 'copy_headers' | 176 'copy_headers' |
178 ], | 177 ], |
179 'variables': { | 178 'variables': { |
180 'nlib_target': 'crt_init_dummy', | 179 'nlib_target': 'crt_init_dummy', |
181 'build_glibc': 0, | 180 'build_glibc': 0, |
182 'build_newlib': 1, | 181 'build_newlib': 1, |
183 'enable_x86_64': 0, | 182 'enable_x86_64': 0, |
184 'extra_args': [ | 183 'extra_args': [ |
185 '--compile', | 184 '--compile', |
186 '--no-suffix', | 185 '--no-suffix', |
187 '--strip=_x86_32' | 186 '--strip=_x86_32' |
188 ], | 187 ], |
189 'out32': '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib32/crti.o', | 188 'out32': '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib32/crti.o', |
190 'objdir': '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib32', | 189 'objdir': '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib32', |
191 'sources': [ | 190 'sources': [ |
192 'src/untrusted/stubs/crti_x86_32.S', | 191 'src/untrusted/stubs/crti_x86_32.S', |
193 ] | 192 ] |
194 }, | 193 }, |
195 }, | 194 }, |
196 { | 195 { |
197 'target_name': 'crt_fini_32', | 196 'target_name': 'crt_fini_32', |
198 'type': 'none', | 197 'type': 'none', |
199 'dependencies': [ | 198 'dependencies': [ |
200 'copy_headers' | 199 'copy_headers' |
201 ], | 200 ], |
202 'variables': { | 201 'variables': { |
203 'nlib_target': 'crt_fini_dummy', | 202 'nlib_target': 'crt_fini_dummy', |
204 'build_glibc': 0, | 203 'build_glibc': 0, |
205 'build_newlib': 1, | 204 'build_newlib': 1, |
206 'enable_x86_64': 0, | 205 'enable_x86_64': 0, |
207 'extra_args': [ | 206 'extra_args': [ |
208 '--compile', | 207 '--compile', |
209 '--no-suffix', | 208 '--no-suffix', |
210 '--strip=_x86_32' | 209 '--strip=_x86_32' |
211 ], | 210 ], |
212 'out32': '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib32/crtn.o', | 211 'out32': '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib32/crtn.o', |
213 'objdir': '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib32', | 212 'objdir': '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib32', |
214 'sources': [ | 213 'sources': [ |
215 'src/untrusted/stubs/crtn_x86_32.S' | 214 'src/untrusted/stubs/crtn_x86_32.S' |
216 ] | 215 ] |
217 }, | 216 }, |
218 } | 217 } |
219 ], | 218 ], |
220 }], | 219 }], |
221 ], | 220 ], |
222 } | 221 } |
OLD | NEW |