# 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': {
    'use_system_libwebp%': 0,
  },
  'conditions': [
    ['use_system_libwebp==0', {
      'targets': [
        {
          'target_name': 'libwebp_dec',
          'type': 'static_library',
          'include_dirs': [
              '../third_party/externals/libwebp',
          ],
          'sources': [
            '../third_party/externals/libwebp/dec/alpha.c',
            '../third_party/externals/libwebp/dec/buffer.c',
            '../third_party/externals/libwebp/dec/frame.c',
            '../third_party/externals/libwebp/dec/idec.c',
            '../third_party/externals/libwebp/dec/io.c',
            '../third_party/externals/libwebp/dec/layer.c',
            '../third_party/externals/libwebp/dec/quant.c',
            '../third_party/externals/libwebp/dec/tree.c',
            '../third_party/externals/libwebp/dec/vp8.c',
            '../third_party/externals/libwebp/dec/vp8l.c',
            '../third_party/externals/libwebp/dec/webp.c',
          ],
        },
        {
          'target_name': 'libwebp_dsp',
          'type': 'static_library',
          'include_dirs': [
              '../third_party/externals/libwebp',
          ],
          'sources': [
            '../third_party/externals/libwebp/dsp/cpu.c',
            '../third_party/externals/libwebp/dsp/dec.c',
            '../third_party/externals/libwebp/dsp/dec_sse2.c',
            '../third_party/externals/libwebp/dsp/enc.c',
            '../third_party/externals/libwebp/dsp/enc_sse2.c',
            '../third_party/externals/libwebp/dsp/lossless.c',
            '../third_party/externals/libwebp/dsp/upsampling.c',
            '../third_party/externals/libwebp/dsp/upsampling_sse2.c',
            '../third_party/externals/libwebp/dsp/yuv.c',
          ],
          'conditions': [
            ['skia_os == "android"', {
              'dependencies' : [
                'android_deps.gyp:cpu_features',
              ],
            }],
          ],
        },
        {
          'target_name': 'libwebp_dsp_neon',
          'conditions': [
            ['armv7 == 1', {
              'type': 'static_library',
              'include_dirs': [
                  '../third_party/externals/libwebp',
              ],
              'sources': [
                '../third_party/externals/libwebp/dsp/dec_neon.c',
              ],
              # behavior similar dsp_neon.c.neon in an Android.mk
              'cflags!': [
                '-mfpu=vfpv3-d16',
              ],
              'cflags': [ '-mfpu=neon' ],
            },{  # "armv7 != 1"
              'type': 'none',
            }],
          ],
        },
        {
          'target_name': 'libwebp_enc',
          'type': 'static_library',
          'include_dirs': [
              '../third_party/externals/libwebp',
          ],
          'sources': [
            '../third_party/externals/libwebp/enc/alpha.c',
            '../third_party/externals/libwebp/enc/analysis.c',
            '../third_party/externals/libwebp/enc/backward_references.c',
            '../third_party/externals/libwebp/enc/config.c',
            '../third_party/externals/libwebp/enc/cost.c',
            '../third_party/externals/libwebp/enc/filter.c',
            '../third_party/externals/libwebp/enc/frame.c',
            '../third_party/externals/libwebp/enc/histogram.c',
            '../third_party/externals/libwebp/enc/iterator.c',
            '../third_party/externals/libwebp/enc/layer.c',
            '../third_party/externals/libwebp/enc/picture.c',
            '../third_party/externals/libwebp/enc/quant.c',
            '../third_party/externals/libwebp/enc/syntax.c',
            '../third_party/externals/libwebp/enc/tree.c',
            '../third_party/externals/libwebp/enc/vp8l.c',
            '../third_party/externals/libwebp/enc/webpenc.c',
          ],
        },
        {
          'target_name': 'libwebp_utils',
          'type': 'static_library',
          'include_dirs': [
              '../third_party/externals/libwebp',
          ],
          'sources': [
            '../third_party/externals/libwebp/utils/bit_reader.c',
            '../third_party/externals/libwebp/utils/bit_writer.c',
            '../third_party/externals/libwebp/utils/color_cache.c',
            '../third_party/externals/libwebp/utils/filters.c',
            '../third_party/externals/libwebp/utils/huffman.c',
            '../third_party/externals/libwebp/utils/huffman_encode.c',
            '../third_party/externals/libwebp/utils/quant_levels.c',
            '../third_party/externals/libwebp/utils/rescaler.c',
            '../third_party/externals/libwebp/utils/thread.c',
            '../third_party/externals/libwebp/utils/utils.c',
          ],
        },
        {
          'target_name': 'libwebp',
          'type': 'none',
          'dependencies' : [
            'libwebp_dec',
            'libwebp_dsp',
            'libwebp_dsp_neon',
            'libwebp_enc',
            'libwebp_utils',
          ],
          'direct_dependent_settings': {
            'include_dirs': [
              '../third_party/externals/libwebp',
            ],
          },
          'conditions': [
            ['OS!="win"', {'product_name': 'webp'}],
          ],
        },
      ],
    }, {
      'targets': [
        {
          'target_name': 'libwebp',
          'type': 'none',
          'direct_dependent_settings': {
            'defines': [
              'ENABLE_WEBP',
            ],
          },
          'link_settings': {
            'libraries': [
              '-lwebp',
            ],
          },
        }
      ],
    }],
  ],
}
