【问题标题】:Where to find the source files for an Android package?在哪里可以找到 Android 软件包的源文件?
【发布时间】:2021-03-19 08:26:57
【问题描述】:

我正在寻找用于构建 /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。

find 只查找此包的输出,而不是源文件:

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 包目录会被称为什么,哪些位置可能是候选位置?

【问题讨论】:

    标签: android makefile android-source


    【解决方案1】:

    找到了:

    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",
        ],
    }
    

    【讨论】:

      猜你喜欢
      • 2022-01-19
      • 2010-11-04
      • 2013-11-24
      • 2016-09-18
      • 2010-11-11
      • 2010-09-13
      • 2014-11-25
      • 1970-01-01
      相关资源
      最近更新 更多