Upstream version 10.39.225.0
[platform/framework/web/crosswalk.git] / src / third_party / webrtc / modules / audio_coding / codecs / isac / fix / source / isacfix.gypi
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': 'iSACFix',
13       'type': 'static_library',
14       'dependencies': [
15         '<(webrtc_root)/common_audio/common_audio.gyp:common_audio',
16         '<(webrtc_root)/system_wrappers/source/system_wrappers.gyp:system_wrappers',
17       ],
18       'include_dirs': [
19         '../interface',
20         '<(webrtc_root)'
21       ],
22       'direct_dependent_settings': {
23         'include_dirs': [
24           '../interface',
25           '<(webrtc_root)',
26         ],
27       },
28       'sources': [
29         '../interface/isacfix.h',
30         'arith_routines.c',
31         'arith_routines_hist.c',
32         'arith_routines_logist.c',
33         'bandwidth_estimator.c',
34         'decode.c',
35         'decode_bwe.c',
36         'decode_plc.c',
37         'encode.c',
38         'entropy_coding.c',
39         'fft.c',
40         'filterbank_tables.c',
41         'filterbanks.c',
42         'filters.c',
43         'initialize.c',
44         'isacfix.c',
45         'lattice.c',
46         'lattice_c.c',
47         'lpc_masking_model.c',
48         'lpc_tables.c',
49         'pitch_estimator.c',
50         'pitch_estimator_c.c',
51         'pitch_filter.c',
52         'pitch_filter_c.c',
53         'pitch_gain_tables.c',
54         'pitch_lag_tables.c',
55         'spectrum_ar_model_tables.c',
56         'transform.c',
57         'transform_tables.c',
58         'arith_routins.h',
59         'bandwidth_estimator.h',
60         'codec.h',
61         'entropy_coding.h',
62         'fft.h',
63         'filterbank_tables.h',
64         'lpc_masking_model.h',
65         'lpc_tables.h',
66         'pitch_estimator.h',
67         'pitch_gain_tables.h',
68         'pitch_lag_tables.h',
69         'settings.h',
70         'spectrum_ar_model_tables.h',
71         'structs.h',
72       ],
73       'conditions': [
74         ['OS!="win"', {
75           'defines': [
76             'WEBRTC_LINUX',
77           ],
78         }],
79         ['(target_arch=="arm" and arm_version==7) or target_arch=="armv7"', {
80           'dependencies': [ 'isac_neon', ],
81           'sources': [
82             'lattice_armv7.S',
83             'pitch_filter_armv6.S',
84           ],
85           'sources!': [
86             'lattice_c.c',
87             'pitch_filter_c.c',
88           ],
89         }],
90         ['target_arch=="mipsel"', {
91           'sources': [
92             'entropy_coding_mips.c',
93             'filters_mips.c',
94             'lattice_mips.c',
95             'pitch_estimator_mips.c',
96             'transform_mips.c',
97           ],
98           'sources!': [
99             'lattice_c.c',
100             'pitch_estimator_c.c',
101           ],
102           'conditions': [
103             ['mips_dsp_rev>0', {
104               'sources': [
105                 'filterbanks_mips.c',
106               ],
107             }],
108             ['mips_dsp_rev>1', {
109               'sources': [
110                 'lpc_masking_model_mips.c',
111                 'pitch_filter_mips.c',
112               ],
113               'sources!': [
114                 'pitch_filter_c.c',
115               ],
116             }],
117           ],
118         }],
119       ],
120     },
121   ],
122   'conditions': [
123     ['(target_arch=="arm" and arm_version==7) or target_arch=="armv7"', {
124       'targets': [
125         {
126           'target_name': 'isac_neon',
127           'type': 'static_library',
128           'includes': ['../../../../../../build/arm_neon.gypi',],
129           'dependencies': [
130             '<(webrtc_root)/common_audio/common_audio.gyp:common_audio',
131           ],
132           'include_dirs': [
133             '<(webrtc_root)',
134           ],
135           'sources': [
136             'entropy_coding_neon.c',
137             'filterbanks_neon.S',
138             'filters_neon.S',
139             'lattice_neon.S',
140             'lpc_masking_model_neon.S',
141             'transform_neon.S',
142           ],
143           'conditions': [
144             # Disable LTO in isac_neon target due to compiler bug
145             ['use_lto==1', {
146               'cflags!': [
147                 '-flto',
148                 '-ffat-lto-objects',
149               ],
150             }],
151           ],
152         },
153       ],
154     }],
155   ],
156 }