问题描述
我正在寻找用于构建 /vendor/lib64/hw/audio.primary.imx8.so
的(供应商提供的)源文件。
构建正在运行,并生成了 audio.primary.imx8.so
。
我可以看到在 device/fsl/imx8m/ProductConfigCommon.mk
中请求包:
user@server:~/android/smarcimx8mq/q_1000_100/android_build$ grep audio.primary.imx8 -B3 -A9 device/fsl/imx8m/ProductConfigCommon.mk
# audio
PRODUCT_PACKAGES += \
audio.a2dp.default \
audio.primary.imx8 \
audio.r_submix.default \
audio.usb.default \
libaudioutils \
libsrec_jni \
libtinyalsa \
tinycap \
tinymix \
tinyplay
android_build
目录是应用了所有供应商补丁的 AOSP。
user@server:~/android/smarcimx8mq/q_1000_100/android_build$ find . -name "*primary*imx8*"
./out/target/product/smarc_mx8mq/symbols/vendor/lib/hw/audio.primary.imx8.so
./out/target/product/smarc_mx8mq/symbols/vendor/lib64/hw/audio.primary.imx8.so
./out/target/product/smarc_mx8mq/vendor/lib/hw/audio.primary.imx8.so
./out/target/product/smarc_mx8mq/vendor/lib64/hw/audio.primary.imx8.so
./out/target/product/smarc_mx8mq/obj_arm/SHARED_LIBRARIES/audio.primary.imx8_intermediates
./out/target/product/smarc_mx8mq/obj_arm/SHARED_LIBRARIES/audio.primary.imx8_intermediates/audio.primary.imx8.so
./out/target/product/smarc_mx8mq/obj/SHARED_LIBRARIES/audio.primary.imx8_intermediates
./out/target/product/smarc_mx8mq/obj/SHARED_LIBRARIES/audio.primary.imx8_intermediates/audio.primary.imx8.so
./out/soong/.intermediates/vendor/nxp-opensource/imx/alsa/audio.primary.imx8
./out/soong/.intermediates/vendor/nxp-opensource/imx/alsa/audio.primary.imx8/android_arm_armv7-a-neon_cortex-a9_vendor_shared/audio.primary.imx8.so.d
./out/soong/.intermediates/vendor/nxp-opensource/imx/alsa/audio.primary.imx8/android_arm_armv7-a-neon_cortex-a9_vendor_shared/audio.primary.imx8.so
./out/soong/.intermediates/vendor/nxp-opensource/imx/alsa/audio.primary.imx8/android_arm_armv7-a-neon_cortex-a9_vendor_shared/unstripped/audio.primary.imx8.so
./out/soong/.intermediates/vendor/nxp-opensource/imx/alsa/audio.primary.imx8/android_arm64_armv8-a_cortex-a53_vendor_shared/audio.primary.imx8.so.d
./out/soong/.intermediates/vendor/nxp-opensource/imx/alsa/audio.primary.imx8/android_arm64_armv8-a_cortex-a53_vendor_shared/audio.primary.imx8.so
./out/soong/.intermediates/vendor/nxp-opensource/imx/alsa/audio.primary.imx8/android_arm64_armv8-a_cortex-a53_vendor_shared/unstripped/audio.primary.imx8.so
audio.primary.imx8
包目录将被称为什么以及哪些位置可能是候选位置?
解决方法
找到了:
user@server:~/android/smarcimx8mq/q_1000_100/android_build$ grep primary.imx8 -R system/ frameworks/ vendor/ device/ 2>/dev/null
vendor/nxp-opensource/imx/alsa/Android.bp: name: "audio.primary.imx8",device/fsl/imx8m/ProductConfigCommon.mk: audio.primary.imx8 \
device/fsl/imx8q/ProductConfigCommon.mk: audio.primary.imx8 \
这是一个 .bp
文件,而不是一个 .mk
。
user@server:~/android/smarcimx8mq/q_1000_100/android_build$ grep audio_primary_defaults -B2 -A24 vendor/nxp-opensource/imx/alsa/Android.bp
// This is the Freescale ALSA module for i.MX.
audio_primary_defaults {
name: "audio_primary_default",relative_install_path: "hw",srcs: [
"tinyalsa_hal.c","control.c","pcm_ext.c",],vendor: true,include_dirs: [
"external/tinyalsa/include","system/media/audio_utils/include","system/media/audio_effects/include","hardware/libhardware/include",shared_libs: [
"liblog","libcutils","libtinyalsa","libaudioutils","libdl","libpower",}