Files
build/core/tasks
Nelson Li 2b27ed0077 Move frameworks/base/Android.mk to build/core
1. Move the work of `declare-1p-copy-files` to
  `build/core/tasks/meta-lic.mk`.
2. Remove `$(LOCAL_PATH)/pathmap.mk` because the variables defined in
   it are no longer used.
3. The variable `ONE_SHOT_MAKEFILE` is deprecated and can be removed
   directly.
4. Move the work of `offline-sdk-docs` to
   `build/core/tasks/offline-sdk-docs.mk` because Soong cannot specify
   the output path to `$(OUT_DOCS)/`.
5. Move the work of `framework-doc-stubs` to `build/core/Makefile`
   because Soong cannot specify the output path to
   `framework-doc-stubs-metadata_intermediates`, and because
   `SDK_METADATA_FILES` is a dependency of the SDK, it must be moved
   before the SDK's dependencies are determined, and it cannot be moved
   to `build/core/tasks`.
6. `ANDROID_BUILD_EMBEDDED` can be removed because the `.mk` files that
   use this variable are currently not used.

Bug: 322732227
Test: m sdk docs offline-sdk-docs framework-doc-stubs
Change-Id: Ieef40808a0bbaa63a73491ddde0949ae1780e615
2024-03-07 11:25:57 +00:00
..
2021-02-11 10:34:01 +00:00
2022-04-28 08:03:55 +00:00
2022-04-07 22:03:29 -07:00
2023-02-24 19:34:25 +00:00
2018-07-30 16:42:46 -07:00
2022-04-07 22:03:29 -07:00
2020-07-16 12:34:29 -07:00
2020-07-20 05:39:29 +00:00
2023-01-11 00:55:50 +00:00

dex_preopt_check

dex_preopt_check is a build-time check to make sure that all system server jars are dexpreopted. When the check fails, you will see the following error message:

FAILED:
build/make/core/tasks/dex_preopt_check.mk:13: warning:  Missing compilation artifacts. Dexpreopting is not working for some system server jars
Offending entries:

Possible causes are:

  1. There is an APEX/SDK mismatch. (E.g., the APEX is built from source while the SDK is built from prebuilt.)

  2. The systemserverclasspath_fragment is not added as systemserverclasspath_fragments of the corresponding apex module, or not added as exported_systemserverclasspath_fragments of the corresponding prebuilt_apex/apex_set module when building from prebuilt.

  3. The expected version of the system server java library is not preferred. (E.g., the java_import module has prefer: false when building from prebuilt.)

  4. Dexpreopting is disabled for the system server java library. This can be due to various reasons including but not limited to:

    • The java library has dex_preopt: { enabled: false } in the Android.bp file.

    • The java library is listed in DEXPREOPT_DISABLED_MODULES in a Makefile.

    • The java library is missing installable: true in the Android.bp file when building from source.

    • Sanitizer is enabled.

  5. PRODUCT_SYSTEM_SERVER_JARS, PRODUCT_APEX_SYSTEM_SERVER_JARS, PRODUCT_STANDALONE_SYSTEM_SERVER_JARS, or PRODUCT_APEX_STANDALONE_SYSTEM_SERVER_JARS has an extra entry that is not needed by the product.