Commit graph

15649 commits

Author SHA1 Message Date
Yi Kong
a4a8d9c115 Merge "Add back the llvm-ar P flag" 2019-09-07 03:41:42 +00:00
Ivan Lozano
ed9fcf8857 Disable unsupported Rust targets.
am: de25291b6e

Change-Id: I2eb1c86093515b85bebe85e2927e368dc6e2f98b
2019-09-06 20:13:30 -07:00
Steven Moreland
349cd474ef CreateModule also inherits variableProperties.
Bug: N/A
Test: manual
Change-Id: Ic5ecbeac04841d4016c0caa8710a6adae1ec2bd6
2019-09-06 18:28:58 -07:00
Ivan Lozano
de25291b6e Disable unsupported Rust targets.
Explicitly disable targets requiring unsupported toolchains when
processing Rust modules.

Bug: 140640858
Test: Darwin builds no longer breaking.
Change-Id: I8c60a2829508ae6de16bf347060818ca5c04f65e
2019-09-06 16:06:21 -07:00
Yi Kong
ee96a7956a Add back the llvm-ar P flag
The P flag is supported as of llvm r354044, add back the flag to reduce
the size of intermediate archieve files. This does not affect the final
binaries.

Test: built
Bug: 71618641
Change-Id: I017780e4dcaa31c7fbe10b5e7482db1bba83e716
2019-09-06 15:11:57 -07:00
Elliott Hughes
34b49d1402 Use toybox md5sum instead of md5 on macOS.
Test: builds locally
Change-Id: I04aa52de96e0525a44331cb0c057a8e18a95891d
2019-09-06 14:42:24 -07:00
Colin Cross
6ac046000f Make javanano a plugin
Treat proto.type: "javanano" as a plugin by explicitly passing the
path to protoc-gen-javanano.  This allows removing the javanano
customizations from the core plugin code, which no longer supports
javanano natively.

Bug: 117607748
Test: m checkbuild
Change-Id: Id7ed92d45583a7930f35c6734605d9304704bdbc
Merged-In: Id7ed92d45583a7930f35c6734605d9304704bdbc
2019-09-06 14:18:01 -07:00
Colin Cross
0fd6a41a6d Add suffix and target.vendor.suffix to shared libraries
And make prebuilt shared libraries suffix and stem too.

This will be used for the vendor version of the protobuf
runtime shared libraries to append the protobuf version
number to the installed file name, which will help with
updating protobuf in the future.

Bug: 117607748
Test: m checkbuild
Change-Id: I8919a4f2e1be1ced29198af758077baf56c1f7a7
Merged-In: I8919a4f2e1be1ced29198af758077baf56c1f7a7
2019-09-06 14:18:01 -07:00
Colin Cross
e6761cef8d Merge "Shard kythe invocations when javac is sharded"
am: 2895bf7182

Change-Id: Ifbd06d4566cb4488cdb7ca2e4b6beadd41f0eeb6
2019-09-05 22:16:13 -07:00
Treehugger Robot
2895bf7182 Merge "Shard kythe invocations when javac is sharded" 2019-09-06 04:50:23 +00:00
Colin Cross
57660b75ea Merge "Support boringssl hash injection on binaries and make it transitive"
am: a758d6c881

Change-Id: I94ac21c9e954ffd2032d03d87860433c56c4c1c3
2019-09-05 21:31:58 -07:00
Colin Cross
a758d6c881 Merge "Support boringssl hash injection on binaries and make it transitive" 2019-09-06 04:17:06 +00:00
Sundong Ahn
b8e2420c96 Merge "Support including apk inside an apex"
am: 5afe2d6869

Change-Id: I8bdbf23e3c1bfbf89bf35219d726bf9ef8f11102
2019-09-05 16:56:42 -07:00
Colin Cross
3b706fde7f Shard kythe invocations when javac is sharded
The kythe pipeline has trouble injesting all 6000 files of
framework.jar at once.  Shared invocations of the kythe extractor
when javac is sharded to produce multiple smaller kzip files.

Bug: 140426870
Test: no change to build.ninja
Test: m out/soong/.intermediates/frameworks/base/framework/android_common/framework0.kzip
Test: TestSharding in java_test.go
Change-Id: I867db4ef5cb1e7f3ce8359a46aac2c00ed8a8912
2019-09-05 16:49:11 -07:00
Colin Cross
2f7bdc9221 Merge "Bring back env flag to skip checkapi"
am: 2ff22ae575

Change-Id: Ie0dc92d321ba56e215f864817614b653347a71f8
2019-09-05 16:49:09 -07:00
Treehugger Robot
5afe2d6869 Merge "Support including apk inside an apex" 2019-09-05 23:43:33 +00:00
Elliott Hughes
df0ba8dbf9 Merge "Switch to toybox stat on macOS too."
am: c3233c291f

Change-Id: I54af7a30da4fc680ccb3d728b01c75442364e1fe
2019-09-05 16:42:17 -07:00
Colin Cross
2ff22ae575 Merge "Bring back env flag to skip checkapi" 2019-09-05 22:55:33 +00:00
Colin Cross
d7227f99eb Support boringssl hash injection on binaries and make it transitive
Move handling the inject_bssl_hash property to a helper function,
and also treat it as set if any static libraries have it set.

Bug: 137267623
Test: m checkbuild
Change-Id: Icb12cfffb20797c807b410daffbf7fcccb1b1975
2019-09-05 15:30:05 -07:00
Elliott Hughes
c3233c291f Merge "Switch to toybox stat on macOS too." 2019-09-05 21:02:06 +00:00
Mitch Phillips
4de896e1ef Add i386 host fuzzing support w/ cc_fuzz.
Adds the host fuzzing support back for 32-bit x86 targets, now that the
toolchain has been updated to export this library.

Bug: 133261679
Test: `m example_fuzzer` on a 32-bit target/cross
Change-Id: I28285d531a53eebd28c9e1b733035be48696b48f
2019-09-05 13:34:44 -07:00
Elliott Hughes
ef19e01f96 Switch to toybox stat on macOS too.
Bug: http://b/139450866
Test: builds
Change-Id: I97af607a311aea5f97544bd3ce1d532d999126ff
2019-09-05 10:01:37 -07:00
Xin Li
90aa0d9b30 DO NOT MERGE - Merge Android 10 into master
Bug: 139893257
Change-Id: I7c1b81ded862765968ef14d10ae76359e2972f27
2019-09-04 18:01:11 -07:00
Ivan Lozano
fc4d6ab32f Merge "Do not run Soong tests for Rust on non-Linux hosts."
am: 2be86f201c

Change-Id: Id7c02175c9e6ccb7a74d84e336c508fe4bc116b1
2019-09-04 14:07:14 -07:00
Treehugger Robot
2be86f201c Merge "Do not run Soong tests for Rust on non-Linux hosts." 2019-09-04 20:56:25 +00:00
Dan Willemsen
f80ef34c80 Merge "Rewrite depfile from sbox to stay reproducible"
am: e2ce551909

Change-Id: I2a51549dfb4419b9b6444d33104d35e655c82f4f
2019-09-04 12:38:05 -07:00
Dan Willemsen
e2ce551909 Merge "Rewrite depfile from sbox to stay reproducible" 2019-09-04 19:16:01 +00:00
Nikita Ioffe
8fbbdcd845 Use PathForModuleOutput instead of PathForPhony
am: 1acf6f9f6e

Change-Id: I39f05674e437f0c5e4c8ca28b295e78771f5840e
2019-09-04 08:23:28 -07:00
Nikita Ioffe
1acf6f9f6e Use PathForModuleOutput instead of PathForPhony
Later breaks some build flavours ¯\_(ツ)_/¯

Bug: 140467657
Test: soong_ui.bash --make-mode vts dist DIST_DIR=/tmp/dist-dir/ TARGET_PRODUCT=aosp_arm64 WITH_DEXPREOPT_BOOT_IMG_AND_SYSTEM_SERVER_ONLY=true BUILD_GOOGLE_VTS=true TARGET_BUILD_VARIANT=eng NATIVE_COVERAGE=true COVERAGE_PATHS="test/vts/hals/light" ENABLE_TREBLE=true
Change-Id: I0cb5754cb93551f2ed66d804f36019b037ccd871
2019-09-04 10:57:13 +00:00
Luca Stefani
d63ea0a98f Bring back env flag to skip checkapi
* This was removed while moving to soong

Change-Id: Ibb41838b891a8a7ede48e687e8da16f87ad0a57b
2019-09-04 12:20:15 +02:00
Sundong Ahn
e1f05aaf44 Support including apk inside an apex
New property "apps" is added to APEX soong module. This property
configure a list of APKs to package inside APEX payload. For each
android_app module package it's APK into /app/$(android_app module Name)
directory.

Bug: 139906763
Test: m -j
Change-Id: Ic6655f211951af08097c76e157a07ebc52425718
2019-09-04 12:10:00 +09:00
Yi Kong
6f326336f9 Merge "Create libgcc_stripped with llvm-objcopy"
am: e942e32f97

Change-Id: I5a445778632325f74bf52cb6cf1b1f446cdafcfa
2019-09-03 16:35:17 -07:00
Yi Kong
e942e32f97 Merge "Create libgcc_stripped with llvm-objcopy" 2019-09-03 23:12:02 +00:00
Yi Kong
38e5eacedc Merge "Re-enable tautological-unsigned-enum-zero-compare"
am: 47236f13fc

Change-Id: I4def4ff498f48dfff56709b1f8dd28fbe4fad408
2019-09-03 14:50:24 -07:00
Treehugger Robot
47236f13fc Merge "Re-enable tautological-unsigned-enum-zero-compare" 2019-09-03 21:29:54 +00:00
Ivan Lozano
c0083614f6 Do not run Soong tests for Rust on non-Linux hosts.
The Rust toolchain only supports Linux hosts, so skip Rust tests
that depend on host toolchains when building on other platforms.

Test: Tests still run on Linux hosts
Bug: 140435149
Change-Id: I298b52589ab5c6a7ec3acc4db1111596cd995d76
2019-09-03 13:57:36 -07:00
Yi Kong
a0119f8754 Create libgcc_stripped with llvm-objcopy
llvm-objcopy now implements '--regex' option, which allows it to replace
GNU objcopy for creating libgcc_stripped archieve.

Test: build
Bug: 131631155
Change-Id: Ie1733ac8e9b3765f7652a562406dcedb4735cc1a
2019-09-03 13:44:54 -07:00
Nikita Ioffe
9a7518779b Merge "apex.go: Add support for diffing content of APEX with whitelist file"
am: 3f3190fe4a

Change-Id: Ia4b86b97b5e16e5a3ae10e4f6231ee553ac2ac58
2019-09-03 08:20:07 -07:00
Nikita Ioffe
3f3190fe4a Merge "apex.go: Add support for diffing content of APEX with whitelist file" 2019-09-03 15:09:03 +00:00
Paul Duffin
7322b5271a Allow per test rules in neverallow_test.go
am: 115445b5d6

Change-Id: I6e7ce7fc42e2fbd186ed4e37fa362faf8cc30fac
2019-09-03 05:44:15 -07:00
Paul Duffin
db4fec9bfc [automerger skipped] Support multiple expected errors in neverallow_test.go
am: 91e3819335 -s ours
am skip reason: change_id Iafbadf12c6ffdc4d9128fcfe7f15792df5cfd020 with SHA1 b5af6204d3 is in history

Change-Id: Ib993eed4306417779861bcd2fa2a592e327dc1e5
2019-09-03 02:45:37 -07:00
Paul Duffin
115445b5d6 Allow per test rules in neverallow_test.go
Makes testing individual rules easier by allowing them to be specified
per test rather than having to add them to the global defaults.

Bug: 138428610
Test: m nothing
Change-Id: Ic65a55dee2a02b6d33254753c047295dd5804408
2019-09-03 10:33:29 +01:00
Paul Duffin
91e3819335 Support multiple expected errors in neverallow_test.go
Extracted some common code used by visibility_test.go and
neverallow_test.go into a new function CheckErrorsAgainstExpectations
in testing.go.

Bug: 138428610
Test: m nothing
Change-Id: I6996fa52968c387e38b4a67ffa59cd07c2d524e8
Merged-In: Iafbadf12c6ffdc4d9128fcfe7f15792df5cfd020
2019-09-03 10:33:29 +01:00
Nikita Ioffe
5d5ae761c5 apex.go: Add support for diffing content of APEX with whitelist file
So far a very basic version.

In case there is a diff, soong will emit an error message with a command
to resolve the diff. Example:

New unexpected files were added to com.android.apex.cts.shim.v3. To fix the build run following command:
system/apex/tools/update_whitelist.sh system/apex/shim/build/default_shim_whitelist.txt out/soong/.intermediates/system/apex/shim/build/com.android.apex.cts.shim.v3/android_common_com.android.apex.cts.shim.v3/com.android.apex.cts.shim.v3-content.txt

Test: m checkbuild
Bug: 139125405
Change-Id: I57e694f394c56105dc7363a684983605c7bf5e7d
2019-09-02 17:55:21 +01:00
Martin Stjernholm
242d9ed1ca Update dexpreopt for the ART APEX name change.
am: cc4b0ad706

Change-Id: I925557842275381d5a8754771a39cf72821628f0
2019-09-02 03:43:53 -07:00
Yi Kong
8ca12bd837 Re-enable tautological-unsigned-enum-zero-compare
Clang is smarter at producing this new warning now, producing far
fewer false positives. Re-enable the diagnostic for Android.

Test: build
Bug: 72331526
Change-Id: Ide827791c51587bceb977ae4116894a8cd620eb1
2019-09-01 14:11:01 -07:00
Martin Stjernholm
cc4b0ad706 Update dexpreopt for the ART APEX name change.
Test: Build & boot
Bug: 135753770
Exempt-From-Owner-Approval: Approved internally
Change-Id: I3aac9112b022cce3ef8cfdf4bdbbed8bb0c8f4c7
Merged-In: I3aac9112b022cce3ef8cfdf4bdbbed8bb0c8f4c7
2019-08-30 17:47:30 +01:00
Jiyong Park
19dd886ec5 [automerger skipped] Merge changes from topic "drop_circular_dep"
am: 7153b767a5 -s ours
am skip reason: change_id I81f9614d20fbdd2f7d18340d6dbdb592e7acde06 with SHA1 01d5401dc0 is in history

Change-Id: Id03a7bdf7494b8bb86e5bf252d4cc7f6da7f0815
2019-08-30 07:09:14 -07:00
Treehugger Robot
7153b767a5 Merge changes from topic "drop_circular_dep"
* changes:
  Remove srcs_lib and srcs_lib_whitelist_pkgs
  Remove the automatic dependency to framework-res.apk for R/Manifest
  Prepare to be able to put framework-res in srcs
2019-08-30 13:47:31 +00:00
Jiyong Park
777050e48e Merge "Automatically enable abi checker for the stub libs"
am: c61c83db9a

Change-Id: I44b7eebdd0b2ac55b55c4b0f2fa1448bdf80ba9d
2019-08-29 23:10:19 -07:00