Commit Graph

10792 Commits

Author SHA1 Message Date
Colin Cross 7ea16f4cdf Merge "Make manifest and APK agree on uncompressed native libs" am: 53d312637f
am: d33cdc21bb

Change-Id: I792cf863538e814024c94e8a39e34532bd4d4a2c
2019-02-08 18:47:22 -08:00
Colin Cross d33cdc21bb Merge "Make manifest and APK agree on uncompressed native libs"
am: 53d312637f

Change-Id: If4edb02e8b531d08029f5412eb1bd5759d80dd52
2019-02-08 18:37:42 -08:00
Treehugger Robot 53d312637f Merge "Make manifest and APK agree on uncompressed native libs" 2019-02-09 02:25:32 +00:00
Mikhail Naganov 1c00aec7d0 Improve error messages about paths am: ab1f518fb0
am: 33b67a24e6

Change-Id: I3ff19e2dcf8804da48fecc7e2260ac08651422c4
2019-02-08 16:50:09 -08:00
Mikhail Naganov 33b67a24e6 Improve error messages about paths
am: ab1f518fb0

Change-Id: I4e33bfcf1e6def55e3a1ada546d804f728afebb9
2019-02-08 16:46:04 -08:00
Mikhail Naganov ab1f518fb0 Improve error messages about paths
Quote the path parameter in the message to distinguish it
from the text. This makes messages more understandable.

Before: source path include does not exist
After:  source path "include" does not exist

Test: build Android
Change-Id: I99dbbce3cf090682a230d05bf120549a2cc7af3c
2019-02-08 13:32:08 -08:00
Jaewoong Jung afe716dcdb Merge "Add Android.mk lines for package name overriding." am: ea66057a50
am: 9b3e4cc3af

Change-Id: I7e78ebef525e27a1d1e92edbb75ce7152cac026e
2019-02-08 13:22:41 -08:00
Jaewoong Jung 9b3e4cc3af Merge "Add Android.mk lines for package name overriding."
am: ea66057a50

Change-Id: Ib321d7fbf6a1494a78f7c6763d21b14294c54a39
2019-02-08 13:17:16 -08:00
Jaewoong Jung ea66057a50 Merge "Add Android.mk lines for package name overriding." 2019-02-08 21:00:27 +00:00
Jiyong Park afdb54813e Merge "Handle the case when a symbol is annotated with "# apex vndk"" am: 3415780021
am: 11e6e5c76c

Change-Id: I91c072425b69efbc96b49235c3b4f7e7d3846218
2019-02-08 11:01:39 -08:00
Jiyong Park 11e6e5c76c Merge "Handle the case when a symbol is annotated with "# apex vndk""
am: 3415780021

Change-Id: I2567afe4afab0f9a71d87f3cafffb21f35fdf0a0
2019-02-08 10:57:34 -08:00
Treehugger Robot 3415780021 Merge "Handle the case when a symbol is annotated with "# apex vndk"" 2019-02-08 18:46:44 +00:00
Alex Light 1af41e318c Merge "Add support for test_apex" am: 39af6de6c1
am: 59a80fa75e

Change-Id: I4a8cc8f94b0c990075878817be127dd2e3678010
2019-02-08 07:51:33 -08:00
Alex Light 59a80fa75e Merge "Add support for test_apex"
am: 39af6de6c1

Change-Id: I048c0b6d5148a5ec6a28e4ac90cc886388625ce5
2019-02-08 07:46:34 -08:00
Alex Light 39af6de6c1 Merge "Add support for test_apex" 2019-02-08 15:38:24 +00:00
Colin Cross e4246abd7f Make manifest and APK agree on uncompressed native libs
Only put uncompressed native libs in an APK if the min_sdk_version
supports it (>= 23, Marshmallow), and set
android:extractNativeLibs="false" in the AndroidManifest.xml so
that the platform won't extract them anyways.

Bug: 117618214
Test: m checkbuild
Change-Id: I760017e48bf3c6b618aabde0982df45995765d48
2019-02-08 15:24:47 +00:00
Jiyong Park 1431765f8d Handle the case when a symbol is annotated with "# apex vndk"
This change fixes a bug that a symbol is omitted for apex (or vndk) when
it is annotated with "# vndk apex" (or "# apex vndk).

Bug: 123349183
Test: python3 test_gen_stub_libs.py

Change-Id: I344d6e70732bae8877cb16bbe881edb79fe90670
2019-02-08 20:36:26 +09:00
Anton Hansson c8fa538ac0 Workaround dupe resource directories am: 129b9ceeb1
am: 2fc1d0f1ea

Change-Id: I805e574de880122032b0fe4b1dc5148d6bf8dfb5
2019-02-08 00:10:03 -08:00
Anton Hansson 2fc1d0f1ea Workaround dupe resource directories
am: 129b9ceeb1

Change-Id: I5f685b76f379589f5964fc1c59c2597cfd44d3dc
2019-02-08 00:06:04 -08:00
Anton Hansson 129b9ceeb1 Workaround dupe resource directories
A few apps are co-located with libraries they depend on statically,
and because it's not possible to specify "no resource_dirs", they
both end up depending on the same resources, leading to downstream
problems for RRO generation.

Workaround the problem by de-duping the RRO paths for a single app
for now.

Bug: 124035856
Bug: 123510624
Test: make with enforce_rro == *
Change-Id: I251f123eb4280ed72e1ccd2212cb5f3e746e645d
2019-02-08 07:55:00 +00:00
Colin Cross ad7571f464 Merge "Remove unused dexpreopt UseEmbeddedDex" am: 6ff48cd048
am: 98b1442180

Change-Id: I3ba59551e0f3309aa824cddeaec7585e84ea390b
2019-02-07 23:35:24 -08:00
Colin Cross 98b1442180 Merge "Remove unused dexpreopt UseEmbeddedDex"
am: 6ff48cd048

Change-Id: I3275b61f6f16bcbe7d05c08d72a6f5df7afc8137
2019-02-07 23:30:47 -08:00
Treehugger Robot 6ff48cd048 Merge "Remove unused dexpreopt UseEmbeddedDex" 2019-02-08 07:19:33 +00:00
Colin Cross 309ce85acd Merge "Make privileged java_library modules use uncompressed dex" am: 89ba9715ef
am: 8367be9da7

Change-Id: I18d0185aa672683f78591b603f5d74e805a50237
2019-02-07 18:48:06 -08:00
Colin Cross d6fa3b1cbf Merge "Allow disabling implicit resource_dirs and asset_dirs" am: 3e48a994e8
am: 73481a4cf6

Change-Id: I316d86aa06561f1a17119347414efdff8fdb7730
2019-02-07 18:47:37 -08:00
Colin Cross 8367be9da7 Merge "Make privileged java_library modules use uncompressed dex"
am: 89ba9715ef

Change-Id: I8d6f5a8ada04691c56bc4dfe72157e640ac7ec7c
2019-02-07 18:39:12 -08:00
Colin Cross 73481a4cf6 Merge "Allow disabling implicit resource_dirs and asset_dirs"
am: 3e48a994e8

Change-Id: I36c78ef80aec36666dd8ea755ae298fa02398776
2019-02-07 18:38:41 -08:00
Colin Cross 89ba9715ef Merge "Make privileged java_library modules use uncompressed dex" 2019-02-08 02:29:59 +00:00
Colin Cross 3e48a994e8 Merge "Allow disabling implicit resource_dirs and asset_dirs" 2019-02-08 02:29:35 +00:00
Colin Cross 09a65ab6ca Remove unused dexpreopt UseEmbeddedDex
dexpreopt doesn't need to know about UseEmbeddedDex, it has
already been taken into account for UncompressedDex.

Test: m checkbuild
Change-Id: I5508aa43bb8bdb06e20cf93bc5171a5e78833983
2019-02-08 02:27:59 +00:00
Colin Cross 57bda7a089 Remove the hiddenapi presingleton am: 697412f058
am: 3def9efe61

Change-Id: I4d24fde1bacb98d103a79e555fbfa3d406173110
2019-02-07 18:04:34 -08:00
Colin Cross 1c15057b94 Make MakeVarsContext a PathContext am: 65494b962b
am: e5bc0d6253

Change-Id: I0c2daaefb69f8b9bcbb2e4a3ce68858d85e64baa
2019-02-07 18:04:19 -08:00
Colin Cross 3def9efe61 Remove the hiddenapi presingleton
am: 697412f058

Change-Id: I96f1dfed133081bd27c7658d196c2a6818ace8fc
2019-02-07 17:45:35 -08:00
Colin Cross e5bc0d6253 Make MakeVarsContext a PathContext
am: 65494b962b

Change-Id: I1a2eab146c5f5327591c44faf224b562aac86610
2019-02-07 17:45:24 -08:00
Alex Light 0851b88eaf Add support for test_apex
Some test and other miscallaneous use-cases need apexs that are
installable but will not affect the installation of other artifacts
onto the device. For this purpose we added a test_apex type. These
test_apex targets create apex files and have all the normal attributes
but are not considered the source of any of their contents for the
device by the rest of the build-system.

Test: build and boot
Test: ALLOW_MISSING_DEPENDENCIES=true \
      DIST_DIR=$ANDROID_BUILD_TOP/out/dist \
      ./art/tools/dist_linux_bionic.sh -j72 showcommands com.android.runtime.host
Bug: 123591866
Bug: 123892969

Change-Id: I7f50be0ac0425cd87868145e18bcee6962d472ef
2019-02-07 16:52:20 -08:00
Colin Cross 0ddae7fddd Allow disabling implicit resource_dirs and asset_dirs
Specifying [] for resource_dirs or asset_dirs will prevent using
the default "res" or "assets" directories.

Test: TestResourceDirs
Bug: 124035856
Change-Id: I96e38ac1319260db43950299a8b1774da68ea85e
2019-02-08 00:24:01 +00:00
Colin Cross 697412f058 Remove the hiddenapi presingleton
The presingleton is no longer necessary now that MakeVarsContext
is a PathContext, just call hiddenAPISingletonPaths directly.

Test: m checkbuild
Test: forrest build of unbundled branch
2019-02-07 22:31:44 +00:00
Colin Cross 65494b962b Make MakeVarsContext a PathContext
Expose all of SingletonContext to makeVarsContext, and then export
the subset of it that is used through MakeVarsContext.SingletonContext,
plus what is necessary for PathContext, directly through
MakeVarsContext.

Test: m checkbuild
Change-Id: Ie00f36e577fe110b6fa03b901da489d8547773c6
2019-02-07 22:31:04 +00:00
Aurimas Liutikas 812dde86dd Merge "Update NDK library list" am: 7cf14099b7
am: aa6f7adb24

Change-Id: Ibe65dc99dde67305087b6410715a40bc52bd6c55
2019-02-07 13:01:16 -08:00
Aurimas Liutikas aa6f7adb24 Merge "Update NDK library list"
am: 7cf14099b7

Change-Id: I2963a3359f1e20f67990ba0473340ad70bbcecbe
2019-02-07 12:57:13 -08:00
Aurimas Liutikas 7cf14099b7 Merge "Update NDK library list" 2019-02-07 20:46:46 +00:00
Sasha Smundak 4eff8bbebf Provide an option to reduce build's verbosity. am: c0c9ef9964
am: 01531b48a0

Change-Id: I3859445a95109c9df2aa2d7d0e42305a1eeb3d36
2019-02-07 12:45:11 -08:00
Sasha Smundak 01531b48a0 Provide an option to reduce build's verbosity.
am: c0c9ef9964

Change-Id: I7ae0b4a7b1a1fc20ff4c7e71b9e9c7c4db5728a3
2019-02-07 12:41:26 -08:00
Sasha Smundak c0c9ef9964 Provide an option to reduce build's verbosity.
If ANDROID_QUIET_BUILD environment variable is set to '1', do not show 20
lines of the environment variables. In addition, for the failing step show
only the step name and output, omitting the command proper (the verbose log
as well as error.log still contains it).
If build succeeds, the output of the build itself consists of a single
line:
```
> m androidmk
[100% NN/NN] <last command>
```

When it fails, the output does not contain sometimes very long command
line:
```
> m androidmk
[ 97% NN/MM] test androidmk
FAILED: <step>
--- FAIL: TestEndToEnd (0.01s)
    androidmk_test.go:1025: failed testcase 'prebuilt_etc_TARGET_OUT_ETC'
        input:
        include $(CLEAR_VARS)
        LOCAL_MODULE := etc.test1
        LOCAL_MODULE_CLASS := ETC
        LOCAL_MODULE_PATH := $(TARGET_OUT_ETC)/foo/bar
        include $(BUILD_PREBUILT)

        expected:
        prebuilt_etc {
            name: "etc.test1",
            filename: "foo/bar",
        }

        got:
        prebuilt_etc {
            name: "etc.test1",
            filename: "foo/bar",

        }

FAIL
17:50:53 ninja failed with: exit status 1
```
[The related change in build/make/envsetup.sh suppresses timing display
when the same variable is set.]

Change-Id: I4d3c72457de031ff58a324c2fe98f4c1d10f8239
Test: treehugger
2019-02-07 12:21:45 -08:00
Colin Cross 9e43bcb7ec Merge "Use a presingleton to create hiddenapi singleton paths early" am: 17c85f098a
am: a0e1404cf9

Change-Id: I59970ce9b09d16b24b3f68c9741cae4a18f1e9a6
2019-02-07 12:15:06 -08:00
Colin Cross a0e1404cf9 Merge "Use a presingleton to create hiddenapi singleton paths early"
am: 17c85f098a

Change-Id: Ib94cff44bb21cd1dead01683b194bc6d8d7e20d6
2019-02-07 12:10:21 -08:00
Treehugger Robot 17c85f098a Merge "Use a presingleton to create hiddenapi singleton paths early" 2019-02-07 20:00:20 +00:00
Jiyong Park 547d717d13 add apex_defaults am: 30ca9379e6
am: 0f2ff3d948

Change-Id: I049b847fea168cebc8648ca323d2b352f776441e
2019-02-07 10:21:43 -08:00
Alex Light 99ebc2721a Don't remove non-installable apex deps from the system install am: f98087ffce
am: bc6203bf8e

Change-Id: I5e0a5f2201fa92eddcb1e328ff16e13bd6855513
2019-02-07 10:19:03 -08:00
Jiyong Park 0f2ff3d948 add apex_defaults
am: 30ca9379e6

Change-Id: If4653b44764acaa5a17cd6b5113656bf438b2542
2019-02-07 10:08:25 -08:00