1 # Copyright (c) 2024 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 
14 import("//build/ohos.gni")
15 import("../../../config.gni")
16 
17 config("offline_audio_effect_config") {
18   include_dirs = [
19     "include",
20     "../../../interfaces/inner_api/native/offlineaudioeffect/include",
21   ]
22 
23   cflags = [
24     "-Wall",
25     "-Werror",
26   ]
27 }
28 
29 ohos_shared_library("offline_audio_effect") {
30   sanitize = {
31     cfi = true
32     cfi_cross_dso = true
33     cfi_vcall_icall_only = true
34     debug = false
35   }
36   install_enable = true
37 
38   sources = [
39     "src/offline_audio_effect_chain_impl.cpp",
40     "src/offline_audio_effect_manager.cpp",
41     "src/offline_audio_effect_server_chain.cpp",
42   ]
43 
44   deps = [
45     "../../../services/audio_service:audio_client",
46     "../audioutils:audio_utils",
47   ]
48 
49   external_deps = [
50     "c_utils:utils",
51     "drivers_interface_audio:libeffect_proxy_1.0",
52     "hilog:libhilog",
53     "ipc:ipc_single",
54   ]
55 
56   public_configs = [ ":offline_audio_effect_config" ]
57 
58   version_script = "../../../audio_framework.versionscript"
59   innerapi_tags = [ "platformsdk" ]
60 
61   part_name = "audio_framework"
62   subsystem_name = "multimedia"
63 }
64