Android AOSP make sequence

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

跳转至: 导航搜索

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
$(BUILD_SYSTEM)=build/make/core

+ build/core/main.mk
|---- build/make/core/config.mk
    |----  $(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)/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

+ device/generic/car/aosp_car_arm64.mk 
|--+ device/generic/car/common/car.mk
   |--<>PRODUCT_COPY_FILES += <Auto modules>
   |--+packages/services/Car/car_product/build/car.mk

      |---<>PRODUCT_PACKAGES += <System UI>
      |---frameworks/base/data/fonts/fonts.mk
      |---+packages/services/Car/car_product/build/car_base.mk

         |----<>PRODUCT_PACKAGES += <Home, BasicDreams>
         |----<>PRODUCT_PACKAGES += <EVS package>
         |----+ $(SRC_TARGET_DIR)/product/core_minimal.mk
              |-----+ $(SRC_TARGET_DIR)/product/media_system.mk
                    |------$(SRC_TARGET_DIR)/product/base_system.mk
                    |------$(SRC_TARGET_DIR)/product/runtime_libart.mk
                    |------$(SRC_TARGET_DIR)/product/media_vendor.mk
                    |------$(SRC_TARGET_DIR)/product/media_product.mk

      |---<>PRODUCT_PACKAGES += <Automotive specific packages>
      |---<>PRODUCT_SYSTEM_SERVER_JARS += car-frameworks-service
      |---<>PRODUCT_COPY_FILES += bootanimation.zip
      |---device/sample/products/location_overlay.mk

   |--+$(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