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

{
  'conditions': [
    ['OS=="win"', {
      'target_defaults': {
        'defines': [
          'NOMINMAX', # To suppress max/min macro definition.
          'WIN32',
        ],
      },
    }],
  ],
  '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': {
            'DelayLoadDLLs': ['zlib1.dll'],
          },
        },
      }],
    ],
  },
  '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)',
            ],
            'ldflags': [
              '<!(pkg-config freetype2 --libs)',
            ],
          },
        }],
      ],
    },
    {
      'target_name': 'idempotent',
      'type': 'executable',
      'sources': [
        'test/idempotent.cc',
      ],
      'dependencies': [
        'ots',
      ],
      'conditions': [
        ['OS=="linux"', {
          'cflags': [
            '<!(pkg-config freetype2 --cflags)',
          ],
          'ldflags': [
            '<!(pkg-config freetype2 --libs)',
          ],
        }],
      ],
    },
    {
      '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',
          ],
        },
      ],
    }],
  ],
}
