• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright (c) 2021-2022 Huawei Device Co., Ltd.
2# Licensed under the Apache License, Version 2.0 (the "License");
3# you may not use this file except in compliance with the License.
4# You may obtain a copy of the License at
5#
6#     http://www.apache.org/licenses/LICENSE-2.0
7#
8# Unless required by applicable law or agreed to in writing, software
9# distributed under the License is distributed on an "AS IS" BASIS,
10# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11# See the License for the specific language governing permissions and
12# limitations under the License.
13
14import("//build/ohos.gni")
15
16libsndfile_dir = "//third_party/libsnd"
17
18config("sndfile_config") {
19  visibility = [ ":*" ]
20
21  include_dirs = [
22    "$libsndfile_dir/src",
23    "$libsndfile_dir/include",
24    "$libsndfile_dir/src/GSM610",
25    "$libsndfile_dir/src/G72x",
26    "$libsndfile_dir/src/ALAC",
27  ]
28
29  cflags = [
30    "-Wall",
31    "-Werror",
32  ]
33}
34
35ohos_source_set("sndfile_sources") {
36  sources = [
37    "$libsndfile_dir/src/ALAC/ALACBitUtilities.c",
38    "$libsndfile_dir/src/ALAC/ag_dec.c",
39    "$libsndfile_dir/src/ALAC/ag_enc.c",
40    "$libsndfile_dir/src/ALAC/alac_decoder.c",
41    "$libsndfile_dir/src/ALAC/alac_encoder.c",
42    "$libsndfile_dir/src/ALAC/dp_dec.c",
43    "$libsndfile_dir/src/ALAC/dp_enc.c",
44    "$libsndfile_dir/src/ALAC/matrix_dec.c",
45    "$libsndfile_dir/src/ALAC/matrix_enc.c",
46    "$libsndfile_dir/src/G72x/g721.c",
47    "$libsndfile_dir/src/G72x/g723_16.c",
48    "$libsndfile_dir/src/G72x/g723_24.c",
49    "$libsndfile_dir/src/G72x/g723_40.c",
50    "$libsndfile_dir/src/G72x/g72x.c",
51    "$libsndfile_dir/src/GSM610/add.c",
52    "$libsndfile_dir/src/GSM610/code.c",
53    "$libsndfile_dir/src/GSM610/decode.c",
54    "$libsndfile_dir/src/GSM610/gsm_create.c",
55    "$libsndfile_dir/src/GSM610/gsm_decode.c",
56    "$libsndfile_dir/src/GSM610/gsm_destroy.c",
57    "$libsndfile_dir/src/GSM610/gsm_encode.c",
58    "$libsndfile_dir/src/GSM610/gsm_option.c",
59    "$libsndfile_dir/src/GSM610/long_term.c",
60    "$libsndfile_dir/src/GSM610/lpc.c",
61    "$libsndfile_dir/src/GSM610/preprocess.c",
62    "$libsndfile_dir/src/GSM610/rpe.c",
63    "$libsndfile_dir/src/GSM610/short_term.c",
64    "$libsndfile_dir/src/GSM610/table.c",
65    "$libsndfile_dir/src/aiff.c",
66    "$libsndfile_dir/src/alac.c",
67    "$libsndfile_dir/src/alaw.c",
68    "$libsndfile_dir/src/au.c",
69    "$libsndfile_dir/src/audio_detect.c",
70    "$libsndfile_dir/src/avr.c",
71    "$libsndfile_dir/src/broadcast.c",
72    "$libsndfile_dir/src/caf.c",
73    "$libsndfile_dir/src/cart.c",
74    "$libsndfile_dir/src/chanmap.c",
75    "$libsndfile_dir/src/chunk.c",
76    "$libsndfile_dir/src/command.c",
77    "$libsndfile_dir/src/common.c",
78    "$libsndfile_dir/src/dither.c",
79    "$libsndfile_dir/src/double64.c",
80    "$libsndfile_dir/src/dwd.c",
81    "$libsndfile_dir/src/dwvw.c",
82    "$libsndfile_dir/src/file_io.c",
83    "$libsndfile_dir/src/flac.c",
84    "$libsndfile_dir/src/float32.c",
85    "$libsndfile_dir/src/g72x.c",
86    "$libsndfile_dir/src/gsm610.c",
87    "$libsndfile_dir/src/htk.c",
88    "$libsndfile_dir/src/id3.c",
89    "$libsndfile_dir/src/ima_adpcm.c",
90    "$libsndfile_dir/src/ima_oki_adpcm.c",
91    "$libsndfile_dir/src/interleave.c",
92    "$libsndfile_dir/src/ircam.c",
93    "$libsndfile_dir/src/macos.c",
94    "$libsndfile_dir/src/mat4.c",
95    "$libsndfile_dir/src/mat5.c",
96    "$libsndfile_dir/src/mpc2k.c",
97    "$libsndfile_dir/src/ms_adpcm.c",
98    "$libsndfile_dir/src/nist.c",
99    "$libsndfile_dir/src/nms_adpcm.c",
100    "$libsndfile_dir/src/ogg.c",
101    "$libsndfile_dir/src/ogg_opus.c",
102    "$libsndfile_dir/src/ogg_pcm.c",
103    "$libsndfile_dir/src/ogg_speex.c",
104    "$libsndfile_dir/src/ogg_vcomment.c",
105    "$libsndfile_dir/src/ogg_vorbis.c",
106    "$libsndfile_dir/src/paf.c",
107    "$libsndfile_dir/src/pcm.c",
108    "$libsndfile_dir/src/pvf.c",
109    "$libsndfile_dir/src/raw.c",
110    "$libsndfile_dir/src/rf64.c",
111    "$libsndfile_dir/src/rx2.c",
112    "$libsndfile_dir/src/sd2.c",
113    "$libsndfile_dir/src/sds.c",
114    "$libsndfile_dir/src/sndfile.c",
115    "$libsndfile_dir/src/strings.c",
116    "$libsndfile_dir/src/svx.c",
117    "$libsndfile_dir/src/txw.c",
118    "$libsndfile_dir/src/ulaw.c",
119    "$libsndfile_dir/src/voc.c",
120    "$libsndfile_dir/src/vox_adpcm.c",
121    "$libsndfile_dir/src/w64.c",
122    "$libsndfile_dir/src/wav.c",
123    "$libsndfile_dir/src/wavlike.c",
124    "$libsndfile_dir/src/wve.c",
125    "$libsndfile_dir/src/xi.c",
126  ]
127
128  configs = [ ":sndfile_config" ]
129  subsystem_name = "multimedia"
130  part_name = "multimedia_audio_framework"
131}
132
133ohos_shared_library("sndfile") {
134  deps = [ ":sndfile_sources" ]
135
136  subsystem_name = "multimedia"
137  part_name = "multimedia_audio_framework"
138}
139