[CI20] Refactor starboard/creator for 16.136005
Refactoring is based on starboard/linux
Change-Id: I0578f57c2fe0cd5f0145b0f902470d60aef29e0a
diff --git a/src/starboard/contrib/creator/README.md b/src/starboard/contrib/creator/README.md
index b1a38f6..f6f57f0 100644
--- a/src/starboard/contrib/creator/README.md
+++ b/src/starboard/contrib/creator/README.md
@@ -1,6 +1,6 @@
# MIPS support
-starboard/creator directory contains port of Cobalt for Creator CI20 platform:
+starboard/contrib/creator directory contains port of Cobalt for Creator CI20 platform:
https://creatordev.io/ci20.html
diff --git a/src/starboard/contrib/creator/ci20x11/gcc/4.9/compiler_flags.gypi b/src/starboard/contrib/creator/ci20x11/gcc/4.9/compiler_flags.gypi
index 2e7df1d..b782944 100644
--- a/src/starboard/contrib/creator/ci20x11/gcc/4.9/compiler_flags.gypi
+++ b/src/starboard/contrib/creator/ci20x11/gcc/4.9/compiler_flags.gypi
@@ -72,6 +72,8 @@
'-Wno-narrowing',
# Do not remove null this checks.
'-fno-delete-null-pointer-checks',
+ '-Wno-unused-result',
+ '-Wno-unknown-pragmas',
],
'conditions': [
['cobalt_fastbuild==0', {
diff --git a/src/starboard/contrib/creator/ci20x11/gcc/4.9/gyp_configuration.py b/src/starboard/contrib/creator/ci20x11/gcc/4.9/gyp_configuration.py
index e20b9f7..be4a5d9 100644
--- a/src/starboard/contrib/creator/ci20x11/gcc/4.9/gyp_configuration.py
+++ b/src/starboard/contrib/creator/ci20x11/gcc/4.9/gyp_configuration.py
@@ -11,19 +11,14 @@
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
-"""Starboard Creator CI20 X11 gcc 4.9 platform configuration for gyp_cobalt."""
+"""Starboard Creator CI20 X11 gcc 4.9 platform configuration."""
-import logging
import os
-import subprocess
-# pylint: disable=import-self,g-import-not-at-top
-import gyp_utils
-# Import the shared Linux platform configuration.
-from starboard.contrib.creator.shared import gyp_configuration
+from starboard.contrib.creator.shared import gyp_configuration as shared_configuration
from starboard.tools.testing import test_filter
-class PlatformConfig(gyp_configuration.PlatformConfig):
+class PlatformConfig(shared_configuration.CreatorConfiguration):
"""Starboard Creator platform configuration."""
def __init__(self, platform):
@@ -52,63 +47,22 @@
return env_variables
def GetTestFilters(self):
- """Gets all tests to be excluded from a unit test run.
-
- Returns:
- A list of initialized TestFilter objects.
- """
- return [
- # test is disabled on x64
- test_filter.TestFilter(
- 'bindings_test', ('GlobalInterfaceBindingsTest.'
- 'PropertiesAndOperationsAreOwnProperties')),
- # tests miss the defined delay
- test_filter.TestFilter(
- 'nplb', 'SbConditionVariableWaitTimedTest.SunnyDay'),
- test_filter.TestFilter(
- 'nplb', 'SbConditionVariableWaitTimedTest.SunnyDayAutoInit'),
- # tests sometimes miss the threshold of 10ms
- test_filter.TestFilter(
- 'nplb', 'Semaphore.ThreadTakesWait_PutBeforeTimeExpires'),
- test_filter.TestFilter(
- 'nplb', 'RWLock.HoldsLockForTime'),
- # tests sometimes miss the threshold of 5ms
- test_filter.TestFilter(
- 'nplb', 'Semaphore.ThreadTakesWait_TimeExpires'),
- test_filter.TestFilter(
- 'nplb', 'SbWindowCreateTest.SunnyDayDefault'),
- test_filter.TestFilter(
- 'nplb', 'SbWindowCreateTest.SunnyDayDefaultSet'),
- test_filter.TestFilter(
- 'nplb', 'SbWindowGetPlatformHandleTest.SunnyDay'),
- test_filter.TestFilter(
- 'nplb', 'SbWindowGetSizeTest.SunnyDay'),
- test_filter.TestFilter(
- 'nplb', 'SbPlayerTest.SunnyDay'),
+ filters = super(PlatformConfig, self).GetTestFilters()
+ filters.extend([
# test fails when built with GCC 4.9, issue was fixed in later versions of GCC
test_filter.TestFilter(
'nplb', 'SbAlignTest.AlignAsStackVariable'),
# tests fail also on x86
test_filter.TestFilter(
- 'nplb', 'SbSocketAddressTypes/SbSocketGetInterfaceAddressTest.SunnyDayDestination/1'),
+ 'nplb', 'SbSystemSymbolizeTest.SunnyDay'),
test_filter.TestFilter(
- 'nplb', 'SbSocketAddressTypes/SbSocketGetInterfaceAddressTest.SunnyDaySourceForDestination/1'),
+ 'nplb', 'SbSystemGetStackTest.SunnyDayStackDirection'),
test_filter.TestFilter(
- 'nplb', 'SbSocketAddressTypes/SbSocketGetInterfaceAddressTest.SunnyDaySourceNotLoopback/1'),
- # there are no test cases in this test
+ 'nplb', 'SbSystemGetStackTest.SunnyDay'),
test_filter.TestFilter(
- 'starboard_platform_tests', test_filter.FILTER_ALL),
- # there are no test cases in this test
- test_filter.TestFilter(
- 'nplb_blitter_pixel_tests', test_filter.FILTER_ALL),
- # test fails on x64 also
- test_filter.TestFilter(
- 'net_unittests', 'HostResolverImplDnsTest.DnsTaskUnspec'),
- # we don't have proper procedure for running this test
- test_filter.TestFilter(
- 'web_platform_tests', test_filter.FILTER_ALL),
- ]
-
+ 'nplb', 'SbSystemGetStackTest.SunnyDayShortStack'),
+ ])
+ return filters
def CreatePlatformConfig():
try:
diff --git a/src/starboard/contrib/creator/ci20x11/gyp_configuration.gypi b/src/starboard/contrib/creator/ci20x11/gyp_configuration.gypi
index 312333e..18611fd 100644
--- a/src/starboard/contrib/creator/ci20x11/gyp_configuration.gypi
+++ b/src/starboard/contrib/creator/ci20x11/gyp_configuration.gypi
@@ -13,6 +13,9 @@
# limitations under the License.
{
+ 'variables': {
+ 'gl_type': 'system_gles2',
+ },
'target_defaults': {
'default_configuration': 'creator-ci20x11_debug',
'configurations': {
@@ -33,6 +36,7 @@
'includes': [
'libraries.gypi',
+ '../shared/compiler_flags.gypi',
'../shared/gyp_configuration.gypi',
],
}
diff --git a/src/starboard/contrib/creator/ci20x11/gyp_configuration.py b/src/starboard/contrib/creator/ci20x11/gyp_configuration.py
index 09351b4..9268eeb 100644
--- a/src/starboard/contrib/creator/ci20x11/gyp_configuration.py
+++ b/src/starboard/contrib/creator/ci20x11/gyp_configuration.py
@@ -11,81 +11,45 @@
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
-"""Starboard Creator Ci20 X11 platform configuration for gyp_cobalt."""
+"""Starboard Creator Ci20 X11 platform configuration."""
-import logging
-import os
-import sys
+from starboard.contrib.creator.shared import gyp_configuration as shared_configuration
+from starboard.tools.toolchain import ar
+from starboard.tools.toolchain import bash
+from starboard.tools.toolchain import clang
+from starboard.tools.toolchain import clangxx
+from starboard.tools.toolchain import cp
+from starboard.tools.toolchain import touch
-import _env # pylint: disable=unused-import
-# Import the shared Creator platform configuration.
-from starboard.contrib.creator.shared import gyp_configuration
-from starboard.tools.testing import test_filter
+class CreatorCI20X11Configuration(shared_configuration.CreatorConfiguration):
+ """Starboard Creator X11 platform configuration."""
-class PlatformConfig(gyp_configuration.PlatformConfig):
+ def __init__(self, platform_name="creator-ci20x11"):
+ super(CreatorCI20X11Configuration, self).__init__(platform_name)
- def __init__(self, platform):
- super(PlatformConfig, self).__init__(platform)
+ def GetTargetToolchain(self):
+ return self.GetHostToolchain()
- def GetTestFilters(self):
- """Gets all tests to be excluded from a unit test run.
+ def GetHostToolchain(self):
+ environment_variables = self.GetEnvironmentVariables()
+ cc_path = environment_variables['CC']
+ cxx_path = environment_variables['CXX']
- Returns:
- A list of initialized TestFilter objects.
- """
return [
- # test is disabled on x64
- test_filter.TestFilter(
- 'bindings_test', ('GlobalInterfaceBindingsTest.'
- 'PropertiesAndOperationsAreOwnProperties')),
- # tests sometimes miss the defined delay
- test_filter.TestFilter(
- 'nplb', 'SbConditionVariableWaitTimedTest.SunnyDay'),
- test_filter.TestFilter(
- 'nplb', 'SbConditionVariableWaitTimedTest.SunnyDayAutoInit'),
- # tests sometimes miss the threshold of 10ms
- test_filter.TestFilter(
- 'nplb', 'Semaphore.ThreadTakesWait_PutBeforeTimeExpires'),
- test_filter.TestFilter(
- 'nplb', 'RWLock.HoldsLockForTime'),
- # tests sometimes miss the threshold of 5ms
- test_filter.TestFilter(
- 'nplb', 'Semaphore.ThreadTakesWait_TimeExpires'),
- test_filter.TestFilter(
- 'nplb', 'SbWindowCreateTest.SunnyDayDefault'),
- test_filter.TestFilter(
- 'nplb', 'SbWindowCreateTest.SunnyDayDefaultSet'),
- test_filter.TestFilter(
- 'nplb', 'SbWindowGetPlatformHandleTest.SunnyDay'),
- test_filter.TestFilter(
- 'nplb', 'SbWindowGetSizeTest.SunnyDay'),
- test_filter.TestFilter(
- 'nplb', 'SbPlayerTest.SunnyDay'),
- # tests fail also on x86
- test_filter.TestFilter(
- 'nplb', 'SbSocketAddressTypes/SbSocketGetInterfaceAddressTest.SunnyDayDestination/1'),
- test_filter.TestFilter(
- 'nplb', 'SbSocketAddressTypes/SbSocketGetInterfaceAddressTest.SunnyDaySourceForDestination/1'),
- test_filter.TestFilter(
- 'nplb', 'SbSocketAddressTypes/SbSocketGetInterfaceAddressTest.SunnyDaySourceNotLoopback/1'),
- # there are no test cases in this test
- test_filter.TestFilter(
- 'starboard_platform_tests', test_filter.FILTER_ALL),
- # there are no test cases in this test
- test_filter.TestFilter(
- 'nplb_blitter_pixel_tests', test_filter.FILTER_ALL),
- # test fails on x64 also
- test_filter.TestFilter(
- 'net_unittests', 'HostResolverImplDnsTest.DnsTaskUnspec'),
- # we don't have proper procedure for running this test
- test_filter.TestFilter(
- 'web_platform_tests', test_filter.FILTER_ALL),
+ clang.CCompiler(path=cc_path),
+ clang.CxxCompiler(path=cxx_path),
+ clang.AssemblerWithCPreprocessor(path=cc_path),
+ ar.StaticThinLinker(),
+ ar.StaticLinker(),
+ clangxx.ExecutableLinker(path=cxx_path),
+ cp.Copy(),
+ touch.Stamp(),
+ bash.Shell(),
]
+ def GetTestFilters(self):
+ filters = super(CreatorCI20X11Configuration, self).GetTestFilters()
+ return filters
def CreatePlatformConfig():
- try:
- return PlatformConfig("creator-ci20x11")
- except RuntimeError as e:
- logging.critical(e)
- return None
+ return CreatorCI20X11Configuration()
diff --git a/src/starboard/contrib/creator/ci20x11/main.cc b/src/starboard/contrib/creator/ci20x11/main.cc
index 7086895..87df150 100644
--- a/src/starboard/contrib/creator/ci20x11/main.cc
+++ b/src/starboard/contrib/creator/ci20x11/main.cc
@@ -15,6 +15,7 @@
#include "starboard/configuration.h"
#include "starboard/shared/signal/crash_signals.h"
#include "starboard/shared/signal/suspend_signals.h"
+#include "starboard/shared/starboard/link_receiver.h"
#include "starboard/shared/x11/application_x11.h"
extern "C" SB_EXPORT_PLATFORM int main(int argc, char** argv) {
@@ -22,7 +23,11 @@
starboard::shared::signal::InstallCrashSignalHandlers();
starboard::shared::signal::InstallSuspendSignalHandlers();
starboard::shared::x11::ApplicationX11 application;
- int result = application.Run(argc, argv);
+ int result = 0;
+ {
+ starboard::shared::starboard::LinkReceiver receiver(&application);
+ result = application.Run(argc, argv);
+ }
starboard::shared::signal::UninstallSuspendSignalHandlers();
starboard::shared::signal::UninstallCrashSignalHandlers();
return result;
diff --git a/src/starboard/contrib/creator/ci20x11/starboard_platform.gyp b/src/starboard/contrib/creator/ci20x11/starboard_platform.gyp
index 3ae1a09..6d3b880 100644
--- a/src/starboard/contrib/creator/ci20x11/starboard_platform.gyp
+++ b/src/starboard/contrib/creator/ci20x11/starboard_platform.gyp
@@ -12,348 +12,28 @@
# See the License for the specific language governing permissions and
# limitations under the License.
{
+ 'includes': [
+ 'starboard_platform.gypi'
+ ],
'targets': [
{
- 'target_name': 'starboard_base_symbolize',
- 'type': 'static_library',
- 'sources': [
- '<(DEPTH)/base/third_party/symbolize/demangle.cc',
- '<(DEPTH)/base/third_party/symbolize/symbolize.cc',
- ],
- },
- {
'target_name': 'starboard_platform',
'type': 'static_library',
'sources': [
- '<(DEPTH)/starboard/contrib/creator/ci20x11/atomic_public.h',
- '<(DEPTH)/starboard/contrib/creator/ci20x11/configuration_public.h',
- '<(DEPTH)/starboard/contrib/creator/ci20x11/main.cc',
- '<(DEPTH)/starboard/contrib/creator/ci20x11/system_get_property.cc',
- '<(DEPTH)/starboard/contrib/creator/shared/player_components_impl.cc',
- '<(DEPTH)/starboard/linux/shared/atomic_public.h',
- '<(DEPTH)/starboard/linux/shared/decode_target_internal.h',
- '<(DEPTH)/starboard/linux/shared/decode_target_internal.cc',
- '<(DEPTH)/starboard/linux/shared/system_get_connection_type.cc',
- '<(DEPTH)/starboard/linux/shared/system_get_device_type.cc',
- '<(DEPTH)/starboard/linux/shared/system_get_path.cc',
- '<(DEPTH)/starboard/linux/shared/system_has_capability.cc',
- '<(DEPTH)/starboard/shared/alsa/alsa_audio_sink_type.cc',
- '<(DEPTH)/starboard/shared/alsa/alsa_audio_sink_type.h',
- '<(DEPTH)/starboard/shared/alsa/alsa_util.cc',
- '<(DEPTH)/starboard/shared/alsa/alsa_util.h',
- '<(DEPTH)/starboard/shared/alsa/audio_sink_get_max_channels.cc',
- '<(DEPTH)/starboard/shared/alsa/audio_sink_get_nearest_supported_sample_frequency.cc',
- '<(DEPTH)/starboard/shared/alsa/audio_sink_is_audio_frame_storage_type_supported.cc',
- '<(DEPTH)/starboard/shared/alsa/audio_sink_is_audio_sample_type_supported.cc',
- '<(DEPTH)/starboard/shared/dlmalloc/memory_allocate_aligned_unchecked.cc',
- '<(DEPTH)/starboard/shared/dlmalloc/memory_allocate_unchecked.cc',
- '<(DEPTH)/starboard/shared/dlmalloc/memory_free.cc',
- '<(DEPTH)/starboard/shared/dlmalloc/memory_free_aligned.cc',
- '<(DEPTH)/starboard/shared/dlmalloc/memory_map.cc',
- '<(DEPTH)/starboard/shared/dlmalloc/memory_reallocate_unchecked.cc',
- '<(DEPTH)/starboard/shared/dlmalloc/memory_unmap.cc',
- '<(DEPTH)/starboard/shared/ffmpeg/ffmpeg_audio_decoder.cc',
- '<(DEPTH)/starboard/shared/ffmpeg/ffmpeg_audio_decoder.h',
- '<(DEPTH)/starboard/shared/ffmpeg/ffmpeg_audio_resampler.cc',
- '<(DEPTH)/starboard/shared/ffmpeg/ffmpeg_audio_resampler.h',
- '<(DEPTH)/starboard/shared/ffmpeg/ffmpeg_common.cc',
- '<(DEPTH)/starboard/shared/ffmpeg/ffmpeg_common.h',
- '<(DEPTH)/starboard/shared/ffmpeg/ffmpeg_video_decoder.cc',
- '<(DEPTH)/starboard/shared/ffmpeg/ffmpeg_video_decoder.h',
- '<(DEPTH)/starboard/shared/gcc/atomic_gcc_public.h',
- '<(DEPTH)/starboard/shared/iso/character_is_alphanumeric.cc',
- '<(DEPTH)/starboard/shared/iso/character_is_digit.cc',
- '<(DEPTH)/starboard/shared/iso/character_is_hex_digit.cc',
- '<(DEPTH)/starboard/shared/iso/character_is_space.cc',
- '<(DEPTH)/starboard/shared/iso/character_is_upper.cc',
- '<(DEPTH)/starboard/shared/iso/character_to_lower.cc',
- '<(DEPTH)/starboard/shared/iso/character_to_upper.cc',
- '<(DEPTH)/starboard/shared/iso/directory_close.cc',
- '<(DEPTH)/starboard/shared/iso/directory_get_next.cc',
- '<(DEPTH)/starboard/shared/iso/directory_open.cc',
- '<(DEPTH)/starboard/shared/iso/double_absolute.cc',
- '<(DEPTH)/starboard/shared/iso/double_exponent.cc',
- '<(DEPTH)/starboard/shared/iso/double_floor.cc',
- '<(DEPTH)/starboard/shared/iso/double_is_finite.cc',
- '<(DEPTH)/starboard/shared/iso/double_is_nan.cc',
- '<(DEPTH)/starboard/shared/iso/memory_compare.cc',
- '<(DEPTH)/starboard/shared/iso/memory_copy.cc',
- '<(DEPTH)/starboard/shared/iso/memory_find_byte.cc',
- '<(DEPTH)/starboard/shared/iso/memory_move.cc',
- '<(DEPTH)/starboard/shared/iso/memory_set.cc',
- '<(DEPTH)/starboard/shared/iso/string_compare.cc',
- '<(DEPTH)/starboard/shared/iso/string_compare_all.cc',
- '<(DEPTH)/starboard/shared/iso/string_find_character.cc',
- '<(DEPTH)/starboard/shared/iso/string_find_last_character.cc',
- '<(DEPTH)/starboard/shared/iso/string_find_string.cc',
- '<(DEPTH)/starboard/shared/iso/string_get_length.cc',
- '<(DEPTH)/starboard/shared/iso/string_get_length_wide.cc',
- '<(DEPTH)/starboard/shared/iso/string_parse_double.cc',
- '<(DEPTH)/starboard/shared/iso/string_parse_signed_integer.cc',
- '<(DEPTH)/starboard/shared/iso/string_parse_uint64.cc',
- '<(DEPTH)/starboard/shared/iso/string_parse_unsigned_integer.cc',
- '<(DEPTH)/starboard/shared/iso/string_scan.cc',
- '<(DEPTH)/starboard/shared/iso/system_binary_search.cc',
- '<(DEPTH)/starboard/shared/iso/system_sort.cc',
- '<(DEPTH)/starboard/shared/libevent/socket_waiter_add.cc',
- '<(DEPTH)/starboard/shared/libevent/socket_waiter_create.cc',
- '<(DEPTH)/starboard/shared/libevent/socket_waiter_destroy.cc',
- '<(DEPTH)/starboard/shared/libevent/socket_waiter_internal.cc',
- '<(DEPTH)/starboard/shared/libevent/socket_waiter_remove.cc',
- '<(DEPTH)/starboard/shared/libevent/socket_waiter_wait.cc',
- '<(DEPTH)/starboard/shared/libevent/socket_waiter_wait_timed.cc',
- '<(DEPTH)/starboard/shared/libevent/socket_waiter_wake_up.cc',
- '<(DEPTH)/starboard/shared/linux/byte_swap.cc',
- '<(DEPTH)/starboard/shared/linux/get_home_directory.cc',
- '<(DEPTH)/starboard/shared/linux/dev_input/dev_input.cc',
- '<(DEPTH)/starboard/shared/linux/memory_get_stack_bounds.cc',
- '<(DEPTH)/starboard/shared/linux/page_internal.cc',
- '<(DEPTH)/starboard/shared/linux/socket_get_interface_address.cc',
- '<(DEPTH)/starboard/shared/linux/system_get_random_data.cc',
- '<(DEPTH)/starboard/shared/linux/system_get_stack.cc',
- '<(DEPTH)/starboard/shared/linux/system_get_total_cpu_memory.cc',
- '<(DEPTH)/starboard/shared/linux/system_get_used_cpu_memory.cc',
- '<(DEPTH)/starboard/shared/linux/system_is_debugger_attached.cc',
- '<(DEPTH)/starboard/shared/linux/system_symbolize.cc',
- '<(DEPTH)/starboard/shared/linux/thread_get_id.cc',
- '<(DEPTH)/starboard/shared/linux/thread_get_name.cc',
- '<(DEPTH)/starboard/shared/linux/thread_set_name.cc',
- '<(DEPTH)/starboard/shared/nouser/user_get_current.cc',
- '<(DEPTH)/starboard/shared/nouser/user_get_property.cc',
- '<(DEPTH)/starboard/shared/nouser/user_get_signed_in.cc',
- '<(DEPTH)/starboard/shared/nouser/user_internal.cc',
- '<(DEPTH)/starboard/shared/posix/directory_create.cc',
- '<(DEPTH)/starboard/shared/posix/file_can_open.cc',
- '<(DEPTH)/starboard/shared/posix/file_close.cc',
- '<(DEPTH)/starboard/shared/posix/file_delete.cc',
- '<(DEPTH)/starboard/shared/posix/file_exists.cc',
- '<(DEPTH)/starboard/shared/posix/file_flush.cc',
- '<(DEPTH)/starboard/shared/posix/file_get_info.cc',
- '<(DEPTH)/starboard/shared/posix/file_get_path_info.cc',
- '<(DEPTH)/starboard/shared/posix/file_open.cc',
- '<(DEPTH)/starboard/shared/posix/file_read.cc',
- '<(DEPTH)/starboard/shared/posix/file_seek.cc',
- '<(DEPTH)/starboard/shared/posix/file_truncate.cc',
- '<(DEPTH)/starboard/shared/posix/file_write.cc',
- '<(DEPTH)/starboard/shared/posix/log.cc',
- '<(DEPTH)/starboard/shared/posix/log_flush.cc',
- '<(DEPTH)/starboard/shared/posix/log_format.cc',
- '<(DEPTH)/starboard/shared/posix/log_is_tty.cc',
- '<(DEPTH)/starboard/shared/posix/log_raw.cc',
- '<(DEPTH)/starboard/shared/posix/memory_flush.cc',
- '<(DEPTH)/starboard/shared/posix/set_non_blocking_internal.cc',
- '<(DEPTH)/starboard/shared/posix/socket_accept.cc',
- '<(DEPTH)/starboard/shared/posix/socket_bind.cc',
- '<(DEPTH)/starboard/shared/posix/socket_clear_last_error.cc',
- '<(DEPTH)/starboard/shared/posix/socket_connect.cc',
- '<(DEPTH)/starboard/shared/posix/socket_create.cc',
- '<(DEPTH)/starboard/shared/posix/socket_destroy.cc',
- '<(DEPTH)/starboard/shared/posix/socket_free_resolution.cc',
- '<(DEPTH)/starboard/shared/posix/socket_get_last_error.cc',
- '<(DEPTH)/starboard/shared/posix/socket_get_local_address.cc',
- '<(DEPTH)/starboard/shared/posix/socket_internal.cc',
- '<(DEPTH)/starboard/shared/posix/socket_is_connected.cc',
- '<(DEPTH)/starboard/shared/posix/socket_is_connected_and_idle.cc',
- '<(DEPTH)/starboard/shared/posix/socket_join_multicast_group.cc',
- '<(DEPTH)/starboard/shared/posix/socket_listen.cc',
- '<(DEPTH)/starboard/shared/posix/socket_receive_from.cc',
- '<(DEPTH)/starboard/shared/posix/socket_resolve.cc',
- '<(DEPTH)/starboard/shared/posix/socket_send_to.cc',
- '<(DEPTH)/starboard/shared/posix/socket_set_broadcast.cc',
- '<(DEPTH)/starboard/shared/posix/socket_set_receive_buffer_size.cc',
- '<(DEPTH)/starboard/shared/posix/socket_set_reuse_address.cc',
- '<(DEPTH)/starboard/shared/posix/socket_set_send_buffer_size.cc',
- '<(DEPTH)/starboard/shared/posix/socket_set_tcp_keep_alive.cc',
- '<(DEPTH)/starboard/shared/posix/socket_set_tcp_no_delay.cc',
- '<(DEPTH)/starboard/shared/posix/socket_set_tcp_window_scaling.cc',
- '<(DEPTH)/starboard/shared/posix/string_compare_no_case.cc',
- '<(DEPTH)/starboard/shared/posix/string_compare_no_case_n.cc',
- '<(DEPTH)/starboard/shared/posix/string_compare_wide.cc',
- '<(DEPTH)/starboard/shared/posix/string_format.cc',
- '<(DEPTH)/starboard/shared/posix/string_format_wide.cc',
- '<(DEPTH)/starboard/shared/posix/system_break_into_debugger.cc',
- '<(DEPTH)/starboard/shared/posix/system_clear_last_error.cc',
- '<(DEPTH)/starboard/shared/posix/system_get_error_string.cc',
- '<(DEPTH)/starboard/shared/posix/system_get_last_error.cc',
- '<(DEPTH)/starboard/shared/posix/system_get_locale_id.cc',
- '<(DEPTH)/starboard/shared/posix/system_get_number_of_processors.cc',
- '<(DEPTH)/starboard/shared/posix/thread_sleep.cc',
- '<(DEPTH)/starboard/shared/posix/time_get_monotonic_now.cc',
- '<(DEPTH)/starboard/shared/posix/time_get_monotonic_thread_now.cc',
- '<(DEPTH)/starboard/shared/posix/time_get_now.cc',
- '<(DEPTH)/starboard/shared/posix/time_zone_get_current.cc',
- '<(DEPTH)/starboard/shared/posix/time_zone_get_dst_name.cc',
- '<(DEPTH)/starboard/shared/posix/time_zone_get_name.cc',
- '<(DEPTH)/starboard/shared/pthread/condition_variable_broadcast.cc',
- '<(DEPTH)/starboard/shared/pthread/condition_variable_create.cc',
- '<(DEPTH)/starboard/shared/pthread/condition_variable_destroy.cc',
- '<(DEPTH)/starboard/shared/pthread/condition_variable_signal.cc',
- '<(DEPTH)/starboard/shared/pthread/condition_variable_wait.cc',
- '<(DEPTH)/starboard/shared/pthread/condition_variable_wait_timed.cc',
- '<(DEPTH)/starboard/shared/pthread/mutex_acquire.cc',
- '<(DEPTH)/starboard/shared/pthread/mutex_acquire_try.cc',
- '<(DEPTH)/starboard/shared/pthread/mutex_create.cc',
- '<(DEPTH)/starboard/shared/pthread/mutex_destroy.cc',
- '<(DEPTH)/starboard/shared/pthread/mutex_release.cc',
- '<(DEPTH)/starboard/shared/pthread/once.cc',
- '<(DEPTH)/starboard/shared/pthread/thread_create.cc',
- '<(DEPTH)/starboard/shared/pthread/thread_create_local_key.cc',
- '<(DEPTH)/starboard/shared/pthread/thread_create_priority.h',
- '<(DEPTH)/starboard/shared/pthread/thread_destroy_local_key.cc',
- '<(DEPTH)/starboard/shared/pthread/thread_detach.cc',
- '<(DEPTH)/starboard/shared/pthread/thread_get_current.cc',
- '<(DEPTH)/starboard/shared/pthread/thread_get_local_value.cc',
- '<(DEPTH)/starboard/shared/pthread/thread_is_equal.cc',
- '<(DEPTH)/starboard/shared/pthread/thread_join.cc',
- '<(DEPTH)/starboard/shared/pthread/thread_set_local_value.cc',
- '<(DEPTH)/starboard/shared/pthread/thread_yield.cc',
- '<(DEPTH)/starboard/shared/signal/crash_signals.h',
- '<(DEPTH)/starboard/shared/signal/crash_signals_sigaction.cc',
- '<(DEPTH)/starboard/shared/signal/suspend_signals.cc',
- '<(DEPTH)/starboard/shared/signal/suspend_signals.h',
- '<(DEPTH)/starboard/shared/starboard/application.cc',
- '<(DEPTH)/starboard/shared/starboard/command_line.cc',
- '<(DEPTH)/starboard/shared/starboard/command_line.h',
- '<(DEPTH)/starboard/shared/starboard/audio_sink/audio_sink_create.cc',
- '<(DEPTH)/starboard/shared/starboard/audio_sink/audio_sink_destroy.cc',
- '<(DEPTH)/starboard/shared/starboard/audio_sink/audio_sink_internal.cc',
- '<(DEPTH)/starboard/shared/starboard/audio_sink/audio_sink_internal.h',
- '<(DEPTH)/starboard/shared/starboard/audio_sink/audio_sink_is_valid.cc',
- '<(DEPTH)/starboard/shared/starboard/audio_sink/stub_audio_sink_type.cc',
- '<(DEPTH)/starboard/shared/starboard/audio_sink/stub_audio_sink_type.h',
- '<(DEPTH)/starboard/shared/starboard/directory_can_open.cc',
- '<(DEPTH)/starboard/shared/starboard/event_cancel.cc',
- '<(DEPTH)/starboard/shared/starboard/event_schedule.cc',
- '<(DEPTH)/starboard/shared/starboard/file_mode_string_to_flags.cc',
- '<(DEPTH)/starboard/shared/starboard/file_storage/storage_close_record.cc',
- '<(DEPTH)/starboard/shared/starboard/file_storage/storage_delete_record.cc',
- '<(DEPTH)/starboard/shared/starboard/file_storage/storage_get_record_size.cc',
- '<(DEPTH)/starboard/shared/starboard/file_storage/storage_open_record.cc',
- '<(DEPTH)/starboard/shared/starboard/file_storage/storage_read_record.cc',
- '<(DEPTH)/starboard/shared/starboard/file_storage/storage_write_record.cc',
- '<(DEPTH)/starboard/shared/starboard/log_message.cc',
- '<(DEPTH)/starboard/shared/starboard/log_raw_dump_stack.cc',
- '<(DEPTH)/starboard/shared/starboard/log_raw_format.cc',
- '<(DEPTH)/starboard/shared/starboard/media/codec_util.cc',
- '<(DEPTH)/starboard/shared/starboard/media/codec_util.h',
- '<(DEPTH)/starboard/shared/starboard/media/media_can_play_mime_and_key_system.cc',
- '<(DEPTH)/starboard/shared/starboard/media/media_get_audio_configuration_stereo_only.cc',
- '<(DEPTH)/starboard/shared/starboard/media/media_get_audio_output_count_stereo_only.cc',
- '<(DEPTH)/starboard/shared/starboard/media/media_is_audio_supported_aac_only.cc',
- '<(DEPTH)/starboard/shared/starboard/media/media_is_output_protected.cc',
- '<(DEPTH)/starboard/shared/starboard/media/media_is_video_supported_h264_1080p_sfr_only.cc',
- '<(DEPTH)/starboard/shared/starboard/media/media_set_output_protection.cc',
- '<(DEPTH)/starboard/shared/starboard/media/media_util.cc',
- '<(DEPTH)/starboard/shared/starboard/media/media_util.h',
- '<(DEPTH)/starboard/shared/starboard/media/mime_type.cc',
- '<(DEPTH)/starboard/shared/starboard/media/mime_type.h',
- '<(DEPTH)/starboard/shared/starboard/media/codec_util.cc',
- '<(DEPTH)/starboard/shared/starboard/media/codec_util.h',
- '<(DEPTH)/starboard/shared/starboard/media/media_can_play_mime_and_key_system.cc',
- '<(DEPTH)/starboard/shared/starboard/media/media_is_output_protected.cc',
- '<(DEPTH)/starboard/shared/starboard/media/media_set_output_protection.cc',
- '<(DEPTH)/starboard/shared/starboard/media/mime_type.cc',
- '<(DEPTH)/starboard/shared/starboard/media/mime_type.h',
- '<(DEPTH)/starboard/shared/starboard/new.cc',
- '<(DEPTH)/starboard/shared/starboard/player/decoded_audio_internal.cc',
- '<(DEPTH)/starboard/shared/starboard/player/decoded_audio_internal.h',
- '<(DEPTH)/starboard/shared/starboard/player/filter/audio_decoder_internal.h',
- '<(DEPTH)/starboard/shared/starboard/player/filter/audio_frame_tracker.cc',
- '<(DEPTH)/starboard/shared/starboard/player/filter/audio_frame_tracker.h',
- '<(DEPTH)/starboard/shared/starboard/player/filter/audio_time_stretcher.h',
- '<(DEPTH)/starboard/shared/starboard/player/filter/audio_time_stretcher.cc',
- '<(DEPTH)/starboard/shared/starboard/player/filter/audio_renderer_impl_internal.cc',
- '<(DEPTH)/starboard/shared/starboard/player/filter/audio_renderer_impl_internal.h',
- '<(DEPTH)/starboard/shared/starboard/player/filter/audio_renderer_internal.h',
- '<(DEPTH)/starboard/shared/starboard/player/filter/audio_renderer_sink.h',
- '<(DEPTH)/starboard/shared/starboard/player/filter/audio_renderer_sink_impl.cc',
- '<(DEPTH)/starboard/shared/starboard/player/filter/audio_renderer_sink_impl.h',
- '<(DEPTH)/starboard/shared/starboard/player/filter/decoded_audio_queue.h',
- '<(DEPTH)/starboard/shared/starboard/player/filter/decoded_audio_queue.cc',
- '<(DEPTH)/starboard/shared/starboard/player/filter/filter_based_player_worker_handler.cc',
- '<(DEPTH)/starboard/shared/starboard/player/filter/filter_based_player_worker_handler.h',
- '<(DEPTH)/starboard/shared/starboard/player/filter/player_components.h',
- '<(DEPTH)/starboard/shared/starboard/player/filter/video_decoder_internal.h',
- '<(DEPTH)/starboard/shared/starboard/player/filter/video_renderer_impl_internal.cc',
- '<(DEPTH)/starboard/shared/starboard/player/filter/video_renderer_impl_internal.h',
- '<(DEPTH)/starboard/shared/starboard/player/filter/video_renderer_internal.h',
- '<(DEPTH)/starboard/shared/starboard/player/filter/wsola_internal.h',
- '<(DEPTH)/starboard/shared/starboard/player/filter/wsola_internal.cc',
- '<(DEPTH)/starboard/shared/starboard/player/input_buffer_internal.cc',
- '<(DEPTH)/starboard/shared/starboard/player/input_buffer_internal.h',
- '<(DEPTH)/starboard/shared/starboard/player/job_queue.cc',
- '<(DEPTH)/starboard/shared/starboard/player/job_queue.h',
- '<(DEPTH)/starboard/shared/starboard/player/player_create.cc',
- '<(DEPTH)/starboard/shared/starboard/player/player_destroy.cc',
- '<(DEPTH)/starboard/shared/starboard/player/player_get_current_frame.cc',
- '<(DEPTH)/starboard/shared/starboard/player/player_get_info.cc',
- '<(DEPTH)/starboard/shared/starboard/player/player_output_mode_supported.cc',
- '<(DEPTH)/starboard/shared/starboard/player/player_internal.cc',
- '<(DEPTH)/starboard/shared/starboard/player/player_internal.h',
- '<(DEPTH)/starboard/shared/starboard/player/player_seek.cc',
- '<(DEPTH)/starboard/shared/starboard/player/player_set_bounds.cc',
- '<(DEPTH)/starboard/shared/starboard/player/player_set_playback_rate.cc',
- '<(DEPTH)/starboard/shared/starboard/player/player_set_volume.cc',
- '<(DEPTH)/starboard/shared/starboard/player/player_worker.cc',
- '<(DEPTH)/starboard/shared/starboard/player/player_worker.h',
- '<(DEPTH)/starboard/shared/starboard/player/player_write_end_of_stream.cc',
- '<(DEPTH)/starboard/shared/starboard/player/player_write_sample.cc',
- '<(DEPTH)/starboard/shared/starboard/player/video_frame_internal.cc',
- '<(DEPTH)/starboard/shared/starboard/player/video_frame_internal.h',
- '<(DEPTH)/starboard/shared/starboard/queue_application.cc',
- '<(DEPTH)/starboard/shared/starboard/string_concat.cc',
- '<(DEPTH)/starboard/shared/starboard/string_concat_wide.cc',
- '<(DEPTH)/starboard/shared/starboard/string_copy.cc',
- '<(DEPTH)/starboard/shared/starboard/string_copy_wide.cc',
- '<(DEPTH)/starboard/shared/starboard/string_duplicate.cc',
- '<(DEPTH)/starboard/shared/starboard/system_get_random_uint64.cc',
- '<(DEPTH)/starboard/shared/starboard/system_request_pause.cc',
- '<(DEPTH)/starboard/shared/starboard/system_request_stop.cc',
- '<(DEPTH)/starboard/shared/starboard/system_request_suspend.cc',
- '<(DEPTH)/starboard/shared/starboard/system_request_unpause.cc',
- '<(DEPTH)/starboard/shared/starboard/window_set_default_options.cc',
- '<(DEPTH)/starboard/shared/stub/accessibility_get_display_settings.cc',
- '<(DEPTH)/starboard/shared/stub/accessibility_get_text_to_speech_settings.cc',
- '<(DEPTH)/starboard/shared/stub/cryptography_create_transformer.cc',
- '<(DEPTH)/starboard/shared/stub/cryptography_destroy_transformer.cc',
- '<(DEPTH)/starboard/shared/stub/cryptography_get_tag.cc',
- '<(DEPTH)/starboard/shared/stub/cryptography_set_authenticated_data.cc',
- '<(DEPTH)/starboard/shared/stub/cryptography_set_initialization_vector.cc',
- '<(DEPTH)/starboard/shared/stub/cryptography_transform.cc',
- '<(DEPTH)/starboard/shared/stub/decode_target_get_info.cc',
- '<(DEPTH)/starboard/shared/stub/decode_target_release.cc',
- '<(DEPTH)/starboard/shared/stub/drm_close_session.cc',
- '<(DEPTH)/starboard/shared/stub/drm_create_system.cc',
- '<(DEPTH)/starboard/shared/stub/drm_destroy_system.cc',
- '<(DEPTH)/starboard/shared/stub/drm_generate_session_update_request.cc',
- '<(DEPTH)/starboard/shared/stub/drm_system_internal.h',
- '<(DEPTH)/starboard/shared/stub/drm_update_session.cc',
- '<(DEPTH)/starboard/shared/stub/image_decode.cc',
- '<(DEPTH)/starboard/shared/stub/image_is_decode_supported.cc',
- '<(DEPTH)/starboard/shared/stub/media_is_supported.cc',
- '<(DEPTH)/starboard/shared/stub/media_is_transfer_characteristics_supported.cc',
- '<(DEPTH)/starboard/shared/stub/system_clear_platform_error.cc',
- '<(DEPTH)/starboard/shared/stub/system_get_total_gpu_memory.cc',
- '<(DEPTH)/starboard/shared/stub/system_get_used_gpu_memory.cc',
- '<(DEPTH)/starboard/shared/stub/system_hide_splash_screen.cc',
- '<(DEPTH)/starboard/shared/stub/system_raise_platform_error.cc',
- '<(DEPTH)/starboard/shared/x11/application_x11.cc',
- '<(DEPTH)/starboard/shared/x11/window_create.cc',
- '<(DEPTH)/starboard/shared/x11/window_destroy.cc',
- '<(DEPTH)/starboard/shared/x11/window_get_platform_handle.cc',
- '<(DEPTH)/starboard/shared/x11/window_get_size.cc',
- '<(DEPTH)/starboard/shared/x11/window_internal.cc',
+ '<@(starboard_platform_sources)',
+ '<(DEPTH)/starboard/shared/starboard/player/video_dmp_common.cc',
+ '<(DEPTH)/starboard/shared/starboard/player/video_dmp_common.h',
+ '<(DEPTH)/starboard/shared/starboard/player/video_dmp_writer.cc',
+ '<(DEPTH)/starboard/shared/starboard/player/video_dmp_writer.h',
],
'defines': [
+ 'SB_PLAYER_ENABLE_VIDEO_DUMPER',
# This must be defined when building Starboard, and must not when
# building Starboard client code.
'STARBOARD_IMPLEMENTATION',
],
'dependencies': [
- '<(DEPTH)/starboard/common/common.gyp:common',
- '<(DEPTH)/third_party/dlmalloc/dlmalloc.gyp:dlmalloc',
- '<(DEPTH)/third_party/libevent/libevent.gyp:libevent',
- 'starboard_base_symbolize',
+ '<@(starboard_platform_dependencies)',
],
},
],
diff --git a/src/starboard/contrib/creator/ci20x11/starboard_platform.gypi b/src/starboard/contrib/creator/ci20x11/starboard_platform.gypi
new file mode 100644
index 0000000..a58b89e
--- /dev/null
+++ b/src/starboard/contrib/creator/ci20x11/starboard_platform.gypi
@@ -0,0 +1,32 @@
+# Copyright 2016 Google Inc. All Rights Reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+{
+ 'includes': ['../shared/starboard_platform.gypi'],
+
+ 'variables': {
+ 'starboard_platform_sources': [
+ '<(DEPTH)/starboard/contrib/creator/ci20x11/atomic_public.h',
+ '<(DEPTH)/starboard/contrib/creator/ci20x11/configuration_public.h',
+ '<(DEPTH)/starboard/contrib/creator/ci20x11/main.cc',
+ '<(DEPTH)/starboard/contrib/creator/ci20x11/system_get_property.cc',
+ '<(DEPTH)/starboard/shared/starboard/link_receiver.cc',
+ '<(DEPTH)/starboard/shared/x11/application_x11.cc',
+ '<(DEPTH)/starboard/shared/x11/window_create.cc',
+ '<(DEPTH)/starboard/shared/x11/window_destroy.cc',
+ '<(DEPTH)/starboard/shared/x11/window_get_platform_handle.cc',
+ '<(DEPTH)/starboard/shared/x11/window_get_size.cc',
+ '<(DEPTH)/starboard/shared/x11/window_internal.cc',
+ ],
+ },
+}
diff --git a/src/starboard/contrib/creator/ci20x11/system_get_property.cc b/src/starboard/contrib/creator/ci20x11/system_get_property.cc
index 35aba8b..2e88d56 100644
--- a/src/starboard/contrib/creator/ci20x11/system_get_property.cc
+++ b/src/starboard/contrib/creator/ci20x11/system_get_property.cc
@@ -14,6 +14,11 @@
#include "starboard/system.h"
+#include <netdb.h>
+#include <linux/if.h> // NOLINT(build/include_alpha)
+#include <sys/ioctl.h>
+#include <sys/socket.h>
+
#include "starboard/log.h"
#include "starboard/string.h"
@@ -31,6 +36,48 @@
return true;
}
+bool GetPlatformUuid(char* out_value, int value_length) {
+ struct ifreq interface;
+ struct ifconf config;
+ char buf[1024];
+
+ int fd = socket(AF_INET, SOCK_DGRAM, IPPROTO_IP);
+ if (fd == -1) {
+ return false;
+ }
+ config.ifc_len = sizeof(buf);
+ config.ifc_buf = buf;
+ int result = ioctl(fd, SIOCGIFCONF, &config);
+ if (result == -1) {
+ return false;
+ }
+
+ struct ifreq* cur_interface = config.ifc_req;
+ const struct ifreq* const end = cur_interface +
+ (config.ifc_len / sizeof(struct ifreq));
+
+ for (; cur_interface != end; ++cur_interface) {
+ SbStringCopy(interface.ifr_name,
+ cur_interface->ifr_name,
+ sizeof(cur_interface->ifr_name));
+ if (ioctl(fd, SIOCGIFFLAGS, &interface) == -1) {
+ continue;
+ }
+ if (interface.ifr_flags & IFF_LOOPBACK) {
+ continue;
+ }
+ if (ioctl(fd, SIOCGIFHWADDR, &interface) == -1) {
+ continue;
+ }
+ SbStringFormatF(out_value, value_length, "%x:%x:%x:%x:%x:%x",
+ interface.ifr_addr.sa_data[0], interface.ifr_addr.sa_data[1],
+ interface.ifr_addr.sa_data[2], interface.ifr_addr.sa_data[3],
+ interface.ifr_addr.sa_data[4], interface.ifr_addr.sa_data[5]);
+ return true;
+ }
+ return false;
+}
+
} // namespace
bool SbSystemGetProperty(SbSystemPropertyId property_id,
@@ -57,8 +104,7 @@
return CopyStringAndTestIfSuccess(out_value, value_length, kPlatformName);
case kSbSystemPropertyPlatformUuid:
- SB_NOTIMPLEMENTED();
- return CopyStringAndTestIfSuccess(out_value, value_length, "N/A");
+ return GetPlatformUuid(out_value, value_length);
default:
SB_DLOG(WARNING) << __FUNCTION__
diff --git a/src/starboard/contrib/creator/shared/compiler_flags.gypi b/src/starboard/contrib/creator/shared/compiler_flags.gypi
new file mode 100644
index 0000000..3cbdf7c
--- /dev/null
+++ b/src/starboard/contrib/creator/shared/compiler_flags.gypi
@@ -0,0 +1,164 @@
+# Copyright 2016 Google Inc. All Rights Reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+# Platform specific compiler flags for Linux on Starboard. Included from
+# gyp_configuration.gypi.
+#
+{
+ 'variables': {
+ 'compiler_flags_host': [
+ '-O2',
+ ],
+ 'linker_flags': [
+ ],
+ 'compiler_flags_debug': [
+ '-frtti',
+ '-O0',
+ ],
+ 'compiler_flags_devel': [
+ '-frtti',
+ '-O2',
+ ],
+ 'compiler_flags_qa': [
+ '-fno-rtti',
+ '-O2',
+ '-gline-tables-only',
+ ],
+ 'compiler_flags_gold': [
+ '-fno-rtti',
+ '-O2',
+ '-gline-tables-only',
+ ],
+ 'conditions': [
+ ['clang==1', {
+ 'linker_flags': [
+ '-fuse-ld=lld',
+ '--target=mipsel-linux-gnu',
+ '--gcc-toolchain=<(sysroot)/..',
+ ],
+ 'common_clang_flags': [
+ '-Werror',
+ '-fcolor-diagnostics',
+ # Default visibility to hidden, to enable dead stripping.
+ '-fvisibility=hidden',
+ # Warn for implicit type conversions that may change a value.
+ '-Wconversion',
+ '-Wno-c++11-compat',
+ # This complains about 'override', which we use heavily.
+ '-Wno-c++11-extensions',
+ # Warns on switches on enums that cover all enum values but
+ # also contain a default: branch. Chrome is full of that.
+ '-Wno-covered-switch-default',
+ # protobuf uses hash_map.
+ '-Wno-deprecated',
+ '-fno-exceptions',
+ # Don't warn about the "struct foo f = {0};" initialization pattern.
+ '-Wno-missing-field-initializers',
+ # Do not warn for implicit sign conversions.
+ '-Wno-sign-conversion',
+ '-fno-strict-aliasing', # See http://crbug.com/32204
+ '-Wno-unnamed-type-template-args',
+ # Triggered by the COMPILE_ASSERT macro.
+ '-Wno-unused-local-typedef',
+ # Do not warn if a function or variable cannot be implicitly
+ # instantiated.
+ '-Wno-undefined-var-template',
+ # Do not warn about an implicit exception spec mismatch.
+ '-Wno-implicit-exception-spec-mismatch',
+ # needed for backtrace()
+ '-fasynchronous-unwind-tables',
+ '-Wno-tautological-constant-out-of-range-compare',
+ '-Wno-undefined-inline',
+ ],
+ }],
+ ['cobalt_fastbuild==0', {
+ 'compiler_flags_debug': [
+ '-g',
+ ],
+ 'compiler_flags_devel': [
+ '-g',
+ ],
+ 'compiler_flags_qa': [
+ '-gline-tables-only',
+ ],
+ 'compiler_flags_gold': [
+ '-gline-tables-only',
+ ],
+ }],
+ ],
+ },
+
+ 'target_defaults': {
+ 'defines': [
+ # By default, <EGL/eglplatform.h> pulls in some X11 headers that have some
+ # nasty macros (|Status|, for example) that conflict with Chromium base.
+ #'MESA_EGL_NO_X11_HEADERS'
+ ],
+ 'target_conditions': [
+ ['clang==1', {
+ 'cflags_c': [
+ '-std=c11',
+ '--target=mipsel-linux-gnu',
+ '-march=mipsel',
+ '-mcpu=mips32r2',
+ '--gcc-toolchain=<(sysroot)/..',
+ ],
+ 'cflags_cc': [
+ '-std=gnu++11',
+ '--target=mipsel-linux-gnu',
+ '-march=mipsel',
+ '-mcpu=mips32r2',
+ ],
+ },{
+ # gcc
+ 'cflags_c': [
+ '-std=c11',
+ '-EL',
+ ],
+ 'cflags_cc': [
+ '-std=gnu++11',
+ '-Wno-literal-suffix',
+ # needed for backtrace()
+ '-fasynchronous-unwind-tables',
+ ],
+ }],
+ ['sb_pedantic_warnings==1', {
+ 'cflags': [
+ '-Wall',
+ '-Wextra',
+ '-Wunreachable-code',
+ '<@(common_clang_flags)',
+ ],
+ },{
+ 'cflags': [
+ '<@(common_clang_flags)',
+ # 'this' pointer cannot be NULL...pointer may be assumed
+ # to always convert to true.
+ '-Wno-undefined-bool-conversion',
+ # Skia doesn't use overrides.
+ '-Wno-inconsistent-missing-override',
+ # Do not warn about unused function params.
+ '-Wno-unused-parameter',
+ # Do not warn for implicit type conversions that may change a value.
+ '-Wno-conversion',
+ # shifting a negative signed value is undefined
+ '-Wno-shift-negative-value',
+ # Width of bit-field exceeds width of its type- value will be truncated
+ '-Wno-bitfield-width',
+ '-Wno-undefined-var-template',
+ ],
+ }],
+ ],
+ }, # end of target_defaults
+}
diff --git a/src/starboard/contrib/creator/shared/gyp_configuration.gypi b/src/starboard/contrib/creator/shared/gyp_configuration.gypi
index 4710bfd..fd1b5cb 100644
--- a/src/starboard/contrib/creator/shared/gyp_configuration.gypi
+++ b/src/starboard/contrib/creator/shared/gyp_configuration.gypi
@@ -17,43 +17,29 @@
'target_arch': 'mips',
'target_os': 'linux',
- 'enable_webdriver': 0,
+ 'cobalt_media_source_2016': 1,
'in_app_dial%': 0,
- 'gl_type%': 'system_gles2',
'rasterizer_type': 'direct-gles',
-
'scratch_surface_cache_size_in_bytes' : 0,
- # This should have a default value in cobalt/base.gypi. See the comment
- # there for acceptable values for this variable.
- 'javascript_engine': 'mozjs-45',
- 'cobalt_enable_jit': 1,
- 'cobalt_media_source_2016': 1,
-
- 'cobalt_font_package': 'expanded',
- # Define platform specific compiler and linker flags.
- # Refer to base.gypi for a list of all available variables.
- 'compiler_flags_host': [
- '-O2',
+ 'platform_libraries': [
+ '-lasound',
+ '-lavcodec',
+ '-lavformat',
+ '-lavresample',
+ '-lavutil',
+ '-lm',
+ '-lpthread',
+ '-lrt',
],
+
'compiler_flags': [
# We'll pretend not to be Linux, but Starboard instead.
'-U__linux__',
'--sysroot=<(sysroot)',
'-EL',
-
- # Suppress some warnings that will be hard to fix.
- '-Wno-unused-local-typedefs',
- '-Wno-unused-result',
- '-Wno-deprecated-declarations',
- '-Wno-missing-field-initializers',
- '-Wno-comment',
- '-Wno-narrowing',
- '-Wno-unknown-pragmas',
- '-Wno-type-limits', # TODO: We should actually look into these.
- # Do not warn about sign compares.
- '-Wno-sign-compare',
],
+
'linker_flags': [
'--sysroot=<(sysroot)',
'-EL',
@@ -71,61 +57,6 @@
'-Wl,--wrap=malloc_stats_fast',
'-Wl,--wrap=__cxa_demangle',
],
- 'compiler_flags_debug': [
- '-O0',
- ],
- 'compiler_flags_cc_debug': [
- '-frtti',
- ],
- 'compiler_flags_devel': [
- '-O2',
- ],
- 'compiler_flags_cc_devel': [
- '-frtti',
- ],
- 'compiler_flags_qa': [
- '-O2',
- ],
- 'compiler_flags_cc_qa': [
- '-fno-rtti',
- ],
- 'compiler_flags_gold': [
- '-O2',
- ],
- 'compiler_flags_cc_gold': [
- '-fno-rtti',
- ],
- 'platform_libraries': [
- '-lasound',
- '-lavcodec',
- '-lavformat',
- '-lavresample',
- '-lavutil',
- '-lm',
- '-lpthread',
- '-lrt',
- ],
- 'conditions': [
- ['cobalt_fastbuild==0', {
- 'compiler_flags_debug': [
- '-g',
- ],
- 'compiler_flags_devel': [
- '-g',
- ],
- 'compiler_flags_qa': [
- ],
- 'compiler_flags_gold': [
- ],
- }],
- ['clang==1', {
- 'linker_flags': [
- '-fuse-ld=lld',
- '--target=mipsel-linux-gnu',
- '--gcc-toolchain=<(sysroot)/..',
- ],
- }],
- ],
},
'target_defaults': {
@@ -136,98 +67,5 @@
# Enable GNU extensions to get prototypes like ffsl.
'_GNU_SOURCE=1',
],
- 'conditions': [
- ['clang==1', {
- 'cflags_c': [
- '-std=c11',
- '--target=mipsel-linux-gnu',
- '-march=mipsel',
- '-mcpu=mips32r2',
- '--gcc-toolchain=<(sysroot)/..',
- ],
- 'cflags_cc': [
- '-std=gnu++11',
- '--target=mipsel-linux-gnu',
- '-march=mipsel',
- '-mcpu=mips32r2',
- '-Werror',
- '-fcolor-diagnostics',
- # Default visibility to hidden, to enable dead stripping.
- '-fvisibility=hidden',
- '-Wno-c++11-compat',
- # This complains about 'override', which we use heavily.
- '-Wno-c++11-extensions',
- # Warns on switches on enums that cover all enum values but
- # also contain a default: branch. Chrome is full of that.
- '-Wno-covered-switch-default',
- # protobuf uses hash_map.
- '-Wno-deprecated',
- '-fno-exceptions',
- # needed for backtrace()
- '-fasynchronous-unwind-tables',
- # Don't warn about the "struct foo f = {0};" initialization pattern.
- '-Wno-missing-field-initializers',
- # Do not warn for implicit sign conversions.
- '-Wno-sign-conversion',
- '-fno-strict-aliasing', # See http://crbug.com/32204
- '-Wno-unnamed-type-template-args',
- # Triggered by the COMPILE_ASSERT macro.
- '-Wno-unused-local-typedef',
- # Do not warn if a function or variable cannot be implicitly
- # instantiated.
- '-Wno-undefined-var-template',
- # Do not warn about an implicit exception spec mismatch.
- '-Wno-implicit-exception-spec-mismatch',
- '-Wno-tautological-constant-out-of-range-compare',
- '-Wno-undefined-inline',
- ],
- },{
- # gcc
- 'cflags_c': [
- '-std=c11',
- '-EL',
- ],
- 'cflags_cc': [
- '-std=gnu++11',
- '-Wno-literal-suffix',
- # needed for backtrace()
- '-fasynchronous-unwind-tables',
- ],
- }],
- ],
- 'target_conditions': [
- ['sb_pedantic_warnings==1', {
- 'cflags': [
- '-Wall',
- '-Wextra',
- '-Wunreachable-code',
- ],
- },{
- 'conditions': [
- ['clang==1', {
- 'cflags': [
- # 'this' pointer cannot be NULL...pointer may be assumed
- # to always convert to true.
- '-Wno-undefined-bool-conversion',
- # Skia doesn't use overrides.
- '-Wno-inconsistent-missing-override',
- # Do not warn about unused function params.
- '-Wno-unused-parameter',
- # Do not warn for implicit type conversions that may change a value.
- '-Wno-conversion',
- # shifting a negative signed value is undefined
- '-Wno-shift-negative-value',
- # Width of bit-field exceeds width of its type- value will be truncated
- '-Wno-bitfield-width',
- '-Wno-undefined-var-template',
- ],
- },{ # gcc
- 'cflags': [
- '-Wno-multichar',
- ],
- }],
- ],
- }],
- ],
}, # end of target_defaults
}
diff --git a/src/starboard/contrib/creator/shared/gyp_configuration.py b/src/starboard/contrib/creator/shared/gyp_configuration.py
index cbee9c8..6bc7db9 100644
--- a/src/starboard/contrib/creator/shared/gyp_configuration.py
+++ b/src/starboard/contrib/creator/shared/gyp_configuration.py
@@ -11,25 +11,24 @@
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
-"""Starboard Creator Ci20 platform configuration for gyp_cobalt."""
+"""Starboard Creator Ci20 platform configuration."""
import logging
-import imp
import os
import sys
-import config.base
-import gyp_utils
-
-import _env # pylint: disable=unused-import
+from starboard.build import clang
+from starboard.build import platform_configuration
+from starboard.tools import build
from starboard.tools.testing import test_filter
-class PlatformConfig(config.starboard.PlatformConfigStarboard):
+class CreatorConfiguration(platform_configuration.PlatformConfiguration):
"""Starboard ci20 platform configuration."""
def __init__(self, platform):
- super(PlatformConfig, self).__init__(platform)
+ super(CreatorConfiguration, self).__init__(platform)
+ self.AppendApplicationConfigurationPath(os.path.dirname(__file__))
def _GetCi20Home(self):
try:
@@ -40,7 +39,7 @@
sys.exit(1)
return ci20_home
- def GetVariables(self, configuration):
+ def GetVariables(self, config_name):
relative_sysroot = os.path.join('sysroot')
sysroot = os.path.join(self.ci20_home, relative_sysroot)
@@ -49,17 +48,30 @@
'ci20 builds require $CI20_HOME/%s to be a valid directory.',
relative_sysroot)
sys.exit(1)
- variables = super(PlatformConfig, self).GetVariables(configuration)
+ variables = super(CreatorConfiguration, self).GetVariables(config_name,
+ use_clang=1)
variables.update({
- 'clang': 1,
'sysroot': sysroot,
})
return variables
+ def GetLauncherPath(self):
+ """Gets the path to the launcher module for this platform."""
+ # Use launcher.py from src/starboard/linux/shared/
+ linux_shared = os.path.join(
+ os.path.dirname(__file__), '..', '..', '..', 'linux', 'shared')
+ return linux_shared
+
+ def GetGeneratorVariables(self, config_name):
+ del config_name
+ generator_variables = {'qtcreator_session_name_prefix': 'cobalt',}
+ return generator_variables
+
def GetEnvironmentVariables(self):
self.ci20_home = self._GetCi20Home()
- self.host_compiler_environment = gyp_utils.GetHostCompilerEnvironment(0)
+ self.host_compiler_environment = build.GetHostCompilerEnvironment(
+ clang.GetClangSpecification(), False)
env_variables = self.host_compiler_environment
env_variables = {
'CC': self.host_compiler_environment['CC_host'],
@@ -73,23 +85,9 @@
return env_variables
- def GetLauncher(self):
- """Gets the module used to launch applications on this platform."""
- # Use launcher.py from src/starboard/linux/shared/
- linux_shared = os.path.join(
- os.path.dirname(__file__), '..', '..', 'linux', 'shared')
- module_path = os.path.abspath(os.path.join(
- linux_shared, 'launcher.py'))
- launcher_module = imp.load_source('launcher', module_path)
- return launcher_module
-
def GetTestFilters(self):
- """Gets all tests to be excluded from a unit test run.
-
- Returns:
- A list of initialized TestFilter objects.
- """
- return [
+ filters = super(CreatorConfiguration, self).GetTestFilters()
+ filters.extend([
# test is disabled on x64
test_filter.TestFilter(
'bindings_test', ('GlobalInterfaceBindingsTest.'
@@ -126,9 +124,6 @@
'nplb', 'SbSocketAddressTypes/SbSocketGetInterfaceAddressTest.SunnyDaySourceNotLoopback/1'),
# there are no test cases in this test
test_filter.TestFilter(
- 'starboard_platform_tests', test_filter.FILTER_ALL),
- # there are no test cases in this test
- test_filter.TestFilter(
'nplb_blitter_pixel_tests', test_filter.FILTER_ALL),
# test fails on x64 also
test_filter.TestFilter(
@@ -136,5 +131,5 @@
# we don't have proper procedure for running this test
test_filter.TestFilter(
'web_platform_tests', test_filter.FILTER_ALL),
- ]
-
+ ])
+ return filters
diff --git a/src/starboard/contrib/creator/shared/player_components_impl.cc b/src/starboard/contrib/creator/shared/player_components_impl.cc
index 5b3410b..51c9de1 100644
--- a/src/starboard/contrib/creator/shared/player_components_impl.cc
+++ b/src/starboard/contrib/creator/shared/player_components_impl.cc
@@ -14,12 +14,20 @@
#include "starboard/shared/starboard/player/filter/player_components.h"
-#include "starboard/audio_sink.h"
+#include "starboard/common/ref_counted.h"
+#include "starboard/common/scoped_ptr.h"
+#include "starboard/media.h"
#include "starboard/shared/ffmpeg/ffmpeg_audio_decoder.h"
#include "starboard/shared/ffmpeg/ffmpeg_video_decoder.h"
-#include "starboard/shared/starboard/player/filter/audio_renderer_impl_internal.h"
+#include "starboard/shared/starboard/player/filter/audio_decoder_internal.h"
+#include "starboard/shared/starboard/player/filter/audio_renderer_sink.h"
#include "starboard/shared/starboard/player/filter/audio_renderer_sink_impl.h"
-#include "starboard/shared/starboard/player/filter/video_renderer_impl_internal.h"
+#include "starboard/shared/starboard/player/filter/punchout_video_renderer_sink.h"
+#include "starboard/shared/starboard/player/filter/video_decoder_internal.h"
+#include "starboard/shared/starboard/player/filter/video_render_algorithm.h"
+#include "starboard/shared/starboard/player/filter/video_render_algorithm_impl.h"
+#include "starboard/shared/starboard/player/filter/video_renderer_sink.h"
+#include "starboard/time.h"
namespace starboard {
namespace shared {
@@ -27,48 +35,62 @@
namespace player {
namespace filter {
+namespace {
+
+class PlayerComponentsImpl : public PlayerComponents {
+ void CreateAudioComponents(
+ const AudioParameters& audio_parameters,
+ scoped_ptr<AudioDecoder>* audio_decoder,
+ scoped_ptr<AudioRendererSink>* audio_renderer_sink) override {
+ typedef ::starboard::shared::ffmpeg::AudioDecoder AudioDecoderImpl;
+
+ SB_DCHECK(audio_decoder);
+ SB_DCHECK(audio_renderer_sink);
+
+ scoped_ptr<AudioDecoderImpl> audio_decoder_impl(new AudioDecoderImpl(
+ audio_parameters.audio_codec, audio_parameters.audio_header));
+ if (audio_decoder_impl->is_valid()) {
+ audio_decoder->reset(audio_decoder_impl.release());
+ } else {
+ audio_decoder->reset();
+ }
+ audio_renderer_sink->reset(new AudioRendererSinkImpl);
+ }
+
+ void CreateVideoComponents(
+ const VideoParameters& video_parameters,
+ scoped_ptr<VideoDecoder>* video_decoder,
+ scoped_ptr<VideoRenderAlgorithm>* video_render_algorithm,
+ scoped_refptr<VideoRendererSink>* video_renderer_sink) override {
+ typedef ::starboard::shared::ffmpeg::VideoDecoder FfmpegVideoDecoderImpl;
+
+ const SbTime kVideoSinkRenderInterval = 10 * kSbTimeMillisecond;
+
+ SB_DCHECK(video_decoder);
+ SB_DCHECK(video_render_algorithm);
+ SB_DCHECK(video_renderer_sink);
+
+ video_decoder->reset();
+
+ scoped_ptr<FfmpegVideoDecoderImpl> ffmpeg_video_decoder(
+ new FfmpegVideoDecoderImpl(
+ video_parameters.video_codec, video_parameters.output_mode,
+ video_parameters.decode_target_graphics_context_provider));
+ if (ffmpeg_video_decoder->is_valid()) {
+ video_decoder->reset(ffmpeg_video_decoder.release());
+ }
+
+ video_render_algorithm->reset(new VideoRenderAlgorithmImpl);
+ *video_renderer_sink = new PunchoutVideoRendererSink(
+ video_parameters.player, kVideoSinkRenderInterval);
+ }
+};
+
+} // namespace
+
// static
-scoped_ptr<PlayerComponents> PlayerComponents::Create(
- const AudioParameters& audio_parameters,
- const VideoParameters& video_parameters) {
- typedef ::starboard::shared::ffmpeg::AudioDecoder AudioDecoderImpl;
- typedef ::starboard::shared::ffmpeg::VideoDecoder FfmpegVideoDecoderImpl;
-
- // TODO: This is not ideal as we should really handle the creation failure of
- // audio sink inside the audio renderer to give the renderer a chance to
- // resample the decoded audio.
- const int audio_channels = audio_parameters.audio_header.number_of_channels;
- if (audio_channels > SbAudioSinkGetMaxChannels()) {
- return scoped_ptr<PlayerComponents>(NULL);
- }
-
- AudioDecoderImpl* audio_decoder = new AudioDecoderImpl(
- audio_parameters.audio_codec, audio_parameters.audio_header);
- if (!audio_decoder->is_valid()) {
- delete audio_decoder;
- return scoped_ptr<PlayerComponents>(NULL);
- }
-
- scoped_ptr<HostedVideoDecoder> video_decoder;
- FfmpegVideoDecoderImpl* ffmpeg_video_decoder = new FfmpegVideoDecoderImpl(
- video_parameters.video_codec, video_parameters.output_mode,
- video_parameters.decode_target_graphics_context_provider);
- if (!ffmpeg_video_decoder->is_valid()) {
- delete ffmpeg_video_decoder;
- return scoped_ptr<PlayerComponents>(NULL);
- }
- video_decoder.reset(ffmpeg_video_decoder);
-
- AudioRendererImpl* audio_renderer = new AudioRendererImpl(
- make_scoped_ptr<AudioDecoder>(audio_decoder),
- make_scoped_ptr<AudioRendererSink>(new AudioRendererSinkImpl),
- audio_parameters.audio_header);
-
- VideoRendererImpl* video_renderer =
- new VideoRendererImpl(video_decoder.Pass());
-
- return scoped_ptr<PlayerComponents>(
- new PlayerComponents(audio_renderer, video_renderer));
+scoped_ptr<PlayerComponents> PlayerComponents::Create() {
+ return make_scoped_ptr<PlayerComponents>(new PlayerComponentsImpl);
}
} // namespace filter
diff --git a/src/starboard/contrib/creator/shared/starboard_platform.gypi b/src/starboard/contrib/creator/shared/starboard_platform.gypi
new file mode 100644
index 0000000..be6b570
--- /dev/null
+++ b/src/starboard/contrib/creator/shared/starboard_platform.gypi
@@ -0,0 +1,340 @@
+# Copyright 2016 Google Inc. All Rights Reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+{
+ 'variables': {
+ 'starboard_platform_sources': [
+ '<(DEPTH)/starboard/contrib/creator/shared/player_components_impl.cc',
+ '<(DEPTH)/starboard/linux/shared/atomic_public.h',
+ '<(DEPTH)/starboard/linux/shared/decode_target_internal.h',
+ '<(DEPTH)/starboard/linux/shared/decode_target_internal.cc',
+ '<(DEPTH)/starboard/linux/shared/system_get_connection_type.cc',
+ '<(DEPTH)/starboard/linux/shared/system_get_device_type.cc',
+ '<(DEPTH)/starboard/linux/shared/system_get_path.cc',
+ '<(DEPTH)/starboard/linux/shared/system_has_capability.cc',
+ '<(DEPTH)/starboard/shared/alsa/alsa_audio_sink_type.cc',
+ '<(DEPTH)/starboard/shared/alsa/alsa_audio_sink_type.h',
+ '<(DEPTH)/starboard/shared/alsa/alsa_util.cc',
+ '<(DEPTH)/starboard/shared/alsa/alsa_util.h',
+ '<(DEPTH)/starboard/shared/alsa/audio_sink_get_max_channels.cc',
+ '<(DEPTH)/starboard/shared/alsa/audio_sink_get_nearest_supported_sample_frequency.cc',
+ '<(DEPTH)/starboard/shared/alsa/audio_sink_is_audio_frame_storage_type_supported.cc',
+ '<(DEPTH)/starboard/shared/alsa/audio_sink_is_audio_sample_type_supported.cc',
+ '<(DEPTH)/starboard/shared/dlmalloc/memory_allocate_aligned_unchecked.cc',
+ '<(DEPTH)/starboard/shared/dlmalloc/memory_allocate_unchecked.cc',
+ '<(DEPTH)/starboard/shared/dlmalloc/memory_free.cc',
+ '<(DEPTH)/starboard/shared/dlmalloc/memory_free_aligned.cc',
+ '<(DEPTH)/starboard/shared/dlmalloc/memory_map.cc',
+ '<(DEPTH)/starboard/shared/dlmalloc/memory_reallocate_unchecked.cc',
+ '<(DEPTH)/starboard/shared/dlmalloc/memory_unmap.cc',
+ '<(DEPTH)/starboard/shared/ffmpeg/ffmpeg_audio_decoder.cc',
+ '<(DEPTH)/starboard/shared/ffmpeg/ffmpeg_audio_decoder.h',
+ '<(DEPTH)/starboard/shared/ffmpeg/ffmpeg_audio_resampler.cc',
+ '<(DEPTH)/starboard/shared/ffmpeg/ffmpeg_audio_resampler.h',
+ '<(DEPTH)/starboard/shared/ffmpeg/ffmpeg_common.cc',
+ '<(DEPTH)/starboard/shared/ffmpeg/ffmpeg_common.h',
+ '<(DEPTH)/starboard/shared/ffmpeg/ffmpeg_video_decoder.cc',
+ '<(DEPTH)/starboard/shared/ffmpeg/ffmpeg_video_decoder.h',
+ '<(DEPTH)/starboard/shared/gcc/atomic_gcc_public.h',
+ '<(DEPTH)/starboard/shared/iso/character_is_alphanumeric.cc',
+ '<(DEPTH)/starboard/shared/iso/character_is_digit.cc',
+ '<(DEPTH)/starboard/shared/iso/character_is_hex_digit.cc',
+ '<(DEPTH)/starboard/shared/iso/character_is_space.cc',
+ '<(DEPTH)/starboard/shared/iso/character_is_upper.cc',
+ '<(DEPTH)/starboard/shared/iso/character_to_lower.cc',
+ '<(DEPTH)/starboard/shared/iso/character_to_upper.cc',
+ '<(DEPTH)/starboard/shared/iso/directory_close.cc',
+ '<(DEPTH)/starboard/shared/iso/directory_get_next.cc',
+ '<(DEPTH)/starboard/shared/iso/directory_open.cc',
+ '<(DEPTH)/starboard/shared/iso/double_absolute.cc',
+ '<(DEPTH)/starboard/shared/iso/double_exponent.cc',
+ '<(DEPTH)/starboard/shared/iso/double_floor.cc',
+ '<(DEPTH)/starboard/shared/iso/double_is_finite.cc',
+ '<(DEPTH)/starboard/shared/iso/double_is_nan.cc',
+ '<(DEPTH)/starboard/shared/iso/memory_compare.cc',
+ '<(DEPTH)/starboard/shared/iso/memory_copy.cc',
+ '<(DEPTH)/starboard/shared/iso/memory_find_byte.cc',
+ '<(DEPTH)/starboard/shared/iso/memory_move.cc',
+ '<(DEPTH)/starboard/shared/iso/memory_set.cc',
+ '<(DEPTH)/starboard/shared/iso/string_compare.cc',
+ '<(DEPTH)/starboard/shared/iso/string_compare_all.cc',
+ '<(DEPTH)/starboard/shared/iso/string_find_character.cc',
+ '<(DEPTH)/starboard/shared/iso/string_find_last_character.cc',
+ '<(DEPTH)/starboard/shared/iso/string_find_string.cc',
+ '<(DEPTH)/starboard/shared/iso/string_get_length.cc',
+ '<(DEPTH)/starboard/shared/iso/string_get_length_wide.cc',
+ '<(DEPTH)/starboard/shared/iso/string_parse_double.cc',
+ '<(DEPTH)/starboard/shared/iso/string_parse_signed_integer.cc',
+ '<(DEPTH)/starboard/shared/iso/string_parse_uint64.cc',
+ '<(DEPTH)/starboard/shared/iso/string_parse_unsigned_integer.cc',
+ '<(DEPTH)/starboard/shared/iso/string_scan.cc',
+ '<(DEPTH)/starboard/shared/iso/system_binary_search.cc',
+ '<(DEPTH)/starboard/shared/iso/system_sort.cc',
+ '<(DEPTH)/starboard/shared/libevent/socket_waiter_add.cc',
+ '<(DEPTH)/starboard/shared/libevent/socket_waiter_create.cc',
+ '<(DEPTH)/starboard/shared/libevent/socket_waiter_destroy.cc',
+ '<(DEPTH)/starboard/shared/libevent/socket_waiter_internal.cc',
+ '<(DEPTH)/starboard/shared/libevent/socket_waiter_remove.cc',
+ '<(DEPTH)/starboard/shared/libevent/socket_waiter_wait.cc',
+ '<(DEPTH)/starboard/shared/libevent/socket_waiter_wait_timed.cc',
+ '<(DEPTH)/starboard/shared/libevent/socket_waiter_wake_up.cc',
+ '<(DEPTH)/starboard/shared/linux/byte_swap.cc',
+ '<(DEPTH)/starboard/shared/linux/get_home_directory.cc',
+ '<(DEPTH)/starboard/shared/linux/dev_input/dev_input.cc',
+ '<(DEPTH)/starboard/shared/linux/memory_get_stack_bounds.cc',
+ '<(DEPTH)/starboard/shared/linux/page_internal.cc',
+ '<(DEPTH)/starboard/shared/linux/socket_get_interface_address.cc',
+ '<(DEPTH)/starboard/shared/linux/system_get_random_data.cc',
+ '<(DEPTH)/starboard/shared/linux/system_get_stack.cc',
+ '<(DEPTH)/starboard/shared/linux/system_get_total_cpu_memory.cc',
+ '<(DEPTH)/starboard/shared/linux/system_get_used_cpu_memory.cc',
+ '<(DEPTH)/starboard/shared/linux/system_is_debugger_attached.cc',
+ '<(DEPTH)/starboard/shared/linux/system_symbolize.cc',
+ '<(DEPTH)/starboard/shared/linux/thread_get_id.cc',
+ '<(DEPTH)/starboard/shared/linux/thread_get_name.cc',
+ '<(DEPTH)/starboard/shared/linux/thread_set_name.cc',
+ '<(DEPTH)/starboard/shared/nouser/user_get_current.cc',
+ '<(DEPTH)/starboard/shared/nouser/user_get_property.cc',
+ '<(DEPTH)/starboard/shared/nouser/user_get_signed_in.cc',
+ '<(DEPTH)/starboard/shared/nouser/user_internal.cc',
+ '<(DEPTH)/starboard/shared/posix/directory_create.cc',
+ '<(DEPTH)/starboard/shared/posix/file_can_open.cc',
+ '<(DEPTH)/starboard/shared/posix/file_close.cc',
+ '<(DEPTH)/starboard/shared/posix/file_delete.cc',
+ '<(DEPTH)/starboard/shared/posix/file_exists.cc',
+ '<(DEPTH)/starboard/shared/posix/file_flush.cc',
+ '<(DEPTH)/starboard/shared/posix/file_get_info.cc',
+ '<(DEPTH)/starboard/shared/posix/file_get_path_info.cc',
+ '<(DEPTH)/starboard/shared/posix/file_open.cc',
+ '<(DEPTH)/starboard/shared/posix/file_read.cc',
+ '<(DEPTH)/starboard/shared/posix/file_seek.cc',
+ '<(DEPTH)/starboard/shared/posix/file_truncate.cc',
+ '<(DEPTH)/starboard/shared/posix/file_write.cc',
+ '<(DEPTH)/starboard/shared/posix/log.cc',
+ '<(DEPTH)/starboard/shared/posix/log_flush.cc',
+ '<(DEPTH)/starboard/shared/posix/log_format.cc',
+ '<(DEPTH)/starboard/shared/posix/log_is_tty.cc',
+ '<(DEPTH)/starboard/shared/posix/log_raw.cc',
+ '<(DEPTH)/starboard/shared/posix/memory_flush.cc',
+ '<(DEPTH)/starboard/shared/posix/set_non_blocking_internal.cc',
+ '<(DEPTH)/starboard/shared/posix/socket_accept.cc',
+ '<(DEPTH)/starboard/shared/posix/socket_bind.cc',
+ '<(DEPTH)/starboard/shared/posix/socket_clear_last_error.cc',
+ '<(DEPTH)/starboard/shared/posix/socket_connect.cc',
+ '<(DEPTH)/starboard/shared/posix/socket_create.cc',
+ '<(DEPTH)/starboard/shared/posix/socket_destroy.cc',
+ '<(DEPTH)/starboard/shared/posix/socket_free_resolution.cc',
+ '<(DEPTH)/starboard/shared/posix/socket_get_last_error.cc',
+ '<(DEPTH)/starboard/shared/posix/socket_get_local_address.cc',
+ '<(DEPTH)/starboard/shared/posix/socket_internal.cc',
+ '<(DEPTH)/starboard/shared/posix/socket_is_connected.cc',
+ '<(DEPTH)/starboard/shared/posix/socket_is_connected_and_idle.cc',
+ '<(DEPTH)/starboard/shared/posix/socket_join_multicast_group.cc',
+ '<(DEPTH)/starboard/shared/posix/socket_listen.cc',
+ '<(DEPTH)/starboard/shared/posix/socket_receive_from.cc',
+ '<(DEPTH)/starboard/shared/posix/socket_resolve.cc',
+ '<(DEPTH)/starboard/shared/posix/socket_send_to.cc',
+ '<(DEPTH)/starboard/shared/posix/socket_set_broadcast.cc',
+ '<(DEPTH)/starboard/shared/posix/socket_set_receive_buffer_size.cc',
+ '<(DEPTH)/starboard/shared/posix/socket_set_reuse_address.cc',
+ '<(DEPTH)/starboard/shared/posix/socket_set_send_buffer_size.cc',
+ '<(DEPTH)/starboard/shared/posix/socket_set_tcp_keep_alive.cc',
+ '<(DEPTH)/starboard/shared/posix/socket_set_tcp_no_delay.cc',
+ '<(DEPTH)/starboard/shared/posix/socket_set_tcp_window_scaling.cc',
+ '<(DEPTH)/starboard/shared/posix/string_compare_no_case.cc',
+ '<(DEPTH)/starboard/shared/posix/string_compare_no_case_n.cc',
+ '<(DEPTH)/starboard/shared/posix/string_compare_wide.cc',
+ '<(DEPTH)/starboard/shared/posix/string_format.cc',
+ '<(DEPTH)/starboard/shared/posix/string_format_wide.cc',
+ '<(DEPTH)/starboard/shared/posix/system_break_into_debugger.cc',
+ '<(DEPTH)/starboard/shared/posix/system_clear_last_error.cc',
+ '<(DEPTH)/starboard/shared/posix/system_get_error_string.cc',
+ '<(DEPTH)/starboard/shared/posix/system_get_last_error.cc',
+ '<(DEPTH)/starboard/shared/posix/system_get_locale_id.cc',
+ '<(DEPTH)/starboard/shared/posix/system_get_number_of_processors.cc',
+ '<(DEPTH)/starboard/shared/posix/thread_sleep.cc',
+ '<(DEPTH)/starboard/shared/posix/time_get_monotonic_now.cc',
+ '<(DEPTH)/starboard/shared/posix/time_get_monotonic_thread_now.cc',
+ '<(DEPTH)/starboard/shared/posix/time_get_now.cc',
+ '<(DEPTH)/starboard/shared/posix/time_zone_get_current.cc',
+ '<(DEPTH)/starboard/shared/posix/time_zone_get_dst_name.cc',
+ '<(DEPTH)/starboard/shared/posix/time_zone_get_name.cc',
+ '<(DEPTH)/starboard/shared/pthread/condition_variable_broadcast.cc',
+ '<(DEPTH)/starboard/shared/pthread/condition_variable_create.cc',
+ '<(DEPTH)/starboard/shared/pthread/condition_variable_destroy.cc',
+ '<(DEPTH)/starboard/shared/pthread/condition_variable_signal.cc',
+ '<(DEPTH)/starboard/shared/pthread/condition_variable_wait.cc',
+ '<(DEPTH)/starboard/shared/pthread/condition_variable_wait_timed.cc',
+ '<(DEPTH)/starboard/shared/pthread/mutex_acquire.cc',
+ '<(DEPTH)/starboard/shared/pthread/mutex_acquire_try.cc',
+ '<(DEPTH)/starboard/shared/pthread/mutex_create.cc',
+ '<(DEPTH)/starboard/shared/pthread/mutex_destroy.cc',
+ '<(DEPTH)/starboard/shared/pthread/mutex_release.cc',
+ '<(DEPTH)/starboard/shared/pthread/once.cc',
+ '<(DEPTH)/starboard/shared/pthread/thread_create.cc',
+ '<(DEPTH)/starboard/shared/pthread/thread_create_local_key.cc',
+ '<(DEPTH)/starboard/shared/pthread/thread_create_priority.h',
+ '<(DEPTH)/starboard/shared/pthread/thread_destroy_local_key.cc',
+ '<(DEPTH)/starboard/shared/pthread/thread_detach.cc',
+ '<(DEPTH)/starboard/shared/pthread/thread_get_current.cc',
+ '<(DEPTH)/starboard/shared/pthread/thread_get_local_value.cc',
+ '<(DEPTH)/starboard/shared/pthread/thread_is_equal.cc',
+ '<(DEPTH)/starboard/shared/pthread/thread_join.cc',
+ '<(DEPTH)/starboard/shared/pthread/thread_set_local_value.cc',
+ '<(DEPTH)/starboard/shared/pthread/thread_yield.cc',
+ '<(DEPTH)/starboard/shared/signal/crash_signals.h',
+ '<(DEPTH)/starboard/shared/signal/crash_signals_sigaction.cc',
+ '<(DEPTH)/starboard/shared/signal/suspend_signals.cc',
+ '<(DEPTH)/starboard/shared/signal/suspend_signals.h',
+ '<(DEPTH)/starboard/shared/starboard/application.cc',
+ '<(DEPTH)/starboard/shared/starboard/command_line.cc',
+ '<(DEPTH)/starboard/shared/starboard/command_line.h',
+ '<(DEPTH)/starboard/shared/starboard/audio_sink/audio_sink_create.cc',
+ '<(DEPTH)/starboard/shared/starboard/audio_sink/audio_sink_destroy.cc',
+ '<(DEPTH)/starboard/shared/starboard/audio_sink/audio_sink_internal.cc',
+ '<(DEPTH)/starboard/shared/starboard/audio_sink/audio_sink_internal.h',
+ '<(DEPTH)/starboard/shared/starboard/audio_sink/audio_sink_is_valid.cc',
+ '<(DEPTH)/starboard/shared/starboard/audio_sink/stub_audio_sink_type.cc',
+ '<(DEPTH)/starboard/shared/starboard/audio_sink/stub_audio_sink_type.h',
+ '<(DEPTH)/starboard/shared/starboard/directory_can_open.cc',
+ '<(DEPTH)/starboard/shared/starboard/event_cancel.cc',
+ '<(DEPTH)/starboard/shared/starboard/event_schedule.cc',
+ '<(DEPTH)/starboard/shared/starboard/file_mode_string_to_flags.cc',
+ '<(DEPTH)/starboard/shared/starboard/file_storage/storage_close_record.cc',
+ '<(DEPTH)/starboard/shared/starboard/file_storage/storage_delete_record.cc',
+ '<(DEPTH)/starboard/shared/starboard/file_storage/storage_get_record_size.cc',
+ '<(DEPTH)/starboard/shared/starboard/file_storage/storage_open_record.cc',
+ '<(DEPTH)/starboard/shared/starboard/file_storage/storage_read_record.cc',
+ '<(DEPTH)/starboard/shared/starboard/file_storage/storage_write_record.cc',
+ '<(DEPTH)/starboard/shared/starboard/log_message.cc',
+ '<(DEPTH)/starboard/shared/starboard/log_raw_dump_stack.cc',
+ '<(DEPTH)/starboard/shared/starboard/log_raw_format.cc',
+ '<(DEPTH)/starboard/shared/starboard/media/codec_util.cc',
+ '<(DEPTH)/starboard/shared/starboard/media/codec_util.h',
+ '<(DEPTH)/starboard/shared/starboard/media/media_can_play_mime_and_key_system.cc',
+ '<(DEPTH)/starboard/shared/starboard/media/media_get_audio_configuration_stereo_only.cc',
+ '<(DEPTH)/starboard/shared/starboard/media/media_get_audio_output_count_stereo_only.cc',
+ '<(DEPTH)/starboard/shared/starboard/media/media_is_audio_supported_aac_only.cc',
+ '<(DEPTH)/starboard/shared/starboard/media/media_is_output_protected.cc',
+ '<(DEPTH)/starboard/shared/starboard/media/media_is_video_supported_h264_1080p_sfr_only.cc',
+ '<(DEPTH)/starboard/shared/starboard/media/media_set_output_protection.cc',
+ '<(DEPTH)/starboard/shared/starboard/media/media_util.cc',
+ '<(DEPTH)/starboard/shared/starboard/media/media_util.h',
+ '<(DEPTH)/starboard/shared/starboard/media/mime_type.cc',
+ '<(DEPTH)/starboard/shared/starboard/media/mime_type.h',
+ '<(DEPTH)/starboard/shared/starboard/media/codec_util.cc',
+ '<(DEPTH)/starboard/shared/starboard/media/codec_util.h',
+ '<(DEPTH)/starboard/shared/starboard/media/media_can_play_mime_and_key_system.cc',
+ '<(DEPTH)/starboard/shared/starboard/media/media_is_output_protected.cc',
+ '<(DEPTH)/starboard/shared/starboard/media/media_set_output_protection.cc',
+ '<(DEPTH)/starboard/shared/starboard/media/mime_type.cc',
+ '<(DEPTH)/starboard/shared/starboard/media/mime_type.h',
+ '<(DEPTH)/starboard/shared/starboard/new.cc',
+ '<(DEPTH)/starboard/shared/starboard/player/decoded_audio_internal.cc',
+ '<(DEPTH)/starboard/shared/starboard/player/decoded_audio_internal.h',
+ '<(DEPTH)/starboard/shared/starboard/player/filter/audio_decoder_internal.h',
+ '<(DEPTH)/starboard/shared/starboard/player/filter/audio_frame_tracker.cc',
+ '<(DEPTH)/starboard/shared/starboard/player/filter/audio_frame_tracker.h',
+ '<(DEPTH)/starboard/shared/starboard/player/filter/audio_time_stretcher.h',
+ '<(DEPTH)/starboard/shared/starboard/player/filter/audio_time_stretcher.cc',
+ '<(DEPTH)/starboard/shared/starboard/player/filter/audio_renderer_internal.cc',
+ '<(DEPTH)/starboard/shared/starboard/player/filter/audio_renderer_internal.h',
+ '<(DEPTH)/starboard/shared/starboard/player/filter/audio_renderer_sink.h',
+ '<(DEPTH)/starboard/shared/starboard/player/filter/audio_renderer_sink_impl.cc',
+ '<(DEPTH)/starboard/shared/starboard/player/filter/audio_renderer_sink_impl.h',
+ '<(DEPTH)/starboard/shared/starboard/player/filter/cpu_video_frame.cc',
+ '<(DEPTH)/starboard/shared/starboard/player/filter/cpu_video_frame.h',
+ '<(DEPTH)/starboard/shared/starboard/player/filter/decoded_audio_queue.h',
+ '<(DEPTH)/starboard/shared/starboard/player/filter/decoded_audio_queue.cc',
+ '<(DEPTH)/starboard/shared/starboard/player/filter/filter_based_player_worker_handler.cc',
+ '<(DEPTH)/starboard/shared/starboard/player/filter/filter_based_player_worker_handler.h',
+ '<(DEPTH)/starboard/shared/starboard/player/filter/media_time_provider.h',
+ '<(DEPTH)/starboard/shared/starboard/player/filter/media_time_provider_impl.cc',
+ '<(DEPTH)/starboard/shared/starboard/player/filter/media_time_provider_impl.h',
+ '<(DEPTH)/starboard/shared/starboard/player/filter/player_components.h',
+ '<(DEPTH)/starboard/shared/starboard/player/filter/punchout_video_renderer_sink.cc',
+ '<(DEPTH)/starboard/shared/starboard/player/filter/punchout_video_renderer_sink.h',
+ '<(DEPTH)/starboard/shared/starboard/player/filter/video_decoder_internal.h',
+ '<(DEPTH)/starboard/shared/starboard/player/filter/video_frame_internal.h',
+ '<(DEPTH)/starboard/shared/starboard/player/filter/video_render_algorithm.h',
+ '<(DEPTH)/starboard/shared/starboard/player/filter/video_render_algorithm_impl.cc',
+ '<(DEPTH)/starboard/shared/starboard/player/filter/video_render_algorithm_impl.h',
+ '<(DEPTH)/starboard/shared/starboard/player/filter/video_renderer_internal.cc',
+ '<(DEPTH)/starboard/shared/starboard/player/filter/video_renderer_internal.h',
+ '<(DEPTH)/starboard/shared/starboard/player/filter/wsola_internal.h',
+ '<(DEPTH)/starboard/shared/starboard/player/filter/wsola_internal.cc',
+ '<(DEPTH)/starboard/shared/starboard/player/input_buffer_internal.cc',
+ '<(DEPTH)/starboard/shared/starboard/player/input_buffer_internal.h',
+ '<(DEPTH)/starboard/shared/starboard/player/job_queue.cc',
+ '<(DEPTH)/starboard/shared/starboard/player/job_queue.h',
+ '<(DEPTH)/starboard/shared/starboard/player/player_create.cc',
+ '<(DEPTH)/starboard/shared/starboard/player/player_destroy.cc',
+ '<(DEPTH)/starboard/shared/starboard/player/player_get_current_frame.cc',
+ '<(DEPTH)/starboard/shared/starboard/player/player_get_info.cc',
+ '<(DEPTH)/starboard/shared/starboard/player/player_output_mode_supported.cc',
+ '<(DEPTH)/starboard/shared/starboard/player/player_internal.cc',
+ '<(DEPTH)/starboard/shared/starboard/player/player_internal.h',
+ '<(DEPTH)/starboard/shared/starboard/player/player_seek.cc',
+ '<(DEPTH)/starboard/shared/starboard/player/player_set_bounds.cc',
+ '<(DEPTH)/starboard/shared/starboard/player/player_set_playback_rate.cc',
+ '<(DEPTH)/starboard/shared/starboard/player/player_set_volume.cc',
+ '<(DEPTH)/starboard/shared/starboard/player/player_worker.cc',
+ '<(DEPTH)/starboard/shared/starboard/player/player_worker.h',
+ '<(DEPTH)/starboard/shared/starboard/player/player_write_end_of_stream.cc',
+ '<(DEPTH)/starboard/shared/starboard/player/player_write_sample.cc',
+ '<(DEPTH)/starboard/shared/starboard/queue_application.cc',
+ '<(DEPTH)/starboard/shared/starboard/string_concat.cc',
+ '<(DEPTH)/starboard/shared/starboard/string_concat_wide.cc',
+ '<(DEPTH)/starboard/shared/starboard/string_copy.cc',
+ '<(DEPTH)/starboard/shared/starboard/string_copy_wide.cc',
+ '<(DEPTH)/starboard/shared/starboard/string_duplicate.cc',
+ '<(DEPTH)/starboard/shared/starboard/system_get_random_uint64.cc',
+ '<(DEPTH)/starboard/shared/starboard/system_request_pause.cc',
+ '<(DEPTH)/starboard/shared/starboard/system_request_stop.cc',
+ '<(DEPTH)/starboard/shared/starboard/system_request_suspend.cc',
+ '<(DEPTH)/starboard/shared/starboard/system_request_unpause.cc',
+ '<(DEPTH)/starboard/shared/starboard/window_set_default_options.cc',
+ '<(DEPTH)/starboard/shared/stub/accessibility_get_display_settings.cc',
+ '<(DEPTH)/starboard/shared/stub/accessibility_get_text_to_speech_settings.cc',
+ '<(DEPTH)/starboard/shared/stub/cryptography_create_transformer.cc',
+ '<(DEPTH)/starboard/shared/stub/cryptography_destroy_transformer.cc',
+ '<(DEPTH)/starboard/shared/stub/cryptography_get_tag.cc',
+ '<(DEPTH)/starboard/shared/stub/cryptography_set_authenticated_data.cc',
+ '<(DEPTH)/starboard/shared/stub/cryptography_set_initialization_vector.cc',
+ '<(DEPTH)/starboard/shared/stub/cryptography_transform.cc',
+ '<(DEPTH)/starboard/shared/stub/decode_target_get_info.cc',
+ '<(DEPTH)/starboard/shared/stub/decode_target_release.cc',
+ '<(DEPTH)/starboard/shared/stub/drm_close_session.cc',
+ '<(DEPTH)/starboard/shared/stub/drm_create_system.cc',
+ '<(DEPTH)/starboard/shared/stub/drm_destroy_system.cc',
+ '<(DEPTH)/starboard/shared/stub/drm_generate_session_update_request.cc',
+ '<(DEPTH)/starboard/shared/stub/drm_system_internal.h',
+ '<(DEPTH)/starboard/shared/stub/drm_update_session.cc',
+ '<(DEPTH)/starboard/shared/stub/image_decode.cc',
+ '<(DEPTH)/starboard/shared/stub/image_is_decode_supported.cc',
+ '<(DEPTH)/starboard/shared/stub/media_is_supported.cc',
+ '<(DEPTH)/starboard/shared/stub/media_is_transfer_characteristics_supported.cc',
+ '<(DEPTH)/starboard/shared/stub/system_clear_platform_error.cc',
+ '<(DEPTH)/starboard/shared/stub/system_get_total_gpu_memory.cc',
+ '<(DEPTH)/starboard/shared/stub/system_get_used_gpu_memory.cc',
+ '<(DEPTH)/starboard/shared/stub/system_hide_splash_screen.cc',
+ '<(DEPTH)/starboard/shared/stub/system_raise_platform_error.cc',
+ ],
+ 'starboard_platform_dependencies': [
+ '<(DEPTH)/starboard/common/common.gyp:common',
+ '<(DEPTH)/starboard/linux/shared/starboard_base_symbolize.gyp:starboard_base_symbolize',
+ '<(DEPTH)/third_party/dlmalloc/dlmalloc.gyp:dlmalloc',
+ '<(DEPTH)/third_party/libevent/libevent.gyp:libevent',
+ ],
+ },
+}
diff --git a/src/third_party/ci20/packagelist.jessie.mipsel.extra b/src/third_party/ci20/packagelist.jessie.mipsel.extra
index d99b951..2bd4f53 100644
--- a/src/third_party/ci20/packagelist.jessie.mipsel.extra
+++ b/src/third_party/ci20/packagelist.jessie.mipsel.extra
@@ -65,6 +65,7 @@
libfreetype6-dev
libgbm1
libgbm-dev
+libgcc-4.8-dev
libgconf-2-4
libgconf2-dev
libgcrypt11-dev