blob: a31ea304ad4cbba4a33005fb54275068292d2900 [file] [log] [blame]
andrew@webrtc.orgf5a91fd2012-07-23 16:28:02 +00001# Copyright (c) 2012 The WebRTC project authors. All Rights Reserved.
xians@google.comd3185fe2011-09-12 12:24:39 +00002#
3# Use of this source code is governed by a BSD-style license
4# that can be found in the LICENSE file in the root of the source
5# tree. An additional intellectual property rights grant can be found
6# in the file PATENTS. All contributing project authors may
7# be found in the AUTHORS file in the root of the source tree.
niklase@google.com470e71d2011-07-07 08:21:25 +00008
9{
andrew@webrtc.orgf5a91fd2012-07-23 16:28:02 +000010 'includes': [
andrew@webrtc.orgd1f3b1a2012-07-27 22:19:16 +000011 '../../../../build/common.gypi',
12 '../test_framework/test_framework.gypi'
andrew@webrtc.orgf5a91fd2012-07-23 16:28:02 +000013 ],
henrikg@webrtc.orgc0ceb822012-10-24 12:34:28 +000014 'variables': {
15 'conditions': [
16 ['build_with_chromium==1', {
17 'use_temporal_layers%': 0,
18 }, {
19 'use_temporal_layers%': 1,
20 }],
21 ],
22 },
niklase@google.com470e71d2011-07-07 08:21:25 +000023 'targets': [
24 {
25 'target_name': 'webrtc_vp8',
26 'type': '<(library)',
27 'dependencies': [
xians@google.comd3185fe2011-09-12 12:24:39 +000028 '<(webrtc_root)/system_wrappers/source/system_wrappers.gyp:system_wrappers',
andrew@webrtc.orgfa418ac2012-09-11 01:34:21 +000029 '<(webrtc_root)/common_video/common_video.gyp:common_video',
niklase@google.com470e71d2011-07-07 08:21:25 +000030 ],
31 'include_dirs': [
andrew@webrtc.orgd1f3b1a2012-07-27 22:19:16 +000032 'include',
stefan@webrtc.org0ee8ba12011-11-25 12:12:43 +000033 '<(webrtc_root)/common_video/interface',
stefan@webrtc.org0ee8ba12011-11-25 12:12:43 +000034 '<(webrtc_root)/modules/video_coding/codecs/interface',
35 '<(webrtc_root)/modules/interface',
niklase@google.com470e71d2011-07-07 08:21:25 +000036 ],
37 'conditions': [
sjlee@webrtc.org4b425082012-09-10 17:58:21 +000038 ['build_libvpx==1', {
39 'dependencies': [
40 '<(DEPTH)/third_party/libvpx/libvpx.gyp:libvpx',
41 ],
42 }],
andrew@webrtc.orgd1f3b1a2012-07-27 22:19:16 +000043 # TODO(mikhal): Investigate this mechanism for handling differences
44 # between the Chromium and standalone builds.
45 # http://code.google.com/p/webrtc/issues/detail?id=201
niklase@google.com470e71d2011-07-07 08:21:25 +000046 ['build_with_chromium==1', {
stefan@webrtc.org0ee8ba12011-11-25 12:12:43 +000047 'defines': [
48 'WEBRTC_LIBVPX_VERSION=960' # Bali
49 ],
sjlee@webrtc.org4b425082012-09-10 17:58:21 +000050 }, {
mikhal@webrtc.org6724cf82011-08-24 00:51:36 +000051 'defines': [
xians@google.comd3185fe2011-09-12 12:24:39 +000052 'WEBRTC_LIBVPX_VERSION=971' # Cayuga
mikhal@webrtc.org6724cf82011-08-24 00:51:36 +000053 ],
henrikg@webrtc.orgc0ceb822012-10-24 12:34:28 +000054 }],
55 ['use_temporal_layers==1', {
stefan@webrtc.org0ae71b92011-12-05 08:42:52 +000056 'sources': [
57 'temporal_layers.h',
58 'temporal_layers.cc',
59 ],
niklase@google.com470e71d2011-07-07 08:21:25 +000060 }],
61 ],
62 'direct_dependent_settings': {
63 'include_dirs': [
andrew@webrtc.orgd1f3b1a2012-07-27 22:19:16 +000064 'include',
stefan@webrtc.org0ee8ba12011-11-25 12:12:43 +000065 '<(webrtc_root)/common_video/interface',
66 '<(webrtc_root)/modules/video_coding/codecs/interface',
niklase@google.com470e71d2011-07-07 08:21:25 +000067 ],
68 },
69 'sources': [
stefan@webrtc.orga4a88f92011-12-02 08:34:05 +000070 'reference_picture_selection.h',
71 'reference_picture_selection.cc',
andrew@webrtc.orgd1f3b1a2012-07-27 22:19:16 +000072 'include/vp8.h',
73 'include/vp8_common_types.h',
pwestin@webrtc.org8d89b582012-09-20 20:49:12 +000074 'vp8_impl.cc',
niklase@google.com470e71d2011-07-07 08:21:25 +000075 ],
76 },
xians@google.com508eba52011-08-08 12:48:13 +000077 ], # targets
mflodman@webrtc.org6af95942012-05-24 13:23:35 +000078 'conditions': [
79 ['include_tests==1', {
xians@google.com508eba52011-08-08 12:48:13 +000080 'targets': [
81 {
stefan@webrtc.org42e78ac2012-05-24 14:36:34 +000082 'target_name': 'vp8_integrationtests',
xians@google.com508eba52011-08-08 12:48:13 +000083 'type': 'executable',
84 'dependencies': [
xians@google.comd3185fe2011-09-12 12:24:39 +000085 'test_framework',
xians@google.com508eba52011-08-08 12:48:13 +000086 'webrtc_vp8',
andrew@webrtc.orgfa418ac2012-09-11 01:34:21 +000087 '<(webrtc_root)/common_video/common_video.gyp:common_video',
xians@google.comd3185fe2011-09-12 12:24:39 +000088 '<(webrtc_root)/system_wrappers/source/system_wrappers.gyp:system_wrappers',
andrew@webrtc.org81cf5e42012-06-27 01:41:54 +000089 '<(webrtc_root)/test/test.gyp:test_support',
90 '<(webrtc_root)/test/test.gyp:test_support_main',
91 '<(DEPTH)/testing/gtest.gyp:gtest',
xians@google.com508eba52011-08-08 12:48:13 +000092 ],
93 'sources': [
94 # header files
andrew@webrtc.orgd1f3b1a2012-07-27 22:19:16 +000095 'test/benchmark.h',
96 'test/dual_decoder_test.h',
97 'test/normal_async_test.h',
98 'test/packet_loss_test.h',
99 'test/rps_test.h',
100 'test/vp8_unittest.h',
niklase@google.com470e71d2011-07-07 08:21:25 +0000101
xians@google.com508eba52011-08-08 12:48:13 +0000102 # source files
andrew@webrtc.orgd1f3b1a2012-07-27 22:19:16 +0000103 'test/benchmark.cc',
104 'test/dual_decoder_test.cc',
105 'test/normal_async_test.cc',
106 'test/packet_loss_test.cc',
107 'test/rps_test.cc',
108 'test/tester.cc',
109 'test/vp8_unittest.cc',
mikhal@webrtc.org251f64e2012-12-06 17:56:20 +0000110 'test/vp8_impl_unittest.cc',
stefan@webrtc.orga4a88f92011-12-02 08:34:05 +0000111 ],
112 },
113 {
114 'target_name': 'vp8_unittests',
115 'type': 'executable',
116 'dependencies': [
andrew@webrtc.orgf5a91fd2012-07-23 16:28:02 +0000117 'webrtc_vp8',
mikhal@webrtc.org60d25f92012-12-06 16:48:18 +0000118 'test_framework',
stefan@webrtc.orgc5300432012-10-08 07:06:53 +0000119 '<(DEPTH)/testing/gmock.gyp:gmock',
andrew@webrtc.org81cf5e42012-06-27 01:41:54 +0000120 '<(DEPTH)/testing/gtest.gyp:gtest',
andrew@webrtc.orgf5a91fd2012-07-23 16:28:02 +0000121 '<(webrtc_root)/test/test.gyp:test_support_main',
stefan@webrtc.orga4a88f92011-12-02 08:34:05 +0000122 ],
123 'include_dirs': [
andrew@webrtc.org81cf5e42012-06-27 01:41:54 +0000124 '<(DEPTH)/third_party/libvpx/source/libvpx',
stefan@webrtc.orga4a88f92011-12-02 08:34:05 +0000125 ],
126 'sources': [
127 'reference_picture_selection_unittest.cc',
pwestin@webrtc.orgdb221d22011-12-02 11:31:08 +0000128 'temporal_layers_unittest.cc',
xians@google.com508eba52011-08-08 12:48:13 +0000129 ],
sjlee@webrtc.org4b425082012-09-10 17:58:21 +0000130 'conditions': [
131 ['build_libvpx==1', {
132 'dependencies': [
133 '<(DEPTH)/third_party/libvpx/libvpx.gyp:libvpx',
134 ],
135 }],
136 ],
xians@google.com508eba52011-08-08 12:48:13 +0000137 },
mikhal@webrtc.org451aa5d2012-12-07 21:23:02 +0000138 {
139 'target_name': 'vp8_coder',
140 'type': 'executable',
141 'dependencies': [
142 'webrtc_vp8',
143 '<(webrtc_root)/common_video/common_video.gyp:common_video',
144 '<(webrtc_root)/test/metrics.gyp:metrics',
145 '<(DEPTH)/testing/gtest.gyp:gtest',
146 '<(webrtc_root)/system_wrappers/source/system_wrappers.gyp:system_wrappers',
147 '<(webrtc_root)/test/test.gyp:test_support_main',
148 '<(webrtc_root)/tools/tools.gyp:command_line_parser',
149 ],
150 'sources': [
151 'vp8_sequence_coder.cc',
152 ],
153 },
xians@google.com508eba52011-08-08 12:48:13 +0000154 ], # targets
mflodman@webrtc.org6af95942012-05-24 13:23:35 +0000155 }], # include_tests
niklase@google.com470e71d2011-07-07 08:21:25 +0000156 ],
157}