OLD | NEW |
(Empty) | |
| 1 # Copyright 2015 The Chromium Authors. All rights reserved. |
| 2 # Use of this source code is governed by a BSD-style license that can be |
| 3 # found in the LICENSE file. |
| 4 |
| 5 { |
| 6 'conditions': [ |
| 7 ['build_openh264==1', { |
| 8 # === Building with OpenH264 === |
| 9 'includes': [ |
| 10 'openh264.gypi', |
| 11 ], |
| 12 # Default dependencies and defines. |
| 13 'variables': { |
| 14 'openh264_common_dependencies': [ |
| 15 ], |
| 16 'openh264_defines': [ |
| 17 # This is supposed to be defined in version.h but isn't for some |
| 18 # targets (win_chromium_compile_dbg_ng trybot). It's only used for |
| 19 # debug printing so we fix this issue by give it a default value. |
| 20 'VERSION_NUMBER="openh264 v.?.?"', |
| 21 ], |
| 22 }, |
| 23 # Target-specific dependencies and defines. |
| 24 'conditions': [ |
| 25 ['OS=="linux"', {}], |
| 26 ['OS=="mac"', {}], |
| 27 ['OS=="ios"', {}], |
| 28 ['OS=="win"', {}], |
| 29 ['OS=="android"', { |
| 30 'variables': { |
| 31 'openh264_common_dependencies': [ |
| 32 # Defines "android_get/setCpu..." functions. The original OpenH264 |
| 33 # build files replaces these using macros for "wels_..." versions |
| 34 # of the same functions. We do not have access to these and use |
| 35 # the <cpu-features.h> ones instead. |
| 36 '<(DEPTH)/build/android/ndk.gyp:cpu_features', |
| 37 ], |
| 38 'openh264_defines': [ |
| 39 'ANDROID_NDK', |
| 40 ], |
| 41 }, |
| 42 }], |
| 43 ], |
| 44 'targets': [ |
| 45 { |
| 46 'target_name': 'openh264_common', |
| 47 'type': 'static_library', |
| 48 'dependencies': [ |
| 49 '<@(openh264_common_dependencies)', |
| 50 ], |
| 51 'defines': [ |
| 52 '<@(openh264_defines)', |
| 53 ], |
| 54 'cflags': [ '-Wno-unused-value', '-fvisibility=default', ], |
| 55 'cflags!': [ '-Wheader-hygiene', ], |
| 56 'xcode_settings': { |
| 57 'WARNING_CFLAGS': [ '-Wno-unused-value', '-fvisibility=default' ], |
| 58 'WARNING_CFLAGS!': [ '-Wheader-hygiene', ], |
| 59 }, |
| 60 'include_dirs': [ |
| 61 'src/codec/api/svc', |
| 62 'src/codec/common/inc', |
| 63 'src/codec/common/src', |
| 64 ], |
| 65 'sources': [ |
| 66 '<@(openh264_common_sources)', |
| 67 ], |
| 68 }, |
| 69 { |
| 70 'target_name': 'openh264_processing', |
| 71 'type': 'static_library', |
| 72 'dependencies': [ |
| 73 'openh264_common', |
| 74 ], |
| 75 'defines': [ |
| 76 '<@(openh264_defines)', |
| 77 ], |
| 78 'cflags': [ '-Wno-unused-value', '-fvisibility=default', ], |
| 79 'cflags!': [ '-Wheader-hygiene', ], |
| 80 'xcode_settings': { |
| 81 'WARNING_CFLAGS': [ '-Wno-unused-value', '-fvisibility=default' ], |
| 82 'WARNING_CFLAGS!': [ '-Wheader-hygiene', ], |
| 83 }, |
| 84 'include_dirs': [ |
| 85 'src/codec/api/svc', |
| 86 'src/codec/common/inc', |
| 87 'src/codec/common/src', |
| 88 'src/codec/processing/interface', |
| 89 'src/codec/processing/interface/', |
| 90 'src/codec/processing/src/adaptivequantization', |
| 91 'src/codec/processing/src/backgrounddetection', |
| 92 'src/codec/processing/src/common', |
| 93 'src/codec/processing/src/complexityanalysis', |
| 94 'src/codec/processing/src/denoise', |
| 95 'src/codec/processing/src/downsample', |
| 96 'src/codec/processing/src/imagerotate', |
| 97 'src/codec/processing/src/scenechangedetection', |
| 98 'src/codec/processing/src/scrolldetection', |
| 99 'src/codec/processing/src/vaacalc', |
| 100 ], |
| 101 'sources': [ |
| 102 '<@(openh264_processing_sources)', |
| 103 ], |
| 104 }, |
| 105 { |
| 106 'target_name': 'openh264_encoder', |
| 107 'type': 'static_library', |
| 108 'dependencies': [ |
| 109 'openh264_common', |
| 110 'openh264_processing', |
| 111 ], |
| 112 'defines': [ |
| 113 '<@(openh264_defines)', |
| 114 ], |
| 115 'cflags': [ '-Wno-unused-value', '-fvisibility=default', ], |
| 116 'cflags!': [ '-Wheader-hygiene', ], |
| 117 'xcode_settings': { |
| 118 'WARNING_CFLAGS': [ '-Wno-unused-value', '-fvisibility=default' ], |
| 119 'WARNING_CFLAGS!': [ '-Wheader-hygiene', ], |
| 120 }, |
| 121 'include_dirs': [ |
| 122 'src/codec/api/svc', |
| 123 'src/codec/common/inc', |
| 124 'src/codec/common/src', |
| 125 'src/codec/encoder/core/inc', |
| 126 'src/codec/encoder/core/src', |
| 127 'src/codec/encoder/plus/inc', |
| 128 'src/codec/encoder/plus/src', |
| 129 'src/codec/processing/interface/', |
| 130 ], |
| 131 'sources': [ |
| 132 '<@(openh264_encoder_sources)', |
| 133 ], |
| 134 }, |
| 135 { |
| 136 'target_name': 'openh264_decoder', |
| 137 'type': 'static_library', |
| 138 'dependencies': [ |
| 139 'openh264_common', |
| 140 'openh264_processing', |
| 141 ], |
| 142 'defines': [ |
| 143 '<@(openh264_defines)', |
| 144 # Disables decoder_core.cpp debug prints. |
| 145 'CODEC_FOR_TESTBED', |
| 146 ], |
| 147 'cflags': [ '-Wno-unused-value', '-fvisibility=default', ], |
| 148 'cflags!': [ '-Wheader-hygiene', ], |
| 149 'xcode_settings': { |
| 150 'WARNING_CFLAGS': [ '-Wno-unused-value', '-fvisibility=default' ], |
| 151 'WARNING_CFLAGS!': [ '-Wheader-hygiene', ], |
| 152 }, |
| 153 'include_dirs': [ |
| 154 'src/codec/api/svc', |
| 155 'src/codec/common/inc', |
| 156 'src/codec/common/src', |
| 157 'src/codec/decoder/core/inc', |
| 158 'src/codec/decoder/core/src', |
| 159 'src/codec/decoder/plus/inc', |
| 160 'src/codec/decoder/plus/src', |
| 161 'src/codec/processing/interface/', |
| 162 ], |
| 163 'sources': [ |
| 164 '<@(openh264_decoder_sources)', |
| 165 ], |
| 166 }, |
| 167 ], |
| 168 },{ |
| 169 # Building without OpenH264. Defining a dummy target because every build |
| 170 # file needs to have at least one target. |
| 171 'targets': [ |
| 172 { |
| 173 'target_name': 'openh264_dummy_target', |
| 174 'type': 'none', |
| 175 } |
| 176 ], |
| 177 }], |
| 178 ], |
| 179 } |
OLD | NEW |