Edit

kc3-lang/angle/build/common.gypi

Branch :

  • Show log

    Commit

  • Author : Jamie Madill
    Date : 2013-07-08 13:31:38
    Hash : eb1a010f
    Message : Add expression complexity and call stack depth limits. git-svn-id: https://angleproject.googlecode.com/svn/trunk@2242 736b8ea6-26fd-11df-bfd4-992fa37f6226 TRAC #23333 Authored-by: gman@chromium.org Signed-off-by: Shannon Woods Signed-off-by Nicolas Capens Merged-by: Jamie Madill Conflicts: src/common/version.h

  • build/common.gypi
  • # Copyright (c) 2010 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.
    
    {
      'variables': {
        'component%': 'static_library',
        # angle_code is set to 1 for the core ANGLE targets defined in src/build_angle.gyp.
        # angle_code is set to 0 for test code, sample code, and third party code.
        # When angle_code is 1, we build with additional warning flags on Mac and Linux.
        'angle_code%': 0,
        'gcc_or_clang_warnings': [
          '-Wall',
          '-Wchar-subscripts',
          '-Werror',
          '-Wextra',
          '-Wformat=2',
          '-Winit-self',
          '-Wno-sign-compare',
          '-Wno-unused-function',
          '-Wno-unused-parameter',
          '-Wno-unknown-pragmas',
          '-Wpacked',
          '-Wpointer-arith',
          '-Wundef',
          '-Wwrite-strings',
        ],
      },
      'target_defaults': {
        'default_configuration': 'Debug',
        'variables': {
          'warn_as_error%': 1,
        },
        'target_conditions': [
          ['warn_as_error == 1', {
            'msvs_settings': {
              'VCCLCompilerTool': {
                'WarnAsError': 'true',
              },
            },
          }],
        ],
        'configurations': {
          'Common': {
            'abstract': 1,
            'msvs_configuration_attributes': {
              'OutputDirectory': '$(SolutionDir)$(ConfigurationName)',
              'IntermediateDirectory': '$(OutDir)\\obj\\$(ProjectName)',
              'CharacterSet': '1',  # UNICODE
            },
            'msvs_configuration_platform': 'Win32',
            'msvs_settings': {
              'VCCLCompilerTool': {
                'BufferSecurityCheck': 'true',
                'DebugInformationFormat': '3',
                # TODO(alokp): Disable exceptions before integrating with chromium.
                #'ExceptionHandling': '0',
                'EnableFunctionLevelLinking': 'true',
                'MinimalRebuild': 'false',
                'PreprocessorDefinitions': [
                  '_CRT_SECURE_NO_DEPRECATE',
                  '_HAS_EXCEPTIONS=0',
                  '_WIN32_WINNT=0x0600',
                  '_WINDOWS',
                  'NOMINMAX',
                  'WIN32',
                  'WIN32_LEAN_AND_MEAN',
                  'WINVER=0x0600',
                ],
                'RuntimeTypeInfo': 'false',
                'WarningLevel': '4',
                'DisableSpecificWarnings': [4100, 4127, 4189, 4239, 4244, 4245, 4512, 4702],
              },
              'VCLinkerTool': {
                'FixedBaseAddress': '1',
                'GenerateDebugInformation': 'true',
                'ImportLibrary': '$(OutDir)\\lib\\$(TargetName).lib',
                'MapFileName': '$(OutDir)\\$(TargetName).map',
                # Most of the executables we'll ever create are tests
                # and utilities with console output.
                'SubSystem': '1',  # /SUBSYSTEM:CONSOLE
                'AdditionalLibraryDirectories': [
                  '$(ProgramFiles)/Windows Kits/8.0/Lib/win8/um/x86',
                ],
              },
              'VCLibrarianTool': {
                'AdditionalLibraryDirectories': [
                  '$(ProgramFiles)/Windows Kits/8.0/Lib/win8/um/x86',
                ],
              },
              'VCResourceCompilerTool': {
                'Culture': '1033',
              },
            },
            'msvs_system_include_dirs': [
              '$(ProgramFiles)/Windows Kits/8.0/Include/shared',
              '$(ProgramFiles)/Windows Kits/8.0/Include/um',
            ],
          },  # Common
          'Debug': {
            'inherit_from': ['Common'],
            'msvs_settings': {
              'VCCLCompilerTool': {
                'Optimization': '0',  # /Od
                'PreprocessorDefinitions': ['_DEBUG'],
                'BasicRuntimeChecks': '3',
                'RuntimeLibrary': '1',  # /MTd (debug static)
              },
              'VCLinkerTool': {
                'LinkIncremental': '2',
              },
            },
            'xcode_settings': {
              'COPY_PHASE_STRIP': 'NO',
              'GCC_OPTIMIZATION_LEVEL': '0',
            },
          },  # Debug
          'Release': {
            'inherit_from': ['Common'],
            'msvs_settings': {
              'VCCLCompilerTool': {
                'Optimization': '2',  # /Os
                'PreprocessorDefinitions': ['NDEBUG'],
                'RuntimeLibrary': '0',  # /MT (static)
              },
              'VCLinkerTool': {
                'LinkIncremental': '1',
              },
            },
          },  # Release
        },  # configurations
        'conditions': [
          ['component=="shared_library"', {
            'defines': ['COMPONENT_BUILD'],
          }],
        ],
      },  # target_defaults
      'conditions': [
        ['OS=="win"', {
          'target_defaults': {
            'msvs_cygwin_dirs': ['../third_party/cygwin'],
          },
        }],
        ['OS!="win" and OS!="mac"', {
          'target_defaults': {
            'cflags': [
              '-pthread',
              '-fno-exceptions',
            ],
            'ldflags': [
              '-pthread',
            ],
            'configurations': {
              'Debug': {
                'variables': {
                  'debug_optimize%': '0',
                },
                'defines': [
                  '_DEBUG',
                ],
                'cflags': [
                  '-O>(debug_optimize)',
                  '-g',
                ],
              }
            },
          },
        }],
        ['angle_code==1', {
          'target_defaults': {
            'conditions': [
              ['OS=="mac"', {
                'xcode_settings': {
                  'WARNING_CFLAGS': ['<@(gcc_or_clang_warnings)']
                },
              }],
              ['OS!="win" and OS!="mac"', {
                'cflags': ['<@(gcc_or_clang_warnings)']
              }],
            ]
          }
        }],
      ],
    }
    
    # Local Variables:
    # tab-width:2
    # indent-tabs-mode:nil
    # End:
    # vim: set expandtab tabstop=2 shiftwidth=2: