Edit

kc3-lang/angle/src/tests/tests.gyp

Branch :

  • Show log

    Commit

  • Author : Corentin Wallez
    Date : 2016-10-25 07:43:33
    Hash : 7f07caa9
    Message : Rename the build/ directory. GYP related files went in gypfiles/, and the gni went in gni/ this changes frees up the build/ directory name for Chromium's build/ directory. BUG=angleproject:1569 Change-Id: I76fe343d569239c2732ba87986fcf7debc21d417 Reviewed-on: https://chromium-review.googlesource.com/403029 Commit-Queue: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>

  • src/tests/tests.gyp
  • # Copyright (c) 2012 The ANGLE Project Authors. All rights reserved.
    # Use of this source code is governed by a BSD-style license that can be
    # found in the LICENSE file.
    
    {
        'includes':
        [
            'deqp.gypi',
            '../../gyp/common_defines.gypi',
        ],
        'variables':
        {
            'angle_build_conformance_tests%': '0',
    
            'rapidjson_include_dir': 'third_party/rapidjson/include',
            'rapidjson_headers':
            [
                'third_party/rapidjson/include/rapidjson/allocators.h',
                'third_party/rapidjson/include/rapidjson/document.h',
                'third_party/rapidjson/include/rapidjson/encodedstream.h',
                'third_party/rapidjson/include/rapidjson/encodings.h',
                'third_party/rapidjson/include/rapidjson/filereadstream.h',
                'third_party/rapidjson/include/rapidjson/filestream.h',
                'third_party/rapidjson/include/rapidjson/filewritestream.h',
                'third_party/rapidjson/include/rapidjson/memorybuffer.h',
                'third_party/rapidjson/include/rapidjson/memorystream.h',
                'third_party/rapidjson/include/rapidjson/prettywriter.h',
                'third_party/rapidjson/include/rapidjson/rapidjson.h',
                'third_party/rapidjson/include/rapidjson/reader.h',
                'third_party/rapidjson/include/rapidjson/stringbuffer.h',
                'third_party/rapidjson/include/rapidjson/writer.h',
                'third_party/rapidjson/include/rapidjson/error/en.h',
                'third_party/rapidjson/include/rapidjson/error/error.h',
                'third_party/rapidjson/include/rapidjson/internal/dtoa.h',
                'third_party/rapidjson/include/rapidjson/internal/itoa.h',
                'third_party/rapidjson/include/rapidjson/internal/meta.h',
                'third_party/rapidjson/include/rapidjson/internal/pow10.h',
                'third_party/rapidjson/include/rapidjson/internal/stack.h',
                'third_party/rapidjson/include/rapidjson/internal/strfunc.h',
                'third_party/rapidjson/include/rapidjson/msinttypes/inttypes.h',
                'third_party/rapidjson/include/rapidjson/msinttypes/stdint.h',
            ],
        },
        'conditions':
        [
            # GoogleTest doesn't support WinRT
            ['angle_build_winrt==0',
            {
                'targets':
                [
                    {
                        'target_name': 'angle_test_support',
                        'type': 'none',
                        'dependencies':
                        [
                            'angle_internal_gmock',
                            'angle_internal_gtest',
                        ],
                    },
                ],
            }],
            ['angle_build_winrt==0',
            {
                'targets':
                [
                    # Hide these targets from Chromium, because it can't
                    # find our standalone copy of the gtest/gmock sources.
                    {
                        'target_name': 'angle_internal_gtest',
                        'type': 'static_library',
                        'includes': [ '../../gyp/common_defines.gypi', ],
                        'include_dirs':
                        [
                            '<(angle_path)/testing/gtest',
                            '<(angle_path)/testing/gtest/include',
                        ],
                        'sources':
                        [
                            '<(angle_path)/testing/gtest/src/gtest-all.cc',
                        ],
                        'defines':
                        [
                            '_VARIADIC_MAX=10',
                        ],
                        'all_dependent_settings':
                        {
                            'defines':
                            [
                                '_VARIADIC_MAX=10',
                            ],
                            'include_dirs':
                            [
                                '<(angle_path)/testing/gtest',
                                '<(angle_path)/testing/gtest/include',
                            ],
                        },
                    },
    
                    {
                        'target_name': 'angle_internal_gmock',
                        'type': 'static_library',
                        'includes': [ '../../gyp/common_defines.gypi', ],
                        'include_dirs':
                        [
                            '<(angle_path)/testing/gmock',
                            '<(angle_path)/testing/gmock/include',
                            '<(angle_path)/testing/gtest/include',
                        ],
                        'sources':
                        [
                            '<(angle_path)/testing/gmock/src/gmock-all.cc',
                        ],
                        'defines':
                        [
                            '_VARIADIC_MAX=10',
                        ],
                        'all_dependent_settings':
                        {
                            'defines':
                            [
                                '_VARIADIC_MAX=10',
                            ],
                            'include_dirs':
                            [
                                '<(angle_path)/testing/gmock',
                                '<(angle_path)/testing/gmock/include',
                                '<(angle_path)/testing/gtest/include',
                            ],
                        },
                    },
    
                    # These same target names exist on the Chromium side,
                    # which is forbidden, so we make them conditional on
                    # ANGLE's standalone build.
                    {
                        'target_name': 'angle_unittests',
                        'type': 'executable',
                        'includes':
                        [
                            '../../gyp/common_defines.gypi',
                            'angle_unittests.gypi',
                        ],
                        'sources':
                        [
                            'angle_unittests_main.cpp',
                        ],
                        'msvs_settings':
                        {
                            'VCLinkerTool':
                            {
                                'conditions':
                                [
                                    ['angle_build_winrt==1',
                                    {
                                        'AdditionalDependencies':
                                        [
                                            'runtimeobject.lib',
                                        ],
                                    }],
                                ],
                            },
                        },
                        'msvs_disabled_warnings':
                        [
                            4244, # Conversion from 'type1' to 'type2', possible loss of data
                        ],
                    },
                    {
                        'target_name': 'angle_end2end_tests',
                        'type': 'executable',
                        'includes':
                        [
                            '../../gyp/common_defines.gypi',
                            'angle_end2end_tests.gypi',
                        ],
                        'sources':
                        [
                            'angle_end2end_tests_main.cpp',
                        ],
                    },
                    {
                        'target_name': 'angle_perftests',
                        'type': 'executable',
                        'includes':
                        [
                            '../../gyp/common_defines.gypi',
                            'angle_perftests.gypi',
                        ],
                        'sources':
                        [
                            'angle_perftests_main.cpp',
                        ],
                    },
                ],
            }],
            ['OS=="win"',
            {
                'conditions':
                [
                    ['angle_build_conformance_tests',
                    {
                        'variables':
                        {
                            'gles_conformance_tests_output_dir': '<(SHARED_INTERMEDIATE_DIR)/conformance_tests',
                            'gles_conformance_tests_input_dir': 'third_party/gles_conformance_tests/conform/GTF_ES/glsl/GTF',
                            'gles_conformance_tests_generator_script': 'gles_conformance_tests/generate_gles_conformance_tests.py',
                        },
                        'targets':
                        [
                            {
                                'target_name': 'angle_gles2_conformance_tests',
                                'type': 'executable',
                                'includes': [ '../../gyp/common_defines.gypi', ],
                                'dependencies':
                                [
                                    '<(angle_path)/src/angle.gyp:libGLESv2',
                                    '<(angle_path)/src/angle.gyp:libEGL',
                                    'third_party/gles_conformance_tests/conform/GTF_ES/glsl/GTF/es_cts.gyp:es_cts_test_data',
                                    'third_party/gles_conformance_tests/conform/GTF_ES/glsl/GTF/es_cts.gyp:es2_cts',
                                    'angle_test_support',
                                ],
                                'variables':
                                {
                                    'gles2_conformance_tests_input_file': '<(gles_conformance_tests_input_dir)/mustpass_es20.run',
                                    'gles2_conformance_tests_generated_file': '<(gles_conformance_tests_output_dir)/generated_gles2_conformance_tests.cpp',
                                },
                                'sources':
                                [
                                    'gles_conformance_tests/gles_conformance_tests.cpp',
                                    'gles_conformance_tests/gles_conformance_tests.h',
                                    'gles_conformance_tests/gles_conformance_tests_main.cpp',
                                    '<(gles2_conformance_tests_generated_file)',
                                ],
                                'include_dirs':
                                [
                                    '<(angle_path)/include',
                                    'gles_conformance_tests',
                                ],
                                'defines':
                                [
                                    'CONFORMANCE_TESTS_TYPE=CONFORMANCE_TESTS_ES2',
                                ],
                                'msvs_settings':
                                {
                                    'VCCLCompilerTool':
                                    {
                                        # MSVS has trouble compiling this due to the obj files becoming too large.
                                        'AdditionalOptions': [ '/bigobj' ],
                                    },
                                },
                                'actions':
                                [
                                    {
                                        'action_name': 'generate_gles2_conformance_tests',
                                        'message': 'Generating ES2 conformance tests...',
                                        'msvs_cygwin_shell': 0,
                                        'inputs':
                                        [
                                            '<(gles_conformance_tests_generator_script)',
                                            '<(gles2_conformance_tests_input_file)',
                                        ],
                                        'outputs':
                                        [
                                            '<(gles2_conformance_tests_generated_file)',
                                        ],
                                        'action':
                                        [
                                            'python',
                                            '<(gles_conformance_tests_generator_script)',
                                            '<(gles2_conformance_tests_input_file)',
                                            '<(gles_conformance_tests_input_dir)',
                                            '<(gles2_conformance_tests_generated_file)',
                                        ],
                                    },
                                ],
                            },
                            {
                                'target_name': 'angle_gles3_conformance_tests',
                                'type': 'executable',
                                'includes': [ '../../gyp/common_defines.gypi', ],
                                'dependencies':
                                [
                                    '<(angle_path)/src/angle.gyp:libGLESv2',
                                    '<(angle_path)/src/angle.gyp:libEGL',
                                    'third_party/gles_conformance_tests/conform/GTF_ES/glsl/GTF/es_cts.gyp:es_cts_test_data',
                                    'third_party/gles_conformance_tests/conform/GTF_ES/glsl/GTF/es_cts.gyp:es3_cts',
                                    'angle_test_support',
                                ],
                                'variables':
                                {
                                    'gles3_conformance_tests_input_file': '<(gles_conformance_tests_input_dir)/mustpass_es30.run',
                                    'gles3_conformance_tests_generated_file': '<(gles_conformance_tests_output_dir)/generated_gles3_conformance_tests.cpp',
                                },
                                'sources':
                                [
                                    'gles_conformance_tests/gles_conformance_tests.cpp',
                                    'gles_conformance_tests/gles_conformance_tests.h',
                                    'gles_conformance_tests/gles_conformance_tests_main.cpp',
                                    '<(gles3_conformance_tests_generated_file)',
                                ],
                                'include_dirs':
                                [
                                    '<(angle_path)/include',
                                    'gles_conformance_tests',
                                ],
                                'defines':
                                [
                                    'CONFORMANCE_TESTS_TYPE=CONFORMANCE_TESTS_ES3',
                                ],
                                'msvs_settings':
                                {
                                    'VCCLCompilerTool':
                                    {
                                        # MSVS has trouble compiling this due to the obj files becoming too large.
                                        'AdditionalOptions': [ '/bigobj' ],
                                    },
                                },
                                'actions':
                                [
                                    {
                                        'action_name': 'generate_gles3_conformance_tests',
                                        'message': 'Generating ES3 conformance tests...',
                                        'msvs_cygwin_shell': 0,
                                        'inputs':
                                        [
                                            '<(gles_conformance_tests_generator_script)',
                                            '<(gles3_conformance_tests_input_file)',
                                        ],
                                        'outputs':
                                        [
                                            '<(gles3_conformance_tests_generated_file)',
                                        ],
                                        'action':
                                        [
                                            'python',
                                            '<(gles_conformance_tests_generator_script)',
                                            '<(gles3_conformance_tests_input_file)',
                                            '<(gles_conformance_tests_input_dir)',
                                            '<(gles3_conformance_tests_generated_file)',
                                        ],
                                    },
                                ],
                            },
                        ],
                    }],
                ],
            }],
        ],
    }