Commit graph

15049 commits

Author SHA1 Message Date
Anton Hansson
7ff32d2734 Add support for LOCAL_PRIVATE_PLATFORM_APIS.
The only enforcement right now is that modules don't specify both
LOCAL_SDK_VERSION and LOCAL_PRIVATE_PLATFORM_APIS, but a warning
can be turned on by setting the JAVA_SDK_ENFORCEMENT_WARNING variable.

Bug: 73535841
Test: make w/ and wo/ flag.
Change-Id: I3cc720bf060e2bc789e10884ff888d527b91cb50
2018-02-21 18:10:59 +00:00
Treehugger Robot
5fdae96b06 Merge "Revert "Revert "Propagate proguard rules from LOCAL_STATIC_ANDROID_LIBRARIES""" 2018-02-17 03:15:58 +00:00
Dan Shi
b6655e0e1a Merge "build: Default test modules to null-suite" 2018-02-17 00:39:27 +00:00
Treehugger Robot
64006ad4f3 Merge "Support core_current when exporting resources from a package" 2018-02-16 23:41:26 +00:00
Mathieu Chartier
60431c098e Merge "Add a product property for changing the default compiler filter" 2018-02-16 23:41:21 +00:00
Dan Willemsen
c51b7b0d55 Support core_current when exporting resources from a package
Bug: 73351844
Test: with https://googleplex-android-review.git.corp.google.com/c/platform/cts/+/3621794
Change-Id: I20b8adf0d7cb5d948ba752e0732bbe84d39a419a
2018-02-16 13:32:26 -08:00
Colin Cross
ce8c05196d Partially revert BUILD_DATETIME change
Change Ibe4ceb1b224c5e8f3e1a8a59cfee89217765a901 caused kati to
regenerate on every build:
$(shell cat out/build_date.txt) was changed, regenerating...
Switch back to $(shell date +%s) which is special cased in kati
to not cause a regeneration.  Everything besides DATE will still
use BUILD_DATETIME_FROM_FILE from soong_ui.

Once BUILD_NUMBER is moved to soong_ui $(DATE) is no longer
necessary and the whole thing can be removed.

Bug: 70351683
Bug: 73352417
Test: m && m doesn't regenerate
Test: m BUILD_DATETIME=1234 shows up in ro.build.version.incremental
Change-Id: I8444beb2b47a49095ef760083fc85f220821bffe
2018-02-16 09:41:24 -08:00
Treehugger Robot
dc6e822374 Merge "NO_STANDARD_LIBRARIES := true blocks ALL resource libraries" 2018-02-16 03:35:28 +00:00
Treehugger Robot
87774191b3 Merge "Record the compilation reson in oat files for prebuilts" 2018-02-16 02:28:31 +00:00
Mathieu Chartier
e8fb7cf87b Add a product property for changing the default compiler filter
Add product property for changing default compiler filter:
PRODUCT_DEX_PREOPT_DEFAULT_COMPILER_FILTER

Bug: 70934104
Test: Specify PRODUCT_DEX_PREOPT_DEFAULT_COMPILER_FILTER in a device.mk

Change-Id: I264631fc3813ef44d43b802b4cd9a8e92098183e
2018-02-15 17:44:37 -08:00
Treehugger Robot
304be2ec74 Merge "Build: Move LOCAL_ERROR_PRONE_FLAGS" 2018-02-16 01:04:45 +00:00
Adam Lesinski
6b6283a042 NO_STANDARD_LIBRARIES := true blocks ALL resource libraries
LOCAL_RES_LIBRARIES and LOCAL_APK_LIBRARIES should still be honored.

Test: make CtsDevicePrereleaseSdkApp
Change-Id: I3360d0fe2f7e2f3038e48f41905923a72609ceec
2018-02-15 16:53:18 -08:00
Calin Juravle
55f149263c Record the compilation reson in oat files for prebuilts
Test: build
Bug: 73102540
Change-Id: Ia2ba0670f36b3eeb481bc7b2ae44a1c89777bfc1
2018-02-15 16:00:15 -08:00
Treehugger Robot
b9a66a6250 Merge "Remove core/clang/versions.mk and scan-build wrapper" 2018-02-15 23:56:36 +00:00
Andreas Gampe
21a1c6d03f Build: Move LOCAL_ERROR_PRONE_FLAGS
Move application of module flags to host_java_library_common.mk
so that dalvik host builds can also have flags.

Bug: 72451126
Test: m javac-check RUN_ERROR_PRONE=true
Change-Id: Idbf43afd886536cc7ea674aa4487da3c22987850
2018-02-15 15:02:15 -08:00
Treehugger Robot
4babe39d0f Merge "Remove BUILD_DATETIME from Make." 2018-02-15 22:30:49 +00:00
Chih-Hung Hsieh
7ed0db8d1d Remove core/clang/versions.mk and scan-build wrapper
* Use the definitions of ClangDefaultBase and ClangDefaultVersion
  in build/soong/cc/config/global.go.
* scan-build is too old;
  replaced by better clang-tidy's -clang-analyzer-* checks.
* WITH_STATIC_ANALYZER is still effective
  to invoke ccc-analyzer or c++-analyzer.

Test: make checkbuild
Change-Id: Ifd159dd28e529d5d3c9807f5e391911365da8cdb
2018-02-15 13:38:50 -08:00
Nan Zhang
975f41ed34 Remove BUILD_DATETIME from Make.
Soong_UI will handle build timestamp and export date file to Make.

Test: m -j32
Bug: b/70351683
Change-Id: Ibe4ceb1b224c5e8f3e1a8a59cfee89217765a901
2018-02-14 13:30:53 -08:00
Colin Cross
5b73ab34ed Disable duplicates warnings when merging jars
There are too many duplicates warnings, disable them until someone
is actually looking at them.

Bug: 69316739
Test: m checkbuild
Change-Id: Ifb67dbf7734b5f53941d110f578c4fe642e36005
2018-02-14 18:35:37 +00:00
Jiyong Park
889773f7ab BUILD_DROIDDOC supports LOCAL_NO_STANDARD_LIBRARIES
When LOCAL_NO_STANDARD_LIBRARIES is set to true, droiddoc only omits
framework libraries from the required libs. This enables us to use
droiddoc even when frameworks/base is absent (i.e. master-art branch).

Test: m -j core.current.stubs
Test: build in master-art branch
Change-Id: Ia9f0b8bda84b006881b3e62e6573a7784ca56a8c
2018-02-14 21:16:15 +09:00
Treehugger Robot
895a8172ee Merge "Create symbolic boot vdex files for different ISAs" 2018-02-14 00:59:56 +00:00
Treehugger Robot
42c7cf0631 Merge "Enable BOARD_PROPERTY_OVERRIDES_SPLIT_ENABLED for full-treble products" 2018-02-14 00:30:23 +00:00
Pirama Arumuga Nainar
676fbe7e5e Pass PGO_ADDITIONAL_PROFILE_DIRS to soong
This variable can be set in BoardConfig.mk to specify a list of
additional paths that contain PGO profiles.  These directories are
searched before the predefined paths in soong/cc/pgo.go while finding
PGO profiles.

Test: Set this variable in a BoardConfig and verify that such profiles
are found and that these paths are searched before the predefined paths
in soong/cc/pgo.go.

Change-Id: Ied3ebf0ce6e6e2ead57f4828998e9617424e4573
2018-02-13 09:32:44 -08:00
bowen_lai
4570fdbb4c Create symbolic boot vdex files for different ISAs
Create only one vdex file and share between different ISAs.
By sharing vdex file, zygote32 and zygote64 can share the same file and
the system partition size is reduced by about 32MB.

Test: make framework & check boot.vdex and boot-*.vdex files
Test: test system boots with no selinux violations

Bug: 64211239

Change-Id: I31ede4b6aa342f2047d9309b8c631217e6699202
2018-02-12 19:45:21 -08:00
Dan Willemsen
4cdbaf1186 Revert "Revert "Propagate proguard rules from LOCAL_STATIC_ANDROID_LIBRARIES""
This reverts commit 30d6869faf.

Fixes an issue with the original change where proguard files without
newlines at the end of the file would get merged with the next file.
Most of the time the next file started with a comment, which worked
fine, but sometimes it was a syntax error.

Bug: 72969557
Test: m
Test: build on an internal tree that failed last time
Change-Id: I66f13ae80ee0f96b456e526bfbfc2cdcf82c3f3a
2018-02-09 15:22:52 -08:00
Dan Willemsen
2744cbf190 Merge "Revert "Propagate proguard rules from LOCAL_STATIC_ANDROID_LIBRARIES"" 2018-02-09 19:22:13 +00:00
Dan Willemsen
30d6869faf Revert "Propagate proguard rules from LOCAL_STATIC_ANDROID_LIBRARIES"
This reverts commit df5d7da7d8.

Reason for revert: breaking builds

Bug: 72969557
Change-Id: I27aad65587933c3f760a89c541d27469c916abe8
2018-02-09 19:21:11 +00:00
Treehugger Robot
74413198b7 Merge "Move to-upper and to-lower to definitions.mk" 2018-02-09 18:20:23 +00:00
Dan Willemsen
13d389ad16 Merge "Propagate proguard rules from LOCAL_STATIC_ANDROID_LIBRARIES" 2018-02-09 18:00:11 +00:00
Treehugger Robot
9963b1af06 Merge "Don't use the same temp directory to uncompress dex" 2018-02-09 07:22:24 +00:00
Colin Cross
18fae7a32e Move to-upper and to-lower to definitions.mk
So they can be used by art/test/Android.run-test.mk.

Also remove the line wrapping, which was inserting extra characters
at the beginning of the result, and add a sanity check.

Bug: 26275726
Test: no change to out/build-hikey960-test-art.ninja
Change-Id: I35b54c258a1dc76bb1a8a758ec4a08915a2b226d
2018-02-08 16:03:17 -08:00
Dan Willemsen
df5d7da7d8 Propagate proguard rules from LOCAL_STATIC_ANDROID_LIBRARIES
Packages would use proguard rules from their
LOCAL_STATIC_ANDROID_LIBRARIES, but other libraries wouldn't propagate
the rules from their LOCAL_STATIC_ANDROID_LIBRARIES.

Bug: 72969557
Test: m
Change-Id: I514af02627d78c48cf6cd08d4b3c17911c6bac2f
2018-02-08 15:31:02 -08:00
Nan Zhang
f12aec3ca2 Fixed pdk build error for pi-release
due to missing header.jar, build was broken with error:
"android_stubs_current_intermediates/classes-header.jar needed by
android-support-annotations_intermediates/classes-turbine.jar,
missing and no known rule to make it"

Bug: b/72961456
Test: after check-in, I will download platform.zip to built it again.
Change-Id: I32ac8d8713ca31d27de42f87bde72185609d270c
2018-02-08 14:14:32 -08:00
Victor Hsieh
7aecf33efd Don't use the same temp directory to uncompress dex
This was ok for apk because they are in different parent directory.

Test: marlin built
Bug: 63920015
Bug: 30972906
Change-Id: I5ed00824fda9e7e0a99c825402753c21a06ba6c5
2018-02-08 13:24:56 -08:00
Yi Kong
b5751e4bd7 Merge "Compiler-rt libraries now use i386 instead of i686" 2018-02-08 08:21:54 +00:00
Justin Yun
fbcc2ad22e Revert "PRODUCT_TREBLE_LINKER_NAMESPACES must be true for BOARD_VNDK_VERSION"
This reverts commit 69ae572779.

Reason for revert: Build breaks on aosp_car

Change-Id: I9c7f0eedf8ea8fb3b4e14dc2024dea376cc14093
2018-02-08 07:06:13 +00:00
Yi Kong
cbcf11cba0 Compiler-rt libraries now use i386 instead of i686
Since Clang-4579689, crt libraries use i386 instead of i686. Update the
hardcoded paths to the new names.

Bug: 72942266
Test: N/A
Change-Id: I24f8f5742ac2fecd374fdaa3be8a11f410d31cbf
2018-02-08 14:08:44 +08:00
Justin Yun
69ae572779 PRODUCT_TREBLE_LINKER_NAMESPACES must be true for BOARD_VNDK_VERSION
If PRODUCT_TREBLE_LINKER_NAMESPACES is not true when
BOARD_VNDK_VERSION is defined, report a build error.
To enable VNDK, linker namespace must be configured.

Bug: 72704254
Test: Try to build with one of them is missing
Change-Id: I804704e2f48fa44c8f998183508741d5cc40e4ce
2018-02-08 05:53:48 +00:00
Jaekyun Seok
c227ce7c25 Enable BOARD_PROPERTY_OVERRIDES_SPLIT_ENABLED for full-treble products
BOARD_PROPERTY_OVERRIDES_SPLIT_ENABLED can be true only if early-mount of
partitions is supported. But the early-mount must be supported for full
treble products, and so BOARD_PROPERTY_OVERRIDES_SPLIT_ENABLED should be
set by default for full treble products.

Additionally this CL sets ro.vndk.version regardless of
BOARD_PROPERTY_OVERRIDES_SPLIT_ENABLED.

Bug: 73078796
Test: tested with walleye
Change-Id: Icfe1b6957b55b0f9261d34d7e92db3dc5073cb58
2018-02-08 11:49:16 +09:00
Treehugger Robot
058d6c2d1e Merge changes from topic "vintf_matrix_sepolicy"
* changes:
  core/config.mk: Add PLATFORM_SEPOLICY_COMPAT_VERSIONS
  Move PLATFORM_SEPOLICY_VERSION from system/sepolicy/Android.mk
2018-02-07 22:32:44 +00:00
Simran Basi
a132154c18 build: Default test modules to null-suite
The LOCAL_COMPATIBILITY_SUITE tag is used to package tests and
auto-generate test configs for use in the test infrastructure
and locally by atest.

Rather than update hundreds of makefiles across the tree, this
change adds significant atest support to many unittests.

Bug: 73000943, 72969679, 71510529
Test: `atest NotificationStressTests` works as expected.
Change-Id: I1b0a779b8366aee4b4df98181267f72fcb68916a
2018-02-07 11:57:22 -08:00
Sundong Ahn
7a02001fa9 Change the naming policy of system_$(VER)
The module name of system_$(VER) prebuilt file is system_sdk_v$(VER).
But this is inconsistent with sdk_v$(LOCAL_SDK_VERSION) in prebuilts/sdk.
So, system_sdk_v$(VER) is changed to sdk_vsystem_$(VER) to use the same
naming policy.

Bug: 72031391
Test: build
Change-Id: I379c0f9aa0de7407489eeec2b07ee7727e81d69d
2018-02-07 03:37:24 +00:00
Treehugger Robot
9ffbc10126 Merge "LOCAL_HOST_REQUIRED_MODULES support" 2018-02-07 01:57:18 +00:00
Isaac Chen
b943fb63bf Merge "Add ro.vendor.product.cpu.* to vendor/build.prop" 2018-02-07 01:57:12 +00:00
Treehugger Robot
c82c0a81ec Merge "Support LOCAL_SDK_VERSION := core_current" 2018-02-06 22:37:16 +00:00
Simran Basi
893098b06c LOCAL_HOST_REQUIRED_MODULES support
Allows target modules to directly request host modules they
require to be built and installed as well.

Bug: 72761631
Test: Added LOCAL_HOST_REQUIRED_MODULES to a target apk test and
      the host module was built.

Change-Id: I5aca11b3ba8b54676f068d337f1c9ba0e0b01997
2018-02-06 14:18:45 -08:00
Treehugger Robot
9f573a420e Merge "Replace $(shell find | sort) with $(sort $(shell find))" 2018-02-06 21:21:08 +00:00
Stephen Hines
f733f896d3 Merge "Switch to clang-4579689." 2018-02-06 18:35:41 +00:00
Treehugger Robot
08ba09ed7f Merge "Clear local robolectric testing variables" 2018-02-06 16:55:09 +00:00
Dan Willemsen
be0b6cee4f Replace $(shell find | sort) with $(sort $(shell find))
Kati's find emulator doesn't understand "| sort", so use use the make
function instead so that we can emulate the find commands.

 before: *kati*: shell time (regen): 1.316989 / 187
 after:  *kati*: shell time (regen): 1.249748 / 184

The time has a lot of variance, the important change is the reduction in
number of shell commands. Kati has other issues with some of these (it
doesn't support find's implicit -a), which is why it only goes down by
3. I'll be fixing Kati separately to handle those cases.

Test: diff out/build-aosp_taimen.ninja before&after
Change-Id: I5c8c2993f01a8a6af84963e903a8a0c186a61e82
2018-02-05 23:07:58 -08:00