Commit graph

1430 commits

Author SHA1 Message Date
Jiyong Park
c1b9d55d47 Merge remote-tracking branch 'upstream/master' into merge am: 3bbc581d99 am: 62aa0764a6
am: f357be7758

Change-Id: I5eef070d0275b6e191a32eec98f45c1578dbc113
2019-11-18 20:47:38 -08:00
Jiyong Park
f357be7758 Merge remote-tracking branch 'upstream/master' into merge am: 3bbc581d99
am: 62aa0764a6

Change-Id: Ic3e0c449d14266bde7e35376fde74bfc4c5aa137
2019-11-18 20:44:24 -08:00
Jiyong Park
62aa0764a6 Merge remote-tracking branch 'upstream/master' into merge
am: 3bbc581d99

Change-Id: I976aefa9ce61d3b6fc48f9730caf80113c3b98d9
2019-11-18 20:41:09 -08:00
Jiyong Park
3bbc581d99 Merge remote-tracking branch 'upstream/master' into merge
* upstream/master:
  Slice properties can be replaced

Test: TH
Change-Id: I46603fde9d5824c4a2e633b8d2c81a6b6a5d6e7d
2019-11-19 12:18:35 +09:00
Jaewoong Jung
cecffaf05e
Merge pull request #270 from jiyongp/replace_properties
Slice properties can be replaced
2019-11-18 18:16:30 -08:00
Jiyong Park
10f27f8139 Slice properties can be replaced
override_* in Soong requires a module to override certain properties of
other module. In that case, values of a slice property (e.g. []string)
should be replaced by the same property value in the overriding module.
However, since proptools only supports Append and Prepend orders where
the original values are kept for slice properties, the behavior
couldn't be implemented. To support the use case, Replace order is
introduced, in which case slice property values are completely replaced.
For other types of properties, the Replace order behaves exactly the
same as the Append order.

Bug: 144338929
Test: m

Change-Id: Iae9feda035177fe6a22e6e8319c0fdaa9e08e85e
2019-11-19 10:45:58 +09:00
Jaewoong Jung
8cc7698193 Merge remote-tracking branch 'upstream/master' into merge am: 24f0b26d90 am: 792b384412
am: a67e7d88d2

Change-Id: I52e54e27527e2206d7319f3ca107c878438aa40c
2019-11-15 11:23:51 -08:00
Jaewoong Jung
a67e7d88d2 Merge remote-tracking branch 'upstream/master' into merge am: 24f0b26d90
am: 792b384412

Change-Id: I094a649a4d27a95558e15efdd3d57eed38670f95
2019-11-15 11:20:20 -08:00
Jaewoong Jung
792b384412 Merge remote-tracking branch 'upstream/master' into merge
am: 24f0b26d90

Change-Id: Id11e01ecac6b061e28b54657cdc39e70d9b770d3
2019-11-15 11:12:53 -08:00
Jaewoong Jung
24f0b26d90 Merge remote-tracking branch 'upstream/master' into merge
* upstream/master:
  Add support for module variant aliases
  Delay allocating variationMaps until populating them
  Use module groups more widely

Test: TreeHugger
Change-Id: Ic591beac1ec34543ca8c1dfe7bc3ba456e763d7c
2019-11-15 07:45:46 -08:00
colincross
eda08050f3
Merge pull request #269 from colincross/alias
Add support for module variant aliases
2019-11-15 07:20:19 -08:00
Colin Cross
f7beb89df5 Add support for module variant aliases
Adding a dependency on a module with variants can be problematic
if the code adding the dependency is not aware of every mutator
that has created variants.  Add an AliasVariations to
BottomUpMutatorContext, which allows a mutator to alias the
original variant of a module to one of the new variants of the
module, which will allow future dependencies to be added using
the original list of variations.  The aliases are transient,
and only exist until the next mutator that calls CreateVariations
when visiting the module without also calling AliasVariations.

Test: TestAlises
Change-Id: Ieaa04b5a6bdcb5a1ff5114b1e03460de795d4479
2019-11-14 12:58:52 -08:00
Colin Cross
9403b5a790 Delay allocating variationMaps until populating them
Modules are created with a nil variantionMap, which avoids allocating
an empty map if the module will never be split.
Context.addVariationDependencies constructs a variationMap to
compare against the variationMap of each variant, but constructed
an empty variationMap if no variations were specified.  A nil
map is not the same as an empty map, so consistently use a nil
map and create it when populating the first entry.

Change-Id: I48b604659f9cdb23326b504a093cdfe5a3eb4f68
2019-11-14 12:58:52 -08:00
Colin Cross
d03b59d03e Use module groups more widely
Use module groups instead of passing around the list of modules
extracted from a module group.

Test: blueprint tests
Change-Id: I02a79950c6377441c49129ebeb5f12be257df668
2019-11-14 12:58:52 -08:00
Xin Li
9bbf2324d7 [automerger skipped] DO NOT MERGE - qt-qpr1-dev-plus-aosp-without-vendor@5915889 into stage-aosp-master am: 71a8105b9f
am: 7d706b18f7 -s ours
am skip reason: subject contains skip directive

Change-Id: Id96d45a637b38f8d786aca13231d5bcb5e870a26
2019-10-30 14:42:19 -07:00
Xin Li
7d706b18f7 DO NOT MERGE - qt-qpr1-dev-plus-aosp-without-vendor@5915889 into stage-aosp-master
am: 71a8105b9f

Change-Id: Ia347c93aca7dc02b3c510bfb6765d98ebfda0e1a
2019-10-30 14:20:13 -07:00
Xin Li
71a8105b9f DO NOT MERGE - qt-qpr1-dev-plus-aosp-without-vendor@5915889 into stage-aosp-master
Bug: 142003500
Change-Id: Ibe4664a09d99ab8be52fb2b35978e8cb686b6a6c
2019-10-30 11:46:28 -07:00
Colin Cross
7f80c6b4a9 Merge remote-tracking branch 'aosp/upstream' into master am: 6c5a2f7288 am: 247a72401f am: eedba6251b
am: 9a5267262a

Change-Id: I9e01eb9b6b7cc5c193ee6601cdf5d4ea7f53ee57
2019-10-17 19:29:15 -07:00
Colin Cross
9a5267262a Merge remote-tracking branch 'aosp/upstream' into master am: 6c5a2f7288 am: 247a72401f
am: eedba6251b

Change-Id: I4b1516dbbfa47ebb334c8a7d7fcbc4f84dbb7ed4
2019-10-17 19:22:54 -07:00
Colin Cross
eedba6251b Merge remote-tracking branch 'aosp/upstream' into master am: 6c5a2f7288
am: 247a72401f

Change-Id: Icc4302034b45f79dfbde267f38495f596d376f8d
2019-10-17 19:15:31 -07:00
Colin Cross
247a72401f Merge remote-tracking branch 'aosp/upstream' into master
am: 6c5a2f7288

Change-Id: Ic41ffe8b6410bb4e6705f8f1c7307d1e74f1e8ce
2019-10-17 19:09:08 -07:00
Colin Cross
6c5a2f7288 Merge remote-tracking branch 'aosp/upstream' into master
* aosp/upstream:
  Move outputs of bootstrap modules in main stage to separate directory

Test: m checkbuild
Change-Id: I19de5b4acc6c4422fdc5177971de5bf6a755259a
2019-10-17 16:03:22 -07:00
colincross
7e8c766ab8
Merge pull request #267 from colincross/maindir
Move outputs of bootstrap modules in main stage to separate directory
2019-10-17 15:51:43 -07:00
Colin Cross
16fec72dfc Move outputs of bootstrap modules in main stage to separate directory
Don't write to $buildDir/.bootstrap in the ninja file generated for
the main stage.

Test: examine main stage build.ninja file
Change-Id: I9c6183c9a434ff11d44cdd4f9844eae192ebfe03
2019-10-17 13:42:34 -07:00
Colin Cross
57ad23a0da Merge remote-tracking branch 'aosp/upstream' into master am: d2a5c6d5f2 am: 19ebe0019c am: 83fb250244
am: b26091a6a9

Change-Id: I718b34da516bfcc848bbc7a3e9ef735b5cf22f74
2019-10-02 14:58:02 -07:00
Colin Cross
b26091a6a9 Merge remote-tracking branch 'aosp/upstream' into master am: d2a5c6d5f2 am: 19ebe0019c
am: 83fb250244

Change-Id: Ibc6dab25b37a262400593d46c2d57fd7314a5d3d
2019-10-02 14:45:29 -07:00
Colin Cross
83fb250244 Merge remote-tracking branch 'aosp/upstream' into master am: d2a5c6d5f2
am: 19ebe0019c

Change-Id: I829a98caf401fe47f96da2f3f0567ca40ee9af3a
2019-10-02 13:52:57 -07:00
Colin Cross
19ebe0019c Merge remote-tracking branch 'aosp/upstream' into master
am: d2a5c6d5f2

Change-Id: I74697189fa6527abe3f39bd85dffcfaaf1a11289
2019-10-02 13:25:37 -07:00
Colin Cross
d2a5c6d5f2 Merge remote-tracking branch 'aosp/upstream' into master
* aosp/upstream:
  Add proptools.FilterPropertyStruct
  Make CreateModule return the newly created module
  Add proptools.Int and proptools.IntDefault

Test: m checkbuild
Change-Id: I4bbd45be12794c1a8575799950772d4ecd272628
2019-09-26 14:59:43 -07:00
colincross
2f55f24c46
Merge pull request #264 from colincross/create_module
Make CreateModule return the newly created module
2019-09-26 14:30:11 -07:00
colincross
93322c4d7b
Merge pull request #266 from colincross/filter
Add proptools.FilterPropertyStruct
2019-09-26 14:29:04 -07:00
Colin Cross
1907836ad9 Add proptools.FilterPropertyStruct
Move some code from Soong to support creating a property struct
at runtime by filtering fields out of another property struct.

Test: TestFilterPropertyStruct
Change-Id: Ic5ae390a885195bebad6f3ecb7c752c0582a60b1
2019-09-26 14:21:40 -07:00
colincross
5639ec157c
Merge pull request #265 from colincross/int_default
Add proptools.Int and proptools.IntDefault
2019-09-26 10:41:52 -07:00
Colin Cross
6af7284d08 Make CreateModule return the newly created module
Allow mutators to modify properties of the newly created module
by returning it.

Change-Id: Ia1acc70b6196195d1bad58c88ab3def70b99e42c
2019-09-25 14:53:25 -07:00
Colin Cross
66c0b13553 Add proptools.Int and proptools.IntDefault
Add proptools.Int and proptools.IntDefault that behave analogously
to proptools.String and proptools.StringDefault.

Change-Id: I41fd3417c973c9ff4a5aa6680546b4b893784745
2019-09-25 14:52:54 -07:00
Jiyong Park
dfb5f47852 Merge remote-tracking branch 'aosp/upstream' am: a67e8c98e4 am: df092ed437 am: 465406a2f0
am: 1ad10edb64

Change-Id: Icd4c54e0640ba08f20cfa2249fb0a50ba9c600f2
2019-09-22 22:23:10 -07:00
Jiyong Park
1ad10edb64 Merge remote-tracking branch 'aosp/upstream' am: a67e8c98e4 am: df092ed437
am: 465406a2f0

Change-Id: Ie8fa7c370abb3eca3cac2743b6fd265265e6cc6f
2019-09-22 22:16:38 -07:00
Jiyong Park
465406a2f0 Merge remote-tracking branch 'aosp/upstream' am: a67e8c98e4
am: df092ed437

Change-Id: I82feb9462ac095644d9664b33f8ae3903b4b44ea
2019-09-22 22:10:09 -07:00
Jiyong Park
df092ed437 Merge remote-tracking branch 'aosp/upstream'
am: a67e8c98e4

Change-Id: I310d5abe2c17e0abdc7800fc7036eb946bb25e6b
2019-09-22 22:02:39 -07:00
Jiyong Park
a67e8c98e4 Merge remote-tracking branch 'aosp/upstream'
* aosp/upstream:
  Don't ignore local variations when creating reverse dep
  Added VisitDirectDeps* methods to SingletonContext.

Test: m
Change-Id: I4832a523588c3095b077b89d2ecb4068b490fed4
2019-09-23 10:02:22 +09:00
colincross
884e7374fb
Merge pull request #263 from jiyongp/reverse_dep
Don't ignore local variations when creating reverse dep
2019-09-22 17:11:21 -07:00
Jiyong Park
df4ed95f43 Don't ignore local variations when creating reverse dep
This fixes a bug that reverse dependency can't be made for modules
having local variations. Previously, when module A having local variants
calls AddReverseDependency to module B having local variants, the match
is tested between the non-local variants of module A against all
variants of module B, which can never be successful.

This change fixes it by using all variants of module A when
findMatchingVariants is called for AddReverseDependency.

Test: m
Change-Id: Ib289188a5dd58c72bd6ba07e3c0f825f8b1c6b1b
2019-09-22 07:44:52 +09:00
colincross
658e01c1d7
Merge pull request #262 from skvadrik/master
Added VisitDirectDeps* methods to SingletonContext.
2019-09-21 08:17:02 -07:00
Ulya Trafimovich
811381a585 Added VisitDirectDeps* methods to SingletonContext.
A an example use case is generating the graph of module
dependencies, where modules are vertices and dependencies
are edges.

The patch was tested with a local implementation of such
a module in the Soong build system. The graph was generated
for all modules in the AOSP tree.
2019-09-20 23:58:23 +01:00
Xin Li
b345d95717 [automerger skipped] Merge qt-r1-dev-plus-aosp-without-vendor (5817612) into stage-aosp-master am: eb03bacf3f -s ours am: ba1c448eaa -s ours
am: d52d9b65d7 -s ours
am skip reason: change_id I76dd2fa706c67da7973cbc500142f7f5c597a3cb with SHA1 47653a7b0b is in history

Change-Id: I5e0edbac4dfde919fe10dd26f0ebd0ea7ef8bfe9
2019-09-08 16:10:08 -07:00
Xin Li
d52d9b65d7 [automerger skipped] Merge qt-r1-dev-plus-aosp-without-vendor (5817612) into stage-aosp-master am: eb03bacf3f -s ours
am: ba1c448eaa -s ours
am skip reason: change_id I76dd2fa706c67da7973cbc500142f7f5c597a3cb with SHA1 47653a7b0b is in history

Change-Id: I68802948814099b8c9bc1b5b7b0d434ddc92cfda
2019-09-08 15:49:12 -07:00
Xin Li
ba1c448eaa [automerger skipped] Merge qt-r1-dev-plus-aosp-without-vendor (5817612) into stage-aosp-master
am: eb03bacf3f -s ours
am skip reason: change_id I76dd2fa706c67da7973cbc500142f7f5c597a3cb with SHA1 47653a7b0b is in history

Change-Id: Ib7bcca8bcee122112b3a36795ad1246bd58a333c
2019-09-08 15:06:38 -07:00
Xin Li
eb03bacf3f Merge qt-r1-dev-plus-aosp-without-vendor (5817612) into stage-aosp-master
No content change.

Bug: 135460123
Change-Id: I1d55f13253683d4716eadfbc134cac8b9eddfa05
Merged-In: I76dd2fa706c67da7973cbc500142f7f5c597a3cb
2019-09-08 12:42:27 -07:00
Colin Cross
8dc313791e Merge remote-tracking branch 'aosp/upstream' am: 18efe1bc65 am: 47653a7b0b am: 24a6418475
am: e4c8e32965

Change-Id: Ic07b819dfb512a2fd3259a9d8cd0295e0658d3f9
2019-09-06 20:06:34 -07:00
Dan Willemsen
14cee4bc8e Merge remote-tracking branch 'aosp/upstream' am: 979da91acc am: 6e1bcf0472 am: 51f520ab73
am: c91a354c0f

Change-Id: I2b2895d7f94ce7d853a548572a2ccfb7916d5c72
2019-09-06 20:06:29 -07:00