blob: f0292593c3bac561f9881fbe3d251759fd2c5405 [file] [log] [blame]
# 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': {
'conditions': [
# Define an "os_include" variable that points at the OS-specific generated
# headers. These were generated by running the configure script offline.
['os_posix == 1 and OS != "mac"', {
'os_include': 'linux'
}],
['OS=="mac"', {'os_include': 'mac'}],
['OS=="win"', {'os_include': 'win32'}],
],
'use_system_libxml%': 0,
},
'targets': [
{
'target_name': 'snappy',
'type': 'static_library',
'include_dirs': [
'<(os_include)',
'src',
'../..',
],
'direct_dependent_settings': {
'include_dirs': [
'<(os_include)',
'src',
],
},
'variables': {
'clang_warning_flags': [
# ComputeTable is unused,
# https://code.google.com/p/snappy/issues/detail?id=96
'-Wno-unused-function',
],
'clang_warning_flags_unset': [
# snappy-stubs-internal.h unapologetically has: using namespace std
# https://code.google.com/p/snappy/issues/detail?id=70
'-Wheader-hygiene',
],
},
'sources': [
'src/snappy-internal.h',
'src/snappy-sinksource.cc',
'src/snappy-sinksource.h',
'src/snappy-stubs-internal.cc',
'src/snappy-stubs-internal.h',
'src/snappy.cc',
'src/snappy.h',
],
'conditions': [
['OS=="linux" or OS=="mac"', {
'defines': [
# TODO(tfarina): Only Mac and Linux has the generated config.h for
# now. Generate the config.h for Windows too and enable this there
# as well.
'HAVE_CONFIG_H=1',
],
}],
['OS=="win"', {
# Signed/unsigned comparison
'msvs_disabled_warnings': [
# https://code.google.com/p/snappy/issues/detail?id=71
4018,
# https://code.google.com/p/snappy/issues/detail?id=75
4267,
],
}],
],
},
{
'target_name': 'snappy_unittest',
'type': 'executable',
'sources': [
'src/snappy-test.cc',
'src/snappy-test.h',
'src/snappy_unittest.cc',
],
'dependencies': [
'snappy',
'../../base/base.gyp:base',
'../../testing/gtest.gyp:gtest',
'../../third_party/zlib/zlib.gyp:zlib',
],
'variables': {
'clang_warning_flags': [ '-Wno-return-type' ],
'clang_warning_flags_unset': [ '-Wheader-hygiene' ],
},
'conditions': [
['OS=="linux" or OS=="mac"', {
'defines': [
# TODO(tfarina): Only Mac and Linux has the generated config.h for
# now. Generate the config.h for Windows too and enable this there
# as well.
'HAVE_CONFIG_H=1',
],
}],
],
},
],
}