Chromium Code Reviews| 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 # There's a couple key GYP variables that control how FFmpeg is built: | 5 # There's a couple key GYP variables that control how FFmpeg is built: |
| 6 # ffmpeg_branding | 6 # ffmpeg_branding |
| 7 # Controls whether we build the Chromium or Google Chrome version of | 7 # Controls whether we build the Chromium or Google Chrome version of |
| 8 # FFmpeg. The Google Chrome version contains additional codecs. | 8 # FFmpeg. The Google Chrome version contains additional codecs. |
| 9 # Typical values are Chromium, Chrome, ChromiumOS, and ChromeOS. | 9 # Typical values are Chromium, Chrome, ChromiumOS, and ChromeOS. |
| 10 # use_system_ffmpeg | 10 # use_system_ffmpeg |
| 11 # When set to non-zero will build Chromium against the system FFmpeg | 11 # When set to non-zero will build Chromium against the system FFmpeg |
| 12 # headers via pkg-config. When Chromium is launched it will assume that | 12 # headers via pkg-config. When Chromium is launched it will assume that |
| 13 # FFmpeg is present in the system library path. Default value is 0. | 13 # FFmpeg is present in the system library path. Default value is 0. |
| 14 # build_ffmpegsumo | 14 # build_ffmpegsumo |
| 15 # When set to zero will build Chromium against the patched ffmpegsumo | 15 # When set to zero will build Chromium against the patched ffmpegsumo |
| 16 # headers, but not build ffmpegsumo itself. Users are expected to build | 16 # headers, but not build ffmpegsumo itself. Users are expected to build |
| 17 # and provide their own version of ffmpegsumo. Default value is 1. | 17 # and provide their own version of ffmpegsumo. Default value is 1. |
| 18 # | 18 # |
| 19 # TODO(ihf): Define these variables and use them. | 19 # TODO(ihf): Define these variables and use them. |
| 20 # LIBAVCODEC_VERSION_MAJOR=53 | 20 # LIBAVCODEC_VERSION_MAJOR=53 |
| 21 # LIBAVFORMAT_VERSION_MAJOR=53 | 21 # LIBAVFORMAT_VERSION_MAJOR=53 |
| 22 # LIBAVUTIL_VERSION_MAJOR=51 | 22 # LIBAVUTIL_VERSION_MAJOR=51 |
| 23 | 23 |
| 24 { | 24 { |
| 25 'target_defaults': { | 25 'target_defaults': { |
| 26 'conditions': [ | 26 'conditions': [ |
| 27 ['OS!="linux" and OS!="freebsd" and OS!="openbsd" and OS!="solaris"', { | 27 ['os_posix != 1 or OS == "mac" or OS == "openbsd"', { |
|
scherkus (not reviewing)
2011/11/23 01:22:54
nit: no spaces around operators (!=, ==, etc..)
ruben
2011/11/23 01:36:15
I was told otherwise by estade here:
http://coder
scherkus (not reviewing)
2011/11/23 01:46:25
estade@ made a comment about consistency, which wo
ruben
2011/11/23 02:17:14
If you follow that thread a couple comments down,
| |
| 28 'sources/': [['exclude', '/linux/']] | 28 'sources/': [['exclude', '/linux/']] |
| 29 }], | 29 }], |
| 30 ['OS!="mac"', {'sources/': [['exclude', '/mac/']]}], | 30 ['OS!="mac"', {'sources/': [['exclude', '/mac/']]}], |
| 31 ['OS!="win"', {'sources/': [['exclude', '/win/']]}], | 31 ['OS!="win"', {'sources/': [['exclude', '/win/']]}], |
| 32 ['OS!="openbsd"', {'sources/': [['exclude', '/openbsd/']]}], | |
| 32 ], | 33 ], |
| 33 'variables': { | 34 'variables': { |
| 34 # Since we are not often debugging FFmpeg, and performance is | 35 # Since we are not often debugging FFmpeg, and performance is |
| 35 # unacceptable without optimization, freeze the optimizations to -O2. | 36 # unacceptable without optimization, freeze the optimizations to -O2. |
| 36 # If someone really wants -O1 , they can change these in their checkout. | 37 # If someone really wants -O1 , they can change these in their checkout. |
| 37 # If you want -O0, see the Gotchas in README.Chromium for why that | 38 # If you want -O0, see the Gotchas in README.Chromium for why that |
| 38 # won't work. | 39 # won't work. |
| 39 'debug_optimize': '2', | 40 'debug_optimize': '2', |
| 40 'mac_debug_optimization': '2', | 41 'mac_debug_optimization': '2', |
| 41 }, | 42 }, |
| (...skipping 111 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 153 '-mfpu=vfpv3-d16', | 154 '-mfpu=vfpv3-d16', |
| 154 ], | 155 ], |
| 155 }], | 156 }], |
| 156 ['arm_neon==1', { | 157 ['arm_neon==1', { |
| 157 'cflags': [ | 158 'cflags': [ |
| 158 '-mfpu=neon', | 159 '-mfpu=neon', |
| 159 ], | 160 ], |
| 160 }], | 161 }], |
| 161 ], | 162 ], |
| 162 }], | 163 }], |
| 163 ['OS=="linux" or OS=="freebsd" or OS=="openbsd" or OS=="solaris"', { | 164 ['os_posix == 1 and OS != "mac"', { |
| 164 'defines': [ | 165 'defines': [ |
| 165 '_ISOC99_SOURCE', | 166 '_ISOC99_SOURCE', |
| 166 '_LARGEFILE_SOURCE', | 167 '_LARGEFILE_SOURCE', |
| 167 # BUG(ihf): ffmpeg compiles with this define. But according to | 168 # BUG(ihf): ffmpeg compiles with this define. But according to |
| 168 # ajwong: I wouldn't change _FILE_OFFSET_BITS. That's a scary c hange | 169 # ajwong: I wouldn't change _FILE_OFFSET_BITS. That's a scary c hange |
| 169 # cause it affects the default length of off_t, and fpos_t, | 170 # cause it affects the default length of off_t, and fpos_t, |
| 170 # which can cause strange problems if the loading code doesn't | 171 # which can cause strange problems if the loading code doesn't |
| 171 # have it set and you start passing FILE*s or file descriptors | 172 # have it set and you start passing FILE*s or file descriptors |
| 172 # between symbol contexts. | 173 # between symbol contexts. |
| 173 # '_FILE_OFFSET_BITS=64', | 174 # '_FILE_OFFSET_BITS=64', |
| (...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 219 '-DARCH_X86_64', | 220 '-DARCH_X86_64', |
| 220 '-m', 'amd64', | 221 '-m', 'amd64', |
| 221 '-DPIC', | 222 '-DPIC', |
| 222 # The next two lines are needed to enable AVX assembly. | 223 # The next two lines are needed to enable AVX assembly. |
| 223 '-Iconfig/<(ffmpeg_branding)/<(os_config)/<(ffmpeg_config) ', | 224 '-Iconfig/<(ffmpeg_branding)/<(os_config)/<(ffmpeg_config) ', |
| 224 '-Pconfig.asm', | 225 '-Pconfig.asm', |
| 225 ], | 226 ], |
| 226 }], | 227 }], |
| 227 ], | 228 ], |
| 228 }, | 229 }, |
| 229 }], # OS=="linux" or OS=="freebsd" or OS=="openbsd" or OS=="solaris " | 230 }], # os_posix == 1 and OS != "mac" |
| 230 ['OS=="openbsd"', { | 231 ['OS=="openbsd"', { |
| 231 # OpenBSD's gcc (4.2.1) does not support this flag | 232 # OpenBSD's gcc (4.2.1) does not support this flag |
| 232 'cflags!': [ | 233 'cflags!': [ |
| 233 '-fno-signed-zeros', | 234 '-fno-signed-zeros', |
| 234 ], | 235 ], |
| 235 }], | 236 }], |
| 236 ['OS=="mac"', { | 237 ['OS=="mac"', { |
| 237 'conditions': [ | 238 'conditions': [ |
| 238 ['mac_breakpad==1', { | 239 ['mac_breakpad==1', { |
| 239 'variables': { | 240 'variables': { |
| (...skipping 292 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 532 ], # conditions | 533 ], # conditions |
| 533 }, | 534 }, |
| 534 ], # targets | 535 ], # targets |
| 535 } | 536 } |
| 536 | 537 |
| 537 # Local Variables: | 538 # Local Variables: |
| 538 # tab-width:2 | 539 # tab-width:2 |
| 539 # indent-tabs-mode:nil | 540 # indent-tabs-mode:nil |
| 540 # End: | 541 # End: |
| 541 # vim: set expandtab tabstop=2 shiftwidth=2: | 542 # vim: set expandtab tabstop=2 shiftwidth=2: |
| OLD | NEW |