OLD | NEW |
1 # Copyright 2015 The Chromium Authors. All rights reserved. | 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 | 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 import("//third_party/openh264/openh264_args.gni") | 5 import("//third_party/openh264/openh264_args.gni") |
6 | 6 |
7 # Import source and include variables from openh264.gypi. | |
8 openh264_gypi_values = exec_script("//build/gypi_to_gn.py", | |
9 [ rebase_path("openh264.gypi") ], | |
10 "scope") | |
11 | |
12 # Config shared by all openh264 targets. | 7 # Config shared by all openh264 targets. |
13 config("config") { | 8 config("config") { |
14 cflags = [] | 9 cflags = [] |
15 defines = [] | 10 defines = [] |
16 | 11 |
17 # GCC and clang flags. MSVS (is_win && !is_clang) does not use cflags. | 12 # GCC and clang flags. MSVS (is_win && !is_clang) does not use cflags. |
18 if (!is_win || is_clang) { | 13 if (!is_win || is_clang) { |
19 cflags += [ | 14 cflags += [ |
20 "-Wno-format", | 15 "-Wno-format", |
21 "-Wno-header-hygiene", | 16 "-Wno-header-hygiene", |
22 "-Wno-unused-function", | 17 "-Wno-unused-function", |
23 "-Wno-unused-value", | 18 "-Wno-unused-value", |
24 ] | 19 ] |
25 } | 20 } |
26 | 21 |
27 # Platform-specific defines. | 22 # Platform-specific defines. |
28 if (is_android) { | 23 if (is_android) { |
29 # Android NDK is necessary for its cpufeatures and this define is what | 24 # Android NDK is necessary for its cpufeatures and this define is what |
30 # OpenH264 code uses to check if it should be used. | 25 # OpenH264 code uses to check if it should be used. |
31 defines += [ "ANDROID_NDK" ] | 26 defines += [ "ANDROID_NDK" ] |
32 } | 27 } |
33 } | 28 } |
34 | 29 |
35 source_set("common") { | 30 source_set("common") { |
36 sources = openh264_gypi_values.openh264_common_sources | 31 sources = [ |
37 include_dirs = openh264_gypi_values.openh264_common_includes | 32 "src/codec/common/inc/WelsThreadLib.h", |
| 33 "src/codec/common/inc/copy_mb.h", |
| 34 "src/codec/common/inc/cpu.h", |
| 35 "src/codec/common/inc/cpu_core.h", |
| 36 "src/codec/common/inc/crt_util_safe_x.h", |
| 37 "src/codec/common/inc/deblocking_common.h", |
| 38 "src/codec/common/inc/expand_pic.h", |
| 39 "src/codec/common/inc/golomb_common.h", |
| 40 "src/codec/common/inc/intra_pred_common.h", |
| 41 "src/codec/common/inc/ls_defines.h", |
| 42 "src/codec/common/inc/macros.h", |
| 43 "src/codec/common/inc/mc.h", |
| 44 "src/codec/common/inc/measure_time.h", |
| 45 "src/codec/common/inc/memory_align.h", |
| 46 "src/codec/common/inc/sad_common.h", |
| 47 "src/codec/common/inc/typedefs.h", |
| 48 "src/codec/common/inc/utils.h", |
| 49 "src/codec/common/inc/version.h", |
| 50 "src/codec/common/inc/welsCodecTrace.h", |
| 51 "src/codec/common/inc/wels_common_defs.h", |
| 52 "src/codec/common/inc/wels_const_common.h", |
| 53 "src/codec/common/src/WelsThreadLib.cpp", |
| 54 "src/codec/common/src/common_tables.cpp", |
| 55 "src/codec/common/src/copy_mb.cpp", |
| 56 "src/codec/common/src/cpu.cpp", |
| 57 "src/codec/common/src/crt_util_safe_x.cpp", |
| 58 "src/codec/common/src/deblocking_common.cpp", |
| 59 "src/codec/common/src/expand_pic.cpp", |
| 60 "src/codec/common/src/intra_pred_common.cpp", |
| 61 "src/codec/common/src/mc.cpp", |
| 62 "src/codec/common/src/memory_align.cpp", |
| 63 "src/codec/common/src/sad_common.cpp", |
| 64 "src/codec/common/src/utils.cpp", |
| 65 "src/codec/common/src/welsCodecTrace.cpp", |
| 66 ] |
| 67 |
| 68 include_dirs = [ |
| 69 "src/codec/api/svc", |
| 70 "src/codec/common/inc", |
| 71 "src/codec/common/src", |
| 72 ] |
| 73 |
38 configs -= [ "//build/config/compiler:chromium_code" ] | 74 configs -= [ "//build/config/compiler:chromium_code" ] |
39 configs += [ "//build/config/compiler:no_chromium_code" ] | 75 configs += [ "//build/config/compiler:no_chromium_code" ] |
40 configs += [ ":config" ] | 76 configs += [ ":config" ] |
41 deps = [] | 77 deps = [] |
42 if (is_android) { | 78 if (is_android) { |
43 deps += [ | 79 deps += [ |
44 # Defines "android_get/setCpu..." functions. The original OpenH264 build | 80 # Defines "android_get/setCpu..." functions. The original OpenH264 build |
45 # files replaces these using macros for "wels_..." versions of the same | 81 # files replaces these using macros for "wels_..." versions of the same |
46 # functions. We do not have access to these and use the <cpu-features.h> | 82 # functions. We do not have access to these and use the <cpu-features.h> |
47 # ones instead. | 83 # ones instead. |
48 "//third_party/android_tools:cpu_features", | 84 "//third_party/android_tools:cpu_features", |
49 ] | 85 ] |
50 } | 86 } |
51 } | 87 } |
52 | 88 |
53 source_set("processing") { | 89 source_set("processing") { |
54 sources = openh264_gypi_values.openh264_processing_sources | 90 sources = [ |
55 include_dirs = openh264_gypi_values.openh264_processing_includes | 91 "src/codec/processing/interface/IWelsVP.h", |
| 92 "src/codec/processing/src/adaptivequantization/AdaptiveQuantization.cpp", |
| 93 "src/codec/processing/src/adaptivequantization/AdaptiveQuantization.h", |
| 94 "src/codec/processing/src/backgrounddetection/BackgroundDetection.cpp", |
| 95 "src/codec/processing/src/backgrounddetection/BackgroundDetection.h", |
| 96 "src/codec/processing/src/common/WelsFrameWork.cpp", |
| 97 "src/codec/processing/src/common/WelsFrameWork.h", |
| 98 "src/codec/processing/src/common/WelsFrameWorkEx.cpp", |
| 99 "src/codec/processing/src/common/common.h", |
| 100 "src/codec/processing/src/common/memory.cpp", |
| 101 "src/codec/processing/src/common/memory.h", |
| 102 "src/codec/processing/src/common/resource.h", |
| 103 "src/codec/processing/src/common/typedef.h", |
| 104 "src/codec/processing/src/common/util.h", |
| 105 "src/codec/processing/src/complexityanalysis/ComplexityAnalysis.cpp", |
| 106 "src/codec/processing/src/complexityanalysis/ComplexityAnalysis.h", |
| 107 "src/codec/processing/src/denoise/denoise.cpp", |
| 108 "src/codec/processing/src/denoise/denoise.h", |
| 109 "src/codec/processing/src/denoise/denoise_filter.cpp", |
| 110 "src/codec/processing/src/downsample/downsample.cpp", |
| 111 "src/codec/processing/src/downsample/downsample.h", |
| 112 "src/codec/processing/src/downsample/downsamplefuncs.cpp", |
| 113 "src/codec/processing/src/imagerotate/imagerotate.cpp", |
| 114 "src/codec/processing/src/imagerotate/imagerotate.h", |
| 115 "src/codec/processing/src/imagerotate/imagerotatefuncs.cpp", |
| 116 "src/codec/processing/src/scenechangedetection/SceneChangeDetection.cpp", |
| 117 "src/codec/processing/src/scenechangedetection/SceneChangeDetection.h", |
| 118 "src/codec/processing/src/scrolldetection/ScrollDetection.cpp", |
| 119 "src/codec/processing/src/scrolldetection/ScrollDetection.h", |
| 120 "src/codec/processing/src/scrolldetection/ScrollDetectionFuncs.cpp", |
| 121 "src/codec/processing/src/scrolldetection/ScrollDetectionFuncs.h", |
| 122 "src/codec/processing/src/vaacalc/vaacalcfuncs.cpp", |
| 123 "src/codec/processing/src/vaacalc/vaacalculation.cpp", |
| 124 "src/codec/processing/src/vaacalc/vaacalculation.h", |
| 125 ] |
| 126 |
| 127 include_dirs = [ |
| 128 "src/codec/api/svc", |
| 129 "src/codec/common/inc", |
| 130 "src/codec/common/src", |
| 131 "src/codec/processing/interface", |
| 132 "src/codec/processing/interface/", |
| 133 "src/codec/processing/src/adaptivequantization", |
| 134 "src/codec/processing/src/backgrounddetection", |
| 135 "src/codec/processing/src/common", |
| 136 "src/codec/processing/src/complexityanalysis", |
| 137 "src/codec/processing/src/denoise", |
| 138 "src/codec/processing/src/downsample", |
| 139 "src/codec/processing/src/imagerotate", |
| 140 "src/codec/processing/src/scenechangedetection", |
| 141 "src/codec/processing/src/scrolldetection", |
| 142 "src/codec/processing/src/vaacalc", |
| 143 ] |
| 144 |
56 configs -= [ "//build/config/compiler:chromium_code" ] | 145 configs -= [ "//build/config/compiler:chromium_code" ] |
57 configs += [ "//build/config/compiler:no_chromium_code" ] | 146 configs += [ "//build/config/compiler:no_chromium_code" ] |
58 configs += [ ":config" ] | 147 configs += [ ":config" ] |
59 deps = [ | 148 deps = [ |
60 ":common", | 149 ":common", |
61 ] | 150 ] |
62 } | 151 } |
63 | 152 |
64 source_set("encoder") { | 153 source_set("encoder") { |
65 sources = openh264_gypi_values.openh264_encoder_sources | 154 sources = [ |
66 include_dirs = openh264_gypi_values.openh264_encoder_includes | 155 "src/codec/encoder/core/inc/as264_common.h", |
| 156 "src/codec/encoder/core/inc/au_set.h", |
| 157 "src/codec/encoder/core/inc/deblocking.h", |
| 158 "src/codec/encoder/core/inc/decode_mb_aux.h", |
| 159 "src/codec/encoder/core/inc/dq_map.h", |
| 160 "src/codec/encoder/core/inc/encode_mb_aux.h", |
| 161 "src/codec/encoder/core/inc/encoder.h", |
| 162 "src/codec/encoder/core/inc/encoder_context.h", |
| 163 "src/codec/encoder/core/inc/extern.h", |
| 164 "src/codec/encoder/core/inc/get_intra_predictor.h", |
| 165 "src/codec/encoder/core/inc/mb_cache.h", |
| 166 "src/codec/encoder/core/inc/md.h", |
| 167 "src/codec/encoder/core/inc/mt_defs.h", |
| 168 "src/codec/encoder/core/inc/mv_pred.h", |
| 169 "src/codec/encoder/core/inc/nal_encap.h", |
| 170 "src/codec/encoder/core/inc/param_svc.h", |
| 171 "src/codec/encoder/core/inc/parameter_sets.h", |
| 172 "src/codec/encoder/core/inc/picture.h", |
| 173 "src/codec/encoder/core/inc/picture_handle.h", |
| 174 "src/codec/encoder/core/inc/property.h", |
| 175 "src/codec/encoder/core/inc/rc.h", |
| 176 "src/codec/encoder/core/inc/ref_list_mgr_svc.h", |
| 177 "src/codec/encoder/core/inc/sample.h", |
| 178 "src/codec/encoder/core/inc/set_mb_syn_cabac.h", |
| 179 "src/codec/encoder/core/inc/set_mb_syn_cavlc.h", |
| 180 "src/codec/encoder/core/inc/slice.h", |
| 181 "src/codec/encoder/core/inc/slice_multi_threading.h", |
| 182 "src/codec/encoder/core/inc/stat.h", |
| 183 "src/codec/encoder/core/inc/svc_base_layer_md.h", |
| 184 "src/codec/encoder/core/inc/svc_enc_frame.h", |
| 185 "src/codec/encoder/core/inc/svc_enc_golomb.h", |
| 186 "src/codec/encoder/core/inc/svc_enc_macroblock.h", |
| 187 "src/codec/encoder/core/inc/svc_enc_slice_segment.h", |
| 188 "src/codec/encoder/core/inc/svc_encode_mb.h", |
| 189 "src/codec/encoder/core/inc/svc_encode_slice.h", |
| 190 "src/codec/encoder/core/inc/svc_mode_decision.h", |
| 191 "src/codec/encoder/core/inc/svc_motion_estimate.h", |
| 192 "src/codec/encoder/core/inc/svc_set_mb_syn.h", |
| 193 "src/codec/encoder/core/inc/svc_set_mb_syn_cavlc.h", |
| 194 "src/codec/encoder/core/inc/vlc_encoder.h", |
| 195 "src/codec/encoder/core/inc/wels_common_basis.h", |
| 196 "src/codec/encoder/core/inc/wels_const.h", |
| 197 "src/codec/encoder/core/inc/wels_func_ptr_def.h", |
| 198 "src/codec/encoder/core/inc/wels_preprocess.h", |
| 199 "src/codec/encoder/core/inc/wels_transpose_matrix.h", |
| 200 "src/codec/encoder/core/src/au_set.cpp", |
| 201 "src/codec/encoder/core/src/deblocking.cpp", |
| 202 "src/codec/encoder/core/src/decode_mb_aux.cpp", |
| 203 "src/codec/encoder/core/src/encode_mb_aux.cpp", |
| 204 "src/codec/encoder/core/src/encoder.cpp", |
| 205 "src/codec/encoder/core/src/encoder_data_tables.cpp", |
| 206 "src/codec/encoder/core/src/encoder_ext.cpp", |
| 207 "src/codec/encoder/core/src/get_intra_predictor.cpp", |
| 208 "src/codec/encoder/core/src/md.cpp", |
| 209 "src/codec/encoder/core/src/mv_pred.cpp", |
| 210 "src/codec/encoder/core/src/nal_encap.cpp", |
| 211 "src/codec/encoder/core/src/picture_handle.cpp", |
| 212 "src/codec/encoder/core/src/property.cpp", |
| 213 "src/codec/encoder/core/src/ratectl.cpp", |
| 214 "src/codec/encoder/core/src/ref_list_mgr_svc.cpp", |
| 215 "src/codec/encoder/core/src/sample.cpp", |
| 216 "src/codec/encoder/core/src/set_mb_syn_cabac.cpp", |
| 217 "src/codec/encoder/core/src/set_mb_syn_cavlc.cpp", |
| 218 "src/codec/encoder/core/src/slice_multi_threading.cpp", |
| 219 "src/codec/encoder/core/src/svc_base_layer_md.cpp", |
| 220 "src/codec/encoder/core/src/svc_enc_slice_segment.cpp", |
| 221 "src/codec/encoder/core/src/svc_encode_mb.cpp", |
| 222 "src/codec/encoder/core/src/svc_encode_slice.cpp", |
| 223 "src/codec/encoder/core/src/svc_mode_decision.cpp", |
| 224 "src/codec/encoder/core/src/svc_motion_estimate.cpp", |
| 225 "src/codec/encoder/core/src/svc_set_mb_syn_cabac.cpp", |
| 226 "src/codec/encoder/core/src/svc_set_mb_syn_cavlc.cpp", |
| 227 "src/codec/encoder/core/src/wels_preprocess.cpp", |
| 228 "src/codec/encoder/plus/inc/welsEncoderExt.h", |
| 229 "src/codec/encoder/plus/src/welsEncoderExt.cpp", |
| 230 |
| 231 # Note: Purposefully excluded: 'src/codec/encoder/plus/src/DllEntry.cpp', |
| 232 # This file is not built by the OpenH264 original build files. |
| 233 ] |
| 234 |
| 235 include_dirs = [ |
| 236 "src/codec/api/svc", |
| 237 "src/codec/common/inc", |
| 238 "src/codec/common/src", |
| 239 "src/codec/encoder/core/inc", |
| 240 "src/codec/encoder/core/src", |
| 241 "src/codec/encoder/plus/inc", |
| 242 "src/codec/encoder/plus/src", |
| 243 "src/codec/processing/interface", |
| 244 ] |
| 245 |
67 configs -= [ "//build/config/compiler:chromium_code" ] | 246 configs -= [ "//build/config/compiler:chromium_code" ] |
68 configs += [ "//build/config/compiler:no_chromium_code" ] | 247 configs += [ "//build/config/compiler:no_chromium_code" ] |
69 configs += [ ":config" ] | 248 configs += [ ":config" ] |
70 deps = [ | 249 deps = [ |
71 ":common", | 250 ":common", |
72 ":processing", | 251 ":processing", |
73 ] | 252 ] |
74 } | 253 } |
OLD | NEW |