Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(594)

Side by Side Diff: libvpx.gyp

Issue 1085023004: Fix arm/LTO build by moving neon asm files to intrinsics target. (Closed) Base URL: https://chromium.googlesource.com/chromium/deps/libvpx.git@master
Patch Set: Rebase Created 5 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « generate_gypi.sh ('k') | libvpx_srcs_arm_neon_cpu_detect.gypi » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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
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
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 }
OLDNEW
« no previous file with comments | « generate_gypi.sh ('k') | libvpx_srcs_arm_neon_cpu_detect.gypi » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698