OLD | NEW |
1 # Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 # Copyright (c) 2012 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 'variables': { | 5 'variables': { |
6 'libvpx_build_vp9%': 1, | 6 'libvpx_build_vp9%': 1, |
7 'libvpx_source%': 'source/libvpx', | 7 'libvpx_source%': 'source/libvpx', |
8 # Disable LTO for neon targets | 8 # Disable LTO for neon targets |
9 # crbug.com/408997 | 9 # crbug.com/408997 |
10 'use_lto%': 0, | 10 'use_lto%': 0, |
(...skipping 207 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
218 ], | 218 ], |
219 # 'libvpx' target for ARM builds. | 219 # 'libvpx' target for ARM builds. |
220 [ '(target_arch=="arm" or target_arch=="armv7") ', { | 220 [ '(target_arch=="arm" or target_arch=="armv7") ', { |
221 'targets': [ | 221 'targets': [ |
222 { | 222 { |
223 # This libvpx target contains both encoder and decoder. | 223 # This libvpx target contains both encoder and decoder. |
224 # Encoder is configured to be realtime only. | 224 # Encoder is configured to be realtime only. |
225 'target_name': 'libvpx', | 225 'target_name': 'libvpx', |
226 'type': 'static_library', | 226 'type': 'static_library', |
227 | 227 |
228 # Copy the script to the output folder so that we can use it with | 228 'includes': [ 'ads2gas.gypi', ], |
229 # absolute path. | |
230 'copies': [{ | |
231 'destination': '<(shared_generated_dir)', | |
232 'files': [ | |
233 '<(ads2gas_script_path)', | |
234 '<(ads2gas_script_include)', | |
235 ], | |
236 }], | |
237 | 229 |
238 # Rule to convert .asm files to .S files. | |
239 'rules': [ | |
240 { | |
241 'rule_name': 'convert_asm', | |
242 'extension': 'asm', | |
243 'inputs': [ | |
244 '<(shared_generated_dir)/<(ads2gas_script)', | |
245 '<(shared_generated_dir)/thumb.pm', | |
246 ], | |
247 'outputs': [ | |
248 '<(shared_generated_dir)/<(RULE_INPUT_ROOT).S', | |
249 ], | |
250 'action': [ | |
251 'bash', | |
252 '-c', | |
253 'cat <(RULE_INPUT_PATH) | perl <(shared_generated_dir)/<(ads2gas
_script) -chromium > <(shared_generated_dir)/<(RULE_INPUT_ROOT).S', | |
254 ], | |
255 'process_outputs_as_sources': 1, | |
256 'message': 'Convert libvpx asm file for ARM <(RULE_INPUT_PATH)', | |
257 }, | |
258 ], | |
259 | |
260 'variables': { | |
261 'variables': { | |
262 'conditions': [ | |
263 ['OS=="ios"', { | |
264 'ads2gas_script%': 'ads2gas_apple.pl', | |
265 }, { | |
266 'ads2gas_script%': 'ads2gas.pl', | |
267 }], | |
268 ], | |
269 }, | |
270 'ads2gas_script%': '<(ads2gas_script)', | |
271 # Location of the assembly conversion script. | |
272 'ads2gas_script_path': '<(libvpx_source)/build/make/<(ads2gas_script
)', | |
273 'ads2gas_script_include': '<(libvpx_source)/build/make/thumb.pm', | |
274 }, | |
275 'xcode_settings': { | 230 'xcode_settings': { |
276 'OTHER_CFLAGS': [ | 231 'OTHER_CFLAGS': [ |
277 '-I<!(pwd)/source/config/<(OS_CATEGORY)/<(target_arch_full)', | 232 '-I<!(pwd)/source/config/<(OS_CATEGORY)/<(target_arch_full)', |
278 '-I<!(pwd)/source/config', | 233 '-I<!(pwd)/source/config', |
279 '-I<(shared_generated_dir)', | 234 '-I<(shared_generated_dir)', |
280 ], | 235 ], |
281 }, | 236 }, |
282 'include_dirs': [ | 237 'include_dirs': [ |
283 'source/config/<(OS_CATEGORY)/<(target_arch_full)', | 238 'source/config/<(OS_CATEGORY)/<(target_arch_full)', |
284 'source/config', | 239 'source/config', |
285 '<(libvpx_source)', | 240 '<(libvpx_source)', |
286 ], | 241 ], |
287 'direct_dependent_settings': { | 242 'direct_dependent_settings': { |
288 'include_dirs': [ | 243 'include_dirs': [ |
289 '<(libvpx_source)', | 244 '<(libvpx_source)', |
290 ], | 245 ], |
291 }, | 246 }, |
292 'conditions': [ | 247 'conditions': [ |
293 # Libvpx optimizations for ARMv6 or ARMv7 without NEON. | 248 # Libvpx optimizations for ARMv6 or ARMv7 without NEON. |
294 ['arm_neon==0', { | 249 ['arm_neon==0', { |
295 'conditions': [ | 250 'conditions': [ |
296 ['OS=="android"', { | 251 ['OS=="android"', { |
297 'includes': [ | 252 'includes': [ |
298 'libvpx_srcs_arm_neon_cpu_detect.gypi', | 253 'libvpx_srcs_arm_neon_cpu_detect.gypi', |
299 ], | 254 ], |
300 'dependencies': [ | 255 'dependencies': [ |
301 'libvpx_intrinsics_neon', | 256 'libvpx_intrinsics_neon', |
302 ], | 257 ], |
303 'cflags': [ | |
304 '-Wa,-mfpu=neon', | |
305 ], | |
306 }, { | 258 }, { |
307 'includes': [ | 259 'includes': [ |
308 'libvpx_srcs_arm.gypi', | 260 'libvpx_srcs_arm.gypi', |
309 ], | 261 ], |
310 }], | 262 }], |
311 ], | 263 ], |
312 }], | 264 }], |
313 # Libvpx optimizations for ARMv7 with NEON. | 265 # Libvpx optimizations for ARMv7 with NEON. |
314 ['arm_neon==1', { | 266 ['arm_neon==1', { |
315 'includes': [ | 267 'includes': [ |
(...skipping 12 matching lines...) Expand all Loading... |
328 '-fstack-protector-all', # Implies -fstack-protector | 280 '-fstack-protector-all', # Implies -fstack-protector |
329 ], | 281 ], |
330 }, | 282 }, |
331 }], | 283 }], |
332 ], | 284 ], |
333 }, | 285 }, |
334 ], | 286 ], |
335 }], | 287 }], |
336 ], | 288 ], |
337 } | 289 } |
OLD | NEW |