audio: Support 64bit configuration on 32+64bit compatible OS

The default value is 'prefer32', in order to run the hardware audio
service as 64 bit on a 32+64bit OS, please add the content below
into 'device.mk':

SOONG_CONFIG_NAMESPACES += android_hardware_audio
SOONG_CONFIG_android_hardware_audio += \
	run_64bit
SOONG_CONFIG_android_hardware_audio_run_64bit := true

Bug: 205240941
Test: build pass
Signed-off-by: Carter Hsu <carterhsu@google.com>
Change-Id: Ic7632a4f80298721512cd538ce93945b82a9981f
This commit is contained in:
Carter Hsu
2021-11-08 18:30:24 +08:00
parent 2d1a006ae4
commit 150dded787

View File

@@ -7,17 +7,40 @@ package {
default_applicable_licenses: ["hardware_interfaces_license"],
}
soong_config_module_type {
name: "android_hardware_audio_config_default",
module_type: "cc_defaults",
config_namespace: "android_hardware_audio",
bool_variables: [
"run_64bit",
],
properties: ["compile_multilib"],
}
android_hardware_audio_config_default {
name: "android_hardware_audio_config_defaults",
soong_config_variables: {
run_64bit: {
conditions_default: {
// Prefer 32 bit as the binary must always be installed at the same
// location for init to start it and the build system does not support
// having two binaries installable to the same location even if they are
// not installed in the same build.
compile_multilib: "prefer32",
},
compile_multilib: "64",
},
},
}
cc_binary {
name: "android.hardware.audio.service",
init_rc: ["android.hardware.audio.service.rc"],
relative_install_path: "hw",
vendor: true,
// Prefer 32 bit as the binary must always be installed at the same
// location for init to start it and the build system does not support
// having two binaries installable to the same location even if they are
// not installed in the same build.
compile_multilib: "prefer32",
srcs: ["service.cpp"],
cflags: [
@@ -34,6 +57,10 @@ cc_binary {
"libutils",
"libhardware",
],
defaults: [
"android_hardware_audio_config_defaults",
],
}
// Legacy service name, use android.hardware.audio.service instead