Commit graph

2593 commits

Author SHA1 Message Date
Usta Shrestha
2bae13b095 Use phony ninja outputs to reduce file-size
1. scan if any set of order-only deps are repeated
  2. if so extract them as a phony output to be shared

Test: m libc
Bug: NA
Change-Id: I0689111b97bbbd1f3b26650e8ae2e0a4ffb5085e
2023-03-07 01:39:27 -05:00
Kevin Dagostino
bcdf8aceda Enable parallelCompile since golang is now >= 1.9 am: ad7bcc7b50 am: 0ce4909fd2
Original change: https://android-review.googlesource.com/c/platform/build/blueprint/+/2469723

Change-Id: I0c1435a7800432bef5365ec506e9d88f9afb1691
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-03-06 18:34:50 +00:00
Kevin Dagostino
0ce4909fd2 Enable parallelCompile since golang is now >= 1.9 am: ad7bcc7b50
Original change: https://android-review.googlesource.com/c/platform/build/blueprint/+/2469723

Change-Id: If58146bc8c54081ee318362f33a79db8cfbd51f5
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-03-06 18:00:20 +00:00
Kevin Dagostino
ad7bcc7b50 Enable parallelCompile since golang is now >= 1.9
Test: m nothing
Change-Id: I38cdd83ca9b17263155433abb65fb4f97b5ec70b
2023-03-03 21:57:29 +00:00
Usta Shrestha
f1f0a2b86d cosmetic: readability am: 4cff07db25 am: 35136c7d74
Original change: https://android-review.googlesource.com/c/platform/build/blueprint/+/2449269

Change-Id: I18cd8103f3ef6732758ae2f30d30421057a3f916
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-03-02 05:41:10 +00:00
Usta Shrestha
35136c7d74 cosmetic: readability am: 4cff07db25
Original change: https://android-review.googlesource.com/c/platform/build/blueprint/+/2449269

Change-Id: I90f60e52e43528e26681278244bccb8667675444
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-03-02 05:07:10 +00:00
Usta Shrestha
db79b843ca Add unit test for EventHandler am: 3e334cfed2 am: 66a29aefa0
Original change: https://android-review.googlesource.com/c/platform/build/blueprint/+/2458548

Change-Id: I67314a9444b805d6ce4ce75df34c33fc20cdeb6e
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-02-28 21:09:54 +00:00
Usta Shrestha
66a29aefa0 Add unit test for EventHandler am: 3e334cfed2
Original change: https://android-review.googlesource.com/c/platform/build/blueprint/+/2458548

Change-Id: I18705ae924814febb401af5e447920ea507bcaf0
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-02-28 19:35:06 +00:00
Usta Shrestha
4cff07db25 cosmetic: readability
Test: run `m nothing`
Bug: NA
Change-Id: Id58635cc949f07e5263ad67b0e78c66d19abba40
2023-02-27 11:41:51 -05:00
Usta Shrestha
3e334cfed2 Add unit test for EventHandler
Test: the added file
Bug: NA
Change-Id: Id50105e84585348ce8540f52407224daeb8eb0d4
2023-02-27 11:41:51 -05:00
Treehugger Robot
fda564250b Merge "cosmetic: use _ for unused args" am: 1821351760 am: a50172080b
Original change: https://android-review.googlesource.com/c/platform/build/blueprint/+/2449270

Change-Id: Ie3116892134a58d548fccb79b77542425b6797cb
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-02-23 19:52:07 +00:00
Usta Shrestha
a694aae313 cosmetic: readability am: ce85ecb176 am: 2833cebfa2
Original change: https://android-review.googlesource.com/c/platform/build/blueprint/+/2444579

Change-Id: I22681f6bad2beeb46cbce2f1951e89d6c53e0e96
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-02-23 19:50:15 +00:00
Treehugger Robot
a50172080b Merge "cosmetic: use _ for unused args" am: 1821351760
Original change: https://android-review.googlesource.com/c/platform/build/blueprint/+/2449270

Change-Id: I57324caea1736d8b4c6e95c2956caacd5b53f1c7
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-02-23 19:46:21 +00:00
Usta Shrestha
2833cebfa2 cosmetic: readability am: ce85ecb176
Original change: https://android-review.googlesource.com/c/platform/build/blueprint/+/2444579

Change-Id: I4772e567093cace606edcdb6fe486dacbd92ed4b
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-02-23 19:14:04 +00:00
Treehugger Robot
1821351760 Merge "cosmetic: use _ for unused args" 2023-02-23 16:21:18 +00:00
Usta Shrestha
7f3c51ca43 cosmetic: use _ for unused args
Test: run `m nothing`
Bug: NA
Change-Id: Idfdb0d4121244e25847822114a2d12c6bb18ebd1
2023-02-23 02:28:12 +00:00
Usta Shrestha
ce85ecb176 cosmetic: readability
Test: run `m nothing` and `m nothing --empty_ninja_file`
Bug: NA
Change-Id: I6fd81667ea2d636139ae38bc36315f8710b72c25
2023-02-23 02:27:26 +00:00
Sam Delmerico
4373a40e61 apply gofmt am: 26e44b7b78 am: 112f8ce34f
Original change: https://android-review.googlesource.com/c/platform/build/blueprint/+/2448682

Change-Id: I0826f298f1dc436acfad17d451b9607ae07f1257
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-02-22 16:46:02 +00:00
Sam Delmerico
112f8ce34f apply gofmt am: 26e44b7b78
Original change: https://android-review.googlesource.com/c/platform/build/blueprint/+/2448682

Change-Id: I9627ededb4270842ccc5f205b720c002c30c52a5
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-02-22 15:43:22 +00:00
Sam Delmerico
26e44b7b78 apply gofmt
Change-Id: I2416e246b3d8485a6b7810b998cff2f45f6a0494
2023-02-21 15:11:20 -05:00
Liz Kammer
becc2f6a3e Add event handler for each mutator am: a988f08000 am: 01fb1d4c41
Original change: https://android-review.googlesource.com/c/platform/build/blueprint/+/2432532

Change-Id: Ib9b6f0db5dd408a48acddb634b1889403405afc3
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-02-14 20:42:40 +00:00
Liz Kammer
c2e79cbc36 Add getter for EventHandler so its easier to mock am: 073f69d723 am: addb326e69
Original change: https://android-review.googlesource.com/c/platform/build/blueprint/+/2434332

Change-Id: I1a174c90e1d7f7e59f05677cf29363e6320ed9ca
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-02-14 20:40:40 +00:00
Liz Kammer
01fb1d4c41 Add event handler for each mutator am: a988f08000
Original change: https://android-review.googlesource.com/c/platform/build/blueprint/+/2432532

Change-Id: I977d86f07f9d68534e2f1714379e0882d74b8b48
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-02-14 19:53:24 +00:00
Liz Kammer
addb326e69 Add getter for EventHandler so its easier to mock am: 073f69d723
Original change: https://android-review.googlesource.com/c/platform/build/blueprint/+/2434332

Change-Id: I5623fa879897e896ba1762172bd0b1a0dc6addf7
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-02-14 19:51:29 +00:00
Liz Kammer
a988f08000 Add event handler for each mutator
Collect additional metrics for individual mutators in order to
understand impact of individual mutators.

Test: m nothing
Change-Id: Ic3ecb1e79a79dd665c9f60d29f0dfd3732481c2d
2023-02-13 18:02:23 -05:00
Liz Kammer
073f69d723 Add getter for EventHandler so its easier to mock
Test: m nothing
Change-Id: Ied338a25f12404ddc88c3b3cb7d7f2ff9ade3aab
2023-02-13 18:02:22 -05:00
Chris Parsons
c7a2ba54bf Close ninja file descriptor am: 58a29728ea am: 33d423ce03
Original change: https://android-review.googlesource.com/c/platform/build/blueprint/+/2428033

Change-Id: I652b2701a72de7198553766f90ae396828214103
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-02-09 19:07:25 +00:00
Chris Parsons
33d423ce03 Close ninja file descriptor am: 58a29728ea
Original change: https://android-review.googlesource.com/c/platform/build/blueprint/+/2428033

Change-Id: I47bb7ac1f2628b3aed73491d71ab0415edfe4654
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-02-09 17:45:29 +00:00
Chris Parsons
58a29728ea Close ninja file descriptor
With this close() missing, especially with large ninja files, soong paid
the runtime cost at arbitrary times during the rest of its execution (or
during process cleanup).

Test: Manual runs of `m nothing` and verifying timing metrics
Change-Id: Ibdfbf7371cfc4c58c485e76f96b8e9b9ad900972
2023-02-08 23:33:56 -05:00
Cole Faust
d7cd87ae92 Show the ninja string that failed to parse in errors am: c5baf11a2d am: c03d43564a
Original change: https://android-review.googlesource.com/c/platform/build/blueprint/+/2393625

Change-Id: I09c15bd36805c6679d7ca2ce05029e5bdcd25d5b
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-01-20 00:55:44 +00:00
Cole Faust
c03d43564a Show the ninja string that failed to parse in errors am: c5baf11a2d
Original change: https://android-review.googlesource.com/c/platform/build/blueprint/+/2393625

Change-Id: Ie6c2eac046adda1bd4a2a57c33658fdc8c6b01a8
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-01-20 00:21:49 +00:00
Cole Faust
c5baf11a2d Show the ninja string that failed to parse in errors
So that it's easier to debug what the problem is.

Test: m nothing
Change-Id: I97e81f98f0365e981d34c6b8bec8528de1b7e514
2023-01-19 14:23:04 -08:00
Treehugger Robot
025144564c Merge changes I516c984b,I2b3354de am: a405cf7f6a am: a82dd5f183
Original change: https://android-review.googlesource.com/c/platform/build/blueprint/+/2364231

Change-Id: I46274bfec11afcdb580f7fb1839862c29130df06
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-12-21 16:40:18 +00:00
Treehugger Robot
a82dd5f183 Merge changes I516c984b,I2b3354de am: a405cf7f6a
Original change: https://android-review.googlesource.com/c/platform/build/blueprint/+/2364231

Change-Id: I29db8b42c0449ee8b2510ca4d5f549e2665ebeb0
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-12-21 16:06:25 +00:00
Treehugger Robot
a405cf7f6a Merge changes I516c984b,I2b3354de
* changes:
  comment on how glob files are written
  cosmetic: use map[_]struct{}  for set semantics
2022-12-21 15:44:42 +00:00
Usta Shrestha
f0e02237da comment on how glob files are written
Bug: NA
Test: NA
Change-Id: I516c984b62d07ca7f188b2faef1466c5720b3b22
2022-12-21 01:04:19 -05:00
Usta Shrestha
09e0dd2ec9 cosmetic: use map[_]struct{} for set semantics
Bug: NA
Test: `m nothing` then view soong_metrics
Change-Id: I2b3354de3259ffef9ae881d59ac844fb518074f2
2022-12-21 01:01:55 -05:00
Sasha Smundak
08080643bc bootstrap.Args should contain only relevant command line arguments am: 08343b7a89 am: 8ede84e357
Original change: https://android-review.googlesource.com/c/platform/build/blueprint/+/2346817

Change-Id: Idd7a6163ccbdb438e5ffa45ca5a990a190d6dc86
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-12-17 00:36:58 +00:00
Sasha Smundak
8ede84e357 bootstrap.Args should contain only relevant command line arguments am: 08343b7a89
Original change: https://android-review.googlesource.com/c/platform/build/blueprint/+/2346817

Change-Id: I951417af664c64ab1fdf4b1f41ec3a702a33efc9
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-12-17 00:05:46 +00:00
Sasha Smundak
08343b7a89 bootstrap.Args should contain only relevant command line arguments
Soong/Bazel-specific arguments are now kept in Soong.

Test: treehugger
Change-Id: If37bc6ea60b58173baa981bb5c85bfc90102005c
2022-12-14 10:27:31 -08:00
Spandan Das
e2abe5bfa6 Merge "Conditional inclusion of blueprint modules" am: c3887c2bbb am: 9bc3a984d7
Original change: https://android-review.googlesource.com/c/platform/build/blueprint/+/2296765

Change-Id: If04d9ceaddcbd5c8dc8a28b69241e7c6c9cbb517
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-12-06 00:50:20 +00:00
Spandan Das
9bc3a984d7 Merge "Conditional inclusion of blueprint modules" am: c3887c2bbb
Original change: https://android-review.googlesource.com/c/platform/build/blueprint/+/2296765

Change-Id: I013db529bab6f374bc1ba5831947464336a571a0
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-12-06 00:18:11 +00:00
Spandan Das
c3887c2bbb Merge "Conditional inclusion of blueprint modules" 2022-12-05 23:50:23 +00:00
MarkDacek
f1423d13cb Add bazel-force-enabled-modules. am: 99f7962b35 am: 2def2db38b
Original change: https://android-review.googlesource.com/c/platform/build/blueprint/+/2322194

Change-Id: I0429639c8191020ccb594e597ddae9c740845514
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-12-02 23:00:02 +00:00
MarkDacek
2def2db38b Add bazel-force-enabled-modules. am: 99f7962b35
Original change: https://android-review.googlesource.com/c/platform/build/blueprint/+/2322194

Change-Id: If3e2893d549129999b077de97816a81aa13c6055
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-12-02 22:29:42 +00:00
Spandan Das
ed4af01be6 Conditional inclusion of blueprint modules
This introduces a new `blueprint_package_includes` module type. If
present, other blueprint modules in that file will be analyzed
if and only if the requested include tags are met

example syntax:
```
Android.bp
blueprint_packgage_includes {
  match_all: ["tag1", "tag2", ...],
}

other_module1 {...}
other_module2 {...}
```
other_module1 and other_module2 will not be analyzed unless
tag1,tag2, ... are set

This also adds a new object of type `IncludeTags` to the Context object,
which is a container for these string keys.

Test: In build/blueprint, go test ./
Test: TH

Change-Id: I79de0d7da3224a5b2025c27a5137f39d00c7382e
2022-12-02 01:46:28 +00:00
MarkDacek
99f7962b35 Add bazel-force-enabled-modules.
Test: m nothing
Change-Id: I97d8fcb304f0d039fd7bbd3ea3d01966ae25471f
2022-12-01 20:15:33 +00:00
Colin Cross
6e7fcd48f5 Add VariableFuncContext argument to VariableFuncs am: 1b457a5e10 am: 2fde855964
Original change: https://android-review.googlesource.com/c/platform/build/blueprint/+/2286235

Change-Id: I6ba6f89a19b1c94fd34b115e639ddd5f0861b7cb
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-11-04 22:44:46 +00:00
Colin Cross
2fde855964 Add VariableFuncContext argument to VariableFuncs am: 1b457a5e10
Original change: https://android-review.googlesource.com/c/platform/build/blueprint/+/2286235

Change-Id: I31c3a919ad66d0abd68bb77aeeca15f6467dd159
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-11-04 22:15:14 +00:00
Colin Cross
1b457a5e10 Add VariableFuncContext argument to VariableFuncs
Add a VariableFuncContext argument to VariableFuncs that implements
GlobWithDeps.  This will allow Soong to use optimized glob dependencies
in VariableFuncs.

Bug: 257079828
Test: no dependencies on directories in build.ninja.d
Change-Id: Iee5fc9c9ae3087662a5d1a3d7323a87462299205
2022-11-04 18:21:31 +00:00