Commit Graph

4621 Commits

Author SHA1 Message Date
Paul Duffin
d19f579cea Merge changes Ic32f02a6,Ibe358542 am: d5f8421afd am: e6e95f392a am: 3b7084417b
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1685586

Change-Id: Ic32a38e064ef652375c8a4da9ab7f9cb497f6da4
2021-04-23 16:38:00 +00:00
Jaewoong Jung
19ef691538 Merge "Fix minor issues in updatability lint CLs." am: 8811dcbb22 am: f623005952 am: ab6d61d1ea
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1684886

Change-Id: Ie315db88ce15bdbca85c2647bd4a160696b21932
2021-04-23 16:37:53 +00:00
Paul Duffin
3b7084417b Merge changes Ic32f02a6,Ibe358542 am: d5f8421afd am: e6e95f392a
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1685586

Change-Id: I4064c3f51a43583c2ccd4c6ea1ccfbcecc7eb545
2021-04-23 16:15:46 +00:00
Jaewoong Jung
ab6d61d1ea Merge "Fix minor issues in updatability lint CLs." am: 8811dcbb22 am: f623005952
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1684886

Change-Id: I461530dd340ebb05c10206f8a8b84598a2906ff6
2021-04-23 16:15:38 +00:00
Paul Duffin
8ab3f70cab Merge "Extract general bootclasspath related code into java/bootclasspath.go" am: fbe3a73d48 am: ec874c8232 am: 698629b21e
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1683884

Change-Id: I4048298a97763bcea925787907734ddf60034e92
2021-04-23 16:05:10 +00:00
Paul Duffin
df160eb463 Remove unused boot_image module type, prebuilt and sdk member type
Bug: 177892522
Test: m nothing
Change-Id: I5763b55992e4113506ae5ccdaf9865ee27d8b041
2021-04-23 17:00:26 +01:00
Paul Duffin
7771eba88e Rename BootImageModule to BootclasspathFragmentModule
Also renames files, tests, module types in a similar fashion.

There are still some references to image and boot image. They are kept
for the following reasons:
* image_name - this is the name of an ART boot image, i.e. the
  collection of .art/.oat/.vdex files.
* BootImageInfo - again this is related to the ART boot image.
* .../art_boot_images/... paths - ditto.

Bug: 177892522
Test: m nothing
Change-Id: Ie1f4738061d131fee75de48bc26a7601481bad4d
2021-04-23 16:59:26 +01:00
Paul Duffin
d5f8421afd Merge changes Ic32f02a6,Ibe358542
* changes:
  Export classesJars initialized in hiddenAPIExtractInformation
  Generalize the platformBootclasspathDepsMutator
2021-04-23 15:57:46 +00:00
Paul Duffin
698629b21e Merge "Extract general bootclasspath related code into java/bootclasspath.go" am: fbe3a73d48 am: ec874c8232
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1683884

Change-Id: I73f3bdc0f529faa17d2917b21cc258920c5ed196
2021-04-23 15:43:24 +00:00
Treehugger Robot
0138a307a7 Merge "Don't plumb PRODUCT_*_CLASSPATH vars to make." am: 784ad87dd6 am: ae5c25073c am: 9b4279d516
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1670070

Change-Id: I3829855044e86b762464cef1ca299ea0be761287
2021-04-23 15:34:16 +00:00
Jaewoong Jung
8811dcbb22 Merge "Fix minor issues in updatability lint CLs." 2021-04-23 15:31:41 +00:00
Treehugger Robot
9b4279d516 Merge "Don't plumb PRODUCT_*_CLASSPATH vars to make." am: 784ad87dd6 am: ae5c25073c
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1670070

Change-Id: I7ee3c678a6efe7f94c3ce704bd1cae1bd2e78df1
2021-04-23 15:11:18 +00:00
Paul Duffin
fbe3a73d48 Merge "Extract general bootclasspath related code into java/bootclasspath.go" 2021-04-23 15:04:10 +00:00
Treehugger Robot
784ad87dd6 Merge "Don't plumb PRODUCT_*_CLASSPATH vars to make." 2021-04-23 14:32:33 +00:00
Vladimir Marko
230bd421a8 profman: Clean up output profile type options.
Test: m  # Check output boot profiles with hexdump.
Bug: 148067697
Change-Id: Ic20f415ad4eee1fd6396f320b757420884764d2c
2021-04-23 15:19:16 +01:00
Paul Duffin
49358086fd Merge "Add exported_bootclasspath_fragments to prebuilt_apex/apex_set" am: ed0b64f65b am: 07b9400abb am: 7c1dda11a6
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1683869

Change-Id: I696556aa85dd3d4ca01db854cae0df92f571f999
2021-04-23 14:02:39 +00:00
Paul Duffin
7c1dda11a6 Merge "Add exported_bootclasspath_fragments to prebuilt_apex/apex_set" am: ed0b64f65b am: 07b9400abb
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1683869

Change-Id: Iab8bbbde2a28b760f746cba92adabc403392838b
2021-04-23 13:38:08 +00:00
Paul Duffin
023dba0a3f Add exported_bootclasspath_fragments to prebuilt_apex/apex_set
This is needed to allow a prebuilt_bootclasspath_fragment to be used
interchangeably with a bootclasspath_fragment in the
platform_bootclasspath module.

The platform_bootclasspath module depends on APEX specific variants of
bootclasspath_fragment modules. That works because the
bootclasspath_fragment modules are part of an apex and so have an APEX
specific variant which the platform_bootclasspath can specify.

Using a prebuilt_bootclasspath_fragment in place of a
bootclasspath_fragment requires that the prebuilt also has an APEX
specific variant.

Specifying exported_bootclasspath_fragments on a prebuilt_apex/apex_set
will cause it to create an APEX variant for the named module whcih will
allow it to be selected by the platform_bootclasspath module.

Bug: 186034565
Bug: 177892522
Test: m nothing
Change-Id: I7ddacc6498ec3a4a9f26c5f78b7f9a033e494d78
2021-04-23 12:12:37 +01:00
Paul Duffin
36187b2cf3 Export classesJars initialized in hiddenAPIExtractInformation
This exports classesJars constructed in hiddenAPIExtractInformation
through the hiddenAPIIntf interface for use by the
bootclasspath_fragment module type.

Bug: 179354495
Test: verified that the monolithic out/soong/hiddenapi/... files are
      unchanged by this change
Change-Id: Ic32f02a69229d9518772fe6b2a329501dd8cd849
2021-04-23 09:32:14 +01:00
Paul Duffin
b67d878b80 Extract general bootclasspath related code into java/bootclasspath.go
The platform_bootclasspath and bootclasspath_fragment modules provide
different capabilities but are related and so have some common
functionality. This change moves some platform_bootclasspath code that
will be of use for bootclasspath_fragment in future into a separate
file.

Bug: 177892522
Test: m nothing
Change-Id: I827b85e33d16155fcc920d553100c9e99267dc4e
2021-04-23 09:32:14 +01:00
Paul Duffin
4994d26bfa Generalize the platformBootclasspathDepsMutator
Adds a BootclasspathDepsMutator that is currently only implemented by
the platform_bootclasspath but which can be implemented by
bootclasspath_fragment too.

Bug: 177892522
Test: m nothing
Change-Id: Ibe35854281004d6e40bf1f797144fb582e8c08b9
2021-04-23 09:32:14 +01:00
Treehugger Robot
1ae7fcd51c Merge "Expose "full" dexpreopt.config" am: a3693772a6 am: 375e5d7a47 am: fcf8e11732
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1666384

Change-Id: I182ab0a4ebdb80eb9ff812fb8d21607525769d80
2021-04-23 08:10:51 +00:00
Treehugger Robot
fcf8e11732 Merge "Expose "full" dexpreopt.config" am: a3693772a6 am: 375e5d7a47
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1666384

Change-Id: I16478381c334c2a47b4bb193aed9c180b609c152
2021-04-23 07:46:03 +00:00
Treehugger Robot
a3693772a6 Merge "Expose "full" dexpreopt.config" 2021-04-23 06:47:57 +00:00
Jaewoong Jung
3c87b1df11 Fix minor issues in updatability lint CLs.
Test: TreeHugger
Bug: 182349282
Change-Id: Ifae282d51b088d0562605b41a09696d75c5138f1
2021-04-22 13:40:41 -07:00
Paul Duffin
d0283d0a5a Merge "bootclasspath_fragment: Add hidden API flag files to snapshot" am: 0f28a51669 am: b9ede6228f am: c5e960d1ae
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1682091

Change-Id: Ic8ed89598074bc89aaef2d6081e2884b73ee6ef5
2021-04-22 17:22:42 +00:00
Paul Duffin
3b34058072 Merge "bootclasspath_fragment: Add contents to snapshot" am: 6e0a62b773 am: 889010d73a am: 855362a5da
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1682090

Change-Id: Ie107e8986b9b0dc4251f8e28427399854b44ec43
2021-04-22 17:22:35 +00:00
Paul Duffin
d36bd335f9 Merge "Workaround build failure in coverage build" am: c69bfdd53b am: eb3fecce39 am: ab2941a932
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1683873

Change-Id: If44e9885f4c1e3d7743bd7a9187f8dca30fdfcad
2021-04-22 17:22:28 +00:00
Paul Duffin
c5e960d1ae Merge "bootclasspath_fragment: Add hidden API flag files to snapshot" am: 0f28a51669 am: b9ede6228f
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1682091

Change-Id: I4feae7a8f003604eeda442fec6b118a8596baaae
2021-04-22 17:20:27 +00:00
Paul Duffin
855362a5da Merge "bootclasspath_fragment: Add contents to snapshot" am: 6e0a62b773 am: 889010d73a
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1682090

Change-Id: I1a34c19f2fd2ceda3d7353f933a31957d1844d54
2021-04-22 17:10:41 +00:00
Paul Duffin
ab2941a932 Merge "Workaround build failure in coverage build" am: c69bfdd53b am: eb3fecce39
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1683873

Change-Id: I9d3985c9bd13058a8ec1c2469b0cdc695f7e9a8d
2021-04-22 17:10:34 +00:00
Paul Duffin
0f28a51669 Merge "bootclasspath_fragment: Add hidden API flag files to snapshot" 2021-04-22 17:02:58 +00:00
Paul Duffin
6e0a62b773 Merge "bootclasspath_fragment: Add contents to snapshot" 2021-04-22 17:01:24 +00:00
Paul Duffin
c69bfdd53b Merge "Workaround build failure in coverage build" 2021-04-22 16:54:12 +00:00
Paul Duffin
a9dd6faae5 Workaround build failure in coverage build
The jacocoagent is special as while it is depended on by prebuilts it
is not actually a prebuilt.

Bug: 177892522
Bug: 186118711
Test: m EMMA_INSTRUMENT=true EMMA_INSTRUMENT_FRAMEWORK=true nothing
      Previous command fails without this change and works with it.
Change-Id: I8fba922fc40919936d74a6f95af745e37f1ca61f
2021-04-22 17:31:50 +01:00
Jaewoong Jung
abf3d40d84 Merge changes Ia74a2b83,I30a46c8f,Iac7c0149 am: d6599f5573 am: a9aa24ea33 am: c7f1d66e2c
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1683373

Change-Id: I6cb94032c7ddb0b62dad2dbb4a3b2ac5fe31ec68
2021-04-22 16:18:18 +00:00
Paul Duffin
5bca2f26f2 Merge "Move monolithic stub flags generation to platform_bootclasspath" am: 57d13c6892 am: 5774eb9e14 am: ea69b4109b
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1683866

Change-Id: Id0e5e6dc8596b7d47fe65c47a66da7a86c20c6cb
2021-04-22 16:17:56 +00:00
Paul Duffin
1dfa82423f Merge "Extract common stub flags code" am: d631512659 am: d8d72e85f6 am: 9b76c7bee2
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1683865

Change-Id: I1225ec1b03ec04745e982918d8540298a7f6b9de
2021-04-22 16:17:20 +00:00
Jaewoong Jung
c7f1d66e2c Merge changes Ia74a2b83,I30a46c8f,Iac7c0149 am: d6599f5573 am: a9aa24ea33
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1683373

Change-Id: I39be09feff6fa678f31c8a131a1e66e8aa219046
2021-04-22 15:53:47 +00:00
Paul Duffin
ea69b4109b Merge "Move monolithic stub flags generation to platform_bootclasspath" am: 57d13c6892 am: 5774eb9e14
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1683866

Change-Id: Ia4b4ad562a0e90351334cae9a323466f6c7a569b
2021-04-22 15:53:26 +00:00
Paul Duffin
9b76c7bee2 Merge "Extract common stub flags code" am: d631512659 am: d8d72e85f6
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1683865

Change-Id: I2aa0acb55e98e1399516f582525419d93fbadc14
2021-04-22 15:53:13 +00:00
Jaewoong Jung
d6599f5573 Merge changes Ia74a2b83,I30a46c8f,Iac7c0149
* changes:
  Add lint.strict_updatability_linting
  Move Java lint tests to lint_test.go
  Forbid bypassing updatability lint checks.
2021-04-22 15:39:41 +00:00
Paul Duffin
57d13c6892 Merge "Move monolithic stub flags generation to platform_bootclasspath" 2021-04-22 15:06:16 +00:00
Paul Duffin
d631512659 Merge "Extract common stub flags code" 2021-04-22 15:05:54 +00:00
Paul Duffin
677de9427b Merge changes I67589bcc,Ibcfae390 am: 7cbdf81e95 am: 33f495f305 am: 13b9d25ed4
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1683868

Change-Id: Idb4d7af1bf9914bf7bf0306d04daf74ee992fc5e
2021-04-22 15:05:03 +00:00
Paul Duffin
13b9d25ed4 Merge changes I67589bcc,Ibcfae390 am: 7cbdf81e95 am: 33f495f305
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1683868

Change-Id: I1b3d7fae197d3e072ac205cfe8e09a1c6bf0ddc3
2021-04-22 14:41:43 +00:00
Paul Duffin
7cbdf81e95 Merge changes I67589bcc,Ibcfae390
* changes:
  Replace boot image with bootclasspath fragment in sdk package
  bootclasspath_fragment must only depend on source contents
2021-04-22 14:02:43 +00:00
Anton Hansson
67e20e2ff8 Merge "Add new stub_only_static_libs attr for sdk_library" am: 24eac476d4 am: ec47b30e0e am: 05ecab28a3
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1682097

Change-Id: Ie716a56bd455bead4ee1bad88203cb7d24d10512
2021-04-22 13:39:57 +00:00
Paul Duffin
74431d57c6 Move monolithic stub flags generation to platform_bootclasspath
As part of that this change:
* Moves code that will be common to platform_bootclasspath and
  bootclasspath_fragment from hiddenapi_singleton.go into
  hiddenapi_modular.go.
* Fixes the tests in hiddenapi_singleton_test.go but intentionally
  does not rename them or move them into a more appropriate place so
  as to make it easier to see the differences. A TODO has been added
  and these will be cleaned up in a follow up change.

Bug: 179354495
Test: verified that the monolithic out/soong/hiddenapi/... files are
      unchanged by this change
Change-Id: I680e4dab2e6bdf4a655fa9f255c195175904667e
2021-04-22 14:23:28 +01:00
Paul Duffin
3e7fcc3fe7 Extract common stub flags code
The stubFlagsRule does three separate tasks:
1. It computes the set of modules that provide the stubs.
2. It scans all the modules to find the stub modules and retrieves the
   paths to their dex files.
3. It constructs the ninja rule.

Of those three tasks, 1 and 3 will be same for the
platform_bootclasspath. Instead of searching all the modules for the
ones that provide the stubs it will simply add dependencies onto the
stub modules and retrieve the dex file paths from them.

This change extracts tasks 1 and 3 into separate methods for reuse. It
also parameterizes the generation of the ninja rule.

Bug: 179354495
Test: verified that the monolithic out/soong/hiddenapi/... files are
      unchanged by this change
Change-Id: I893845dbddc4b001dfd44d0e0b1c8a31b7f3f89f
2021-04-22 14:23:08 +01:00