Commit Graph

11913 Commits

Author SHA1 Message Date
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 b74157dfb3 Merge "Update NDK library list" am: 7cf14099b7 am: aa6f7adb24
am: 812dde86dd

Change-Id: I0e03ab3ce27746fcc362c2773a81b96370b8d8a7
2019-02-07 13:05:20 -08: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
Sasha Smundak 6eefaa8181 Provide an option to reduce build's verbosity. am: c0c9ef9964 am: 01531b48a0
am: 4eff8bbebf

Change-Id: I76aa988987f8875440b4151db6862e18f6c47cd9
2019-02-07 12:50:14 -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 c73f63616d Merge "Use a presingleton to create hiddenapi singleton paths early" am: 17c85f098a am: a0e1404cf9
am: 9e43bcb7ec

Change-Id: Ib66c4ee3a11666539a1e0aa44422636549e30777
2019-02-07 12:18:09 -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 d7229b3df6 add apex_defaults am: 30ca9379e6 am: 0f2ff3d948
am: 547d717d13

Change-Id: I7e959b0760f33cbe97f9510102c7d5d6ffa96848
2019-02-07 10:30:22 -08:00
Alex Light 050e021fdd Don't remove non-installable apex deps from the system install am: f98087ffce am: bc6203bf8e
am: 99ebc2721a

Change-Id: Iaa20b00fde9215a40c161d30b1593a1949138987
2019-02-07 10:27:17 -08: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
Alex Light bc6203bf8e Don't remove non-installable apex deps from the system install
am: f98087ffce

Change-Id: I122182d62b5d9ed29c12ac7bf08f39815020c6e8
2019-02-07 10:05:53 -08:00
Jiyong Park 30ca9379e6 add apex_defaults
apex_defaults is the default module for apex.

Bug: 124026431
Test: m (apex_test updated)
Change-Id: I09f63046e909e8eeb52ecec6bb07eb51e5490561
2019-02-08 02:55:28 +09:00
Alex Light f98087ffce Don't remove non-installable apex deps from the system install
We were marking any libraries included in any apex (including
non-installable apex's like com.android.runtime.host) as
uninstallable. This could cause phones to become unbootable if these
apex's are modified.

Bug: 123892969
Test: m droid && boot device.
Change-Id: Ief9004bbe7b106ee8f52715ce5bd7bb5accec290
2019-02-07 17:05:45 +00:00
Colin Cross 76e3e1f554 Use a presingleton to create hiddenapi singleton paths early
If no module uses hiddenapi (because it is an unbundled build that
does not build any boot image modules), then the makevars singleton
panics because it will always run before the hiddenapi singleton
(due to package init() function ordering), and the hiddenapi singleton
paths have not been initialized yet.  Add a presingleton to initialize
the paths early.

Bug: 123645297
Test: tapas Launcher3 && m on unbundled branch
Change-Id: I9386ac87848a2181f51140129288df80fff9acfd
2019-02-07 08:57:26 -08:00
Colin Cross 083a2aa52d Make privileged java_library modules use uncompressed dex
Check java_library modules against ModulesLoadedByPrivilegedModules
to determine whether to uncompress the dex files in them.

Test: m checkbuild
Change-Id: I77ee456d55bec65c8b4c82e9bd38f344212e6140
2019-02-07 08:56:02 -08:00
Jiyong Park ebcbf8add8 Merge "Fix: TARGET_FLATTEN_APEX=true does not install any files to /system/apex" am: 6e8fe6feb1 am: 5168ece030
am: 8dd220b4be

Change-Id: I256b0b2d5fe57f341bce66a80a7183cf4eee8708
2019-02-07 08:29:37 -08:00
Jiyong Park 8dd220b4be Merge "Fix: TARGET_FLATTEN_APEX=true does not install any files to /system/apex" am: 6e8fe6feb1
am: 5168ece030

Change-Id: I6e89290c0817997d71b65343edfcc063d98bc401
2019-02-07 08:25:51 -08:00
Jiyong Park 5168ece030 Merge "Fix: TARGET_FLATTEN_APEX=true does not install any files to /system/apex"
am: 6e8fe6feb1

Change-Id: Ide50087142c82d5582fc95b7e683631e6eda9229
2019-02-07 08:21:26 -08:00
Jiyong Park 6e8fe6feb1 Merge "Fix: TARGET_FLATTEN_APEX=true does not install any files to /system/apex" 2019-02-07 16:08:24 +00:00
Jiyong Park e4bb986106 Static variant of a stubs lib is correctly tracked
cc.Module.staticVariant is used to track the corresponding static
variant of a shared variant. This change fixes a problem that the
staticVariant field is not correctly set when the lib is with stubs:
{...}. This was happening because the staticVariant was set by adding
dependency from shared variant to static variant to reuse object files.
However, for a lib with stubs, the dependency was not created because it
does not make sense to share object files for stubs lib where source
code is auto-generated.

Fixing the issue by adding dependency to the static variant with a
different dependency tag whose only purpose is to set staticVariant
field.

Bug: 122885634
Test: m (cc_test amended)
Change-Id: I7f97cbb4c4a28bf9a93839d3b91ee140835aa6af
2019-02-08 00:47:46 +09:00
Jaewoong Jung 9109d72785 Add Android.mk lines for package name overriding.
This ensures the overriding/overridden packages are processed as intended
when producing the final system image.

Bug: 122957760
Test: Manual tests with Browser2, BrowserGoogle, and Chrome
Change-Id: Ica05e53601b27c73de7f5c3bfcb9000103a11db6
2019-02-07 07:15:45 -08:00
Colin Cross 28825f0e41 Merge changes from topic "hiddenapi" am: 4c3a4aded3 am: 19807e619e
am: ab9bfa1617

Change-Id: I148138a6723926af54620c6ce3379fdb61ed9e08
2019-02-07 00:09:49 -08:00
Colin Cross 930fd09663 Add MissingDeps to RuleBuilder am: 0d2f40ae6c am: 2950d40b76
am: aa1b802a53

Change-Id: Ie82106fa63c2194430e9b1c186db33244854b260
2019-02-07 00:09:33 -08:00
Colin Cross ab9bfa1617 Merge changes from topic "hiddenapi" am: 4c3a4aded3
am: 19807e619e

Change-Id: If4b07473839c84eb30710389c165b04772f29bb3
2019-02-06 23:53:15 -08:00
Colin Cross aa1b802a53 Add MissingDeps to RuleBuilder am: 0d2f40ae6c
am: 2950d40b76

Change-Id: Idf832a90670e636348f8e3af86686de03ced7544
2019-02-06 23:52:55 -08:00
Jiyong Park 41229f584a Fix: TARGET_FLATTEN_APEX=true does not install any files to /system/apex
94427265d1 broke the flattened APEX
by not updating moduleNames

Test: TARGET_FLATTEN_APEX=true m
Files are under /system/apex

Change-Id: I14b1a6f8b2244d35e1accdf9888cfef65f4b0a03
2019-02-07 16:48:04 +09:00
Colin Cross 19807e619e Merge changes from topic "hiddenapi"
am: 4c3a4aded3

Change-Id: Ia9e465b4df464cc79d3c3e4c6e99a5b862fcb09a
2019-02-06 23:41:22 -08:00
Colin Cross 2950d40b76 Add MissingDeps to RuleBuilder
am: 0d2f40ae6c

Change-Id: I533be8464482ad327a4c446242ebebc2dfe039c1
2019-02-06 23:40:53 -08:00
Treehugger Robot 4c3a4aded3 Merge changes from topic "hiddenapi"
* changes:
  Move hiddenapi singleton rules to Soong
  Add MissingDeps to RuleBuilder
2019-02-07 07:27:33 +00:00
Dan Willemsen 7b515764c7 Return early after NDK->non-NDK library link error am: 155d17c1da am: 63833a3882
am: 71c27ff72b

Change-Id: I3d167340cefe4c67ff1efcc3be8ac7b4047c4f0a
2019-02-06 23:06:39 -08:00
Dan Willemsen 71c27ff72b Return early after NDK->non-NDK library link error am: 155d17c1da
am: 63833a3882

Change-Id: Ib83cad7611db8800e2cbee32c4a6126de8c1f472
2019-02-06 23:02:37 -08:00
Dan Willemsen 63833a3882 Return early after NDK->non-NDK library link error
am: 155d17c1da

Change-Id: I8d11bf8c71a3df036e5545f6d796ce970813e123
2019-02-06 22:58:33 -08:00
Dan Willemsen 62b9cf952c Update NDK library list
Apparently this isn't autogenerated based on the list of ndk_library
modules?

Fixes: 124019854
Test: try to use libsync from a cc_library with sdk_version: "current"
Change-Id: I5016e1b7d77ed9255bf4b185c168efe8d0b73d12
2019-02-06 18:41:27 -08:00
Dan Willemsen 155d17c1da Return early after NDK->non-NDK library link error
Otherwise the code after this assumes that the "to" library is an NDK
library and panics when it isn't.

Bug: 124019854
Test: trigger error, no longer see panic
Change-Id: I88d10e8d882285e24b4f42d0cf85c2d658348617
2019-02-06 18:30:02 -08:00
Dan Willemsen 27af4d6bee Merge "Add BUILD_BROKEN_ENG_DEBUG_TAGS to soong.log" am: 3a984f55f6 am: 39a139493e
am: 0cfd68d52a

Change-Id: I19793d15ad783a864352fae0984db012ef5fc6d3
2019-02-06 13:23:38 -08:00