1# Copyright (c) 2012 The WebRTC project authors. All Rights Reserved.
2#
3# Use of this source code is governed by a BSD-style license
4# that can be found in the LICENSE file in the root of the source
5# tree. An additional intellectual property rights grant can be found
6# in the file PATENTS.  All contributing project authors may
7# be found in the AUTHORS file in the root of the source tree.
8
9{
10  'targets': [
11    {
12      'target_name': 'isac_fix',
13      'type': 'static_library',
14      'dependencies': [
15        '<(webrtc_root)/common_audio/common_audio.gyp:common_audio',
16        '<(webrtc_root)/system_wrappers/system_wrappers.gyp:system_wrappers',
17        'isac_common',
18      ],
19      'include_dirs': [
20        'fix/include',
21        '<(webrtc_root)'
22      ],
23      'direct_dependent_settings': {
24        'include_dirs': [
25          'fix/include',
26          '<(webrtc_root)',
27        ],
28      },
29      'sources': [
30        'fix/include/audio_decoder_isacfix.h',
31        'fix/include/audio_encoder_isacfix.h',
32        'fix/include/isacfix.h',
33        'fix/source/arith_routines.c',
34        'fix/source/arith_routines_hist.c',
35        'fix/source/arith_routines_logist.c',
36        'fix/source/audio_decoder_isacfix.cc',
37        'fix/source/audio_encoder_isacfix.cc',
38        'fix/source/bandwidth_estimator.c',
39        'fix/source/decode.c',
40        'fix/source/decode_bwe.c',
41        'fix/source/decode_plc.c',
42        'fix/source/encode.c',
43        'fix/source/entropy_coding.c',
44        'fix/source/fft.c',
45        'fix/source/filterbank_tables.c',
46        'fix/source/filterbanks.c',
47        'fix/source/filters.c',
48        'fix/source/initialize.c',
49        'fix/source/isac_fix_type.h',
50        'fix/source/isacfix.c',
51        'fix/source/lattice.c',
52        'fix/source/lattice_c.c',
53        'fix/source/lpc_masking_model.c',
54        'fix/source/lpc_tables.c',
55        'fix/source/pitch_estimator.c',
56        'fix/source/pitch_estimator_c.c',
57        'fix/source/pitch_filter.c',
58        'fix/source/pitch_filter_c.c',
59        'fix/source/pitch_gain_tables.c',
60        'fix/source/pitch_lag_tables.c',
61        'fix/source/spectrum_ar_model_tables.c',
62        'fix/source/transform.c',
63        'fix/source/transform_tables.c',
64        'fix/source/arith_routins.h',
65        'fix/source/bandwidth_estimator.h',
66        'fix/source/codec.h',
67        'fix/source/entropy_coding.h',
68        'fix/source/fft.h',
69        'fix/source/filterbank_tables.h',
70        'fix/source/lpc_masking_model.h',
71        'fix/source/lpc_tables.h',
72        'fix/source/pitch_estimator.h',
73        'fix/source/pitch_gain_tables.h',
74        'fix/source/pitch_lag_tables.h',
75        'fix/source/settings.h',
76        'fix/source/spectrum_ar_model_tables.h',
77        'fix/source/structs.h',
78      ],
79      'conditions': [
80        ['target_arch=="arm" and arm_version>=7', {
81          'sources': [
82            'fix/source/lattice_armv7.S',
83            'fix/source/pitch_filter_armv6.S',
84          ],
85          'sources!': [
86            'fix/source/lattice_c.c',
87            'fix/source/pitch_filter_c.c',
88          ],
89        }],
90        ['build_with_neon==1', {
91          'dependencies': ['isac_neon', ],
92        }],
93        ['target_arch=="mipsel" and mips_arch_variant!="r6"', {
94          'sources': [
95            'fix/source/entropy_coding_mips.c',
96            'fix/source/filters_mips.c',
97            'fix/source/lattice_mips.c',
98            'fix/source/pitch_estimator_mips.c',
99            'fix/source/transform_mips.c',
100          ],
101          'sources!': [
102            'fix/source/lattice_c.c',
103            'fix/source/pitch_estimator_c.c',
104          ],
105          'conditions': [
106            ['mips_dsp_rev>0', {
107              'sources': [
108                'fix/source/filterbanks_mips.c',
109              ],
110            }],
111            ['mips_dsp_rev>1', {
112              'sources': [
113                'fix/source/lpc_masking_model_mips.c',
114                'fix/source/pitch_filter_mips.c',
115              ],
116              'sources!': [
117                'fix/source/pitch_filter_c.c',
118              ],
119            }],
120          ],
121        }],
122      ],
123    },
124  ],
125  'conditions': [
126    ['build_with_neon==1', {
127      'targets': [
128        {
129          'target_name': 'isac_neon',
130          'type': 'static_library',
131          'includes': ['../../../../build/arm_neon.gypi',],
132          'dependencies': [
133            '<(webrtc_root)/common_audio/common_audio.gyp:common_audio',
134          ],
135          'sources': [
136            'fix/source/entropy_coding_neon.c',
137            'fix/source/filterbanks_neon.c',
138            'fix/source/filters_neon.c',
139            'fix/source/lattice_neon.c',
140            'fix/source/transform_neon.c',
141          ],
142        },
143      ],
144    }],
145  ],
146}
147