[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