1# This file is generated by gyp; do not edit.
2
3include $(CLEAR_VARS)
4
5LOCAL_MODULE_CLASS := STATIC_LIBRARIES
6LOCAL_MODULE := third_party_opus_opus_gyp
7LOCAL_MODULE_SUFFIX := .a
8LOCAL_MODULE_TARGET_ARCH := $(TARGET_$(GYP_VAR_PREFIX)ARCH)
9gyp_intermediate_dir := $(call local-intermediates-dir,,$(GYP_VAR_PREFIX))
10gyp_shared_intermediate_dir := $(call intermediates-dir-for,GYP,shared,,,$(GYP_VAR_PREFIX))
11
12# Make sure our deps are built first.
13GYP_TARGET_DEPENDENCIES :=
14
15### Rules for action "convert_assembler":
16$(gyp_intermediate_dir)/celt_pitch_xcorr_arm_gnu.S: gyp_local_path := $(LOCAL_PATH)
17$(gyp_intermediate_dir)/celt_pitch_xcorr_arm_gnu.S: gyp_var_prefix := $(GYP_VAR_PREFIX)
18$(gyp_intermediate_dir)/celt_pitch_xcorr_arm_gnu.S: gyp_intermediate_dir := $(abspath $(gyp_intermediate_dir))
19$(gyp_intermediate_dir)/celt_pitch_xcorr_arm_gnu.S: gyp_shared_intermediate_dir := $(abspath $(gyp_shared_intermediate_dir))
20$(gyp_intermediate_dir)/celt_pitch_xcorr_arm_gnu.S: export PATH := $(subst $(ANDROID_BUILD_PATHS),,$(PATH))
21$(gyp_intermediate_dir)/celt_pitch_xcorr_arm_gnu.S: $(LOCAL_PATH)/third_party/opus/src/celt/arm/arm2gnu.pl $(LOCAL_PATH)/third_party/opus/src/celt/arm/celt_pitch_xcorr_arm.s $(GYP_TARGET_DEPENDENCIES)
22	@echo "Gyp action: Convert Opus assembler for ARM. ($@)"
23	$(hide)cd $(gyp_local_path)/third_party/opus; mkdir -p $(gyp_intermediate_dir); bash -c "perl src/celt/arm/arm2gnu.pl src/celt/arm/celt_pitch_xcorr_arm.s | sed \"s/OPUS_ARM_MAY_HAVE_[A-Z]*/1/g\" | sed \"/.include/d\" > $(gyp_intermediate_dir)/celt_pitch_xcorr_arm_gnu.S"
24
25
26
27GYP_GENERATED_OUTPUTS := \
28	$(gyp_intermediate_dir)/celt_pitch_xcorr_arm_gnu.S
29
30# Make sure our deps and generated files are built first.
31LOCAL_ADDITIONAL_DEPENDENCIES := $(GYP_TARGET_DEPENDENCIES) $(GYP_GENERATED_OUTPUTS)
32
33LOCAL_GENERATED_SOURCES := \
34	$(gyp_intermediate_dir)/celt_pitch_xcorr_arm_gnu.S
35
36GYP_COPIED_SOURCE_ORIGIN_DIRS :=
37
38LOCAL_SRC_FILES := \
39	third_party/opus/src/celt/bands.c \
40	third_party/opus/src/celt/celt.c \
41	third_party/opus/src/celt/celt_decoder.c \
42	third_party/opus/src/celt/celt_encoder.c \
43	third_party/opus/src/celt/celt_lpc.c \
44	third_party/opus/src/celt/cwrs.c \
45	third_party/opus/src/celt/entcode.c \
46	third_party/opus/src/celt/entdec.c \
47	third_party/opus/src/celt/entenc.c \
48	third_party/opus/src/celt/kiss_fft.c \
49	third_party/opus/src/celt/laplace.c \
50	third_party/opus/src/celt/mathops.c \
51	third_party/opus/src/celt/mdct.c \
52	third_party/opus/src/celt/modes.c \
53	third_party/opus/src/celt/pitch.c \
54	third_party/opus/src/celt/quant_bands.c \
55	third_party/opus/src/celt/rate.c \
56	third_party/opus/src/celt/vq.c \
57	third_party/opus/src/silk/A2NLSF.c \
58	third_party/opus/src/silk/ana_filt_bank_1.c \
59	third_party/opus/src/silk/biquad_alt.c \
60	third_party/opus/src/silk/bwexpander.c \
61	third_party/opus/src/silk/bwexpander_32.c \
62	third_party/opus/src/silk/check_control_input.c \
63	third_party/opus/src/silk/CNG.c \
64	third_party/opus/src/silk/code_signs.c \
65	third_party/opus/src/silk/control_audio_bandwidth.c \
66	third_party/opus/src/silk/control_codec.c \
67	third_party/opus/src/silk/control_SNR.c \
68	third_party/opus/src/silk/debug.c \
69	third_party/opus/src/silk/dec_API.c \
70	third_party/opus/src/silk/decode_core.c \
71	third_party/opus/src/silk/decode_frame.c \
72	third_party/opus/src/silk/decode_indices.c \
73	third_party/opus/src/silk/decode_parameters.c \
74	third_party/opus/src/silk/decode_pitch.c \
75	third_party/opus/src/silk/decode_pulses.c \
76	third_party/opus/src/silk/decoder_set_fs.c \
77	third_party/opus/src/silk/enc_API.c \
78	third_party/opus/src/silk/encode_indices.c \
79	third_party/opus/src/silk/encode_pulses.c \
80	third_party/opus/src/silk/gain_quant.c \
81	third_party/opus/src/silk/HP_variable_cutoff.c \
82	third_party/opus/src/silk/init_decoder.c \
83	third_party/opus/src/silk/init_encoder.c \
84	third_party/opus/src/silk/inner_prod_aligned.c \
85	third_party/opus/src/silk/interpolate.c \
86	third_party/opus/src/silk/lin2log.c \
87	third_party/opus/src/silk/log2lin.c \
88	third_party/opus/src/silk/LP_variable_cutoff.c \
89	third_party/opus/src/silk/LPC_analysis_filter.c \
90	third_party/opus/src/silk/LPC_inv_pred_gain.c \
91	third_party/opus/src/silk/NLSF2A.c \
92	third_party/opus/src/silk/NLSF_decode.c \
93	third_party/opus/src/silk/NLSF_del_dec_quant.c \
94	third_party/opus/src/silk/NLSF_encode.c \
95	third_party/opus/src/silk/NLSF_stabilize.c \
96	third_party/opus/src/silk/NLSF_unpack.c \
97	third_party/opus/src/silk/NLSF_VQ.c \
98	third_party/opus/src/silk/NLSF_VQ_weights_laroia.c \
99	third_party/opus/src/silk/NSQ.c \
100	third_party/opus/src/silk/NSQ_del_dec.c \
101	third_party/opus/src/silk/pitch_est_tables.c \
102	third_party/opus/src/silk/PLC.c \
103	third_party/opus/src/silk/process_NLSFs.c \
104	third_party/opus/src/silk/quant_LTP_gains.c \
105	third_party/opus/src/silk/resampler.c \
106	third_party/opus/src/silk/resampler_down2.c \
107	third_party/opus/src/silk/resampler_down2_3.c \
108	third_party/opus/src/silk/resampler_private_AR2.c \
109	third_party/opus/src/silk/resampler_private_down_FIR.c \
110	third_party/opus/src/silk/resampler_private_IIR_FIR.c \
111	third_party/opus/src/silk/resampler_private_up2_HQ.c \
112	third_party/opus/src/silk/resampler_rom.c \
113	third_party/opus/src/silk/shell_coder.c \
114	third_party/opus/src/silk/sigm_Q15.c \
115	third_party/opus/src/silk/sort.c \
116	third_party/opus/src/silk/stereo_decode_pred.c \
117	third_party/opus/src/silk/stereo_encode_pred.c \
118	third_party/opus/src/silk/stereo_find_predictor.c \
119	third_party/opus/src/silk/stereo_LR_to_MS.c \
120	third_party/opus/src/silk/stereo_MS_to_LR.c \
121	third_party/opus/src/silk/stereo_quant_pred.c \
122	third_party/opus/src/silk/sum_sqr_shift.c \
123	third_party/opus/src/silk/table_LSF_cos.c \
124	third_party/opus/src/silk/tables_gain.c \
125	third_party/opus/src/silk/tables_LTP.c \
126	third_party/opus/src/silk/tables_NLSF_CB_NB_MB.c \
127	third_party/opus/src/silk/tables_NLSF_CB_WB.c \
128	third_party/opus/src/silk/tables_other.c \
129	third_party/opus/src/silk/tables_pitch_lag.c \
130	third_party/opus/src/silk/tables_pulses_per_block.c \
131	third_party/opus/src/silk/VAD.c \
132	third_party/opus/src/silk/VQ_WMat_EC.c \
133	third_party/opus/src/src/analysis.c \
134	third_party/opus/src/src/mlp.c \
135	third_party/opus/src/src/mlp_data.c \
136	third_party/opus/src/src/opus.c \
137	third_party/opus/src/src/opus_decoder.c \
138	third_party/opus/src/src/opus_encoder.c \
139	third_party/opus/src/src/opus_multistream.c \
140	third_party/opus/src/src/opus_multistream_decoder.c \
141	third_party/opus/src/src/opus_multistream_encoder.c \
142	third_party/opus/src/src/repacketizer.c \
143	third_party/opus/src/silk/fixed/apply_sine_window_FIX.c \
144	third_party/opus/src/silk/fixed/autocorr_FIX.c \
145	third_party/opus/src/silk/fixed/burg_modified_FIX.c \
146	third_party/opus/src/silk/fixed/corrMatrix_FIX.c \
147	third_party/opus/src/silk/fixed/encode_frame_FIX.c \
148	third_party/opus/src/silk/fixed/find_LPC_FIX.c \
149	third_party/opus/src/silk/fixed/find_LTP_FIX.c \
150	third_party/opus/src/silk/fixed/find_pitch_lags_FIX.c \
151	third_party/opus/src/silk/fixed/find_pred_coefs_FIX.c \
152	third_party/opus/src/silk/fixed/k2a_FIX.c \
153	third_party/opus/src/silk/fixed/k2a_Q16_FIX.c \
154	third_party/opus/src/silk/fixed/LTP_analysis_filter_FIX.c \
155	third_party/opus/src/silk/fixed/LTP_scale_ctrl_FIX.c \
156	third_party/opus/src/silk/fixed/noise_shape_analysis_FIX.c \
157	third_party/opus/src/silk/fixed/pitch_analysis_core_FIX.c \
158	third_party/opus/src/silk/fixed/prefilter_FIX.c \
159	third_party/opus/src/silk/fixed/process_gains_FIX.c \
160	third_party/opus/src/silk/fixed/regularize_correlations_FIX.c \
161	third_party/opus/src/silk/fixed/residual_energy16_FIX.c \
162	third_party/opus/src/silk/fixed/residual_energy_FIX.c \
163	third_party/opus/src/silk/fixed/schur64_FIX.c \
164	third_party/opus/src/silk/fixed/schur_FIX.c \
165	third_party/opus/src/silk/fixed/solve_LS_FIX.c \
166	third_party/opus/src/silk/fixed/vector_ops_FIX.c \
167	third_party/opus/src/silk/fixed/warped_autocorrelation_FIX.c \
168	third_party/opus/src/celt/arm/arm_celt_map.c \
169	third_party/opus/src/celt/arm/armcpu.c
170
171
172# Flags passed to both C and C++ files.
173MY_CFLAGS_Debug := \
174	-fstack-protector \
175	--param=ssp-buffer-size=4 \
176	-fno-strict-aliasing \
177	-Wno-unused-parameter \
178	-Wno-missing-field-initializers \
179	-fvisibility=hidden \
180	-pipe \
181	-fPIC \
182	-Wno-unused-local-typedefs \
183	-O3 \
184	-Wno-format \
185	-fno-tree-sra \
186	-fno-caller-saves \
187	-Wno-psabi \
188	-fno-partial-inlining \
189	-fno-early-inlining \
190	-fno-tree-copy-prop \
191	-fno-tree-loop-optimize \
192	-fno-move-loop-invariants \
193	-ffunction-sections \
194	-funwind-tables \
195	-g \
196	-fstack-protector \
197	-fno-short-enums \
198	-finline-limit=64 \
199	-Wa,--noexecstack \
200	-U_FORTIFY_SOURCE \
201	-Wno-extra \
202	-Wno-ignored-qualifiers \
203	-Wno-type-limits \
204	-Wno-unused-but-set-variable \
205	-Wno-address \
206	-Wno-format-security \
207	-Wno-return-type \
208	-Wno-sequence-point \
209	-g \
210	-gdwarf-4 \
211	-fdata-sections \
212	-ffunction-sections \
213	-fomit-frame-pointer \
214	-funwind-tables
215
216MY_DEFS_Debug := \
217	'-DV8_DEPRECATION_WARNINGS' \
218	'-D_FILE_OFFSET_BITS=64' \
219	'-DNO_TCMALLOC' \
220	'-DDISABLE_NACL' \
221	'-DCHROMIUM_BUILD' \
222	'-DUSE_LIBJPEG_TURBO=1' \
223	'-DENABLE_WEBRTC=1' \
224	'-DUSE_PROPRIETARY_CODECS' \
225	'-DENABLE_BROWSER_CDMS' \
226	'-DENABLE_CONFIGURATION_POLICY' \
227	'-DDISCARDABLE_MEMORY_ALWAYS_SUPPORTED_NATIVELY' \
228	'-DSYSTEM_NATIVELY_SIGNALS_MEMORY_PRESSURE' \
229	'-DENABLE_EGLIMAGE=1' \
230	'-DCLD_VERSION=1' \
231	'-DENABLE_PRINTING=1' \
232	'-DENABLE_MANAGED_USERS=1' \
233	'-DDATA_REDUCTION_FALLBACK_HOST="http://compress.googlezip.net:80/"' \
234	'-DDATA_REDUCTION_DEV_HOST="https://proxy-dev.googlezip.net:443/"' \
235	'-DDATA_REDUCTION_DEV_FALLBACK_HOST="http://proxy-dev.googlezip.net:80/"' \
236	'-DSPDY_PROXY_AUTH_ORIGIN="https://proxy.googlezip.net:443/"' \
237	'-DDATA_REDUCTION_PROXY_PROBE_URL="http://check.googlezip.net/connect"' \
238	'-DDATA_REDUCTION_PROXY_WARMUP_URL="http://www.gstatic.com/generate_204"' \
239	'-DVIDEO_HOLE=1' \
240	'-DENABLE_LOAD_COMPLETION_HACKS=1' \
241	'-DOPUS_BUILD' \
242	'-DOPUS_EXPORT=' \
243	'-DHAVE_LRINT' \
244	'-DHAVE_LRINTF' \
245	'-DVAR_ARRAYS' \
246	'-DFIXED_POINT' \
247	'-DOPUS_ARM_ASM' \
248	'-DOPUS_ARM_INLINE_ASM' \
249	'-DOPUS_ARM_INLINE_EDSP' \
250	'-DOPUS_ARM_MAY_HAVE_EDSP' \
251	'-DOPUS_ARM_MAY_HAVE_MEDIA' \
252	'-DOPUS_ARM_MAY_HAVE_NEON' \
253	'-DOPUS_HAVE_RTCD' \
254	'-DUSE_OPENSSL=1' \
255	'-DUSE_OPENSSL_CERTS=1' \
256	'-DANDROID' \
257	'-D__GNU_SOURCE=1' \
258	'-DUSE_STLPORT=1' \
259	'-D_STLP_USE_PTR_SPECIALIZATIONS=1' \
260	'-DCHROME_BUILD_ID=""' \
261	'-DDYNAMIC_ANNOTATIONS_ENABLED=1' \
262	'-DWTF_USE_DYNAMIC_ANNOTATIONS=1' \
263	'-D_DEBUG'
264
265
266# Include paths placed before CFLAGS/CPPFLAGS
267LOCAL_C_INCLUDES_Debug := \
268	$(gyp_shared_intermediate_dir) \
269	$(LOCAL_PATH)/third_party/opus/src/celt \
270	$(LOCAL_PATH)/third_party/opus/src/include \
271	$(LOCAL_PATH)/third_party/opus/src/silk \
272	$(LOCAL_PATH)/third_party/opus/src/silk/fixed \
273	$(PWD)/frameworks/wilhelm/include \
274	$(PWD)/bionic \
275	$(PWD)/external/stlport/stlport
276
277
278# Flags passed to only C++ (and not C) files.
279LOCAL_CPPFLAGS_Debug := \
280	-fno-exceptions \
281	-fno-rtti \
282	-fno-threadsafe-statics \
283	-fvisibility-inlines-hidden \
284	-Wno-deprecated \
285	-Wno-abi \
286	-std=gnu++11 \
287	-Wno-narrowing \
288	-Wno-literal-suffix \
289	-Wno-non-virtual-dtor \
290	-Wno-sign-promo \
291	-Wno-non-virtual-dtor
292
293
294# Flags passed to both C and C++ files.
295MY_CFLAGS_Release := \
296	-fstack-protector \
297	--param=ssp-buffer-size=4 \
298	-fno-strict-aliasing \
299	-Wno-unused-parameter \
300	-Wno-missing-field-initializers \
301	-fvisibility=hidden \
302	-pipe \
303	-fPIC \
304	-Wno-unused-local-typedefs \
305	-O3 \
306	-Wno-format \
307	-fno-tree-sra \
308	-fno-caller-saves \
309	-Wno-psabi \
310	-fno-partial-inlining \
311	-fno-early-inlining \
312	-fno-tree-copy-prop \
313	-fno-tree-loop-optimize \
314	-fno-move-loop-invariants \
315	-ffunction-sections \
316	-funwind-tables \
317	-g \
318	-fstack-protector \
319	-fno-short-enums \
320	-finline-limit=64 \
321	-Wa,--noexecstack \
322	-U_FORTIFY_SOURCE \
323	-Wno-extra \
324	-Wno-ignored-qualifiers \
325	-Wno-type-limits \
326	-Wno-unused-but-set-variable \
327	-Wno-address \
328	-Wno-format-security \
329	-Wno-return-type \
330	-Wno-sequence-point \
331	-fno-ident \
332	-fdata-sections \
333	-ffunction-sections \
334	-fomit-frame-pointer \
335	-funwind-tables
336
337MY_DEFS_Release := \
338	'-DV8_DEPRECATION_WARNINGS' \
339	'-D_FILE_OFFSET_BITS=64' \
340	'-DNO_TCMALLOC' \
341	'-DDISABLE_NACL' \
342	'-DCHROMIUM_BUILD' \
343	'-DUSE_LIBJPEG_TURBO=1' \
344	'-DENABLE_WEBRTC=1' \
345	'-DUSE_PROPRIETARY_CODECS' \
346	'-DENABLE_BROWSER_CDMS' \
347	'-DENABLE_CONFIGURATION_POLICY' \
348	'-DDISCARDABLE_MEMORY_ALWAYS_SUPPORTED_NATIVELY' \
349	'-DSYSTEM_NATIVELY_SIGNALS_MEMORY_PRESSURE' \
350	'-DENABLE_EGLIMAGE=1' \
351	'-DCLD_VERSION=1' \
352	'-DENABLE_PRINTING=1' \
353	'-DENABLE_MANAGED_USERS=1' \
354	'-DDATA_REDUCTION_FALLBACK_HOST="http://compress.googlezip.net:80/"' \
355	'-DDATA_REDUCTION_DEV_HOST="https://proxy-dev.googlezip.net:443/"' \
356	'-DDATA_REDUCTION_DEV_FALLBACK_HOST="http://proxy-dev.googlezip.net:80/"' \
357	'-DSPDY_PROXY_AUTH_ORIGIN="https://proxy.googlezip.net:443/"' \
358	'-DDATA_REDUCTION_PROXY_PROBE_URL="http://check.googlezip.net/connect"' \
359	'-DDATA_REDUCTION_PROXY_WARMUP_URL="http://www.gstatic.com/generate_204"' \
360	'-DVIDEO_HOLE=1' \
361	'-DENABLE_LOAD_COMPLETION_HACKS=1' \
362	'-DOPUS_BUILD' \
363	'-DOPUS_EXPORT=' \
364	'-DHAVE_LRINT' \
365	'-DHAVE_LRINTF' \
366	'-DVAR_ARRAYS' \
367	'-DFIXED_POINT' \
368	'-DOPUS_ARM_ASM' \
369	'-DOPUS_ARM_INLINE_ASM' \
370	'-DOPUS_ARM_INLINE_EDSP' \
371	'-DOPUS_ARM_MAY_HAVE_EDSP' \
372	'-DOPUS_ARM_MAY_HAVE_MEDIA' \
373	'-DOPUS_ARM_MAY_HAVE_NEON' \
374	'-DOPUS_HAVE_RTCD' \
375	'-DUSE_OPENSSL=1' \
376	'-DUSE_OPENSSL_CERTS=1' \
377	'-DANDROID' \
378	'-D__GNU_SOURCE=1' \
379	'-DUSE_STLPORT=1' \
380	'-D_STLP_USE_PTR_SPECIALIZATIONS=1' \
381	'-DCHROME_BUILD_ID=""' \
382	'-DNDEBUG' \
383	'-DNVALGRIND' \
384	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
385
386
387# Include paths placed before CFLAGS/CPPFLAGS
388LOCAL_C_INCLUDES_Release := \
389	$(gyp_shared_intermediate_dir) \
390	$(LOCAL_PATH)/third_party/opus/src/celt \
391	$(LOCAL_PATH)/third_party/opus/src/include \
392	$(LOCAL_PATH)/third_party/opus/src/silk \
393	$(LOCAL_PATH)/third_party/opus/src/silk/fixed \
394	$(PWD)/frameworks/wilhelm/include \
395	$(PWD)/bionic \
396	$(PWD)/external/stlport/stlport
397
398
399# Flags passed to only C++ (and not C) files.
400LOCAL_CPPFLAGS_Release := \
401	-fno-exceptions \
402	-fno-rtti \
403	-fno-threadsafe-statics \
404	-fvisibility-inlines-hidden \
405	-Wno-deprecated \
406	-Wno-abi \
407	-std=gnu++11 \
408	-Wno-narrowing \
409	-Wno-literal-suffix \
410	-Wno-non-virtual-dtor \
411	-Wno-sign-promo \
412	-Wno-non-virtual-dtor
413
414
415LOCAL_CFLAGS := $(MY_CFLAGS_$(GYP_CONFIGURATION)) $(MY_DEFS_$(GYP_CONFIGURATION))
416LOCAL_C_INCLUDES := $(GYP_COPIED_SOURCE_ORIGIN_DIRS) $(LOCAL_C_INCLUDES_$(GYP_CONFIGURATION))
417LOCAL_CPPFLAGS := $(LOCAL_CPPFLAGS_$(GYP_CONFIGURATION))
418LOCAL_ASFLAGS := $(LOCAL_CFLAGS)
419### Rules for final target.
420
421LOCAL_SHARED_LIBRARIES := \
422	libstlport \
423	libdl
424
425# Add target alias to "gyp_all_modules" target.
426.PHONY: gyp_all_modules
427gyp_all_modules: third_party_opus_opus_gyp
428
429# Alias gyp target name.
430.PHONY: opus
431opus: third_party_opus_opus_gyp
432
433include $(BUILD_STATIC_LIBRARY)
434