# Copyright (c) 2012 The Chromium 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': {
    'gcc_cflags': [
      '-ggdb',
      '-W',
      '-Wall',
      '-Werror',
      '-Wno-unused-parameter',
      '-fPIE',
      '-fstack-protector',
    ],
    'gcc_ldflags': [
      '-ggdb',
      '-fpie',
      '-Wl,-z,relro',
      '-Wl,-z,now',
    ],
  },
  'includes': [
    'ots-common.gypi',
  ],
  'target_defaults': {
    'conditions': [
      ['OS=="linux"', {
        'cflags': [
          '<@(gcc_cflags)',
        ],
        'ldflags': [
          '<@(gcc_ldflags)',
        ],
        'defines': [
          '_FORTIFY_SOURCE=2',
        ],
        'link_settings': {
          'libraries': ['-lz'],
        },
      }],
      ['OS=="mac"', {
        'xcode_settings': {
          'GCC_DYNAMIC_NO_PIC': 'NO',            # No -mdynamic-no-pic
          'GCC_SYMBOLS_PRIVATE_EXTERN': 'YES',   # -fvisibility=hidden
          'OTHER_CFLAGS': [
            '<@(gcc_cflags)',
          ],
        },
        'link_settings': {
          'libraries': [
            '/System/Library/Frameworks/ApplicationServices.framework',
            '/usr/lib/libz.dylib'
          ],
        },
      }],
      ['OS=="win"', {
        'link_settings': {
          'libraries': [
            '-lzdll.lib',
          ],
        },
        'msvs_settings': {
          'VCLinkerTool': {
            'AdditionalLibraryDirectories': ['third_party/zlib'],
            'DelayLoadDLLs': ['zlib1.dll'],
          },
        },
        'include_dirs': [
          'third_party/zlib'
        ],
        'defines': [
          'NOMINMAX', # To suppress max/min macro definition.
          'WIN32',
        ],
      }],
    ],
  },
  'targets': [
    {
      'target_name': 'ots',
      'type': 'static_library',
      'sources': [
        '<@(ots_sources)',
      ],
      'dependencies': [
        'third_party/lzma_sdk/lzma_sdk.gyp:ots_lzma_sdk',
      ],
      'include_dirs': [
        '<@(ots_include_dirs)',
      ],
      'direct_dependent_settings': {
        'include_dirs': [
          '<@(ots_include_dirs)',
        ],
      },
    },
    {
      'target_name': 'freetype2',
      'type': 'none',
      'conditions': [
        ['OS=="linux"', {
          'direct_dependent_settings': {
            'cflags': [
              '<!(pkg-config freetype2 --cflags)',
            ],
            'link_settings': {
              'libraries': [
                '<!(pkg-config freetype2 --libs)',
              ],
            },
          },
        }],
      ],
    },
    {
      'target_name': 'idempotent',
      'type': 'executable',
      'sources': [
        'test/idempotent.cc',
      ],
      'dependencies': [
        'ots',
      ],
      'conditions': [
        ['OS=="linux"', {
          'dependencies': [
            'freetype2',
          ]
        }],
        ['OS=="win"', {
          'link_settings': {
            'libraries': [
              '-lgdi32.lib',
            ],
          },
        }],
      ],
    },
    {
      'target_name': 'ot-sanitise',
      'type': 'executable',
      'sources': [
        'test/ot-sanitise.cc',
        'test/file-stream.h',
      ],
      'dependencies': [
        'ots',
      ],
    },
  ],
  'conditions': [
    ['OS=="linux" or OS=="mac"', {
      'targets': [
        {
          'target_name': 'validator_checker',
          'type': 'executable',
          'sources': [
            'test/validator-checker.cc',
          ],
          'dependencies': [
            'ots',
          ],
          'conditions': [
            ['OS=="linux"', {
              'dependencies': [
                'freetype2',
              ]
            }],
          ],
        },
        {
          'target_name': 'perf',
          'type': 'executable',
          'sources': [
            'test/perf.cc',
          ],
          'dependencies': [
            'ots',
          ],
        },
      ],
    }],
    ['OS=="linux"', {
      'targets': [
        {
          'target_name': 'side_by_side',
          'type': 'executable',
          'sources': [
            'test/side-by-side.cc',
          ],
          'dependencies': [
            'freetype2',
            'ots',
          ],
        },
      ],
    }],
  ],
}
