Skip to content

Commit 0c3d74f

Browse files
committed
Moves Opus codec to library build, with appropriate flags
Also resolves many warnings
1 parent fb5f278 commit 0c3d74f

File tree

1 file changed

+4
-149
lines changed

1 file changed

+4
-149
lines changed

omi/firmware/devkit/CMakeLists.txt

Lines changed: 4 additions & 149 deletions
Original file line numberDiff line numberDiff line change
@@ -20,152 +20,7 @@ target_sources(app PRIVATE
2020
# src/nfc.c future release
2121
)
2222

23-
target_sources_ifdef(CONFIG_OMI_CODEC_OPUS app PRIVATE
24-
src/lib/opus-1.2.1/A2NLSF.c
25-
src/lib/opus-1.2.1/CNG.c
26-
src/lib/opus-1.2.1/HP_variable_cutoff.c
27-
src/lib/opus-1.2.1/LPC_analysis_filter.c
28-
src/lib/opus-1.2.1/LPC_fit.c
29-
src/lib/opus-1.2.1/LPC_inv_pred_gain.c
30-
src/lib/opus-1.2.1/LP_variable_cutoff.c
31-
src/lib/opus-1.2.1/LTP_analysis_filter_FIX.c
32-
src/lib/opus-1.2.1/LTP_scale_ctrl_FIX.c
33-
src/lib/opus-1.2.1/NLSF2A.c
34-
src/lib/opus-1.2.1/NLSF_VQ.c
35-
src/lib/opus-1.2.1/NLSF_VQ_weights_laroia.c
36-
src/lib/opus-1.2.1/NLSF_decode.c
37-
src/lib/opus-1.2.1/NLSF_del_dec_quant.c
38-
src/lib/opus-1.2.1/NLSF_encode.c
39-
src/lib/opus-1.2.1/NLSF_stabilize.c
40-
src/lib/opus-1.2.1/NLSF_unpack.c
41-
src/lib/opus-1.2.1/NSQ.c
42-
src/lib/opus-1.2.1/NSQ_del_dec.c
43-
src/lib/opus-1.2.1/PLC.c
44-
src/lib/opus-1.2.1/VAD.c
45-
src/lib/opus-1.2.1/VQ_WMat_EC.c
46-
src/lib/opus-1.2.1/ana_filt_bank_1.c
47-
src/lib/opus-1.2.1/analysis.c
48-
src/lib/opus-1.2.1/apply_sine_window_FIX.c
49-
src/lib/opus-1.2.1/autocorr_FIX.c
50-
src/lib/opus-1.2.1/bands.c
51-
src/lib/opus-1.2.1/biquad_alt.c
52-
src/lib/opus-1.2.1/burg_modified_FIX.c
53-
src/lib/opus-1.2.1/bwexpander.c
54-
src/lib/opus-1.2.1/bwexpander_32.c
55-
src/lib/opus-1.2.1/celt.c
56-
src/lib/opus-1.2.1/celt_decoder.c
57-
src/lib/opus-1.2.1/celt_encoder.c
58-
src/lib/opus-1.2.1/celt_lpc.c
59-
src/lib/opus-1.2.1/arm/celt_pitch_xcorr_arm_gcc.s
60-
src/lib/opus-1.2.1/check_control_input.c
61-
src/lib/opus-1.2.1/code_signs.c
62-
src/lib/opus-1.2.1/control_SNR.c
63-
src/lib/opus-1.2.1/control_audio_bandwidth.c
64-
src/lib/opus-1.2.1/control_codec.c
65-
src/lib/opus-1.2.1/corrMatrix_FIX.c
66-
src/lib/opus-1.2.1/cwrs.c
67-
src/lib/opus-1.2.1/debug.c
68-
src/lib/opus-1.2.1/dec_API.c
69-
src/lib/opus-1.2.1/decode_core.c
70-
src/lib/opus-1.2.1/decode_frame.c
71-
src/lib/opus-1.2.1/decode_indices.c
72-
src/lib/opus-1.2.1/decode_parameters.c
73-
src/lib/opus-1.2.1/decode_pitch.c
74-
src/lib/opus-1.2.1/decode_pulses.c
75-
src/lib/opus-1.2.1/decoder_set_fs.c
76-
src/lib/opus-1.2.1/enc_API.c
77-
src/lib/opus-1.2.1/encode_frame_FIX.c
78-
src/lib/opus-1.2.1/encode_indices.c
79-
src/lib/opus-1.2.1/encode_pulses.c
80-
src/lib/opus-1.2.1/entcode.c
81-
src/lib/opus-1.2.1/entdec.c
82-
src/lib/opus-1.2.1/entenc.c
83-
src/lib/opus-1.2.1/find_LPC_FIX.c
84-
src/lib/opus-1.2.1/find_LTP_FIX.c
85-
src/lib/opus-1.2.1/find_pitch_lags_FIX.c
86-
src/lib/opus-1.2.1/find_pred_coefs_FIX.c
87-
src/lib/opus-1.2.1/gain_quant.c
88-
src/lib/opus-1.2.1/init_decoder.c
89-
src/lib/opus-1.2.1/init_encoder.c
90-
src/lib/opus-1.2.1/inner_prod_aligned.c
91-
src/lib/opus-1.2.1/interpolate.c
92-
src/lib/opus-1.2.1/k2a_FIX.c
93-
src/lib/opus-1.2.1/k2a_Q16_FIX.c
94-
src/lib/opus-1.2.1/kiss_fft.c
95-
src/lib/opus-1.2.1/laplace.c
96-
src/lib/opus-1.2.1/lin2log.c
97-
src/lib/opus-1.2.1/log2lin.c
98-
src/lib/opus-1.2.1/mathops.c
99-
src/lib/opus-1.2.1/mdct.c
100-
src/lib/opus-1.2.1/mlp.c
101-
src/lib/opus-1.2.1/mlp_data.c
102-
src/lib/opus-1.2.1/modes.c
103-
src/lib/opus-1.2.1/noise_shape_analysis_FIX.c
104-
src/lib/opus-1.2.1/opus.c
105-
src/lib/opus-1.2.1/opus_decoder.c
106-
src/lib/opus-1.2.1/opus_encoder.c
107-
src/lib/opus-1.2.1/opus_multistream.c
108-
src/lib/opus-1.2.1/opus_multistream_decoder.c
109-
src/lib/opus-1.2.1/opus_multistream_encoder.c
110-
src/lib/opus-1.2.1/pitch.c
111-
src/lib/opus-1.2.1/pitch_analysis_core_FIX.c
112-
src/lib/opus-1.2.1/pitch_est_tables.c
113-
src/lib/opus-1.2.1/process_NLSFs.c
114-
src/lib/opus-1.2.1/process_gains_FIX.c
115-
src/lib/opus-1.2.1/quant_LTP_gains.c
116-
src/lib/opus-1.2.1/quant_bands.c
117-
src/lib/opus-1.2.1/rate.c
118-
src/lib/opus-1.2.1/regularize_correlations_FIX.c
119-
src/lib/opus-1.2.1/repacketizer.c
120-
src/lib/opus-1.2.1/resampler.c
121-
src/lib/opus-1.2.1/resampler_down2.c
122-
src/lib/opus-1.2.1/resampler_down2_3.c
123-
src/lib/opus-1.2.1/resampler_private_AR2.c
124-
src/lib/opus-1.2.1/resampler_private_IIR_FIR.c
125-
src/lib/opus-1.2.1/resampler_private_down_FIR.c
126-
src/lib/opus-1.2.1/resampler_private_up2_HQ.c
127-
src/lib/opus-1.2.1/resampler_rom.c
128-
src/lib/opus-1.2.1/residual_energy16_FIX.c
129-
src/lib/opus-1.2.1/residual_energy_FIX.c
130-
src/lib/opus-1.2.1/schur64_FIX.c
131-
src/lib/opus-1.2.1/schur_FIX.c
132-
src/lib/opus-1.2.1/shell_coder.c
133-
src/lib/opus-1.2.1/sigm_Q15.c
134-
src/lib/opus-1.2.1/sort.c
135-
src/lib/opus-1.2.1/stereo_LR_to_MS.c
136-
src/lib/opus-1.2.1/stereo_MS_to_LR.c
137-
src/lib/opus-1.2.1/stereo_decode_pred.c
138-
src/lib/opus-1.2.1/stereo_encode_pred.c
139-
src/lib/opus-1.2.1/stereo_find_predictor.c
140-
src/lib/opus-1.2.1/stereo_quant_pred.c
141-
src/lib/opus-1.2.1/sum_sqr_shift.c
142-
src/lib/opus-1.2.1/table_LSF_cos.c
143-
src/lib/opus-1.2.1/tables_LTP.c
144-
src/lib/opus-1.2.1/tables_NLSF_CB_NB_MB.c
145-
src/lib/opus-1.2.1/tables_NLSF_CB_WB.c
146-
src/lib/opus-1.2.1/tables_gain.c
147-
src/lib/opus-1.2.1/tables_other.c
148-
src/lib/opus-1.2.1/tables_pitch_lag.c
149-
src/lib/opus-1.2.1/tables_pulses_per_block.c
150-
src/lib/opus-1.2.1/vector_ops_FIX.c
151-
src/lib/opus-1.2.1/vq.c
152-
src/lib/opus-1.2.1/warped_autocorrelation_FIX.c
153-
src/lib/opus-1.2.1/arm/celt_pitch_xcorr_arm_gcc.s
154-
)
155-
156-
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DARM_MATH_CM4")
157-
# set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DVAR_ARRAYS")
158-
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DOPUS_ARM_ASM")
159-
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DOPUS_ARM_INLINE_ASM")
160-
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DOPUS_ARM_INLINE_EDSP")
161-
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DOPUS_ARM_INLINE_MEDIA")
162-
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DOPUS_ARM_MAY_HAVE_EDSP")
163-
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DOPUS_ARM_PRESUME_EDSP")
164-
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DOPUS_BUILD")
165-
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DUSE_ALLOCA")
166-
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DFIXED_POINT -DDISABLE_FLOAT_API")
167-
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DHAVE_CONFIG_H")
168-
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DHAVE_ALLOCA_H")
169-
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fsingle-precision-constant") # A lot of constants are written as doubles
170-
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DHAVE_LRINT -DHAVE_LRINTF")
171-
23+
if(CONFIG_OMI_CODEC_OPUS)
24+
add_subdirectory(src/lib/opus-1.2.1/)
25+
target_link_libraries(app PRIVATE opus_codec)
26+
endif()

0 commit comments

Comments
 (0)