Commit Graph

57093 Commits

Author SHA1 Message Date
Yifan Hong 997661002a Merge changes from topic "build_time_vintf"
* changes:
  Improve BUILT_ASSEMBLED_*_MANIFEST checks
  Add check-vintf-all target.
2020-01-14 01:29:47 +00:00
Treehugger Robot 5740e22d7c Merge "Make allmod() and pathmod() py3 compatible" 2020-01-13 22:49:44 +00:00
Chih-hung Hsieh 9c65671b91 Merge "Clean up cpp warning patterns" 2020-01-13 21:59:27 +00:00
Chih-Hung Hsieh 8724ff72ef Clean up cpp warning patterns
* Remove the useless 'option' key.
  It is only used in some C/C++ warning patterns
  to give a hint of options to turn to -Werror.
  Now the global default is -Werror.
* Factor out common code patterns into high/medium/low functions.

Test: warn.py --url=http://cs/android --separator='?l=' build.log > warnings.html
Test: warn.py --gencsv build.log > warnings.csv
Change-Id: Ibd3f768b1552ada925eb5afb0f01ab674c968a87
2020-01-13 11:10:54 -08:00
Ulyana Trafimovich d99a1faccc Merge "Use boot image extension in the JIT-zygote experiment." 2020-01-13 10:38:01 +00:00
Jiyong Park 7434764cce Merge "Correctly gather boot jars from APEXes" 2020-01-13 01:16:16 +00:00
LuK1337 b6a7819be6 Make allmod() and pathmod() py3 compatible
Change-Id: I8d58f2f64c03d54449844269974367f31de6ad31
2020-01-12 03:12:17 +01:00
Yifan Hong 8bdfe365d6 Improve BUILT_ASSEMBLED_*_MANIFEST checks
They are moved into check-vintf-all, which is more
accurate and do not require building full OS images.

Also move kernel check code down to check_vintf_compatible. There
is no assembled manifest to put kernel configs now, but they are still
required for build time OTA VINTF checks.

Test: builds
Test: change a vintf_fragment file to cause a conflict with main manifest file
(add health@2.0 to boot@1.1.xml), and check_vintf_vendor_log fails

Change-Id: I9791abc440a40e1537b4387eb67575ff2e22df08
2020-01-11 19:06:18 +00:00
Treehugger Robot 56772d7213 Merge "Disallow unnamed package on the bootclasspath." 2020-01-11 16:42:21 +00:00
Tobias Thierer af482ea053 Disallow unnamed package on the bootclasspath.
There are currently no classes on the bootclasspath that live in the
unnamed package (empty package name). This CL explicitly forbids it.
This has the side effect of guarding against some classes of bugs,
for example R8 has functionality to generate some helper classes in
the unnamed package that should not be on the to bootclasspath
because they would hide corresponding classes in Applications.

Strictly speaking I believe that the "not package_name or " part
of the condition in the touched script is not needed because
LoadWhitelist() already skips empty lines and doesn't add "^$" to
the whitelist regex, but relying on this seems very fragile. If
there ever is a need to have classes in the bootclasspath's
unnamed package in future then we can always change this again.

Bug: 147480264
Test: Treehugger

Change-Id: Ic310dd0779dde133b3a5c3039ea5b70d31331a9b
2020-01-11 16:07:13 +00:00
Treehugger Robot 975b42501f Merge "Define PRODUCT_PRODUCT_VNDK_VERSION automatically" 2020-01-11 12:44:46 +00:00
Justin Yun 66c7af81f3 Define PRODUCT_PRODUCT_VNDK_VERSION automatically
PRODUCT_PRODUCT_VNDK_VERSION will be automatically set to true for
the devices with PRODUCT_SHIPPING_API_LEVEL newer than 29.

Bug: 146621746
Test: build with PRODUCT_SHIPPING_API_LEVEL set to 30
Change-Id: I78cd81d1d61e9089b163169bc495df8a880463da
2020-01-11 12:44:08 +00:00
Chih-hung Hsieh ecfd19d576 Merge "Use new Severity class and update *_warn_patterns" 2020-01-11 01:50:26 +00:00
Chih-Hung Hsieh 949205a661 Use new Severity class and update *_warn_patterns
* This new class definition and patterns are
  shared between Android and ChromeOS compiler tools.
* Suppress hard to fix and false positive linter warnings.

Test: warn.py --url=http://cs/android --separator='?l=' build.log > warnings.html
Test: warn.py --gencsv build.log > warnings.csv
Change-Id: Icb47809100ad30796cb1da82610e989d450194fa
2020-01-10 15:21:20 -08:00
Yifan Hong 850f8b5d77 Add check-vintf-all target.
Add target that checks VINTF compatibility of the current build
(in $PRODUCT_OUT) properly. The target:

- Doesn't require a full build
- Won't run for system-only AOSP targets

A verbose log is printed if `m check-vintf-compatible` is executed,
but it won't show up if `m` is executed.

(After this patch, adding product / system_ext matrices is as simple
as defining a vintf_compatibility_matrix in Soong, and VINTF
compatibility is properly checked.)

Test: m check-vintf-all
Test: delete */etc/vintf and m check-vintf-all
Test: m
Test: m check-vintf-all on device with vendor/odm and ODM SKU-specific
      manifests

Test: change manifest.xml to be incompatible and m check-vintf-all fails

Bug: 140280874
Bug: 140360109

Change-Id: I6ee79910d745d29cfc9b05b1435e26f91b7c10f7
2020-01-10 13:17:56 -08:00
Ulya Trafimovich bd98b55100 Use boot image extension in the JIT-zygote experiment.
Test: temporarily enable JIT-zygote configuration, build, boot the
  device and ensure that the JIT-zygote specific boot image
  apex-framework.art is mapped in the zygote address space:

  1. enable Jit zygote in the product device config (in my case
    device/google/muskie/aosp_walleye.mk):

    +# System server should not contain compiled code.
    +PRODUCT_SYSTEM_SERVER_COMPILER_FILTER := verify
    +
    +# Use the apex image for preopting.
    +DEXPREOPT_USE_APEX_IMAGE := true
    +
    +# Have the runtime pick up the apex image.
    +PRODUCT_PROPERTY_OVERRIDES += \
    +    dalvik.vm.boot-image=/apex/com.android.art/javalib/apex.art:/system/framework/apex-framework.art

  2. lunch aosp_walleye-userdebug \
    && m \
    && adb reboot bootloader \
    && fastboot flashall -w

  3. adb shell cat /proc/`adb shell ps | grep zygote64 | awk {'print $2'}`/maps | grep apex-framework.art
  6fe44000-7025c000 rw-p 00000000 fc:02 1179718                            /data/dalvik-cache/arm64/apex@com.android.art@javalib@apex-framework.art
  70571000-70696000 rw-p 0072d000 fc:02 1179718                            /data/dalvik-cache/arm64/apex@com.android.art@javalib@apex-framework.art
  75a339f000-75a33ac000 r--p 00852000 fc:02 1179718                        /data/dalvik-cache/arm64/apex@com.android.art@javalib@apex-framework.art

Change-Id: I6818fde087ec562057631003265bc1ec0e91688c
2020-01-10 15:29:42 +00:00
Jiyong Park ee75813162 Correctly gather boot jars from APEXes
Jars in APEXes have Make module names <jar_name>.<apex_name>. e.g.
updatable-apex.com.android.media. Previously, we have used <jar_name>
which actually meant the platform variant of the jar. This is not only
incorrect, but also is causing problem as the platform variant is no
longer available when the jar is configured to be available only for the
corresponding APEX (via the apex_available property).

Fixing the problem by correctly using <jar_name>.<apex_name> scheme.

Bug: N/A
Test: m

Change-Id: I6e255ce88c9bd80120b29197fb2637a64010f531
Merged-In: I6e255ce88c9bd80120b29197fb2637a64010f531
2020-01-10 15:15:47 +00:00
Treehugger Robot 5ec7b56e5d Merge "Use our prebuilt M4 for flex and bison" 2020-01-10 14:39:53 +00:00
Treehugger Robot b4484dc33b Merge "Rebuild the vendor install-recovery if necessary." 2020-01-10 13:49:55 +00:00
Treehugger Robot 88ab531831 Merge "Go one directory up looking for releasetools path" 2020-01-10 12:31:32 +00:00
Bo Hu c30b734f42 Merge "Revert "unbreak sdk_phone_x86 boot"" 2020-01-09 16:56:35 +00:00
Anton Hansson b9e912dc9d Merge "Update references to sdkext" 2020-01-09 08:46:08 +00:00
Dan Willemsen 38dc09d39a Use our prebuilt M4 for flex and bison
And ensure we've got all the proper dependencies.

Bug: 117561006
Test: treehugger
Change-Id: Ia9690b2c0d73a48744c8e33fe83196d02b1e904d
2020-01-08 22:31:12 -08:00
Bo Hu 08a2677fe7 Revert "unbreak sdk_phone_x86 boot"
This reverts commit 70c96c7f11.

Reason for revert: root cause fixed

Bug: 146580512
Change-Id: I5d841637d5ca0ae8df8f5499a8b3f02488b4814e
2020-01-09 02:35:07 +00:00
Treehugger Robot 3801c82e33 Merge "jacoco-report-classes-all.jar includes jar from other partitions" 2020-01-09 00:45:11 +00:00
Robin Lee da427de124 Rebuild the vendor install-recovery if necessary.
Test: Manual on a device with VENDOR/bin/install-recovery.sh
Bug: 146504238
Bug: 68319577
Change-Id: I33c253716bda5e7e655dac5c0636e9995e7b64c1
2020-01-09 00:29:38 +01:00
Xin Li 2cfd952682 Merge "DO NOT MERGE - Merge January 2020 Security Release into master" 2020-01-08 17:39:17 +00:00
Anton Hansson ea711c2418 Update references to sdkext
The module is getting renamed to sdkextensions.

Bug: 137191822
Test: presubmit
Change-Id: I628fc555b82e9bd931c8f0cce2222b02efad6036
Merged-In: I628fc555b82e9bd931c8f0cce2222b02efad6036
(cherry picked from commit 37e998ac31)
2020-01-08 11:42:03 +00:00
Martin Stjernholm 2e31874c7a Merge "Remove generation of the dexpreopt tool paths from make." 2020-01-08 10:40:28 +00:00
Jiyong Park bee946e8eb jacoco-report-classes-all.jar includes jar from other partitions
jacoco-report-classes-all.jar now depends on all installed files
including apks in /apex. Previously, it depended only on files under
system.img and as a result jacoco for other partitions were missing.

Bug: 147296855
Test: m

Change-Id: I755de1205ebc43c197af36a13cca5f4b49e275e8
2020-01-08 14:41:45 +09:00
Xin Li c4dd701883 DO NOT MERGE - Merge January 2020 Security Release into master
Bug: 147314974
Change-Id: I1d6098643e9d3711e663b521dca875254008e787
2020-01-07 15:25:06 -08:00
Treehugger Robot 620a2f2366 Merge "Add system_ext to VINTF search paths." 2020-01-07 23:04:54 +00:00
Steven Moreland c8b0187c8b Merge "vibrator: use package as name" 2020-01-07 22:43:01 +00:00
Chih-hung Hsieh c2c765a00a Merge "Add new compiler warning patterns"
am: 3a59a5f66a

Change-Id: I4fdc1a183acbbf596e044cf43350f4398e97a02f
2020-01-07 14:04:47 -08:00
Chih-hung Hsieh 3a59a5f66a Merge "Add new compiler warning patterns" 2020-01-07 21:49:01 +00:00
Chen Xu 7da11edb71 Merge "Revert submission 1182953-1576003954286-8455af5a"
am: 42f2c761bf

Change-Id: Icf4a3918bd59e6d96da629dec9658ae959bb21ef
2020-01-07 12:07:13 -08:00
Chen Xu 42f2c761bf Merge "Revert submission 1182953-1576003954286-8455af5a" 2020-01-07 19:29:08 +00:00
Dan Willemsen 13f8dc992e Merge "Use symlinks in the build graph for jni libs"
am: 7d44f2d01d

Change-Id: I43f3bcce4569a72beaf4772008afda1bf3aebf90
2020-01-07 06:47:56 -08:00
Treehugger Robot 7d44f2d01d Merge "Use symlinks in the build graph for jni libs" 2020-01-07 14:42:51 +00:00
Martin Stjernholm 46f6017064 Merge "Remove DEX2OAT_DEPENDENCY which is the same as DEX2OAT."
am: 8da546b295

Change-Id: I93776b805dc23b4c5496f255e1e228b544017ac3
2020-01-07 05:02:13 -08:00
Martin Stjernholm 1e5581749d Remove generation of the dexpreopt tool paths from make.
They are now created from Soong, and therefore put in a separate config file
out/soong/dexpreopt_soong.config.

Test: m
Bug: 145934348
Change-Id: I27e710f09c37e64e8975b8e763d13434e5de71b3
2020-01-07 13:00:38 +00:00
Martin Stjernholm 8da546b295 Merge "Remove DEX2OAT_DEPENDENCY which is the same as DEX2OAT." 2020-01-07 12:37:07 +00:00
Ulyana Trafimovich bedd2a57f9 Merge "Respect JIT-zygote config when generating boot image location."
am: 5268bfa61e

Change-Id: I4cf43302005c80d543f24a45520fd0f7d3a9c14b
2020-01-07 03:01:03 -08:00
Ulyana Trafimovich 5268bfa61e Merge "Respect JIT-zygote config when generating boot image location." 2020-01-07 10:48:45 +00:00
Yo Chiang 2eee2cd593 Merge "Clean up TARGET_FLATTEN_APEX lines in mainline products"
am: 3ac9a12f5f

Change-Id: I6f9a585f165c724b3689c72abab8cc7228d032fd
2020-01-07 01:01:03 -08:00
Yo Chiang 3ac9a12f5f Merge "Clean up TARGET_FLATTEN_APEX lines in mainline products" 2020-01-07 08:41:53 +00:00
Jiyong Park 44e7c20968 Merge "Revert "Add boringssl_self_test to PRODUCT_PACKAGES""
am: ee83e2d2c8

Change-Id: Ieea03a9be3a725208eb1a282885c165a770190ca
2020-01-06 20:04:20 -08:00
Treehugger Robot ee83e2d2c8 Merge "Revert "Add boringssl_self_test to PRODUCT_PACKAGES"" 2020-01-07 03:51:29 +00:00
Steven Moreland 81e3cfa8a3 Merge "update-vndk-list.sh delinated with ticks in error"
am: 0fe0eda502

Change-Id: Ibc9784555bfb489911b56b0124928dd27dc94711
2020-01-06 17:52:38 -08:00
Treehugger Robot 0fe0eda502 Merge "update-vndk-list.sh delinated with ticks in error" 2020-01-07 01:47:42 +00:00