Commit Graph

1146 Commits

Author SHA1 Message Date
Jaewoong Jung c40949db97 Merge "Improve android_app_import.dpi_variants handling."
am: 3af8661af7

Change-Id: Iafb8f55dac9caaa3acb3d6fc46f0ad8452147660
2019-07-10 09:57:24 -07:00
Jaewoong Jung 3af8661af7 Merge "Improve android_app_import.dpi_variants handling." 2019-07-10 16:39:53 +00:00
Jaewoong Jung 3e18b19442 Improve android_app_import.dpi_variants handling.
Instead of circumventing the limitation of Prebuilt implementation by
picking a source path itself, it now uses the same mechanism as
archMutator and replaces the source path in advance so that Prebuilt
always sees the corrent source path.

Because this requires the Apk field to be a string pointer, the single
source prebuilt implementation is being updated to be reflection-based.

Test: Soong unit tests, m soong_docs, TreeHugger
Change-Id: I2304f15e32d632f74f95f0d9e9bf1f75ff3e2225
2019-07-09 15:00:15 -07:00
Jaewoong Jung 54a8a8ce0c Merge "Add sh_test_host."
am: 94e90c696e

Change-Id: Ib49dfd6120a2c4ef0ee11c0c5cd773f9702dad76
2019-07-09 11:39:31 -07:00
Jaewoong Jung 94e90c696e Merge "Add sh_test_host." 2019-07-09 18:04:49 +00:00
Justin Yun 9321804a11 Rename product_services to system_ext
am: d5f6c8261a

Change-Id: Ifd77d7d729addae59b2b26a8cbdd2ebefffcabae
2019-07-09 02:14:59 -07:00
Justin Yun d5f6c8261a Rename product_services to system_ext
Bug: 134359158
Test: build and check if system_ext.img is created
Change-Id: Ice3229baf97a94c24a6eea22e7d4571941d7f843
2019-07-09 08:57:05 +00:00
Colin Cross 781511c606 Move RuleBuilder on top of strings.Builder
am: cfec40c41b

Change-Id: Ib72df28ae54e5889b0b01c66f8b5bd9914df20cf
2019-07-08 22:05:07 -07:00
Colin Cross cfec40c41b Move RuleBuilder on top of strings.Builder
strings.Builder avoids copying the final byte array to a string by
using unsafe to point the string to the backing array of the byte
slice.

Test: rule_builder_test.go
Change-Id: I3d9a70fb62f8542650cd9ebc65397297bba12585
2019-07-09 04:46:12 +00:00
Martin Stjernholm 3b2542d1db Merge "Document how properties work in defaults modules."
am: 188236ff23

Change-Id: Ie2f093dc2c16c024b81448e53e5d103b1932f02e
2019-07-08 20:02:51 -07:00
Treehugger Robot 188236ff23 Merge "Document how properties work in defaults modules." 2019-07-09 02:25:36 +00:00
Jaewoong Jung f0cb835ebf Merge "Dist NOTICE outputs for app targets."
am: b1907ee587

Change-Id: I3f33053028a9564d42b9ce2b18fdfa5ff8a760c8
2019-07-08 17:12:15 -07:00
Jaewoong Jung b1907ee587 Merge "Dist NOTICE outputs for app targets." 2019-07-08 23:28:13 +00:00
Jaewoong Jung 61a83681c4 Add sh_test_host.
Fixes: 136272143
Test: sh_binary_test.go
Change-Id: I2e6580286fcdf43ab20020fcd147648a3009aa9f
2019-07-08 14:53:52 -07:00
Jaewoong Jung 9877279855 Dist NOTICE outputs for app targets.
Bug: 136501164
Test: m NetworkStack, TreeHugger
Change-Id: I2279eeb0e50b1b5685e23130a8da6ab090f37f56
2019-07-08 09:26:02 -07:00
Colin Cross cd48600321 Merge changes Icfc893c8,I40f03fc0
am: f67e1bee4a

Change-Id: I0b9cf1e3df4ef7ef46e73a5dc6d363fe918c29b7
2019-07-03 22:55:03 -07:00
Treehugger Robot f67e1bee4a Merge changes Icfc893c8,I40f03fc0
* changes:
  Allow debugging with SOONG_DELVE=<listen addr>
  Print ninja stdout live during the build
2019-07-04 03:34:22 +00:00
Colin Cross 1af102a9f8 Merge "Add a String() method to android.Module"
am: eee5a41aa4

Change-Id: I15cc3b5dace326948c6a17d51d2d9a69a7302b9b
2019-07-03 20:07:49 -07:00
Colin Cross 6e9bf6f1d7 Merge changes from topic "mutator_name"
am: 28d36cacc1

Change-Id: I5d4290229fd785f02d4a14c4c91329267f7a7283
2019-07-03 19:11:35 -07:00
Colin Cross aa812d122c Allow debugging with SOONG_DELVE=<listen addr>
Allow running Soong in a headless delve debugger by passing
SOONG_DELVE=<listen addr> in the environment.

Bug: 80165685
Test: SOONG_DELVE=:1234 m nothing
Change-Id: Icfc893c8a8354a9bbc99112d9c83259cb41906d1
2019-07-03 16:33:31 -07:00
Colin Cross 9a36223d59 Add a String() method to android.Module
Add a String() method to android.Module for use in debugging.  Store
the name and variations of the module as they are mutated.

Test: TestModuleString
Bug: 136473661
Change-Id: I74e393703dcfc96ed4e21ac4a4419a7858b59216
2019-07-03 15:37:11 -07:00
Colin Cross cb55e089f0 Add MutatorName to mutator contexts
Follow https://github.com/google/blueprint/pull/255.

Bug: 136473661
Test: m checkbuild
Change-Id: Ia74d442c925689fa1e06a70c2acfed925063f844
2019-07-03 14:16:42 -07:00
Colin Cross fa07821d88 Remove ioutil.TempDir from each android/soong/android test
android_test.go already sets up a global buildDir, no need to create
one in each test.

Test: All soong tests
Change-Id: Ib85cbf78c604ad3cef64aa00b6bd812a81496e9e
2019-07-03 20:27:11 +00:00
Paul Duffin 730f2a57e3 Allow neverallow rules to be defined by custom bootstrap_go_packages
* Adds a Rule interface to hide the rule struct and expose the mutator
functions.
* Makes the neverallow() function public as NeverAllow().
* Adds AddNeverAllowRules func to add more rules.
* Moves the population of the builtin rules to init() function.

Bug: 136159343
Test: m droid
      - changed a built in rule to cause build failure to ensure the
	    rules were still being applied, then reverted the change and
		ran 'm droid' again.

Change-Id: Ie3a4456d1f6bc12c5b4931bf698333275347fdf0
Merged-In: Ie3a4456d1f6bc12c5b4931bf698333275347fdf0
(cherry picked from commit 18af090842)
(cherry picked from commit b1cacba022)
2019-07-02 16:21:51 +00:00
Paul Duffin aebc02ab29 Allow neverallow rules to be defined by custom bootstrap_go_packages
* Adds a Rule interface to hide the rule struct and expose the mutator
functions.
* Makes the neverallow() function public as NeverAllow().
* Adds AddNeverAllowRules func to add more rules.
* Moves the population of the builtin rules to init() function.

Bug: 136159343
Test: m droid
      - changed a built in rule to cause build failure to ensure the
	    rules were still being applied, then reverted the change and
		ran 'm droid' again.

Change-Id: Ie3a4456d1f6bc12c5b4931bf698333275347fdf0
Merged-In: Ie3a4456d1f6bc12c5b4931bf698333275347fdf0
2019-07-01 16:15:07 +01:00
Paul Duffin cbcb8675bc Merge changes from topic "package default_visibility" am: 4190926e61
am: b915658436

Change-Id: Ib207ca13b58e789ea7e545cb99db789cb5d83cfe
2019-06-28 08:51:55 -07:00
Paul Duffin e484f47a63 Inherit default_visibility from parent package
Enhances the visibility mechanism to use the default_visibility
property of the closest ancestor package that has the property
specified.

Bug: 133290645
Test: m droid
Change-Id: I7248e9034a73894ac8d514f913316438c4d7c079
2019-06-27 13:24:59 +01:00
Paul Duffin e2453c705f Allow default visibility to be set per package
Adds a package module type with a default_visibility property. The
package module type can only be specified once per package.

Bug: 133290645
Test: m droid
Change-Id: Ibb2fb499c9ea88ecaa662d3cd2cbde478e4b9a4b
2019-06-27 13:24:50 +01:00
Colin Cross f5300d729e Merge "Uncompress dex in unbundled privileged apps" am: 49eb5477c7
am: d7f9313e5b

Change-Id: I2f9baa99918d5730af3f7df1fc0671d4b6644ebe
2019-06-25 18:54:13 -07:00
Colin Cross 53a87f523b Uncompress dex in unbundled privileged apps
Mainline builds privileged apps unbundled and then uses them as
prebuilts, so they need to respect the privileged flag when
deciding whether or not to uncompress the dex.

Bug: 135772877
Test: TestUncompressDex
Change-Id: I91da7116b779ae35c0617ef77dbcb9788902370c
2019-06-25 13:36:46 -07:00
Jaewoong Jung a4d59ff0b5 Optionally embed NOTICE files in apks. am: 5b425e2e20
am: 5d48965fed

Change-Id: I533808f0eafb496c34ece9d100784ebb9b5257e6
2019-06-25 10:03:31 -07:00
Jaewoong Jung 5b425e2e20 Optionally embed NOTICE files in apks.
If embed_notices or ALWAYS_EMBED_NOTICES is set, collect NOTICE files
from all dependencies of the android_app, merge them with the app's own
one (if exists), transform it to HTML, gzip it, and put it as an asset
in the final APK output.

Bug: 135460391
Test: app_test.go
Change-Id: I52d92e2fd19b3f5f396100424665c5cc344190d8
2019-06-24 19:10:22 -07:00
Jaewoong Jung 57811d450d Merge "OverridableModuleBase shouldn't embed ModuleBase." am: 0b4ca8605c
am: bb8bae641d

Change-Id: I4a21037de5027747eb4ce1dd12e5566dafca98c6
2019-06-19 15:57:35 -07:00
Treehugger Robot 0b4ca8605c Merge "OverridableModuleBase shouldn't embed ModuleBase." 2019-06-19 21:30:46 +00:00
Jaewoong Jung 8985d527ae OverridableModuleBase shouldn't embed ModuleBase.
Individual module structs normally embed ModuleBase themselves. This
caused duplicate embedding, and so made common properties like notice
inaccessible.

Bug: 135460391
Test: app_test.go, TreeHugger
Change-Id: I5683b194e3de909d480c083a931cc7e871de1d74
2019-06-19 11:22:25 -07:00
Paul Duffin b3438891a0 Merge changes I42cb181f,I6413c9b1 am: 33ee25466f
am: 00c2bbb0e7

Change-Id: Icca90608b256e726a9a1bd79e9cedca1a6b53f84
2019-06-17 15:25:30 -07:00
Paul Duffin a3d0986cfc Remove the no_standard_libs property
Corrects an error message that refers to no_standard_libs.

Removes any tests that use no_standard_libs:true where possible as
there are duplicate tests for sdk_version:"none". Otherwise, switches
them over to use sdk_version:"none".

The androidmk mapping from LOCAL_NO_STANDARD_LIBRARIES to
no_standard_libs has also been removed. There was little point in
updating the tool to map it through to sdk_version:"none" as there are
only a couple of places where it is used, in art's test running mk
targets and in some unbundled packages to work around some limitation
in .mk based build.

Bug: 134566750
Test: m droid
Change-Id: I6413c9b1fe3e63b93753a6a017d2981e32b7e013
2019-06-17 11:21:39 +01:00
Steven Moreland 03cdfe1b31 Merge "neverallow: vintf to libhidltransport impl lib" into qt-dev
am: 6df90831b7

Change-Id: Ibd0f318e8cbc3ee3e24f7f768b85dfafed7565d1
2019-06-14 16:17:12 -07:00
Steven Moreland a1165d6958 neverallow: vintf to libhidltransport impl lib
Also delete useless testcase.

Bug: 134961554
Test: build

Change-Id: Ie76492f806757b86d94d29a736773f72ce2ab104
2019-06-14 22:04:53 +00:00
Colin Cross 4368ea33ca Merge "Give Blueprint modules access to all namespaces" am: fae8569647
am: 4732fa4548

Change-Id: I87a21b7cbee8699101f94cf38a997bc55fd5e995
2019-06-14 14:51:51 -07:00
Treehugger Robot fae8569647 Merge "Give Blueprint modules access to all namespaces" 2019-06-14 21:25:28 +00:00
Colin Cross cd84b4e36b Give Blueprint modules access to all namespaces
Don't enforce namespaces on Blueprint modules like
bootstrap_go_package, their dependencies are handled before
namespaces are initialized in namespaceMutator.

Fixes: 135246048
Test: TestDependingOnBlueprintModuleInRootNamespace
Change-Id: I7cf1c26bb8512eed59d6b4eb42a49f7080ffa281
2019-06-14 11:26:09 -07:00
Paul Duffin f45775edbe Merge "Add sdk_version:"none" to replace no_standard_libs:true" am: b11c72b0b8
am: e34bbae1ca

Change-Id: I9465a810dad7f3ea95b6c883844358d817f8cc8e
2019-06-14 01:32:45 -07:00
Jaewoong Jung 1498eef645 Merge "Fix typos in a comment." am: 606f946339
am: 54f06fec4f

Change-Id: Ida3891bd6c2cfd2bbc713e183771c9226f4b816b
2019-06-14 01:30:41 -07:00
Paul Duffin b11c72b0b8 Merge "Add sdk_version:"none" to replace no_standard_libs:true" 2019-06-14 06:29:48 +00:00
Paul Duffin 52d398a841 Add sdk_version:"none" to replace no_standard_libs:true
Where possible this duplicates any tests that use no_standard_libs:true
with ones that use sdk_version:"none". If not possible (e.g. in the
default targets included in java/testing.go) it switches some to use
sdk_version:"none" to ensure that there is no regression in the
behavior of no_standard_libs:true.

Follow up changes will switch all usages of no_standard_libs:true over
to use sdk_version:"none" at which point no_standard_libs will be
removed.

Bug: 134566750
Test: m droid
Change-Id: I5f0fd3daa980f6b223abe454cba7f25a97a39d7a
2019-06-13 19:15:10 +01:00
Treehugger Robot 606f946339 Merge "Fix typos in a comment." 2019-06-13 17:48:10 +00:00
Paul Duffin 065000e3f5 Merge "Never allow java_library_host with no_standard_libs: true" am: 393590d8a8
am: 3321670746

Change-Id: Iebd7f4cd4979860ea1b2f9433373546c114d2160
2019-06-13 00:17:11 -07:00
Paul Duffin 393590d8a8 Merge "Never allow java_library_host with no_standard_libs: true" 2019-06-13 06:57:19 +00:00
Colin Cross ce051256f8 Merge changes I89ad92f3,Ife1604c0 am: e51e2feafd
am: 4fb5563c20

Change-Id: Ib4c518190bc28f0d67469f9dcdc6d2b72e64072c
2019-06-12 21:06:54 -07:00