diff --git a/services/audio_policy/BUILD.gn b/services/audio_policy/BUILD.gn index 199bf12cc59f947da90850138027b6f7c6c46c29..0c631d01c881b2f368fc0b66ce6eb4b4618474a5 100644 --- a/services/audio_policy/BUILD.gn +++ b/services/audio_policy/BUILD.gn @@ -584,7 +584,7 @@ audio_ohos_library("audio_policy_client") { deps = [ "../../frameworks/native/audiodefinitions:audio_definitions", "../../frameworks/native/audioutils:audio_utils", - "../../services/audio_service/idl:audio_framework_interface", + "../../services/audio_service/idl:idl_audio_policy_client_source", ] public_configs = [ ":audio_policy_client_config" ] diff --git a/services/audio_service/BUILD.gn b/services/audio_service/BUILD.gn index 68ff522cf15f07fae7c31c9c9c8b05de1b243585..13c4242dc9df2fac9036a8955df282ccaa005055 100644 --- a/services/audio_service/BUILD.gn +++ b/services/audio_service/BUILD.gn @@ -237,7 +237,7 @@ ohos_shared_library("audio_client") { deps = [ ":audio_common", - "${audio_framework_root}/services/audio_service/idl:audio_framework_interface", + "${audio_framework_root}/services/audio_service/idl:idl_audio_client_source", "../../frameworks/native/audioqosmanager:audio_qosmanager", "../../frameworks/native/audioutils:audio_utils", "../audio_policy:audio_foundation", diff --git a/services/audio_service/idl/BUILD.gn b/services/audio_service/idl/BUILD.gn index 07b4156e6a45830c7c9f9d6e0fa1ea308a5a83a3..220ac9cd96d082e6a885dc0e0cce94bdb6852628 100644 --- a/services/audio_service/idl/BUILD.gn +++ b/services/audio_service/idl/BUILD.gn @@ -17,6 +17,26 @@ import("//foundation/multimedia/audio_framework/config.gni") audio_framework_root = "../../.." audio_policy_idl_location = "${audio_framework_root}/services/audio_policy/idl" +idl_audio_client_source_file = [ + "*standard_audio_server_manager_listener_stub.cpp", + "*process_cb_stub.cpp", + "*audio_workgroup_callback_stub.cpp", + "*ipc_stream_listener_stub.cpp", + "*policy_provider_ipc_stub.cpp", +] + +idl_policy_client_source_file = [ + "*standard_client_tracker_stub.cpp", + "*standard_spatialization_state_change_listener_stub.cpp", + "*standard_audio_zone_client_stub.cpp", + "*audio_policy_client_stub.cpp", + "*standard_sle_audio_operation_callback_stub.cpp", + "*standard_audio_routing_manager_listener_stub.cpp", + "*standard_audio_anahs_manager_listener_stub.cpp", + "*standard_audio_policy_manager_listener_stub.cpp", + "*audio_policy_proxy.cpp", +] + idl_gen_interface("audio_service_idl_interface") { sources = [ "IAudioProcess.idl", @@ -163,3 +183,100 @@ ohos_shared_library("audio_framework_interface") { debug = false } } + +ohos_source_set("idl_audio_client_source") { + output_values = get_target_outputs(":audio_service_idl_interface") + output_values += get_target_outputs(":audio_policy_idl_interface") + sources = filter_include(output_values, idl_audio_client_source_file) + sources += filter_include(output_values, [ "*_types.cpp" ]) + + public_configs = [ + ":audio_service_sa_idl_config", + ":audio_policy_sa_idl_config", + ] + + deps = [ + ":audio_policy_idl_interface", + ":audio_service_idl_interface", + ] + + cflags = [ + "-Wall", + "-fPIC", + "-fdata-sections", + "-ffunction-sections", + "-fno-asynchronous-unwind-tables", + "-fno-unwind-tables", + "-Os", + ] + + if (target_cpu == "arm") { + cflags += [ "-DBINDER_IPC_32BIT" ] + } + + sanitize = { + integer_overflow = true + ubsan = true + boundary_sanitize = true + cfi = true + cfi_cross_dso = true + cfi_vcall_icall_only = true + debug = false + } + + external_deps = [ + "c_utils:utils", + "hilog:libhilog", + "hitrace:hitrace_meter", + "ipc:ipc_single", + ] + part_name = "audio_framework" + subsystem_name = "multimedia" +} + +ohos_source_set("idl_audio_policy_client_source") { + output_values = get_target_outputs(":audio_policy_idl_interface") + sources = filter_include(output_values, idl_policy_client_source_file) + sources += filter_include(output_values, [ "*_types.cpp" ]) + + public_configs = [ + ":audio_policy_sa_idl_config", + ] + + deps = [ + ":audio_policy_idl_interface", + ] + + cflags = [ + "-Wall", + "-fPIC", + "-fdata-sections", + "-ffunction-sections", + "-fno-asynchronous-unwind-tables", + "-fno-unwind-tables", + "-Os", + ] + + if (target_cpu == "arm") { + cflags += [ "-DBINDER_IPC_32BIT" ] + } + + sanitize = { + integer_overflow = true + ubsan = true + boundary_sanitize = true + cfi = true + cfi_cross_dso = true + cfi_vcall_icall_only = true + debug = false + } + + external_deps = [ + "c_utils:utils", + "hilog:libhilog", + "hitrace:hitrace_meter", + "ipc:ipc_single", + ] + part_name = "audio_framework" + subsystem_name = "multimedia" +}