OSDN Git Service
Dan Willemsen [Fri, 5 Feb 2016 18:12:20 +0000 (18:12 +0000)]
Merge "Fix unused src tracking for generated .o files"
Colin Cross [Thu, 4 Feb 2016 23:49:41 +0000 (23:49 +0000)]
Merge "Don't build otatools for PDK"
Chih-hung Hsieh [Thu, 4 Feb 2016 23:22:19 +0000 (23:22 +0000)]
Merge "Remove USE_CLANG_PLATFORM_BUILD in BoardConfig.mk"
Colin Cross [Thu, 4 Feb 2016 23:13:31 +0000 (23:13 +0000)]
Merge "Build .toc when building a module by name"
Colin Cross [Thu, 4 Feb 2016 23:09:23 +0000 (15:09 -0800)]
Don't build otatools for PDK
Change-Id: I5e73d103300ac938f80b3ff0af978c123d649fed
Dan Willemsen [Thu, 4 Feb 2016 22:18:48 +0000 (14:18 -0800)]
Fix unused src tracking for generated .o files
*.o files that are passed in via LOCAL_GENERATED_SOURCES are added
directly to all_objects, they are not mixed with the normal_objects that
we track. So omit them from they my_gen_src_files list so that we don't
warn that they're unused.
Change-Id: I94b85504032e70fbcc00207d6200557700dd0a89
Colin Cross [Thu, 4 Feb 2016 21:28:04 +0000 (13:28 -0800)]
Build .toc when building a module by name
Building a module by name with make <module name>, or with mm or mma
through all_modules, should also build the .toc file so that future uses
of mm on modules that depend on this one can find the .toc file.
Bug:
26936761
Change-Id: Id0c592f0860a10b732b2b5b13c7e967c9bcb1c6b
Stephen Hines [Thu, 4 Feb 2016 19:46:07 +0000 (19:46 +0000)]
Merge "Fix LLVM_RTLIB_PATH for new prebuilts."
Stephen Hines [Thu, 4 Feb 2016 19:43:41 +0000 (11:43 -0800)]
Fix LLVM_RTLIB_PATH for new prebuilts.
This moved from lib/ to lib64/, but wasn't noticed because no one builds
with the profiler on by default.
Change-Id: I0155263b4a50437ea0864338fb34baefc3df59d2
Chih-Hung Hsieh [Thu, 4 Feb 2016 18:55:56 +0000 (10:55 -0800)]
Remove USE_CLANG_PLATFORM_BUILD in BoardConfig.mk
Use global default USE_CLANG_PLATFORM_BUILD set in core/envsetup.mk,
or user provided environment variable USE_CLANG_PLATFORM_BUILD.
BUG:
26102335
Change-Id: I7e12219a60f36bb44797bb028b4a5873a67c9210
Stephen Hines [Thu, 4 Feb 2016 07:34:05 +0000 (07:34 +0000)]
Merge "Switch to clang-
2577113."
Dan Willemsen [Wed, 3 Feb 2016 18:57:07 +0000 (18:57 +0000)]
Merge changes I2e00bb66,I00890229
* changes:
Do not diff .odex files
Diff libpac.so now that it is deterministic
Dan Willemsen [Wed, 3 Feb 2016 18:46:39 +0000 (10:46 -0800)]
Do not diff .odex files
They still are not deterministic -- only the boot images were made
deterministic (.oat/.art).
Bug:
26956807
Change-Id: I2e00bb6662b4c8d184c48ef9aa34b39142c94893
Dan Willemsen [Wed, 3 Feb 2016 18:45:25 +0000 (10:45 -0800)]
Diff libpac.so now that it is deterministic
Bug:
25348136
Change-Id: I008902299281b5ddd55a9b8c405d53eea2d56c8b
Colin Cross [Tue, 2 Feb 2016 20:34:30 +0000 (20:34 +0000)]
Merge "Move PDK selection into config.mk"
Dan Willemsen [Tue, 2 Feb 2016 17:56:57 +0000 (17:56 +0000)]
Merge "Fix typo"
Stephen Hines [Fri, 22 Jan 2016 23:12:49 +0000 (15:12 -0800)]
Switch to clang-
2577113.
Bug: http://b/
25282907
This is actually based on clang/LLVM upstream revision r256229.
Change-Id: I335be68f196e5b55ac2816fa854e97b841b54240
Sebastien Hertz [Tue, 2 Feb 2016 07:31:37 +0000 (07:31 +0000)]
Merge "Support code coverage with Jack"
Dan Willemsen [Tue, 2 Feb 2016 05:40:17 +0000 (21:40 -0800)]
Fix typo
This was producing a number of unused source warnings for prebuilt files
using LOCAL_SRC_FILES_<arch>.
Change-Id: I48d1face7baf642f3ef17f957448ccb73788765f
Dan Willemsen [Tue, 2 Feb 2016 05:18:05 +0000 (05:18 +0000)]
Merge "Track ObjC object mapping"
Dan Willemsen [Tue, 2 Feb 2016 02:55:23 +0000 (18:55 -0800)]
Track ObjC object mapping
Objective-C .m/.mm files were not being tracked, so they were showing
up as unused source files (on Darwin). They were also triggering an
internal build system warning because the new object list did not
match the current list.
Change-Id: I01fff8c5587fe168106c60782080d60744311f6f
Colin Cross [Tue, 26 Jan 2016 23:59:50 +0000 (15:59 -0800)]
Move PDK selection into config.mk
config.mk needs to know TARGET_BUILD_PDK in order to select prebuilt
tools. Move the selection of TARGET_BUILD_PDK into config.mk.
Change-Id: I1f73c92917887f27259b2db64b3779a2fe0df162
Shinichiro Hamaji [Mon, 1 Feb 2016 23:04:44 +0000 (23:04 +0000)]
Merge "Use dependency files generated by llvm-rs-cc for Java"
Dan Willemsen [Mon, 1 Feb 2016 22:38:53 +0000 (22:38 +0000)]
Merge "Diff .art/.oat/.odex files now that they are deterministic"
Dan Willemsen [Mon, 1 Feb 2016 21:38:25 +0000 (13:38 -0800)]
Diff .art/.oat/.odex files now that they are deterministic
This also whitelists the ro.build.user property, which may change based
on host username.
Bug:
26687569
Change-Id: I8f3244c2325dd80a7961c474655f0c50670d1b46
Colin Cross [Mon, 1 Feb 2016 18:57:50 +0000 (18:57 +0000)]
Merge "Don't force color diagnostics outside of ninja"
Shinichiro Hamaji [Mon, 1 Feb 2016 08:59:01 +0000 (17:59 +0900)]
Use dependency files generated by llvm-rs-cc for Java
This is a reland of
4c474617d491fe98fa02571349138fb757959232
This time, we use awk instead of sed, and the script works
on Mac.
For C++ code llvm-rs-cc defines two targets but it defines
three targets for Java. The sed script was updated to handle
both cases appropriately.
Bug:
26839129
Change-Id: I1bca7d253764554d552950e03deedabaa9b7f17e
Shinichiro Hamaji [Mon, 1 Feb 2016 08:16:42 +0000 (08:16 +0000)]
Merge "Revert "Use dependency files generated by llvm-rs-cc for Java""
Shinichiro Hamaji [Mon, 1 Feb 2016 08:08:26 +0000 (08:08 +0000)]
Revert "Use dependency files generated by llvm-rs-cc for Java"
This reverts commit
4c474617d491fe98fa02571349138fb757959232.
Change-Id: I66c46360d0ccf927c807ddd5cfbc56cbd97ed4a2
Shinichiro Hamaji [Mon, 1 Feb 2016 07:50:32 +0000 (07:50 +0000)]
Merge "Use dependency files generated by llvm-rs-cc for Java"
Shinichiro Hamaji [Mon, 1 Feb 2016 07:50:01 +0000 (07:50 +0000)]
Merge "Use .KATI_DEPFILE for files generated by aidl-java"
Dan Willemsen [Sat, 30 Jan 2016 02:44:27 +0000 (02:44 +0000)]
Merge "Use Jan 1 2009 as timestamp in APKs and OTA update ZIPs."
Dan Willemsen [Sat, 30 Jan 2016 02:44:12 +0000 (02:44 +0000)]
Merge "Order objects based on LOCAL_SRC_FILES and LOCAL_GENERATED_SOURCES"
Alex Klyubin [Fri, 29 Jan 2016 23:58:27 +0000 (23:58 +0000)]
Merge "Revert "Sign APKs using SHA-256 instead of SHA-1 when possible." This is breaking CTS."
Alex Klyubin [Fri, 29 Jan 2016 23:56:44 +0000 (23:56 +0000)]
Revert "Sign APKs using SHA-256 instead of SHA-1 when possible." This is breaking CTS.
This reverts commit
c2a36afd6772d9286e8071693f80648beef763a3.
Change-Id: I4389bf99aeb213198c1c501ba9462bd4a4540d0a
Lee Campbell [Fri, 29 Jan 2016 23:42:19 +0000 (23:42 +0000)]
Merge "brillo: Remove dependency on java for Brillo"
Lee Campbell [Fri, 29 Jan 2016 00:12:01 +0000 (16:12 -0800)]
brillo: Remove dependency on java for Brillo
Brillo does not require Java. Add a JAVA_NOT_REQUIRED
flag to the build system to make the jdk requirment optional
Also don't build signapk for Brillo
BUG:
25281898
Change-Id: I31e68cc7d076bf6c234699c77c0ea1ea428be4f5
Alex Klyubin [Fri, 29 Jan 2016 21:06:50 +0000 (13:06 -0800)]
Use Jan 1 2009 as timestamp in APKs and OTA update ZIPs.
Previously, the timestamp was one hour ahead of NotBefore of the
signer's certificate, adjusted for the current timezone. With this
change the MS-DOS timestamp in output APK/ZIP files is
Jan 1 2009 00:00:00.
Bug:
26864066
Change-Id: Id6263c38ac7042489ab695454f8e0fb2d85a3958
Alex Klyubin [Fri, 29 Jan 2016 20:17:49 +0000 (20:17 +0000)]
Merge "Sign APKs using SHA-256 instead of SHA-1 when possible."
Alex Klyubin [Wed, 13 Jan 2016 18:32:47 +0000 (10:32 -0800)]
Sign APKs using SHA-256 instead of SHA-1 when possible.
This changes the build system to provide the signapk tool with the
minSdkVersion of the APK being signed. signapk in turn will then use
SHA-256 instead of SHA-1 if minSdkVersion is 18 (JB MR2) or higher
(see
c2c49ed0c13846f7f96249c7419971dfcddc9215).
To avoid increasing incremental OTA update package sizes for already
released platforms, release build scripts disable the above logic when
signing target files ZIPs for pre-N platforms.
Bug:
25643280
(cherry picked from commit
de5bc04717505ad0e5b55605bccf43974f4c5c7a)
Change-Id: I4b100750e47788ab6ed897a0a5abfd33542e8676
Shinichiro Hamaji [Thu, 28 Jan 2016 08:00:33 +0000 (17:00 +0900)]
Use dependency files generated by llvm-rs-cc for Java
This is similar to
2e45fd036ad308cfa6094b181a67f97002ebf10f
but this CL is for generated java code.
For C++ code llvm-rs-cc defines two targets but it defines
three targets for Java. The sed script was updated to handle
both cases appropriately.
Bug:
26839129
Change-Id: I5c7705c67f3c65c4c14f74558e603f8ec9f35879
Shinichiro Hamaji [Thu, 28 Jan 2016 07:10:00 +0000 (16:10 +0900)]
Use .KATI_DEPFILE for files generated by aidl-java
Bug:
26839129
Change-Id: Ief611969b28aea3bb12097ba91d40f3e5010d647
Dan Willemsen [Wed, 20 Jan 2016 04:07:08 +0000 (20:07 -0800)]
Order objects based on LOCAL_SRC_FILES and LOCAL_GENERATED_SOURCES
We have been reordering objects to the linker based on how they were
generated. In soong, they're ordered based on the order listed in the
src_files.
Keep track of which source files created which object files so that we
can create the ordered list. Optionally change the order, based on
BINARY_OBJECTS_ORDER. That way we can compare make and soong builds.
Since we're keeping track of the used source files, warn when an entry
in LOCAL_SRC_FILES is not used. (whether it is an unused file like a
header, or a typo)
LOCAL_GENERATED_SOURCES is not verified, since it is valid to add
headers and other files in that list (to set up dependencies).
Change-Id: I1dfbbb3aa570c11c1db3b7133e46ed0b8c3b8989
Sebastien Hertz [Thu, 19 Nov 2015 16:53:00 +0000 (17:53 +0100)]
Support code coverage with Jack
Building an app with Jack and with the environment variable
EMMA_INSTRUMENT_STATIC set to true will apply code coverage
onto the app targeting Jacoco.
Bug:
20115492
Change-Id: Ief3640fa3faa466f7f6aaa9739e06d3db24110a0
Alex Klyubin [Wed, 27 Jan 2016 17:49:40 +0000 (17:49 +0000)]
Merge "Revert "Sign APKs using SHA-256 instead of SHA-1 when possible.""
Alex Klyubin [Wed, 27 Jan 2016 17:45:42 +0000 (17:45 +0000)]
Revert "Sign APKs using SHA-256 instead of SHA-1 when possible."
This reverts commit
74df828cb574a6f30be9b9dcf286773ca1835f72. This commit is breaking a build, again...
Change-Id: I2df561d68302ba4c83e90a64a7bf203645033a3b
Alex Klyubin [Wed, 27 Jan 2016 16:55:16 +0000 (16:55 +0000)]
Merge "Sign APKs using SHA-256 instead of SHA-1 when possible."
Neil Fuller [Wed, 27 Jan 2016 13:25:43 +0000 (13:25 +0000)]
Merge "Doclava template changes associated with default methods"
Neil Fuller [Thu, 14 Jan 2016 22:44:11 +0000 (22:44 +0000)]
Doclava template changes associated with default methods
The ordering of method declaration modifiers changed slightly
to reflect the ordering given in:
http://docs.oracle.com/javase/specs/jls/se8/html/jls-8.html#jls-8.4.3
http://docs.oracle.com/javase/specs/jls/se8/html/jls-9.html#jls-9.4
Bug:
26241119
(cherry-picked from commit
ca59875e12e47162fc765bc43d6651b555c04d81)
Change-Id: I8489ad5010fc811b22167af50ba29221aac8b6cb
Shinichiro Hamaji [Wed, 27 Jan 2016 08:36:04 +0000 (08:36 +0000)]
Merge "Write clean_steps.mk with multiple commands"
Shinichiro Hamaji [Wed, 27 Jan 2016 05:59:56 +0000 (14:59 +0900)]
Write clean_steps.mk with multiple commands
$(INTERNAL_CLEAN_STEPS) could be too big to be fit in a single
command line.
Bug:
26707439
Change-Id: Ieed6c772980d06c2418a9246b025bca7a6f568aa
Alex Deymo [Wed, 27 Jan 2016 03:28:53 +0000 (03:28 +0000)]
Merge "Place the META/ dir first in the target_files.zip."
Alex Deymo [Wed, 27 Jan 2016 02:47:44 +0000 (18:47 -0800)]
Place the META/ dir first in the target_files.zip.
To help early verification of a target_files.zip being uploaded to our
servers, we place the META/ directory first in the .zip file, so checks
against the product_id.txt and product_version.txt don't need to wait
for the whole file to upload.
Note that META/*filesystem_config.txt files are generated and added to
the .zip file at a later point, so they are not included at the
beginning.
Bug:
26806325
TEST=`make dist` and `unzip -l out/dist/edison-target_files-eng.$USER.zip` shows most META/ files first.
Change-Id: I1955645412688f5c7823063ed56606b251daccfd
Kevin Cernekee [Tue, 26 Jan 2016 23:45:37 +0000 (23:45 +0000)]
Merge "README: Update docs"
Alex Klyubin [Wed, 13 Jan 2016 18:32:47 +0000 (10:32 -0800)]
Sign APKs using SHA-256 instead of SHA-1 when possible.
This changes the build system to provide the signapk tool with the
minSdkVersion of the APK being signed. signapk in turn will then use
SHA-256 instead of SHA-1 if minSdkVersion is 18 (JB MR2) or higher
(see
c2c49ed0c13846f7f96249c7419971dfcddc9215).
To avoid increasing incremental OTA update package sizes for already
released platforms, release build scripts disable the above logic when
signing target files ZIPs for pre-N platforms.
Bug:
25643280
Change-Id: I058393e0971d0d6559dbd69ea902754c6c7cab14
(cherry picked from commit
de5bc04717505ad0e5b55605bccf43974f4c5c7a)
Neil Fuller [Tue, 26 Jan 2016 10:33:54 +0000 (10:33 +0000)]
Merge "Revert "Revert "Make OpenJDK 8 the default"""
Shinichiro Hamaji [Tue, 26 Jan 2016 06:36:02 +0000 (06:36 +0000)]
Merge "Use dependency files generated by llvm-rs-cc"
Shinichiro Hamaji [Mon, 25 Jan 2016 09:59:43 +0000 (18:59 +0900)]
Use dependency files generated by llvm-rs-cc
This was a regression since kati has been introduced. This CL
introduces include-depfile function to make it easier to write
Makefiles which work with both make and kati.
As ninja can handle only a single dependency file per a build
rule, now we merge multiple .d files generated by llvm-rs-cc
into a .d file.
Change-Id: Iaf64a8f0523ab98115837e6e06abd50f06620363
Christopher Ferris [Mon, 25 Jan 2016 21:27:57 +0000 (21:27 +0000)]
Merge "Add libc_malloc_debug to the always build list."
Josh Gao [Mon, 25 Jan 2016 18:23:35 +0000 (18:23 +0000)]
Merge "Error out if MALLOC_IMPL is defined."
Alex Klyubin [Mon, 25 Jan 2016 17:19:02 +0000 (17:19 +0000)]
Merge "Revert "Sign APKs using SHA-256 instead of SHA-1 when possible.""
Alex Klyubin [Mon, 25 Jan 2016 17:17:09 +0000 (17:17 +0000)]
Revert "Sign APKs using SHA-256 instead of SHA-1 when possible."
This reverts commit
de5bc04717505ad0e5b55605bccf43974f4c5c7a because it's breaking some builds. Turns out some APKs have multiple sdkVersion attributes returned by aapt.
Change-Id: I013d6ef5eac473dd3900e0b9edf4c32cdc838bab
Neil Fuller [Mon, 25 Jan 2016 17:12:41 +0000 (17:12 +0000)]
Revert "Revert "Make OpenJDK 8 the default""
Reapply the switch to JDK 8 on aosp/master.
This reverts commit
85bddfdedffb425d85657314591a57191113806b.
Change-Id: If2e8733ba78b007d37914c0512cd6be1bd4c1e69
Neil Fuller [Mon, 25 Jan 2016 17:11:12 +0000 (17:11 +0000)]
Merge "Revert "Make OpenJDK 8 the default""
Neil Fuller [Mon, 25 Jan 2016 17:04:14 +0000 (17:04 +0000)]
Revert "Make OpenJDK 8 the default"
Temporary revert to help out Brillo folks.
It will be resubmitted tomorrow.
This reverts commit
4495f6afb8c23950c24dc9ee114050582da08f05.
Change-Id: Id378c7d3a6e72e9be50f9404b19d5763568987a5
Alex Klyubin [Mon, 25 Jan 2016 16:42:27 +0000 (16:42 +0000)]
Merge "Sign APKs using SHA-256 instead of SHA-1 when possible."
Neil Fuller [Mon, 25 Jan 2016 10:45:34 +0000 (10:45 +0000)]
Merge "Make OpenJDK 8 the default"
Neil Fuller [Wed, 16 Dec 2015 18:59:08 +0000 (18:59 +0000)]
Make OpenJDK 8 the default
To return to OpenJDK 7:
export LEGACY_USE_JAVA7=true
And run envsetup.sh/lunch again.
Bug:
25786468
Change-Id: I8e00591a24d13e3b8b6baaafe0fdff6536c58770
Stephen Hines [Fri, 22 Jan 2016 23:22:44 +0000 (23:22 +0000)]
Merge "Add an RS_CLANG variable as well for RenderScript."
Stephen Hines [Fri, 22 Jan 2016 23:11:34 +0000 (15:11 -0800)]
Add an RS_CLANG variable as well for RenderScript.
Change-Id: I33a73c4c2b19aa17bc18a64c92a86565111de3d0
Stephen Hines [Fri, 22 Jan 2016 21:20:19 +0000 (21:20 +0000)]
Merge "Add clang rules for RS_LLVM_* tools."
Josh Gao [Fri, 22 Jan 2016 19:24:59 +0000 (11:24 -0800)]
Error out if MALLOC_IMPL is defined.
Bug: http://b/
26390299
Change-Id: Icd3ce6853c8207b1a9ce1f9d546a61d5b113f15a
James Hawkins [Fri, 22 Jan 2016 18:09:05 +0000 (18:09 +0000)]
Merge "bootstat: Add bootstat to the embedded target to support logging boot time across devices."
Tao Bao [Fri, 22 Jan 2016 17:23:28 +0000 (17:23 +0000)]
Merge "Generate OTA packages for A/B update."
Stephen Hines [Fri, 22 Jan 2016 07:50:53 +0000 (23:50 -0800)]
Add clang rules for RS_LLVM_* tools.
This change adds new variables for RS_LLVM_* tools, which correspond
to the version of LLVM checked in currently to external/, instead of
mapping to the latest host prebuilts. This will help prevent version
differences for newer IR generated by the updated host prebuilts, which
then might not be readable with the on-device LLVM bits we build from
external/.
Change-Id: I6c7b0fa9082e9c8244cc508cb23960569a057740
Alex Klyubin [Fri, 22 Jan 2016 04:07:45 +0000 (04:07 +0000)]
Merge "Make signapk sign using APK Signature Scheme v2."
Tao Bao [Fri, 22 Jan 2016 01:28:30 +0000 (01:28 +0000)]
Merge "CleanSpec: Clean up $(PRODUCT_OUT)/recovery/root/sdcard."
Tao Bao [Fri, 22 Jan 2016 01:12:59 +0000 (17:12 -0800)]
CleanSpec: Clean up $(PRODUCT_OUT)/recovery/root/sdcard.
Incremental build going across CL in [1] needs to remove the old
symlink to avoid hitting mkdir error.
[1]: commit
3f56a330412b56212acc5a9ed19b747c8943b7f2
Change-Id: Iff62ed55eb2782ba3e1e9b6de39a691de2427384
James Hawkins [Thu, 21 Jan 2016 23:39:45 +0000 (15:39 -0800)]
bootstat: Add bootstat to the embedded target to support logging boot
time across devices.
Bug:
21724738
Change-Id: I165e8597103ea235a0826e321a1658823c4b4664
Colin Cross [Thu, 21 Jan 2016 23:36:26 +0000 (23:36 +0000)]
Merge "Set flag when using sdk tools in place"
Tao Bao [Thu, 21 Jan 2016 22:37:46 +0000 (22:37 +0000)]
Merge "Makefile: Fix the location for payload signing key."
Tao Bao [Thu, 21 Jan 2016 22:28:50 +0000 (14:28 -0800)]
Makefile: Fix the location for payload signing key.
CL in [1] put it in a wrong path.
[1] commit
38812d684b73b4e2bbd2a4277fd9b0d8b3c7a810
Bug:
25715402
Change-Id: I01a105888844011eee083d5f4d694223599fa067
Dan Willemsen [Thu, 21 Jan 2016 22:31:11 +0000 (22:31 +0000)]
Merge "Pass the arm/thumb cflags to assembly files"
Tao Bao [Thu, 21 Jan 2016 22:21:31 +0000 (22:21 +0000)]
Merge "Makefile: Add the payload public key into system image."
Alex Klyubin [Wed, 13 Jan 2016 18:32:47 +0000 (10:32 -0800)]
Sign APKs using SHA-256 instead of SHA-1 when possible.
This changes the build system to provide the signapk tool with the
minSdkVersion of the APK being signed. signapk in turn will then use
SHA-256 instead of SHA-1 if minSdkVersion is 18 (JB MR2) or higher
(see
c2c49ed0c13846f7f96249c7419971dfcddc9215).
To avoid increasing incremental OTA update package sizes for already
released platforms, release build scripts disable the above logic when
signing target files ZIPs for pre-N platforms.
Bug:
25643280
Change-Id: I048393e0971d0d6559dbd69ea902754c6c7cab14
Christopher Wiley [Thu, 21 Jan 2016 18:19:05 +0000 (18:19 +0000)]
Merge "Separate aidl dependencies from compiler dependencies"
Christopher Wiley [Thu, 21 Jan 2016 18:17:29 +0000 (18:17 +0000)]
Merge "Keep aidl generated C++ inside the generated folder"
Tao Bao [Thu, 21 Jan 2016 04:58:20 +0000 (20:58 -0800)]
Makefile: Add the payload public key into system image.
For non-Brillo devices using AB update, add the payload signing public
key to the system image
(system/etc/update_engine/update-payload-key.pub.pem).
We first need to sign the payload with some private key, and pack it
into an Android OTA package. Then the whole zip package will be signed
again with the device key. This is to comply with the two existing OTA
flows (Android and CrOS).
We use the same device key to do the two signings, but update_engine
expects the key in RSA public key format. This CL extracts the public
key from x509 certificate and adds it to the system image.
Bug:
25715402
Change-Id: I6f6c1148534250ddb6d9e554175c7a35bceda99e
Colin Cross [Thu, 21 Jan 2016 00:08:49 +0000 (16:08 -0800)]
Set flag when using sdk tools in place
New version of build/ execute the tools from prebuilts/sdk/tools in
place, old versions copy them to $(HOST_OUT_EXECUTABLES). build/ and
prebuilts/sdk often use mixed versions, set a flag that
prebuilts/sdk/tools/Android.mk can use to determine when it is using an
old build/ directory.
Change-Id: Iad2f96c35203fd3b0976946d229bfa8ab4acb150
Alex Klyubin [Wed, 2 Dec 2015 02:12:09 +0000 (18:12 -0800)]
Make signapk sign using APK Signature Scheme v2.
APKs are now signed with the usual JAR signature scheme and then
with the APK Signature Scheme v2.
APK Signature Scheme v2 is a whole-file signature scheme which aims
to protect every single bit of the APK as opposed to the JAR signature
scheme which protects only the names and uncompressed contents of ZIP
entries.
The two main goals of APK Signature Scheme v2 are:
1. Detect any unauthorized modifications to the APK. This is achieved
by making the signature cover every byte of the APK being signed.
2. Enable much faster signature and integrity verification. This is
achieved by requiring only a minimal amount of APK parsing before
the signature is verified, thus completely bypassing ZIP entry
decompression and by making integrity verification parallelizable
by employing a hash tree.
Bug:
25794543
Change-Id: I275d2a6d0a98504891985309b9dfff2e0e44b878
Alex Klyubin [Wed, 20 Jan 2016 21:02:29 +0000 (21:02 +0000)]
Merge "Command-line flag to disable signing with APK Signature Scheme v2."
Alex Klyubin [Wed, 20 Jan 2016 20:51:28 +0000 (12:51 -0800)]
Command-line flag to disable signing with APK Signature Scheme v2.
This change makes signapk not reject the --disable-v2 command-line
flag which may be used by build scripts in some branches. The flag
is currently ignored.
This change is landed separately from the actual support for APK
Signature Scheme v2 because of unbundled branches which use prebuilt
versions of signapk.
Bug:
25794543
Change-Id: I900966244b8b6296b1f443bf98830cc7f7cc81a8
Christopher Wiley [Tue, 19 Jan 2016 17:26:10 +0000 (09:26 -0800)]
Separate aidl dependencies from compiler dependencies
Both aidl and clang/gcc were putting their dependencies in the same
place. Move aidl's dependencies to a file ending with .aidl.P rather
than the compiler's .P.
While here, inform kati that we have these special dep files.
Bug:
26409006
Test: Rebuild, note both files being generated
Change-Id: I29d2eea822235d60713c2059f3a314e475eb5aa3
Christopher Wiley [Tue, 19 Jan 2016 16:58:35 +0000 (08:58 -0800)]
Keep aidl generated C++ inside the generated folder
Transform ../ to dotdot/ for C++ generateds from .aidl source files.
This forces us to use one layer of indirection to calculate the build
rules for .aidl files, since we can no longer use a pattern rule.
This was tested by modifying system/tools/aidl's Android.mk to refer to
its .aidl files by going up two directories and then repeating the
directories again. When I print the build rules with $(info) I see that
dotdot/ appears in appropriate places (C++ paths, but not .aidl paths).
Bug:
26407018
Test: Described above.
Change-Id: I397c9d10408c0c66d8b5a247a1f34eb4bf4f74ce
Tao Bao [Thu, 7 Jan 2016 21:03:56 +0000 (13:03 -0800)]
Generate OTA packages for A/B update.
It calls brillo_update_payload to generate the payload for A/B update.
And packages the payload according to Android OTA package format.
Note that it only supports generating full/incremental OTAs with this
CL. Signing for release may not work properly at the moment.
Bug:
25715402
Change-Id: I4ac8505bacad28a572a9320dc8b52dd0f1ce47f5
Chih-hung Hsieh [Tue, 19 Jan 2016 23:40:56 +0000 (23:40 +0000)]
Merge "Set USE_CLANG_PLATFORM_BUILD to default true."
Tao Bao [Tue, 19 Jan 2016 22:57:25 +0000 (22:57 +0000)]
Merge "Makefile: Pack brillo_update_payload and shflags into otatools."
Tao Bao [Tue, 19 Jan 2016 22:47:17 +0000 (14:47 -0800)]
Makefile: Pack brillo_update_payload and shflags into otatools.
brillo_update_payload and shflags are the scripts to generate A/B OTA
package (payload). Include them into otatools.zip.
brillo_update_payload was already included in previous CL. Move it to
the folder for executables.
Bug:
25715402
Change-Id: Idf9c05767c24c55d058cc30e696f06d4eb5fd53b
Dan Willemsen [Sat, 16 Jan 2016 00:38:46 +0000 (16:38 -0800)]
Pass the arm/thumb cflags to assembly files
This effectively changes the default instruction set of assembly files
from arm to thumb in order to match the default for C/C++.
Change-Id: I8684f144a1195b53b3e0fdd04cacf77f6a131c7e
Chih-Hung Hsieh [Tue, 19 Jan 2016 19:43:44 +0000 (11:43 -0800)]
Set USE_CLANG_PLATFORM_BUILD to default true.
BUG:
26102335
Change-Id: I3b9fa2dfbee361410caf163147945ab448bb8ddf