• 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
16config("sndfile_config") {
17  visibility = [ ":*" ]
18
19  include_dirs = [
20    "src",
21    "include",
22    "src/GSM610",
23    "src/G72x",
24    "src/ALAC",
25  ]
26
27  cflags = [
28    "-Wall",
29    "-Werror",
30    "-Wno-unused-but-set-variable",
31  ]
32}
33
34ohos_source_set("sndfile_sources") {
35  sources = [
36    "src/ALAC/ALACBitUtilities.c",
37    "src/ALAC/ag_dec.c",
38    "src/ALAC/ag_enc.c",
39    "src/ALAC/alac_decoder.c",
40    "src/ALAC/alac_encoder.c",
41    "src/ALAC/dp_dec.c",
42    "src/ALAC/dp_enc.c",
43    "src/ALAC/matrix_dec.c",
44    "src/ALAC/matrix_enc.c",
45    "src/G72x/g721.c",
46    "src/G72x/g723_16.c",
47    "src/G72x/g723_24.c",
48    "src/G72x/g723_40.c",
49    "src/G72x/g72x.c",
50    "src/GSM610/add.c",
51    "src/GSM610/code.c",
52    "src/GSM610/decode.c",
53    "src/GSM610/gsm_create.c",
54    "src/GSM610/gsm_decode.c",
55    "src/GSM610/gsm_destroy.c",
56    "src/GSM610/gsm_encode.c",
57    "src/GSM610/gsm_option.c",
58    "src/GSM610/long_term.c",
59    "src/GSM610/lpc.c",
60    "src/GSM610/preprocess.c",
61    "src/GSM610/rpe.c",
62    "src/GSM610/short_term.c",
63    "src/GSM610/table.c",
64    "src/aiff.c",
65    "src/alac.c",
66    "src/alaw.c",
67    "src/au.c",
68    "src/audio_detect.c",
69    "src/avr.c",
70    "src/broadcast.c",
71    "src/caf.c",
72    "src/cart.c",
73    "src/chanmap.c",
74    "src/chunk.c",
75    "src/command.c",
76    "src/common.c",
77    "src/dither.c",
78    "src/double64.c",
79    "src/dwd.c",
80    "src/dwvw.c",
81    "src/file_io.c",
82    "src/flac.c",
83    "src/float32.c",
84    "src/g72x.c",
85    "src/gsm610.c",
86    "src/htk.c",
87    "src/id3.c",
88    "src/ima_adpcm.c",
89    "src/ima_oki_adpcm.c",
90    "src/interleave.c",
91    "src/ircam.c",
92    "src/macos.c",
93    "src/mat4.c",
94    "src/mat5.c",
95    "src/mpc2k.c",
96    "src/ms_adpcm.c",
97    "src/nist.c",
98    "src/nms_adpcm.c",
99    "src/ogg.c",
100    "src/ogg_opus.c",
101    "src/ogg_pcm.c",
102    "src/ogg_speex.c",
103    "src/ogg_vcomment.c",
104    "src/ogg_vorbis.c",
105    "src/paf.c",
106    "src/pcm.c",
107    "src/pvf.c",
108    "src/raw.c",
109    "src/rf64.c",
110    "src/rx2.c",
111    "src/sd2.c",
112    "src/sds.c",
113    "src/sndfile.c",
114    "src/strings.c",
115    "src/svx.c",
116    "src/txw.c",
117    "src/ulaw.c",
118    "src/voc.c",
119    "src/vox_adpcm.c",
120    "src/w64.c",
121    "src/wav.c",
122    "src/wavlike.c",
123    "src/wve.c",
124    "src/xi.c",
125  ]
126
127  configs = [ ":sndfile_config" ]
128  subsystem_name = "thirdparty"
129  part_name = "libsnd"
130}
131
132ohos_shared_library("sndfile") {
133  deps = [ ":sndfile_sources" ]
134
135  innerapi_tags = [ "platformsdk_indirect" ]
136  subsystem_name = "thirdparty"
137  part_name = "libsnd"
138}
139