# Copyright 2015 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.

# NPLB is "No Platform Left Behind," the certification test suite for Starboard
# implementations.

{
  'targets': [
    {
      'msvs_disabled_warnings': [4100, 4189, 4456],
      'target_name': 'nplb',
      'type': '<(gtest_target_type)',
      'sources': [
        '<(DEPTH)/starboard/common/test_main.cc',
        'accessibility_get_setting_test.cc',
        'align_test.cc',
        'atomic_base_test.cc',
        'atomic_test.cc',
        'audio_sink_create_test.cc',
        'audio_sink_destroy_test.cc',
        'audio_sink_get_max_channels_test.cc',
        'audio_sink_get_nearest_supported_sample_frequency_test.cc',
        'audio_sink_helpers.cc',
        'audio_sink_helpers.h',
        'audio_sink_is_audio_frame_storage_type_supported_test.cc',
        'audio_sink_is_audio_sample_type_supported_test.cc',
        'audio_sink_test.cc',
        'blitter_blit_rect_to_rect_test.cc',
        'blitter_blit_rect_to_rect_tiled_test.cc',
        'blitter_blit_rects_to_rects_test.cc',
        'blitter_create_context_test.cc',
        'blitter_create_default_device_test.cc',
        'blitter_create_pixel_data_test.cc',
        'blitter_create_render_target_surface_test.cc',
        'blitter_create_surface_from_pixel_data_test.cc',
        'blitter_create_swap_chain_from_window_test.cc',
        'blitter_destroy_context_test.cc',
        'blitter_destroy_device_test.cc',
        'blitter_destroy_pixel_data_test.cc',
        'blitter_destroy_surface_test.cc',
        'blitter_destroy_swap_chain_test.cc',
        'blitter_download_surface_pixels_test.cc',
        'blitter_fill_rect_test.cc',
        'blitter_flip_swap_chain_test.cc',
        'blitter_flush_context_test.cc',
        'blitter_get_max_contexts_test.cc',
        'blitter_get_pixel_data_pitch_in_bytes_test.cc',
        'blitter_get_pixel_data_pointer_test.cc',
        'blitter_get_render_target_from_surface_test.cc',
        'blitter_get_render_target_from_swap_chain_test.cc',
        'blitter_get_surface_info_test.cc',
        'blitter_helpers.cc',
        'blitter_is_pixel_format_supported_by_download_surface_pixels_test.cc',
        'blitter_is_pixel_format_supported_by_pixel_data_test.cc',
        'blitter_is_pixel_format_supported_by_render_target_surface_test.cc',
        'blitter_set_blending_test.cc',
        'blitter_set_modulate_blits_with_color_test.cc',
        'blitter_set_render_target_test.cc',
        'blitter_set_scissor_test.cc',
        'byte_swap_test.cc',
        'char_is_signed_test.cc',
        'character_is_alphanumeric_test.cc',
        'character_is_digit_test.cc',
        'character_is_hex_digit_test.cc',
        'character_is_space_test.cc',
        'character_is_upper_test.cc',
        'character_to_lower_test.cc',
        'character_to_upper_test.cc',
        'condition_variable_broadcast_test.cc',
        'condition_variable_create_test.cc',
        'condition_variable_destroy_test.cc',
        'condition_variable_signal_test.cc',
        'condition_variable_wait_test.cc',
        'condition_variable_wait_timed_test.cc',
        'configuration_test.cc',
        'cryptography_create_transformer_test.cc',
        'cryptography_helpers.cc',
        'cryptography_helpers.h',
        'cryptography_transform_test.cc',
        'cryptography_transform_gcm_test.cc',
        'directory_can_open_test.cc',
        'directory_close_test.cc',
        'directory_create_test.cc',
        'directory_get_next_test.cc',
        'directory_open_test.cc',
        'double_absolute_test.cc',
        'double_exponent_test.cc',
        'double_floor_test.cc',
        'double_is_finite_test.cc',
        'double_is_nan_test.cc',
        'file_can_open_test.cc',
        'file_close_test.cc',
        'file_get_info_test.cc',
        'file_get_path_info_test.cc',
        'file_helpers.cc',
        'file_mode_string_to_flags_test.cc',
        'file_open_test.cc',
        'file_read_test.cc',
        'file_seek_test.cc',
        'file_truncate_test.cc',
        'file_write_test.cc',
        'flat_map_test.cc',
        'include_all.c',
        'include_all_too.c',
        'key_test.cc',
        'log_flush_test.cc',
        'log_format_test.cc',
        'log_is_tty_test.cc',
        'log_raw_dump_stack_test.cc',
        'log_raw_test.cc',
        'log_test.cc',
        'memory_align_to_page_size_test.cc',
        'memory_allocate_aligned_test.cc',
        'memory_allocate_test.cc',
        'memory_compare_test.cc',
        'memory_copy_test.cc',
        'memory_deallocate_aligned_test.cc',
        'memory_deallocate_test.cc',
        'memory_find_byte_test.cc',
        'memory_get_stack_bounds_test.cc',
        'memory_is_zero_test.cc',
        'memory_map_test.cc',
        'memory_move_test.cc',
        'memory_reallocate_test.cc',
        'memory_reporter_test.cc',
        'memory_set_test.cc',
        'microphone_close_test.cc',
        'microphone_create_test.cc',
        'microphone_destroy_test.cc',
        'microphone_get_available_test.cc',
        'microphone_is_sample_rate_supported_test.cc',
        'microphone_open_test.cc',
        'microphone_read_test.cc',
        'mutex_acquire_test.cc',
        'mutex_acquire_try_test.cc',
        'mutex_create_test.cc',
        'mutex_destroy_test.cc',
        'once_test.cc',
        'optional_test.cc',
        'random_helpers.cc',
        'rwlock_test.cc',
        'semaphore_test.cc',
        'socket_accept_test.cc',
        'socket_bind_test.cc',
        'socket_clear_last_error_test.cc',
        'socket_connect_test.cc',
        'socket_create_test.cc',
        'socket_destroy_test.cc',
        'socket_get_interface_address_test.cc',
        'socket_get_last_error_test.cc',
        'socket_get_local_address_test.cc',
        'socket_helpers.cc',
        'socket_is_connected_and_idle_test.cc',
        'socket_is_connected_test.cc',
        'socket_join_multicast_group_test.cc',
        'socket_listen_test.cc',
        'socket_receive_from_test.cc',
        'socket_resolve_test.cc',
        'socket_send_to_test.cc',
        'socket_set_options_test.cc',
        'socket_waiter_add_test.cc',
        'socket_waiter_create_test.cc',
        'socket_waiter_destroy_test.cc',
        'socket_waiter_remove_test.cc',
        'socket_waiter_wait_test.cc',
        'socket_waiter_wait_timed_test.cc',
        'socket_waiter_wake_up_test.cc',
        'socket_wrapper_test.cc',
        'speech_recognizer_cancel_test.cc',
        'speech_recognizer_create_test.cc',
        'speech_recognizer_destroy_test.cc',
        'speech_recognizer_helper.h',
        'speech_recognizer_start_test.cc',
        'speech_recognizer_stop_test.cc',
        'speech_synthesis_basic_test.cc',
        'state_machine_test.cc',
        'storage_close_record_test.cc',
        'storage_delete_record_test.cc',
        'storage_get_record_size_test.cc',
        'storage_open_record_test.cc',
        'storage_read_record_test.cc',
        'storage_write_record_test.cc',
        'string_compare_all_test.cc',
        'string_compare_no_case_n_test.cc',
        'string_compare_no_case_test.cc',
        'string_compare_test.cc',
        'string_compare_wide_test.cc',
        'string_concat_test.cc',
        'string_concat_wide_test.cc',
        'string_copy_test.cc',
        'string_copy_wide_test.cc',
        'string_duplicate_test.cc',
        'string_find_character_test.cc',
        'string_find_last_character_test.cc',
        'string_find_string_test.cc',
        'string_format_test.cc',
        'string_format_wide_test.cc',
        'string_parse_double_test.cc',
        'string_parse_signed_integer_test.cc',
        'string_parse_uint64_test.cc',
        'string_parse_unsigned_integer_test.cc',
        'string_scan_test.cc',
        'system_binary_search_test.cc',
        'system_clear_last_error_test.cc',
        'system_get_error_string_test.cc',
        'system_get_last_error_test.cc',
        'system_get_locale_id_test.cc',
        'system_get_number_of_processors_test.cc',
        'system_get_path_test.cc',
        'system_get_property_test.cc',
        'system_get_random_data_test.cc',
        'system_get_random_uint64_test.cc',
        'system_get_stack_test.cc',
        'system_get_total_cpu_memory_test.cc',
        'system_get_total_gpu_memory_test.cc',
        'system_get_used_cpu_memory_test.cc',
        'system_get_used_gpu_memory_test.cc',
        'system_has_capability_test.cc',
        'system_hide_splash_screen_test.cc',
        'system_is_debugger_attached_test.cc',
        'system_sort_test.cc',
        'system_symbolize_test.cc',
        'thread_create_test.cc',
        'thread_detach_test.cc',
        'thread_get_current_test.cc',
        'thread_get_id_test.cc',
        'thread_get_name_test.cc',
        'thread_helpers.cc',
        'thread_is_equal_test.cc',
        'thread_join_test.cc',
        'thread_local_value_test.cc',
        'thread_set_name_test.cc',
        'thread_sleep_test.cc',
        'thread_test.cc',
        'thread_yield_test.cc',
        'time_get_monotonic_now_test.cc',
        'time_get_now_test.cc',
        'time_narrow_test.cc',
        'time_zone_get_current_test.cc',
        'time_zone_get_dst_name_test.cc',
        'time_zone_get_name_test.cc',
        'undefined_behavior_test.cc',
        'unsafe_math_test.cc',
        'user_get_current_test.cc',
        'user_get_property_test.cc',
        'user_get_signed_in_test.cc',
        'window_create_test.cc',
        'window_destroy_test.cc',
        'window_get_platform_handle_test.cc',
        'window_get_size_test.cc',
        # Include private c headers, if present.
        '<!@(python "<(DEPTH)/starboard/tools/find_private_files.py" "<(DEPTH)" "nplb/include_all_private.c")',
        # Include private tests, if present.
        '<!@(python "<(DEPTH)/starboard/tools/find_private_files.py" "<(DEPTH)" "nplb/*_test.cc")',
      ],
      'dependencies': [
        '<@(cobalt_platform_dependencies)',
        '<(DEPTH)/starboard/starboard.gyp:starboard',
        '<(DEPTH)/testing/gmock.gyp:gmock',
        '<(DEPTH)/testing/gtest.gyp:gtest',
      ],
      'conditions': [
        ['sb_media_platform=="starboard"', {
          'sources': [
            '<(DEPTH)/starboard/testing/fake_graphics_context_provider.cc',
            '<(DEPTH)/starboard/testing/fake_graphics_context_provider.h',
            'player_create_test.cc',
            'player_create_with_url_test.cc',
            'player_output_mode_supported_test.cc',
          ],
        }],
      ],
    },
    {
      'target_name': 'nplb_deploy',
      'type': 'none',
      'dependencies': [
        'nplb',
      ],
      'variables': {
        'executable_name': 'nplb',
      },
      'includes': [ '../build/deploy.gypi' ],
    },
  ],
}
