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

Unified Diff: third_party/openh264/openh264.gyp

Issue 1403893007: Adding third_party/openh264/src, build files and unittests (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebase Created 5 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 side-by-side diff with in-line comments
Download patch
Index: third_party/openh264/openh264.gyp
diff --git a/third_party/openh264/openh264.gyp b/third_party/openh264/openh264.gyp
new file mode 100644
index 0000000000000000000000000000000000000000..9256941f5f696eca7fbd16dbfb1d11da53f3d52f
--- /dev/null
+++ b/third_party/openh264/openh264.gyp
@@ -0,0 +1,181 @@
+# Copyright 2015 The Chromium Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+{
+ 'conditions': [
+ ['build_openh264==1', {
+ # === Building with OpenH264 ===
+ 'includes': [
+ 'openh264.gypi',
+ ],
+ 'variables': {
+ # Defines shared by all openh264 targets.
+ 'openh264_defines': [
+ # This is supposed to be defined in version.h but isn't for some
+ # windows and mac targets. It's only used for debug printing so we fix
+ # this issue by give it a default value.
+ 'VERSION_NUMBER="openh264 v.?.?"',
torbjorng 2015/11/05 13:18:25 If it isn't defined for some builds, one can safel
hbos_chromium 2015/11/10 14:36:47 I don't like this workaround but I'd rather try to
+ ],
+ 'conditions': [
+ # cflags shared by all openh264 targets.
+ ['OS!="win"', {
+ 'openh264_cflags_add': [
+ '-fvisibility=default',
torbjorng 2015/11/05 13:18:25 See comment on other file.
+ '-w',
+ ],
+ }, {
+ 'openh264_cflags_add': [
+ '/w',
+ ],
+ }],
+ # Defines that are specific to target platforms.
+ ['OS!="android"', {
+ 'openh264_defines_os': [],
+ }, {
+ 'openh264_defines_os': [
+ 'ANDROID_NDK',
+ ],
+ }],
+ ],
+ },
+ 'targets': [
+ {
+ 'target_name': 'openh264_common',
+ 'type': 'static_library',
+ 'conditions': [
+ ['OS=="android"', {
+ 'dependencies': [
+ # Defines "android_get/setCpu..." functions. The original
+ # OpenH264 build files replaces these using macros for
+ # "wels_..." versions of the same functions. We do not have
+ # access to these and use the <cpu-features.h> ones instead.
+ '<(DEPTH)/build/android/ndk.gyp:cpu_features',
+ ],
+ }],
+ ],
+ 'defines': [
torbjorng 2015/11/05 13:18:25 Presumably, the following block of code could be s
hbos_chromium 2015/11/10 14:36:47 Now using 'target_defaults' instead.
+ '<@(openh264_defines)',
+ '<@(openh264_defines_os)',
+ ],
+ 'cflags': [ '<@(openh264_cflags_add)', ],
+ 'xcode_settings': {
+ 'WARNING_CFLAGS': [ '<@(openh264_cflags_add)', ],
+ },
+ 'include_dirs': [
+ 'src/codec/api/svc',
+ 'src/codec/common/inc',
+ 'src/codec/common/src',
+ ],
+ 'sources': [
+ '<@(openh264_common_sources)',
+ ],
+ },
+ {
+ 'target_name': 'openh264_processing',
+ 'type': 'static_library',
+ 'dependencies': [
+ 'openh264_common',
+ ],
+ 'defines': [
+ '<@(openh264_defines)',
+ '<@(openh264_defines_os)',
+ ],
+ 'cflags': [ '<@(openh264_cflags_add)', ],
+ 'xcode_settings': {
+ 'WARNING_CFLAGS': [ '<@(openh264_cflags_add)', ],
+ },
+ 'include_dirs': [
+ 'src/codec/api/svc',
+ 'src/codec/common/inc',
+ 'src/codec/common/src',
+ 'src/codec/processing/interface',
+ 'src/codec/processing/interface/',
+ 'src/codec/processing/src/adaptivequantization',
+ 'src/codec/processing/src/backgrounddetection',
+ 'src/codec/processing/src/common',
+ 'src/codec/processing/src/complexityanalysis',
+ 'src/codec/processing/src/denoise',
+ 'src/codec/processing/src/downsample',
+ 'src/codec/processing/src/imagerotate',
+ 'src/codec/processing/src/scenechangedetection',
+ 'src/codec/processing/src/scrolldetection',
+ 'src/codec/processing/src/vaacalc',
+ ],
+ 'sources': [
+ '<@(openh264_processing_sources)',
+ ],
+ },
+ {
+ 'target_name': 'openh264_encoder',
+ 'type': 'static_library',
+ 'dependencies': [
+ 'openh264_common',
+ 'openh264_processing',
+ ],
+ 'defines': [
+ '<@(openh264_defines)',
+ '<@(openh264_defines_os)',
+ ],
+ 'cflags': [ '<@(openh264_cflags_add)', ],
+ 'xcode_settings': {
+ 'WARNING_CFLAGS': [ '<@(openh264_cflags_add)', ],
+ },
+ 'include_dirs': [
+ 'src/codec/api/svc',
+ 'src/codec/common/inc',
+ 'src/codec/common/src',
+ 'src/codec/encoder/core/inc',
+ 'src/codec/encoder/core/src',
+ 'src/codec/encoder/plus/inc',
+ 'src/codec/encoder/plus/src',
+ 'src/codec/processing/interface/',
+ ],
+ 'sources': [
+ '<@(openh264_encoder_sources)',
+ ],
+ },
+ {
+ 'target_name': 'openh264_decoder',
+ 'type': 'static_library',
+ 'dependencies': [
+ 'openh264_common',
+ 'openh264_processing',
+ ],
+ 'defines': [
+ '<@(openh264_defines)',
+ '<@(openh264_defines_os)',
+ # Disables decoder_core.cpp debug prints.
+ 'CODEC_FOR_TESTBED',
+ ],
+ 'cflags': [ '<@(openh264_cflags_add)', ],
+ 'xcode_settings': {
+ 'WARNING_CFLAGS': [ '<@(openh264_cflags_add)', ],
+ },
+ 'include_dirs': [
+ 'src/codec/api/svc',
+ 'src/codec/common/inc',
+ 'src/codec/common/src',
+ 'src/codec/decoder/core/inc',
+ 'src/codec/decoder/core/src',
+ 'src/codec/decoder/plus/inc',
+ 'src/codec/decoder/plus/src',
+ 'src/codec/processing/interface/',
+ ],
+ 'sources': [
+ '<@(openh264_decoder_sources)',
+ ],
+ },
+ ],
+ },{
+ # Building without OpenH264. Defining a dummy target because every build
+ # file needs to have at least one target.
+ 'targets': [
+ {
+ 'target_name': 'openh264_dummy_target',
+ 'type': 'none',
+ }
+ ],
+ }],
+ ],
+}

Powered by Google App Engine
This is Rietveld 408576698