Commit graph

3088 commits

Author SHA1 Message Date
Cole Faust
ece5b2fba8 Merge "Add AppendSimpleValue" into main am: 28c638257d
Original change: https://android-review.googlesource.com/c/platform/build/blueprint/+/3132817

Change-Id: If69cec69e35ceaedbe1e16d29173a118df79e7b9
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-06-14 03:08:08 +00:00
Cole Faust
28c638257d Merge "Add AppendSimpleValue" into main 2024-06-14 02:59:29 +00:00
Treehugger Robot
27a62c91fd Merge "Fix extra newline after multiline select case bodies" into main am: a3684d5d61
Original change: https://android-review.googlesource.com/c/platform/build/blueprint/+/3132292

Change-Id: Ibde81bfa91b5c1396bed0d55376736c2cbae7d9d
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-06-13 23:42:47 +00:00
Treehugger Robot
a3684d5d61 Merge "Fix extra newline after multiline select case bodies" into main 2024-06-13 23:34:05 +00:00
Cole Faust
63acbad058 Fix extra newline after multiline select case bodies
Bug: 346922064
Test: go test
Change-Id: I0587ab04d463a1923440564647d0f1e1bf6d216b
2024-06-13 15:12:04 -07:00
Cole Faust
96cb91fe28 Add AppendSimpleValue
This exported function allows soong code to append to configurable
properties.

Bug: 346922064
Test: m nothing --no-skip-soong-tests
Change-Id: Iaadcb1874ef5b972f1eeeb59b317e140ad01c947
2024-06-13 14:50:50 -07:00
Spandan Das
2d4c300b08 Drop blueprint_package_includes am: 6dd9fcc314
Original change: https://android-review.googlesource.com/c/platform/build/blueprint/+/3098677

Change-Id: Id55b67af8c0c5289fb3b9c88bc64ce5bdc7aa125
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-06-06 22:16:18 +00:00
Spandan Das
6dd9fcc314 Drop blueprint_package_includes
This feature can be used to prune Android.bp files from analysis. This
was introduced in `T` to support co-existence of BA and Go apexes. With
the recent changes to apex prebuilt build rules, this pruning is no
longer necessary to support co-existence.

Pruning via PRODUCT_SOURCE_ROOT_DIRS is still supported.

Bug: 308188212
Test: m nothing
Change-Id: I1e1391665963b1ad7cb3837dc67500b69b0833af
2024-06-05 21:52:41 +00:00
Joe Onorato
95fe017639 Handle absolute paths for the ninja shard writing. am: c3ac2a249a
Original change: https://android-review.googlesource.com/c/platform/build/blueprint/+/3114568

Change-Id: I40720c0c714e36b816f8d3a262e7619f16be6fd5
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-06-05 19:46:53 +00:00
Joe Onorato
c3ac2a249a Handle absolute paths for the ninja shard writing.
Test: OUT_DIR=/source/foo m nothing
Change-Id: Id3849e7446cd0cb26a5b5c74ac3bf4521449b716
2024-06-05 11:25:24 -07:00
Yu Liu
bbbf3fbbd4 Use FNV instead of maphash as the hasher for soong. am: d5133cfc64
Original change: https://android-review.googlesource.com/c/platform/build/blueprint/+/3107009

Change-Id: I2f0c454f7b473af96b1bcef9d6b12426a76e4185
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-05-29 23:46:12 +00:00
Yu Liu
d5133cfc64 Use FNV instead of maphash as the hasher for soong.
This is to support recalculate hash in different proceses.

Bug: 335718784
Test: unit tests and CI
Change-Id: I08909fe0332a7adcfcc158698c5d8ba501116ba2
2024-05-29 22:03:29 +00:00
Yu Liu
a50297d11a Merge "Need to catch the errors when closing and flushing." into main am: b83d6420e2
Original change: https://android-review.googlesource.com/c/platform/build/blueprint/+/3101377

Change-Id: I050e06ce732a180ff67ae8a4dbb8d33f4a07c21d
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-05-24 23:03:06 +00:00
Yu Liu
b83d6420e2 Merge "Need to catch the errors when closing and flushing." into main 2024-05-24 22:41:19 +00:00
Yu Liu
01a4667ba2 Need to catch the errors when closing and flushing.
Bug: 335718784
Test: CI
Change-Id: I6ae984b36ed786d1ccaa67d5c05efd3d6b89504b
2024-05-24 21:37:32 +00:00
Treehugger Robot
0e7baaa021 Merge "Parallelize VerifyProvidersWereUnchanged" into main am: 177fd07327
Original change: https://android-review.googlesource.com/c/platform/build/blueprint/+/3102364

Change-Id: I9355bb47213ed7c221b91a8093e72ec105a937b6
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-05-24 20:46:16 +00:00
Treehugger Robot
177fd07327 Merge "Parallelize VerifyProvidersWereUnchanged" into main 2024-05-24 20:28:27 +00:00
Treehugger Robot
09ab534fba Merge "Update go.mod file to go 1.22" into main am: 0c529c480a
Original change: https://android-review.googlesource.com/c/platform/build/blueprint/+/3101710

Change-Id: Ibd2d7d736ea46345854fbdae9576c54de9c7abe9
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-05-24 19:16:02 +00:00
Cole Faust
7b7b1db4a8 Parallelize VerifyProvidersWereUnchanged
This makes it faster than the write_files step that it's in parallel
with. It's a ~3 second improvement to soong's runtime on my computer
on aosp main.

I'm not using parallelVisit() this time around, because
VerifyProvidersWereUnchanged is run in parallel with other code
that also uses parallelVisit(), and parallelVisit() modifies
module.waitingCount, so they conflict with each other.

Bug: 335718784
Test: m nothing
Change-Id: I4c6a4c30e2ffc4606faad378f59e003a02826848
2024-05-24 12:10:06 -07:00
Treehugger Robot
0c529c480a Merge "Update go.mod file to go 1.22" into main 2024-05-24 18:57:09 +00:00
Yu Liu
5bc84bebd3 Merge "Pass the parameters to goroutine to avoid relying on a go 1.22 fix." into main am: da55eb2a45
Original change: https://android-review.googlesource.com/c/platform/build/blueprint/+/3102363

Change-Id: I84d282574447f97d5d84d38f1a7744dcf40f9d68
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-05-24 18:31:55 +00:00
Yu Liu
da55eb2a45 Merge "Pass the parameters to goroutine to avoid relying on a go 1.22 fix." into main 2024-05-24 18:05:25 +00:00
Yu Liu
a99fc848a4 Pass the parameters to goroutine to avoid relying on a go 1.22 fix.
Bug: 335718784
Test: CI
Change-Id: Iae55e59a58101bc373666455ae4f2b6146c1abca
2024-05-24 16:45:50 +00:00
Priyanka Advani
c3b4357792 Merge "Revert "Parallelize VerifyProvidersWereUnchanged"" into main am: 6daa49ee97
Original change: https://android-review.googlesource.com/c/platform/build/blueprint/+/3101711

Change-Id: I67ad62338b2cb429c6390e8b9451766a5a38b1dc
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-05-24 00:27:50 +00:00
Priyanka Advani
6daa49ee97 Merge "Revert "Parallelize VerifyProvidersWereUnchanged"" into main 2024-05-24 00:05:46 +00:00
Priyanka Advani
533959eb27 Revert "Parallelize VerifyProvidersWereUnchanged"
This reverts commit 2071d15a29.

Reason for revert: Droidmonitor triggered revert due to b/342483801.

Change-Id: Ib892a3b17a5fcefb40d316e9dce9d5432293ec25
2024-05-23 23:55:27 +00:00
Treehugger Robot
c2a120dd82 Merge "Parallelize VerifyProvidersWereUnchanged" into main am: f887364cd2
Original change: https://android-review.googlesource.com/c/platform/build/blueprint/+/3101706

Change-Id: I3d7dfc9a9568ea4de2f265839f8e7888815c0931
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-05-23 23:32:10 +00:00
Cole Faust
a3a125aaf2 Update go.mod file to go 1.22
Bug: 330574836
Test: Presubmits
Change-Id: I871cabd7aa403b315d5efcf75f5eff6df492478f
2024-05-23 16:26:02 -07:00
Treehugger Robot
f887364cd2 Merge "Parallelize VerifyProvidersWereUnchanged" into main 2024-05-23 23:12:56 +00:00
Cole Faust
d56bf5bf3e Merge "Revert "Bump go.mod file to go 1.22"" into main am: 239c43a66c
Original change: https://android-review.googlesource.com/c/platform/build/blueprint/+/3102358

Change-Id: Id50ef9c1a5356e7d16d88bb4cf672b39be93799d
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-05-23 22:37:11 +00:00
Cole Faust
239c43a66c Merge "Revert "Bump go.mod file to go 1.22"" into main 2024-05-23 22:24:35 +00:00
Cole Faust
f764ab9f16 Revert "Bump go.mod file to go 1.22"
This reverts commit 65b6f3cb23.

Reason for revert: breaks build-tools build

Change-Id: Ib3dbaa57d871796024a0f88569f1ad933ddf4f76
2024-05-23 22:22:56 +00:00
Cole Faust
2071d15a29 Parallelize VerifyProvidersWereUnchanged
This makes it faster than the write_files step that it's in parallel
with. It's a ~3 second improvement to soong's runtime on my computer
on aosp main.

Bug: 335718784
Test: m nothing
Change-Id: I9dc9bd9c4cb80e61f880531dbb661c971298607c
2024-05-23 15:09:36 -07:00
Treehugger Robot
73d1cbd561 Merge "Preserve type when promoting non-selects to selects" into main am: 077df5875e
Original change: https://android-review.googlesource.com/c/platform/build/blueprint/+/3097679

Change-Id: Icd9ac9eb41485689c07331c15f97d38b6e9052c6
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-05-23 19:51:43 +00:00
Cole Faust
9d33cc631a Bump go.mod file to go 1.22 am: 65b6f3cb23
Original change: https://android-review.googlesource.com/c/platform/build/blueprint/+/3101378

Change-Id: I213b55f730196ae43f15be4f486c0f24cddd93fb
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-05-23 19:51:26 +00:00
Treehugger Robot
077df5875e Merge "Preserve type when promoting non-selects to selects" into main 2024-05-23 19:50:12 +00:00
Cole Faust
65b6f3cb23 Bump go.mod file to go 1.22
Blueprint bootstraps itself, go 1.22 will be used, but if you used
go build or go test manually, the version in the go.mod will be used.

Go 1.22 has a subtle change that we want to make sure we're always
using: https://go.dev/blog/loopvar-preview

Test: Presubmits
Change-Id: I192dbcba16f431458dfb758c505a63027cdb2533
2024-05-23 11:27:22 -07:00
Cole Faust
92af9ae3a0 Merge "Add proptools.PrintfIntoConfigurable" into main am: 0673769aab
Original change: https://android-review.googlesource.com/c/platform/build/blueprint/+/3097740

Change-Id: I44959c5ec9c8923be02779896ce4e1fca027519a
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-05-23 00:18:50 +00:00
Cole Faust
0673769aab Merge "Add proptools.PrintfIntoConfigurable" into main 2024-05-22 23:58:50 +00:00
Cole Faust
9ffb480975 Add proptools.PrintfIntoConfigurable
This will be used by soong config value variables to support their
usage on configurable properties.

Bug: 323382414
Test: m nothing --no-skip-soong-tests
Change-Id: I20b8ef29e81512548ecdc056533700a30fa7815a
2024-05-22 14:32:24 -07:00
Cole Faust
86a7abd927 Preserve type when promoting non-selects to selects
Bug: 323382414
Test: m nothing --no-skip-soong-tests
Change-Id: I1ad7e891f5422bb3587ebac1f8bda7dd5792ae3b
2024-05-22 13:40:57 -07:00
Cole Faust
1a1d4c2563 Merge "Fix error message when a select condition isn't handled" into main am: 65e5724978
Original change: https://android-review.googlesource.com/c/platform/build/blueprint/+/3081146

Change-Id: Ia827c50d164b9830250909286a20af4519a3641e
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-05-22 19:07:56 +00:00
Cole Faust
65e5724978 Merge "Fix error message when a select condition isn't handled" into main 2024-05-22 18:51:10 +00:00
Cole Faust
e7f9f4767f Return an Optional[T] from Configurable.Get() am: ad00dd50bf
Original change: https://android-review.googlesource.com/c/platform/build/blueprint/+/3096320

Change-Id: Iafb05fe838f211786feb58133250c1a0babb54bd
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-05-22 00:17:48 +00:00
Cole Faust
ad00dd50bf Return an Optional[T] from Configurable.Get()
Previously, Configurable.Get() copied the value in the property,
because it needed to return a pointer in order to indicate whether
the property was set or not. Now, it returns a ConfigurableOptional[T],
which is the same as the pointer, but it prevents users from altering
the pointed-to value, so we don't need to copy it.

There are still copies for slice properties, because those are also
pointers. In the future we may want to consider making an ImmutableList
type to use instead.

Bug: 323382414
Test: m nothing --no-skip-soong-tests
Change-Id: Ic9ed5ba269d10158e3eac1fea272555c9fa5c0e8
2024-05-21 14:48:39 -07:00
Yu Liu
5a10541bf4 Write ninja file in parallel. am: 82e444710d
Original change: https://android-review.googlesource.com/c/platform/build/blueprint/+/3089605

Change-Id: Idd9fb71acf65e952fd7a24094cd2f86f80fe25e5
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-05-21 17:35:19 +00:00
Yu Liu
82e444710d Write ninja file in parallel.
Bug: 335718784
Test: CI
Change-Id: I26f7babca349c654780711cfe0f0ece3faa5f436
2024-05-20 21:46:19 +00:00
Cole Faust
fa652f4714 Fix error message when a select condition isn't handled
Preivously it attempted to print all conditions and their values,
but that doesn't tell you which one was wrong, and the formatting was
all weird due to trying to print complex go types.

Bug: 323382414
Test: m nothing --no-skip-soong-tests
Change-Id: If9653796f5e9139c0b4a7843b441eb0409967b55
2024-05-09 15:50:50 -07:00
Colin Cross
1b25a60ba0 Merge "Handle nil variant in applyTransitions" into main am: 515e7991fc
Original change: https://android-review.googlesource.com/c/platform/build/blueprint/+/3080846

Change-Id: Ia353694df8a7a48c0ffc5bde48162d83338fae7d
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-05-09 22:44:30 +00:00
Colin Cross
515e7991fc Merge "Handle nil variant in applyTransitions" into main 2024-05-09 22:15:46 +00:00