Commit graph

20195 commits

Author SHA1 Message Date
Treehugger Robot
2ebae3e936 Merge "Remove implict jni.h include path" 2020-06-05 13:26:32 +00:00
Ulyana Trafimovich
3ef493ff91 Merge "Refactor library path representation in dexpreopt." 2020-06-05 10:46:01 +00:00
Treehugger Robot
a5c94e1409 Merge "Allow apex module to have android_app_set as its constituent." 2020-06-05 05:52:51 +00:00
Sasha Smundak
18d98bc3e0 Allow apex module to have android_app_set as its constituent.
Fixes: 157166068
Test: treehugger & manual
Change-Id: I9f91f1b761286f489d175eb0772f78f702e8a2d6
2020-06-04 20:25:53 -07:00
Ulya Trafimovich
d4bcea4e24 Refactor library path representation in dexpreopt.
This is a preliminary CL before fixing on-device paths to DEX jars.
It groups together the inormation about on-host build paths and
on-device install paths to library DEX jars.

This CL changes the structure of module dexpreopt.config files
generated by the build system. Aside of that, no functional changes.

Test: lunch aosp_cf_x86_phone-userdebug && m
Change-Id: I059654be7670f2ba66248d9c49b9694a0591f9c1
2020-06-04 17:37:42 +01:00
Ulyana Trafimovich
5539e7b568 Revert^2 "Rename DexJar interface method to DexJarBuildPath."
This reverts commit b0dc851ff4.

Reason for revert: relanding original change. Build failures were
  caused by a race with another CL: https://r.android.com/1320920

Test: lunch aosp_cf_x86_phone-userdebug && m
Change-Id: Ic9016582dae7773b4d4f84a63425f1ef7a5d061f
2020-06-04 17:20:38 +01:00
Ulyana Trafimovich
c55b679e7b Merge "Revert "Rename DexJar interface method to DexJarBuildPath."" 2020-06-04 10:47:47 +00:00
Orion Hodson
e68926d4d3 Remove implict jni.h include path
Bug: 152482542
Test: m checkbuild
Change-Id: I7225646a31fb87879c47f71a1a919b342c9b488f
Merged-In: I7225646a31fb87879c47f71a1a919b342c9b488f
(cherry picked from commit 90e9505f56)
2020-06-04 10:44:08 +00:00
Ulyana Trafimovich
b0dc851ff4 Revert "Rename DexJar interface method to DexJarBuildPath."
This reverts commit 562c240185.

Reason for revert: breaks `lunch full-eng && m checkbuild`.

Change-Id: Id7c7d6240d98afaf8edd49b6c96cd05534b784cc
2020-06-04 10:37:36 +00:00
Ulyana Trafimovich
2a08566634 Merge "Rename DexJar interface method to DexJarBuildPath." 2020-06-04 10:05:33 +00:00
Ulyana Trafimovich
eb3f9f1295 Merge "Error on suboptimal system server classpath order, unless explicitly allowed." 2020-06-04 08:56:04 +00:00
Treehugger Robot
a8bf98852a Merge "dex_import can be added to apex" 2020-06-04 05:06:22 +00:00
Colin Cross
3747336d23 Merge "Revert "Always run package check"" 2020-06-03 17:15:51 +00:00
Colin Cross
b549b77120 Revert "Always run package check"
This reverts commit 91206d9ed1.

Reason for revert: package-check.sh doesn't work on mac
Bug: 158081251
Bug: 157649935
Change-Id: I50af71d54d5f1f8b516bfcf1efbcf6217e89c83a
2020-06-03 17:15:15 +00:00
Ulya Trafimovich
cd3203fd5d Error on suboptimal system server classpath order, unless explicitly allowed.
The order is non-optimal if some jar X precedes its dependency Y. In
that case dexpreopt will be unable to resolve any rerefences from X to
Y. Raise an error unless the product sets variable
PRODUCT_BROKEN_SUBOPTIMAL_ORDER_OF_SYSTEM_SERVER_JARS to true in the
makefile. This is to prevent regressions in existing products that
currently have correct order.

Test: lunch cf_x86_phone-userdebug && m nothing
Test: lunch aosp_car_arm && m nothing

Bug: 140451054

Change-Id: Iafe8fe0e992deb628e38f2321d4601a4804a3c79
Merged-In: Iafe8fe0e992deb628e38f2321d4601a4804a3c79
(cherry picked from commit fb863c87c4)
2020-06-03 17:37:34 +01:00
Ulya Trafimovich
562c240185 Rename DexJar interface method to DexJarBuildPath.
This is a prerequisite change before adding DexJarInstallPath.

Test: lunch aosp_cf_phone-userdebug && m
Change-Id: I033e08b8bb06c0a844a6bbbfcdc48ce33e9c95cf
2020-06-03 11:40:45 +01:00
Orion Hodson
46b02790a6 Merge "Add some app modules to the allowed whitelist." am: 4a19d08d39
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1290961

Change-Id: I3823854f5782ced6c19ceb3eeb3df03ea117f17f
2020-06-03 07:55:27 +00:00
Orion Hodson
4a19d08d39 Merge "Add some app modules to the allowed whitelist." 2020-06-03 07:29:51 +00:00
Jaewoong Jung
ca9ed9158d Merge "Soong package structure refactoring" am: 264700345d
Original change: undetermined

Change-Id: I2b482006094cf5f2a5037177f78edf649386f78b
2020-06-02 16:45:48 +00:00
Jaewoong Jung
264700345d Merge "Soong package structure refactoring" 2020-06-02 16:30:50 +00:00
Treehugger Robot
8fc769dd85 Merge "Copy removed.txt file to the snapshot correctly" am: b47ab4b79f
Original change: undetermined

Change-Id: If04cb2450ee42cfe97dfab3511726ceb6c397c89
2020-06-02 15:52:09 +00:00
Treehugger Robot
b47ab4b79f Merge "Copy removed.txt file to the snapshot correctly" 2020-06-02 15:36:39 +00:00
Ulyana Trafimovich
5282305767 Merge "Clean up class loader context generation." am: 5af1e93993
Original change: undetermined

Change-Id: Id56144f63a8f1400b20190aca44cc67b736d64c7
2020-06-02 14:23:02 +00:00
Ulyana Trafimovich
5af1e93993 Merge "Clean up class loader context generation." 2020-06-02 14:13:43 +00:00
Paul Duffin
3dbf9fd892 Copy removed.txt file to the snapshot correctly
Previously, the code copied the current.txt file to both the
current_api and removed_api properties. This change copies the
removed.txt file to the removed_api property instead.

Bug: 157980685
Test: m nothing
Change-Id: Iad34e91051da43222d22c240c16f50887c43d73e
2020-06-02 14:40:28 +01:00
Paul Duffin
d08b1040cb Always run package check am: 91206d9ed1
Original change: undetermined

Change-Id: I0adc92199f39a0f94b377fba89faa30cd8af43d7
2020-06-02 13:16:35 +00:00
Paul Duffin
91206d9ed1 Always run package check
Previously, the package check was only run when building checkbuild or
the phony target created for a specific module. It would not run when
building a module that depended upon a library with the
permitted_packages property. That was because the package check was
only run when the package-check.stamp file was built and that was only
added to the phony and checkbuild targets.

Instead of touching a separate package-check.stamp file to indicate
that the check has been performed this change copies the input jar file
to the package check to a separate ../package-check/<jar> file which is
then treated as the output of the library and is the input for any dex
processing. So, any modules that depend on this library will
transitively depend on the output file produced by the package check
command and so will ensure that the package check is always run.

Test: Removed "android.net" from the permitted_packages for
      "framework-tethering", build "framework-tethering" which
      triggered and failed the package check and
      "com.android.tethering" which did not.
      Made this change.
      Built "com.android.tethering" which triggered and then failed the
      package check.
      Removed change to "framework-tethering"
Bug: 157649935
Change-Id: Ib01aa09e13f80282218049270eb7a58ec5f9f605
2020-06-02 10:29:47 +01:00
Jiyong Park
77acec63fe dex_import can be added to apex
Bug:157886942
Test: m
Change-Id: Ida6f7bb784efe74cc1fa0e8d370eaee803f08b0f
2020-06-02 11:54:01 +09:00
Treehugger Robot
dedcd7a8cc Merge "Upload build metrics after a build is completed." am: 039b04f4fc
Change-Id: Ic2176b9549d1b027650f466072d1910ab9373b11
2020-06-01 21:05:50 +00:00
Treehugger Robot
039b04f4fc Merge "Upload build metrics after a build is completed." 2020-06-01 20:44:54 +00:00
Jaewoong Jung
4b79e98a6e Soong package structure refactoring
Give prebuilt_etc and sh_binary their own packages and split the
gigantic main Android.bp up to small, per-package ones.

Test: m nothing, TreeHugger
Bug: 156980228
Change-Id: I7b00cd344b9f16861f1ff39edf0029f016b853d0
2020-06-01 13:44:48 -07:00
Patrice Arruda
219eef3878 Upload build metrics after a build is completed.
Soong now supports the ability to upload metrics to another location
by setting the ANDROID_ENABLE_METRICS_UPLOAD to an uploader that
accepts the upload.proto proto buffer message. When the environment
variable is set, a set of build metrics files (soong_metrics,
rbe_metrics.pb and build_error) is uploaded.

Bug: 140638454
Test: * Wrote unit test cases
      * Setup the uploader, built a succcessful and failed aosp_arm-eng
        target and monitor the uploading of the metrics.
Change-Id: I76a65739c557dc90345e098ca03119a950ece2d2
2020-06-01 17:29:30 +00:00
Ulya Trafimovich
696c59dbfa Clean up class loader context generation.
Deduplicate code for conditional class loader contexts that depend
on the target SDK version in the manifest.

Test: lunch aosp_cf_phone-userdebug && m
Change-Id: I69d51b212bf502b2659d43f124ea3922f90e1881
2020-06-01 17:55:56 +01:00
Treehugger Robot
31771f8f14 Merge "Improved formatting of a module list in a panic message." am: a91b64d3ee
Change-Id: I10a306bd9bd966d10814e8a220aa47e081daeb10
2020-06-01 16:32:51 +00:00
Treehugger Robot
a91b64d3ee Merge "Improved formatting of a module list in a panic message." 2020-06-01 16:20:50 +00:00
Ulyana Trafimovich
6200c519e2 Merge "Add android.test.base to class loader context for API version < 30." am: ad02d401ab
Change-Id: Ifa9b4e4d6ea5d01b487882db904e7ab6542133b6
2020-06-01 15:18:13 +00:00
Ulyana Trafimovich
ad02d401ab Merge "Add android.test.base to class loader context for API version < 30." 2020-06-01 15:05:25 +00:00
Ulya Trafimovich
c9af538c90 Add android.test.base to class loader context for API version < 30.
Test: lunch aosp_cf_x86_phone-userdebug && m
Change-Id: Id2ece4b2a6317998e1dd177e853848cc3956f39f
2020-06-01 12:51:38 +01:00
Martin Stjernholm
7ba2203249 Merge "Propagate flags necessary for a prebuilt of the Bionic linker." am: a6a224586b
Change-Id: I7f6ebf40a2c2aff687f6c3a2eaa35fb399371b08
2020-06-01 10:06:27 +00:00
Martin Stjernholm
a6a224586b Merge "Propagate flags necessary for a prebuilt of the Bionic linker." 2020-06-01 09:55:10 +00:00
Inseob Kim
fadd0b7db4 Merge "Capture libeigen's header correctly" am: 16fdea928b
Change-Id: Ifbca5ad323c5f3cfe2a605e2379bec45ffc15c7c
2020-06-01 01:29:12 +00:00
Inseob Kim
16fdea928b Merge "Capture libeigen's header correctly" 2020-06-01 01:21:41 +00:00
Inseob Kim
04f2d6a675 Capture libeigen's header correctly
libeigen exports entire directory, but only two directories contain
actual exported headers. And some of headers have no extension. This
adds a special behaviour for external/eigen when capturing snapshot.

Exempt-From-Owner-Approval: cherry-pick from internal branch

Bug: 157106227
Test: m vendor-snapshot captures libeigen's headers
Change-Id: I82f27d4c6c4d472f47d54c545328150697b8cda3
Merged-In: I82f27d4c6c4d472f47d54c545328150697b8cda3
(cherry picked from commit 67f3dbca2f)
2020-06-01 01:07:48 +00:00
Jiyong Park
611703096e Merge "Use Stem where output file name is expected in APEX" am: 0e666433cd
Change-Id: I9adbbb23e7af54994cb76ac587285282450ac76c
2020-06-01 00:49:23 +00:00
Jiyong Park
0e666433cd Merge "Use Stem where output file name is expected in APEX" 2020-06-01 00:35:48 +00:00
Treehugger Robot
bd7f948507 Merge "Notice file embededd in APEX is deterministic" am: 9980c6e111
Change-Id: I25651a62edfcfc111af3591433e2f525b168158e
2020-05-30 08:12:24 +00:00
Treehugger Robot
9980c6e111 Merge "Notice file embededd in APEX is deterministic" 2020-05-30 07:54:31 +00:00
Jiyong Park
f1493cc0f2 Use Stem where output file name is expected in APEX
Bug: 157638999
Test: m
Change-Id: I4a4892bc2941cf1301d210fc3107c02f0e7b13b7
2020-05-30 13:26:55 +09:00
Ulyana Trafimovich
8eb051e918 Merge "Don't use obsolete "org.apache.http.legacy.impl" in class loader context." am: 7c9db5d13f
Change-Id: I850b040c92fb063c0f78feeabc5156e703643582
2020-05-29 21:43:25 +00:00
Anton Hansson
67c96391f6 Merge "Revert "Fix missing headers of vendor snapshot"" am: ae9170cdd0
Change-Id: Iec1b1e87e7c56020e063cee826c5d870fbc69684
2020-05-29 21:39:31 +00:00