Android AOSP make sequence

来自个人维基
2019年9月25日 (三) 18:42free6d1823讨论 | 贡献的版本

跳转至: 导航搜索

Android make sequence, trace aosp_arm64-eng
TARGET_PRODUCT=aosp_arm64
TARGET_BUILD_VARIANT=eng
TARGET_BUILD_TYPE=release
TARGET_ARCH=arm64
TARGET_ARCH_VARIANT=armv8-a
TARGET_CPU_VARIANT=generic


Makefile

Refer:https://blog.csdn.net/lizekun2010/article/details/52598105

+ build/core/main.mk
|---- build/make/core/config.mk
    |----  $(BUILD_SYSTEM)=build/make/core
    |----  $(BUILD_SYSTEM_COMMON)/core.mk
    |----  $(BUILD_SYSTEM_COMMON)/math.mk
    |----  $(BUILD_SYSTEM_COMMON)/strings.mk
    |----  $(BUILD_SYSTEM_COMMON)/json.mk
    |----  $(BUILD_SYSTEM)/pathmap.mk
    |----  $(BUILD_SYSTEM)/project_definitions.mk
    |----  $(BUILD_SYSTEM)/deprecation.mk
    |----  -$(TOPDIR)buildspec.mk
    |----  $(BUILD_SYSTEM)/envsetup.mk
        |---- $(BUILD_SYSTEM)/version_defaults.mk
        |---- $(BUILD_SYSTEM)/combo/select.mk
        |---- $(BUILD_COMBOS)/select.mk
        |---- $(BUILD_SYSTEM)/product_config.mk
            |---- $(BUILD_SYSTEM)/node_fns.mk
            |---- $(BUILD_SYSTEM)/product.mk
            |---- $(BUILD_SYSTEM)/device.mk
                  $current_product_makefile =build/make/target/product/aosp_arm64.mk

        |---- $(BUILD_SYSTEM)/board_config.mk
        |---- $(BUILD_SYSTEM)/aux_config.mk
    |----  $(BUILD_SYSTEM)/ccache.mk
    |----  $(BUILD_SYSTEM)/goma.mk
    |----  $(BUILD_SYSTEM)/rbe.mk
    |----  $(BUILD_SYSTEM)/combo/javac.mk
    |----  $(BUILD_SYSTEM)/ninja_config.mk
    |----  $(BUILD_SYSTEM)/soong_config.mk
    |----  -external/linux-kselftest/android/kselftest_test_list.mk
    |----  -external/ltp/android/ltp_package_list.mk
    |----  $(BUILD_SYSTEM)/dumpvar.mk
|---- $(SOONG_MAKEVARS_MK)
|---- $(BUILD_SYSTEM)/clang/config.mk
|---- -cts/build/config.mk (- means ignore error)
|---- -test/vts/tools/vts-tradefed/build/config.mk
|---- -tools/tradefederation/build/suites/device-tests/config.mk
|---- -tools/tradefederation/build/suites/general-tests/config.mk
|---- -test/sts/tools/sts-tradefed/build/config.mk
|---- -test/suite_harness/tools/cts-instant-tradefed/build/config.mk
|---- -test/mts/tools/build/config.mk
|---- -vendor/google/build/config.mk (google-specifiec config)
|---- $(BUILD_SYSTEM)/definitions.mk
|---- $(BUILD_SYSTEM)/dex_preopt.mk
|---- build/make/core/pdk_config.mk
|---- $(BUILD_SYSTEM)/pdk_fusion_modules.mk


build/core/main.mk dependency

《DEFAULT_GOAL》 droid
   |-- droid_target


   |--+$(SRC_TARGET_DIR)/product/aosp_arm64.mk
      |---+ core_64_bit.mk
          |---- <> init.zygote64_32.rc
      |---mainline_system.mk
      |---aosp_product.mk
      |---device/generic/goldfish/arm64-vendor.mk
      |---$(SRC_TARGET_DIR)/product/emulator_vendor.mk
      |---$(SRC_TARGET_DIR)/board/generic_arm64/device.mk
      |---$(SRC_TARGET_DIR)/product/gsi_release.mk
SRC_TARGET_DIR=build/make/target/product