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

Side by Side Diff: third_party/ffmpeg/ffmpeg.gyp

Issue 300013: Add yasm and ffmpeg into the build tree for linux. (Closed)
Patch Set: Fix mark's comments. Created 11 years, 1 month 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 | « third_party/ffmpeg/dummy_nolink.cc ('k') | third_party/ffmpeg/munge_config_optimizations.sh » ('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) 2009 The Chromium Authors. All rights reserved. 1 # 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 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 'target_defaults': { 6 'target_defaults': {
7 'conditions': [ 7 'conditions': [
8 ['OS!="linux" and OS!="freebsd"', {'sources/': [['exclude', '/linux/']]}], 8 ['OS!="linux" and OS!="freebsd"', {'sources/': [['exclude', '/linux/']]}],
9 ['OS!="mac"', {'sources/': [['exclude', '/mac/']]}], 9 ['OS!="mac"', {'sources/': [['exclude', '/mac/']]}],
10 ['OS!="win"', {'sources/': [['exclude', '/win/']]}], 10 ['OS!="win"', {'sources/': [['exclude', '/win/']]}],
11 ], 11 ],
12 'variables': {
13 # Since we are not often debugging FFmpeg, and performance is
14 # unacceptable without optimization, freeze the optimizations to -O2.
15 # If someone really wants -O1 , they can change these in their checkout.
16 # If you want -O0, see the Gotchas in README.Chromium for why that
17 # won't work.
18 'debug_optimize': '2',
19 'mac_debug_optimization': '2',
20 },
12 }, 21 },
13 'variables': { 22 'variables': {
14 # Allow overridding the selection of which ffmpeg binaries to copy via an 23 # Allow overridding the selection of which FFmpeg binaries to copy via an
15 # environment variable. Affects the ffmpeg_binaries target. 24 # environment variable. Affects the ffmpeg_binaries target.
16 'ffmpeg_branding%': '<(branding)', 25 'ffmpeg_branding%': '<(branding)',
17 'ffmpeg_variant%': '<(target_arch)', 26 'ffmpeg_variant%': '<(target_arch)',
18 27
19 'use_system_ffmpeg%': 0, 28 # Locations for generated artifacts.
29 'shared_generated_dir': '<(SHARED_INTERMEDIATE_DIR)/third_party/ffmpeg',
30 'asm_library': 'ffmpegasm',
20 }, 31 },
32 'conditions': [
33 # This condition is for migrating from pre-built binaries to an in-tree
34 # source build. Most of these should be removed once FFmpeg is built on
35 # mac and linux. Windows will take more work.
36 #
37 # TODO(ajwong): Per the comment above, reduce this conditional's size and
38 # determine if in-tree build in Windows is tractable.
39 ['OS!="linux" and OS!="freebsd"', {
40 'variables': {
41 'target_for_binaries': 'ffmpeg_binaries',
42 'ffmpeg_include_root': 'include',
43 },
44 },{ # else OS=="linux"
45 'variables': {
46 'target_for_binaries': 'ffmpegsumo_nolink',
47 'ffmpeg_include_root': 'source/patched-ffmpeg-mt',
48 },
49 'targets': [
50 {
51 'target_name': 'ffmpegsumo',
52 'type': 'shared_library',
53 'dependencies': [
54 'make_ffmpeg_asm_lib',
55 ],
56 'sources': [
57 'source/patched-ffmpeg-mt/libavcodec/aac.c',
58 'source/patched-ffmpeg-mt/libavcodec/aac_ac3_parser.c',
59 'source/patched-ffmpeg-mt/libavcodec/aac_parser.c',
60 'source/patched-ffmpeg-mt/libavcodec/aactab.c',
61 'source/patched-ffmpeg-mt/libavcodec/allcodecs.c',
62 'source/patched-ffmpeg-mt/libavcodec/audioconvert.c',
63 'source/patched-ffmpeg-mt/libavcodec/avpacket.c',
64 'source/patched-ffmpeg-mt/libavcodec/bitstream.c',
65 'source/patched-ffmpeg-mt/libavcodec/bitstream_filter.c',
66 'source/patched-ffmpeg-mt/libavcodec/cabac.c',
67 'source/patched-ffmpeg-mt/libavcodec/dsputil.c',
68 'source/patched-ffmpeg-mt/libavcodec/error_resilience.c',
69 'source/patched-ffmpeg-mt/libavcodec/eval.c',
70 'source/patched-ffmpeg-mt/libavcodec/faanidct.c',
71 'source/patched-ffmpeg-mt/libavcodec/fft.c',
72 'source/patched-ffmpeg-mt/libavcodec/golomb.c',
73 'source/patched-ffmpeg-mt/libavcodec/h264.c',
74 'source/patched-ffmpeg-mt/libavcodec/h264_parser.c',
75 'source/patched-ffmpeg-mt/libavcodec/h264idct.c',
76 'source/patched-ffmpeg-mt/libavcodec/h264pred.c',
77 'source/patched-ffmpeg-mt/libavcodec/imgconvert.c',
78 'source/patched-ffmpeg-mt/libavcodec/jrevdct.c',
79 'source/patched-ffmpeg-mt/libavcodec/mdct.c',
80 'source/patched-ffmpeg-mt/libavcodec/mpeg4audio.c',
81 'source/patched-ffmpeg-mt/libavcodec/mpegaudio.c',
82 'source/patched-ffmpeg-mt/libavcodec/mpegaudio_parser.c',
83 'source/patched-ffmpeg-mt/libavcodec/mpegaudiodata.c',
84 'source/patched-ffmpeg-mt/libavcodec/mpegaudiodec.c',
85 'source/patched-ffmpeg-mt/libavcodec/mpegaudiodecheader.c',
86 'source/patched-ffmpeg-mt/libavcodec/mpegvideo.c',
87 'source/patched-ffmpeg-mt/libavcodec/opt.c',
88 'source/patched-ffmpeg-mt/libavcodec/options.c',
89 'source/patched-ffmpeg-mt/libavcodec/parser.c',
90 'source/patched-ffmpeg-mt/libavcodec/pthread.c',
91 'source/patched-ffmpeg-mt/libavcodec/raw.c',
92 'source/patched-ffmpeg-mt/libavcodec/resample.c',
93 'source/patched-ffmpeg-mt/libavcodec/resample2.c',
94 'source/patched-ffmpeg-mt/libavcodec/simple_idct.c',
95 'source/patched-ffmpeg-mt/libavcodec/utils.c',
96 'source/patched-ffmpeg-mt/libavcodec/vorbis.c',
97 'source/patched-ffmpeg-mt/libavcodec/vorbis_data.c',
98 'source/patched-ffmpeg-mt/libavcodec/vorbis_dec.c',
99 'source/patched-ffmpeg-mt/libavcodec/vp3.c',
100 'source/patched-ffmpeg-mt/libavcodec/vp3dsp.c',
101 'source/patched-ffmpeg-mt/libavcodec/x86/cpuid.c',
102 'source/patched-ffmpeg-mt/libavcodec/x86/dnxhd_mmx.c',
103 'source/patched-ffmpeg-mt/libavcodec/x86/dsputil_mmx.c',
104 'source/patched-ffmpeg-mt/libavcodec/x86/fdct_mmx.c',
105 'source/patched-ffmpeg-mt/libavcodec/x86/fft_3dn.c',
106 'source/patched-ffmpeg-mt/libavcodec/x86/fft_3dn2.c',
107 'source/patched-ffmpeg-mt/libavcodec/x86/fft_sse.c',
108 'source/patched-ffmpeg-mt/libavcodec/x86/idct_mmx_xvid.c',
109 'source/patched-ffmpeg-mt/libavcodec/x86/idct_sse2_xvid.c',
110 'source/patched-ffmpeg-mt/libavcodec/x86/motion_est_mmx.c',
111 'source/patched-ffmpeg-mt/libavcodec/x86/mpegvideo_mmx.c',
112 'source/patched-ffmpeg-mt/libavcodec/x86/simple_idct_mmx.c',
113 'source/patched-ffmpeg-mt/libavcodec/x86/vp3dsp_mmx.c',
114 'source/patched-ffmpeg-mt/libavcodec/x86/vp3dsp_sse2.c',
115 'source/patched-ffmpeg-mt/libavcodec/xiph.c',
116 'source/patched-ffmpeg-mt/libavformat/allformats.c',
117 'source/patched-ffmpeg-mt/libavformat/avio.c',
118 'source/patched-ffmpeg-mt/libavformat/aviobuf.c',
119 'source/patched-ffmpeg-mt/libavformat/cutils.c',
120 'source/patched-ffmpeg-mt/libavformat/id3v2.c',
121 'source/patched-ffmpeg-mt/libavformat/isom.c',
122 'source/patched-ffmpeg-mt/libavformat/metadata.c',
123 'source/patched-ffmpeg-mt/libavformat/metadata_compat.c',
124 'source/patched-ffmpeg-mt/libavformat/mov.c',
125 'source/patched-ffmpeg-mt/libavformat/mp3.c',
126 'source/patched-ffmpeg-mt/libavformat/oggdec.c',
127 'source/patched-ffmpeg-mt/libavformat/oggparseogm.c',
128 'source/patched-ffmpeg-mt/libavformat/oggparsetheora.c',
129 'source/patched-ffmpeg-mt/libavformat/oggparsevorbis.c',
130 'source/patched-ffmpeg-mt/libavformat/options.c',
131 'source/patched-ffmpeg-mt/libavformat/os_support.c',
132 'source/patched-ffmpeg-mt/libavformat/riff.c',
133 'source/patched-ffmpeg-mt/libavformat/sdp.c',
134 'source/patched-ffmpeg-mt/libavformat/utils.c',
135 'source/patched-ffmpeg-mt/libavutil/adler32.c',
136 'source/patched-ffmpeg-mt/libavutil/aes.c',
137 'source/patched-ffmpeg-mt/libavutil/avstring.c',
138 'source/patched-ffmpeg-mt/libavutil/base64.c',
139 'source/patched-ffmpeg-mt/libavutil/crc.c',
140 'source/patched-ffmpeg-mt/libavutil/des.c',
141 'source/patched-ffmpeg-mt/libavutil/fifo.c',
142 'source/patched-ffmpeg-mt/libavutil/intfloat_readwrite.c',
143 'source/patched-ffmpeg-mt/libavutil/lfg.c',
144 'source/patched-ffmpeg-mt/libavutil/lls.c',
145 'source/patched-ffmpeg-mt/libavutil/log.c',
146 'source/patched-ffmpeg-mt/libavutil/lzo.c',
147 'source/patched-ffmpeg-mt/libavutil/mathematics.c',
148 'source/patched-ffmpeg-mt/libavutil/md5.c',
149 'source/patched-ffmpeg-mt/libavutil/mem.c',
150 'source/patched-ffmpeg-mt/libavutil/random_seed.c',
151 'source/patched-ffmpeg-mt/libavutil/rational.c',
152 'source/patched-ffmpeg-mt/libavutil/rc4.c',
153 'source/patched-ffmpeg-mt/libavutil/sha1.c',
154 'source/patched-ffmpeg-mt/libavutil/tree.c',
155 'source/patched-ffmpeg-mt/libavutil/utils.c',
156
157 # Config file for the OS and architecture.
158 'source/config/<(ffmpeg_branding)/<(OS)/<(target_arch)/config.h',
159 ],
160 'include_dirs': [
161 'source/config/<(ffmpeg_branding)/<(OS)/<(target_arch)',
162 'source/patched-ffmpeg-mt',
163 ],
164 'cflags': [
165 '-DHAVE_AV_CONFIG_H',
166 '-D_ISOC99_SOURCE',
167 '-D_POSIX_C_SOURCE=200112',
168 '-std=c99',
169 '-D_LARGEFILE_SOURCE',
170 '-pthread',
171 '-fno-math-errno',
172 '-fomit-frame-pointer'
173 ],
174 'cflags!': [
175 # Ensure the symbols are exported.
176 '-fvisibility=hidden',
177 ],
178 'ldflags': [
179 '-Wl,-Bsymbolic',
180 '-L<(shared_generated_dir)',
181 ],
182 'libraries': [
183 '-l<(asm_library)',
184 '-lm',
185
186 # TODO(ajwong): Statically link these once we resolve the
187 # PIC/non-PIC issues on x64.
188 '-lz',
189 '-lbz2',
190 ],
191 'conditions': [
192 ['target_arch=="x64"', {
193 'cflags': [
194 # x64 requires PIC for shared libraries. This is opposite
195 # of ia32 where due to a slew of inline assembly using ebx,
196 # FFmpeg CANNOT be built with PIC.
197 '-fPIC',
198 '-DPIC',
199 ],
200 }],
201 ['ffmpeg_branding!="Chrome"', {
202 'sources!': [
203 # Exclude files that should only be used if doing a branded
204 # Google Chrome build.
205 'source/patched-ffmpeg-mt/libavcodec/aac.c',
206 'source/patched-ffmpeg-mt/libavcodec/aac_ac3_parser.c',
207 'source/patched-ffmpeg-mt/libavcodec/aac_parser.c',
208 'source/patched-ffmpeg-mt/libavcodec/aactab.c',
209 'source/patched-ffmpeg-mt/libavcodec/cabac.c',
210 'source/patched-ffmpeg-mt/libavcodec/error_resilience.c',
211 'source/patched-ffmpeg-mt/libavcodec/golomb.c',
212 'source/patched-ffmpeg-mt/libavcodec/h264.c',
213 'source/patched-ffmpeg-mt/libavcodec/h264_parser.c',
214 'source/patched-ffmpeg-mt/libavcodec/h264idct.c',
215 'source/patched-ffmpeg-mt/libavcodec/h264pred.c',
216 'source/patched-ffmpeg-mt/libavcodec/mpeg4audio.c',
217 'source/patched-ffmpeg-mt/libavcodec/mpegaudio.c',
218 'source/patched-ffmpeg-mt/libavcodec/mpegaudio_parser.c',
219 'source/patched-ffmpeg-mt/libavcodec/mpegaudiodata.c',
220 'source/patched-ffmpeg-mt/libavcodec/mpegaudiodec.c',
221 'source/patched-ffmpeg-mt/libavcodec/mpegaudiodecheader.c',
222 'source/patched-ffmpeg-mt/libavcodec/mpegvideo.c',
223 'source/patched-ffmpeg-mt/libavformat/id3v2.c',
224 'source/patched-ffmpeg-mt/libavformat/isom.c',
225 'source/patched-ffmpeg-mt/libavformat/mov.c',
226 'source/patched-ffmpeg-mt/libavformat/mp3.c',
227 ],
228 }],
229 ],
230 'actions': [
231 {
232 # Needed to serialize the output of make_ffmpeg_asm_lib with
233 # this target being built.
234 'action_name': 'ffmpegasm_barrier',
235 'inputs': [
236 '<(shared_generated_dir)/<(STATIC_LIB_PREFIX)<(asm_library)<(STA TIC_LIB_SUFFIX)',
237 ],
238 'outputs': [
239 '<(INTERMEDIATE_DIR)/third_party/ffmpeg/<(asm_library)'
240 ],
241 'action': [
242 'touch',
243 '<(INTERMEDIATE_DIR)/third_party/ffmpeg/<(asm_library)'
244 ],
245 'process_outputs_as_sources': 0,
246 'message': 'Serializing build of <(asm_library).',
247 },
248 ],
249 },
250 {
251 'target_name': 'assemble_ffmpeg_asm',
252 'type': 'none',
253 'dependencies': [
254 '../yasm/yasm.gyp:yasm',
255 ],
256 'sources': [
257 # The FFmpeg yasm files.
258 'source/patched-ffmpeg-mt/libavcodec/x86/dsputil_yasm.asm',
259 'source/patched-ffmpeg-mt/libavcodec/x86/fft_mmx.asm',
260 ],
261 'rules': [
262 {
263 'conditions': [
264 ['target_arch=="ia32"', {
265 'variables': {
266 'yasm_flags': [
267 '-DARCH_X86_32',
268 '-m', 'x86',
269 ],
270 },
271 },],
272 ['target_arch=="x64"', {
273 'variables': {
274 'yasm_flags': [
275 '-DARCH_X86_64',
276 '-m', 'amd64',
277 '-DPIC',
278 ],
279 },
280 },],
281 ],
282 'rule_name': 'assemble',
283 'extension': 'asm',
284 'inputs': [ '<(PRODUCT_DIR)/yasm', ],
285 'outputs': [
286 '<(shared_generated_dir)/<(RULE_INPUT_ROOT).o',
287 ],
288 'action': [
289 '<(PRODUCT_DIR)/yasm',
290 '-f', 'elf',
291 '<@(yasm_flags)',
292 '-I', 'source/patched-ffmpeg-mt/libavcodec/x86/',
293 '-o', '<(shared_generated_dir)/<(RULE_INPUT_ROOT).o',
294 '<(RULE_INPUT_PATH)',
295 ],
296 'process_outputs_as_sources': 0,
297 'message': 'Build ffmpeg yasm build <(RULE_INPUT_PATH).',
298 },
299 ],
300 },
301 {
302 'target_name': 'make_ffmpeg_asm_lib',
303 'type': 'none',
304 'dependencies': [
305 'assemble_ffmpeg_asm',
306 ],
307 'sources': [
308 ],
309 'actions': [
310 {
311 'action_name': 'make_library',
312 'variables': {
313 # Make sure this stays in sync with the corresponding sources
314 # in assemble_ffmpeg_asm.
315 'asm_objects': [
316 '<(shared_generated_dir)/dsputil_yasm.o',
317 '<(shared_generated_dir)/fft_mmx.o',
318 ],
319 'library_path': '<(shared_generated_dir)/lib<(asm_library)<(STAT IC_LIB_SUFFIX)',
320 },
321 'inputs': [ '<@(asm_objects)', ],
322 'outputs': [ '<(library_path)', ],
323 'action': [ 'ar', 'rcs', '<(library_path)', '<@(asm_objects)', ],
324 'process_outputs_as_sources': 0,
325 'message': 'Packate ffmpeg assembly into <(library_path).',
326 },
327 ],
328 },
329 {
330 # A target shim that allows putting a dependency on ffmpegsumo
331 # without pulling it into the link line.
332 #
333 # We use an "executable" taget without any sources to break the
334 # link line relationship to ffmpegsumo.
335 #
336 # Most people will want to depend on this target instead of on
337 # ffmpegsumo directly since ffmpegsumo is meant to be
338 # used via dlopen() in chrome.
339 'target_name': 'ffmpegsumo_nolink',
340 'type': 'executable',
341 'sources': [ 'dummy_nolink.cc' ],
342 'dependencies': [
343 'ffmpegsumo',
344 ],
345 'conditions': [
346 ['OS=="linux" or OS=="freebsd"', {
347 'copies': [
348 {
349 # On Make and Scons builds, the library does not end up in
350 # the PRODUCT_DIR.
351 #
352 # http://code.google.com/p/gyp/issues/detail?id=57
353 #
354 # TODO(ajwong): Fix gyp, fix the world.
355 'destination': '<(PRODUCT_DIR)',
356 'files': ['<(SHARED_LIB_DIR)/<(SHARED_LIB_PREFIX)ffmpegsumo<(S HARED_LIB_SUFFIX)'],
357 },
358 ],
359 }],
360 ],
361 },
362 ],
363 }],
364 ],
21 'targets': [ 365 'targets': [
22 { 366 {
23 'variables': { 367 'variables': {
24 'generate_stubs_script': 'generate_stubs.py', 368 'generate_stubs_script': 'generate_stubs.py',
25 'sig_files': [ 369 'sig_files': [
26 # Note that these must be listed in dependency order. 370 # Note that these must be listed in dependency order.
27 # (i.e. if A depends on B, then B must be listed before A.) 371 # (i.e. if A depends on B, then B must be listed before A.)
28 'avutil-50.sigs', 372 'avutil-50.sigs',
29 'avcodec-52.sigs', 373 'avcodec-52.sigs',
30 'avformat-52.sigs', 374 'avformat-52.sigs',
31 ], 375 ],
32 'extra_header': 'ffmpeg_stub_headers.fragment', 376 'extra_header': 'ffmpeg_stub_headers.fragment',
33 }, 377 },
34 'target_name': 'ffmpeg', 378 'target_name': 'ffmpeg',
35 'msvs_guid': 'D7A94F58-576A-45D9-A45F-EB87C63ABBB0', 379 'msvs_guid': 'D7A94F58-576A-45D9-A45F-EB87C63ABBB0',
36 'dependencies': [ 380 'dependencies': [
381 '<(target_for_binaries)',
37 'ffmpeg_binaries', 382 'ffmpeg_binaries',
38 ], 383 ],
39 'sources': [ 384 'sources': [
40 'include/libavcodec/avcodec.h', 385 '<(ffmpeg_include_root)/libavcodec/avcodec.h',
41 'include/libavcodec/opt.h', 386 '<(ffmpeg_include_root)/libavcodec/opt.h',
42 'include/libavcodec/vdpau.h', 387 '<(ffmpeg_include_root)/libavcodec/vdpau.h',
43 'include/libavcodec/xvmc.h', 388 '<(ffmpeg_include_root)/libavcodec/xvmc.h',
44 'include/libavformat/avformat.h', 389 '<(ffmpeg_include_root)/libavformat/avformat.h',
45 'include/libavformat/avio.h', 390 '<(ffmpeg_include_root)/libavformat/avio.h',
46 'include/libavutil/adler32.h', 391 '<(ffmpeg_include_root)/libavutil/adler32.h',
47 'include/libavutil/avstring.h', 392 '<(ffmpeg_include_root)/libavutil/avstring.h',
48 'include/libavutil/avutil.h', 393 '<(ffmpeg_include_root)/libavutil/avutil.h',
49 'include/libavutil/base64.h', 394 '<(ffmpeg_include_root)/libavutil/base64.h',
50 'include/libavutil/common.h', 395 '<(ffmpeg_include_root)/libavutil/common.h',
51 'include/libavutil/crc.h', 396 '<(ffmpeg_include_root)/libavutil/crc.h',
52 'include/libavutil/fifo.h', 397 '<(ffmpeg_include_root)/libavutil/fifo.h',
53 'include/libavutil/intfloat_readwrite.h', 398 '<(ffmpeg_include_root)/libavutil/intfloat_readwrite.h',
54 'include/libavutil/log.h', 399 '<(ffmpeg_include_root)/libavutil/log.h',
55 'include/libavutil/lzo.h', 400 '<(ffmpeg_include_root)/libavutil/lzo.h',
56 'include/libavutil/mathematics.h', 401 '<(ffmpeg_include_root)/libavutil/mathematics.h',
57 'include/libavutil/md5.h', 402 '<(ffmpeg_include_root)/libavutil/md5.h',
58 'include/libavutil/mem.h', 403 '<(ffmpeg_include_root)/libavutil/mem.h',
59 'include/libavutil/pixfmt.h', 404 '<(ffmpeg_include_root)/libavutil/pixfmt.h',
60 'include/libavutil/rational.h', 405 '<(ffmpeg_include_root)/libavutil/rational.h',
61 'include/libavutil/sha1.h', 406 '<(ffmpeg_include_root)/libavutil/sha1.h',
407
408 # Hacks to introduce C99 types into Visual Studio.
62 'include/win/inttypes.h', 409 'include/win/inttypes.h',
63 'include/win/stdint.h', 410 'include/win/stdint.h',
411
412 # Files needed for stub generation rules.
64 '<@(sig_files)', 413 '<@(sig_files)',
65 '<(extra_header)' 414 '<(extra_header)'
66 ], 415 ],
67 'hard_dependency': 1, 416 'hard_dependency': 1,
68 'direct_dependent_settings': { 417 'direct_dependent_settings': {
69 'include_dirs': [ 418 'include_dirs': [
70 'include', 419 'include',
71 ], 420 ],
72 }, 421 },
73 'conditions': [ 422 'conditions': [
(...skipping 87 matching lines...) Expand 10 before | Expand all | Expand 10 after
161 'action': ['python', 510 'action': ['python',
162 '<(generate_stubs_script)', 511 '<(generate_stubs_script)',
163 '-i', '<(intermediate_dir)', 512 '-i', '<(intermediate_dir)',
164 '-o', '<(output_root)/<(project_path)', 513 '-o', '<(output_root)/<(project_path)',
165 '-t', '<(outfile_type)', 514 '-t', '<(outfile_type)',
166 '-e', '<(extra_header)', 515 '-e', '<(extra_header)',
167 '-s', '<(stubs_filename_root)', 516 '-s', '<(stubs_filename_root)',
168 '-p', '<(project_path)', 517 '-p', '<(project_path)',
169 '<@(_inputs)', 518 '<@(_inputs)',
170 ], 519 ],
520 'process_outputs_as_sources': 1,
171 'message': 'Generating FFmpeg stubs for dynamic loading.', 521 'message': 'Generating FFmpeg stubs for dynamic loading.',
172 'process_outputs_as_sources': 1,
173 }, 522 },
174 ], 523 ],
175 }, 524 },
176 ], 525 ],
177 ['OS=="linux" or OS=="freebsd"', { 526 ['OS=="linux" or OS=="freebsd"', {
178 'link_settings': { 527 'link_settings': {
179 'libraries': [ 528 'libraries': [
180 # We need dl for dlopen() and friends. 529 # We need dl for dlopen() and friends.
181 '-ldl', 530 '-ldl',
182 ], 531 ],
(...skipping 18 matching lines...) Expand all
201 ['OS=="win"', { 550 ['OS=="win"', {
202 'variables': { 551 'variables': {
203 'source_files': [ 552 'source_files': [
204 'binaries/<(ffmpeg_bin_dir)/avcodec-52.dll', 553 'binaries/<(ffmpeg_bin_dir)/avcodec-52.dll',
205 'binaries/<(ffmpeg_bin_dir)/avformat-52.dll', 554 'binaries/<(ffmpeg_bin_dir)/avformat-52.dll',
206 'binaries/<(ffmpeg_bin_dir)/avutil-50.dll', 555 'binaries/<(ffmpeg_bin_dir)/avutil-50.dll',
207 ], 556 ],
208 }, 557 },
209 'dependencies': ['../../build/win/system.gyp:cygwin'], 558 'dependencies': ['../../build/win/system.gyp:cygwin'],
210 }], ['OS=="linux" or OS=="freebsd"', { 559 }], ['OS=="linux" or OS=="freebsd"', {
211 'conditions': [
212 ['use_system_ffmpeg==0', {
213 'variables': { 560 'variables': {
214 'source_files': [ 561 # TODO(ajwong): Clean this up after we've finished
215 'binaries/<(ffmpeg_bin_dir)/libavcodec.so.52', 562 # migrating to in-tree build.
216 'binaries/<(ffmpeg_bin_dir)/libavformat.so.52', 563 'source_files': [],
217 'binaries/<(ffmpeg_bin_dir)/libavutil.so.50',
218 ],
219 }, 564 },
220 }, { 565 }], ['OS=="mac"', {
221 'variables': {
222 'source_files': []
223 },
224 }],
225 ]},
226 ], ['OS=="mac"', {
227 # TODO(ajwong): These files are also copied in: 566 # TODO(ajwong): These files are also copied in:
228 # webkit/tools/test_shell/test_shell.gyp and 567 # webkit/tools/test_shell/test_shell.gyp and
229 # chrome/chrome.gyp 568 # chrome/chrome.gyp
230 # Need to consolidate the copies in one place. (BUG=23602) 569 # Need to consolidate the copies in one place. (BUG=23602)
231 'variables': { 570 'variables': {
232 'source_files': [ 571 'source_files': [
233 'binaries/<(ffmpeg_bin_dir)/libavcodec.52.dylib', 572 'binaries/<(ffmpeg_bin_dir)/libavcodec.52.dylib',
234 'binaries/<(ffmpeg_bin_dir)/libavformat.52.dylib', 573 'binaries/<(ffmpeg_bin_dir)/libavformat.52.dylib',
235 'binaries/<(ffmpeg_bin_dir)/libavutil.50.dylib', 574 'binaries/<(ffmpeg_bin_dir)/libavutil.50.dylib',
236 ], 575 ],
(...skipping 10 matching lines...) Expand all
247 ], 586 ],
248 }, 587 },
249 ], 588 ],
250 } 589 }
251 590
252 # Local Variables: 591 # Local Variables:
253 # tab-width:2 592 # tab-width:2
254 # indent-tabs-mode:nil 593 # indent-tabs-mode:nil
255 # End: 594 # End:
256 # vim: set expandtab tabstop=2 shiftwidth=2: 595 # vim: set expandtab tabstop=2 shiftwidth=2:
OLDNEW
« no previous file with comments | « third_party/ffmpeg/dummy_nolink.cc ('k') | third_party/ffmpeg/munge_config_optimizations.sh » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698