Commit Graph

11248 Commits

Author SHA1 Message Date
Christopher Ferris
2000f21705 Make libc_scudo always go first.
am: 134f8f6f00

Change-Id: Ib7b568406b3822ece9cf0825957d7a8b8ff6aa01
2019-04-03 16:09:15 -07:00
Christopher Ferris
134f8f6f00 Make libc_scudo always go first.
In addition, add Shared_libs to malloc_not_svelte.

Bug: 123689570

Test: Verified that libc_scudo is first wherever it is added.
Change-Id: Ibdc5dbd019a382630a727c270f846aa4446f8d99
Merged-In: Ibdc5dbd019a382630a727c270f846aa4446f8d99
2019-04-03 14:54:12 -07:00
Colin Cross
8c3f398c6c Merge "Fix sdk_version: "system_current" when Platform_sdk_final=true"
am: b007b2bde5

Change-Id: Ic25cf990d32975fabaef3b94c57f307d69d35d5d
2019-04-03 11:46:23 -07:00
Colin Cross
b007b2bde5 Merge "Fix sdk_version: "system_current" when Platform_sdk_final=true" 2019-04-03 18:40:09 +00:00
Dan Willemsen
7aafa96cda Merge "Support host phony modules"
am: 3bdefa9f06

Change-Id: Icd5cb89744d4d94bf53b839f3f29316ca04f9a54
2019-04-03 10:55:08 -07:00
Treehugger Robot
3bdefa9f06 Merge "Support host phony modules" 2019-04-03 17:48:01 +00:00
Colin Cross
f5a8e0e88d Merge "Fix panic when missing hiddenapi jar"
am: f5df780fc2

Change-Id: Ic21f9edcd54368477d68124a5cbd56b32a945b0c
2019-04-03 07:14:23 -07:00
Treehugger Robot
f5df780fc2 Merge "Fix panic when missing hiddenapi jar" 2019-04-03 13:53:46 +00:00
Josh Gao
87fd9dec38 Revert "Enable lld for windows"
am: 61166dc047

Change-Id: Ib2088c56f593472c41efcf69ef0ae309db95cd9a
2019-04-02 20:45:04 -07:00
Josh Gao
61166dc047 Revert "Enable lld for windows"
This reverts commit 3c21c0b1d9.

Reason for revert: appears to break AdbWinUsb.dll usage by fastboot (and adb?)

Bug: http://b/129420419
Bug: http://b/110800681
Change-Id: I36d6d87f2e830e08e257ab42d470e49cdbb95819
2019-04-03 00:59:14 +00:00
Dan Willemsen
60294ef8d5 Support host phony modules
I'm fixing make to differentiate between host and target, so this will
be more useful soon.

Test: Android-aosp_arm64.mk is the same before/after
Test: adding `host_supported: true` to shell_and_utilities_system produces expected Android-aosp_arm64.mk
Change-Id: Idf12703be692100336db6d5c0ec05bb96e5e5c27
2019-04-02 17:07:10 -07:00
Colin Cross
ff0daf4ccf Fix sdk_version: "system_current" when Platform_sdk_final=true
When PLATFORM_VERSION_CODENAME is set to REL Platform_sdk_final
becomes true, which causes the return value of sdkVersionToNumber
for "system_current" to a real version number instead of
FutureApiLevel.  This enables the check against
PlatformSystemSdkVersions, which doesn't contain "current".  Use
the numeric value instead.

Fixes: 129786845
Test: sdk_test.go
Change-Id: If7cf211cc01c5fbf3e3ece3c3f604718a13d5a9b
2019-04-02 23:18:30 +00:00
Colin Cross
caa0e1e341 Fix panic when missing hiddenapi jar
Fix a panic after reporting an error when a module is listed
in ProductHiddenAPIStubs but doesn't exist or doesn't produce
a dex jar.

Test: manual
Change-Id: I43643cbc5303536bfe0b02feedb03563ea0b540a
2019-04-02 13:03:46 -07:00
Colin Cross
a9ff20226e Skip failing test on mac
am: 9a4f3f7ea8

Change-Id: Ic9475bef508ba636528d17db5e17d739a734232b
2019-04-02 10:25:40 -07:00
Colin Cross
9a4f3f7ea8 Skip failing test on mac
Tests with cc_binary_host fail on mac, disable for now.

Bug: 129763458
Test: TestProto
Change-Id: Icea24ac6ffba4c5c047296cb3997a5efa95e16ee
2019-04-02 10:02:04 -07:00
Colin Cross
91c063cfdc Add support for protoc plugins
am: fe17f6f0e8

Change-Id: I7dabf4b788925fce8b477eb3c7f9e90a5f986945
2019-04-02 09:55:06 -07:00
Colin Cross
61918685aa Move proto compilation to RuleBuilder
am: 19878da6a0

Change-Id: I44eed0735702ea6fbef57753d8eec078ad3a131e
2019-04-02 09:54:59 -07:00
Colin Cross
fe17f6f0e8 Add support for protoc plugins
Add a proto.plugin property to allow specifying a custom protoc
plugin to generate the code.

Fixes: 70706119
Test: m am StreamingProtoTest
Change-Id: I1ecdd346284b42bbcc8297019d98d2cd564eb94c
2019-04-02 16:38:55 +00:00
Colin Cross
19878da6a0 Move proto compilation to RuleBuilder
Using blueprint.Rule for protoc commands was causing code duplication
because there was no good way to run the same protoc for cc, java and
python but then run custom source packaging steps for java and python.
Move most of the code into a common function that returns a
RuleBuilder, and then let java and python add their own commands at
the end of the rule.

Bug: 70706119
Test: All Soong tests
Test: m checkbuild
Change-Id: Ic692136775d273bcc4f4de99620ab4878667c83a
2019-04-02 16:38:47 +00:00
Patrice Arruda
57522e4123 Merge "Soong: Add synopsis to cc_prebuilt_* modules."
am: 6e1c3faed5

Change-Id: I57ffbbe82c03113fffbc2fa766f8a4517d684cb7
2019-04-02 08:16:04 -07:00
Colin Cross
900574f0cd Merge changes I7dd4ba7f,I7887a67a
am: 92cc71606c

Change-Id: I40617cda703787aca7cc85e18beb173182b04532
2019-04-02 08:13:18 -07:00
Patrice Arruda
6e1c3faed5 Merge "Soong: Add synopsis to cc_prebuilt_* modules." 2019-04-02 15:11:37 +00:00
Colin Cross
92cc71606c Merge changes I7dd4ba7f,I7887a67a
* changes:
  Add depfile support to RuleBuilder
  Add RuleBuilderCommand.Flags
2019-04-02 15:04:06 +00:00
Jiyong Park
d2af9b6f42 Merge changes from topic "apex_bundle_pubkey"
am: 7a313bc614

Change-Id: I17a71dab94a0ac8a1c5fe2795ddd082eb1b8a97b
2019-04-02 07:35:06 -07:00
Jiyong Park
7a313bc614 Merge changes from topic "apex_bundle_pubkey"
* changes:
  Key property is removed from prebuilt_apex
  Always bundle the public key for APEX
2019-04-02 14:26:12 +00:00
Andrei-Valentin Onea
595282ced1 Merge "Automatically greylist code in 3P packages"
am: dca6ac3e35

Change-Id: Ic9d2843e446f0207ead6b83692c7fa50c34deb43
2019-04-02 06:25:27 -07:00
Andrei-Valentin Onea
dca6ac3e35 Merge "Automatically greylist code in 3P packages" 2019-04-02 13:10:37 +00:00
Colin Cross
89d99337fb Merge changes Ie7f776a4,I3ca5dd1f,I2e911262
am: 11581cf6b3

Change-Id: Ie9d0457b802be9840d03bc2963776ae421e68b34
2019-04-01 17:24:08 -07:00
Colin Cross
11581cf6b3 Merge changes Ie7f776a4,I3ca5dd1f,I2e911262
* changes:
  Add a whitelist for services.art changing between builds
  Add diff_target_files tool
  Import files from compare_target_files for use in diff_target_files
2019-04-02 00:03:05 +00:00
Colin Cross
9457c97c40 Merge "Touch output files in sbox"
am: 80eb6907ac

Change-Id: I0ff287156926e0788e8af3af8efb36cf222e02c4
2019-04-01 11:06:07 -07:00
Colin Cross
80eb6907ac Merge "Touch output files in sbox" 2019-04-01 17:45:12 +00:00
Colin Cross
d1c1e6fd6c Touch output files in sbox
Some tools used by genrules set the timestamp of the generated file
to an old value.  For example, when using tar to extract files it
will set the timestamp of the extracted file to the value stored in
the tar file.  This can cause unnecessary rebuilds due to output files
that are older than their inputs.  Touch output files in sbox before
moving them into the output location.

Test: m checkbuild && m checkbuild
Change-Id: Idb0e71d2bf0ac3618338371132cc71be74bf9d9d
2019-04-01 10:43:20 -07:00
Patrice Arruda
3554a98e4f Soong: Add synopsis to cc_prebuilt_* modules.
Added synopsis to the following modules under cc package:
    * cc_prebuilt_binary
    * cc_prebuilt_library_shared
    * cc_prebuilt_library_static

Bug: b/128337482
Test: Generated the documentation and verified that the synopsis was
added to each of the module.

Change-Id: I2ec284eb600f28d5c7f00254f441a3cc5fb684cc
2019-04-01 17:25:41 +00:00
Colin Cross
d93112ae26 Add a whitelist for services.art changing between builds
Bug: 120039850
Test: manual
Change-Id: Ie7f776a4e2743883ea006c66148fc4f40f90ce07
2019-04-01 10:07:25 -07:00
Colin Cross
91ee4c793d Add diff_target_files tool
Add a tool that lists files that have changed between two builds by
comparing the target-files.zip artifacts.

Bug: 121158314
Test: unit tests
Change-Id: I3ca5dd1fdf652dffef923ad7307fd71e49e2e95a
2019-04-01 10:07:21 -07:00
Colin Cross
c45c3b5ec6 Import files from compare_target_files for use in diff_target_files
Copied from cl/240594925.

Bug: 121158314
Test: copied unit tests
Change-Id: I2e91126285dcd33171ff8b8dbfcfa5d48501f535
2019-04-01 10:02:40 -07:00
Jiyong Park
c320e8262a Key property is removed from prebuilt_apex
The property is not needed as key is embedded in the apex.

Bug: 128344735
Test: m
Change-Id: Iae671994fc271593dd9319f6262279736ea34ad1
2019-04-01 19:25:08 +09:00
Jiyong Park
42cca6c951 Always bundle the public key for APEX
The public key associated with an APEX is always included in the APEX.

Obviously, the public keys are no longer installed to
/system/etc/security/apex

Bug: 128344735
Test: m
Change-Id: I1e1aef1d32597a447b57d49ab80bbfb921fa8178
2019-04-01 19:24:31 +09:00
Colin Cross
0a31c21da0 Merge "Restat clang linker outputs"
am: 51e265c5dd

Change-Id: I7f95695550cc51a5043cecab62f7907dffe1ef82
2019-03-31 11:55:47 -07:00
Treehugger Robot
51e265c5dd Merge "Restat clang linker outputs" 2019-03-31 18:40:40 +00:00
Patrice Arruda
55e35c0d63 Merge "Soong: Add unbind option to setup_go_workspace_for_soong.sh script"
am: 0ba2733414

Change-Id: I29d01517b4886b8e0f17fc3a247ce6e8b6689ec9
2019-03-30 17:10:04 -07:00
Jiyong Park
8f3fdc9135 Merge "Arch-specific source for prebuilt_apex"
am: 50ca4ef4d3

Change-Id: I14895ea1d0ca47e1b7a82a741800cec7400d319e
2019-03-30 17:09:42 -07:00
Patrice Arruda
0ba2733414 Merge "Soong: Add unbind option to setup_go_workspace_for_soong.sh script" 2019-03-30 23:51:53 +00:00
Jiyong Park
50ca4ef4d3 Merge "Arch-specific source for prebuilt_apex" 2019-03-30 23:50:32 +00:00
Jiyong Park
c95714ed0d Arch-specific source for prebuilt_apex
Arch-specific source can be specified for prebuilt_apex as follows.

arch: {
    arm64: {
        src: "myapex-arm64.apex",
    },
},

A note on the implementation. The Src property was not tagged as
`android:"arch_variant"` as usual. Instead, multiple Src properties are
explicitly declared like

struct Arch {
    struct Arm {
        struct Src *string
    }
    ...
}

Corresponding Src property is manually selected according to the
MultiTargets()[0].

This is because prebuilt_apex is mutated only for android_common, in
order to have the same arch variant with the apex module type.
Therefore, we can't rely on the arch_variant tag.

Bug: 127789981
Test: m (apex_test amended)

Change-Id: I77dbe626171d8975f549bdb4af3c487232cf05f7
2019-03-30 14:11:37 +09:00
Colin Cross
36ae135434 Restat clang linker outputs
clang -Wl,--out-implib doesn't update its output file if it hasn't
changed, always restat the outputs.

Fixes: 129553377
Test: m checkbuild && m checkbuild
Change-Id: I2cb19e1b8280fd69c8a9b2143f55760ec05630f8
2019-03-30 00:03:24 +00:00
Colin Cross
1d2cf0494a Add depfile support to RuleBuilder
Allow rules built with RuleBuilder to use depfiles.  Ninja only
supports a single depfile with single output.  If there are
multiple outputs in a rule, move all but the first to implicit
outputs.  If multiple depfiles are specified, use new support
in dep_fixer to combine additional depfiles into the first depfile.

Test: rule_builder_test.go
Change-Id: I7dd4ba7fdf9feaf89b3dd2b7abb0e79006e06018
2019-03-29 16:35:06 -07:00
Colin Cross
92b7d584c8 Add RuleBuilderCommand.Flags
Test: rule_builder_test.go
Change-Id: I7887a67aaef33bc591d83fade9175da3e401529f
2019-03-29 16:35:06 -07:00
Patrice Arruda
b4e93fbdc2 Soong: Add unbind option to setup_go_workspace_for_soong.sh script
The setup_go_workspace_for_soong now allows the reverse operation
of unbinding the directories of the previous operation. Also,
refactored the script to easily add more directories to bind/unbind
in the future, catch failures on running in subshell commands and
a cleaner way to find the repo top directory.

Bug: b/129407866
Test: Manually tested by running the script on binding and unbinding
the directories. Tested both darwin and linux OS.

Change-Id: I7c93230aeab819ab5747e990e95aa26077071d9e
2019-03-29 15:57:47 -07:00
Andrei Onea
896237b7b9 Automatically greylist code in 3P packages
Bug: 129387816
Test: m appcompat
Test: frameworks/base/tools/hiddenapi/generate_hiddenapi_lists_test.py
Change-Id: Id55abed766a6de6a2c032ee12d5153ab73a8d65c
2019-03-29 16:51:43 +00:00