Commit Graph

8674 Commits

Author SHA1 Message Date
Alex Klyubin 9667b18f23 Make signapk use Conscrypt.
This makes the signapk tool use Conscrypt (where possible) instead of
the platform-default JCA providers and the Bouncy Castle JCA provider.
This speeds up (by 10-30%) APK and OTA update signing because
Conscrypt's crypto primitives are backed by BoringSSL.

Previously, the signapk tool consisted only of the signapk.jar.
Because Conscrypt is backed by native code, signapk now consists of
signapk.jar and crypto_openjdk_jni shared library. This requires that
users of the tool be updated to provide a suitable -Djava.library.path
argument to the Java runtime. This change updates all known users of
the tool inside the Android source tree to do so.

Bug: 26097626
Change-Id: I8411b37d7f771ed99269751a3007dff103083552
2015-12-11 08:36:42 -08:00
Chih-Hung Hsieh 3c8036da53 Change USE_CLANG_PLATFORM_BUILD default to true.
When USE_CLANG_PLATFORM_BUILD is not set, default will be clang/llvm.
USE_CLANG_PLATFORM_BUILD=false can be used to select gcc as default.

BUG: 23163853
BUG: 26102335

Change-Id: I00604c2aef4849e8c3505b2c4002eb1c46cd1fd1
2015-12-10 14:41:55 -08:00
Alex Deymo 6950168f1d Merge "Rename libext2 host libraries to standard suffix." 2015-12-10 22:18:34 +00:00
Alex Deymo 41ac44ed2b Rename libext2 host libraries to standard suffix.
libext2_uuid_host was renamed to libext2_uuid-host to match the
"-host" suffix used in most libraries.

Bug: 24619596
TEST=make dist

Change-Id: Ic5faccb4d5fdbbf3d3bba6f4a35cf99d4961bb54
2015-12-09 18:02:56 -08:00
Dan Albert 8dca15f287 Fix the mips build.
The linker can't do --hash-style=gnu for mips.

Change-Id: I66a77067f8be6fc92ca686d3e6e159beb72cf76b
2015-12-09 16:26:20 -08:00
Dan Albert 2ad9079305 Merge "Add support for LOCAL_NDK_STL_VARIANT := none." 2015-12-10 00:17:23 +00:00
Dan Albert 0e2e71dc2e Add support for LOCAL_NDK_STL_VARIANT := none.
Sometimes we don't want any STL.

Change-Id: I08b4389b7882702c0e483a1456f7775fe4da1c75
2015-12-09 15:59:17 -08:00
Dan Albert 30cb36ff5e Merge "Build NDK binaries with --hash-style=both." 2015-12-09 23:41:01 +00:00
Dan Albert ee629c9ffb Build NDK binaries with --hash-style=both.
Change-Id: I1c3b7415c654b783c6bb7e38a40d4c279826400f
2015-12-09 14:52:25 -08:00
Yohann Roussel 9214a26cfc Always start jack server before first call to jack
Also install and update the server if necessary.

The target start-jack-server produces no file so it's always built.
Since the dependency is "order only", it doesn't cause force rebuilt of
jack targets after start-jack-server execution.

Bug: 25443108

Change-Id: I1608d87d186694d47307e00337b1905f0b8079c4
2015-12-09 22:00:50 +01:00
Ying Wang 914a568ba0 Merge "Set -bootclasspath to "" if LOCAL_NO_STANDARD_LIBRARIES"
am: 616b8a5370

* commit '616b8a5370e6ad5cb8519fbe2c00eaa6637da260':
  Set -bootclasspath to "" if LOCAL_NO_STANDARD_LIBRARIES
2015-12-08 17:59:55 +00:00
Ying Wang 616b8a5370 Merge "Set -bootclasspath to "" if LOCAL_NO_STANDARD_LIBRARIES" 2015-12-08 17:56:05 +00:00
Elliott Hughes fff2841298 Merge "Revert "enable -fstack-protector-strong""
am: 27ab42654e

* commit '27ab42654ebd5ffdc55bb6b727723e6980649ef9':
  Revert "enable -fstack-protector-strong"
2015-12-07 18:58:25 -08:00
Alex Klyubin fddfc2c604 Merge "Do not run zipalign when building APK (except prebuilts)."
am: b437f58006

* commit 'b437f58006af3d8b15eb3308ab5174da1a7c6c0d':
  Do not run zipalign when building APK (except prebuilts).
2015-12-07 18:58:19 -08:00
Ying Wang 4f0cb0307b Merge "Fix TARGET_ASAN build."
am: 9bbc67b55a

* commit '9bbc67b55ac6876920b3ca5a73673d0a10c3fb52':
  Fix TARGET_ASAN build.
2015-12-07 18:58:12 -08:00
Elliott Hughes 27ab42654e Merge "Revert "enable -fstack-protector-strong"" 2015-12-08 02:54:01 +00:00
Elliott Hughes b8c4a6f1f8 Revert "enable -fstack-protector-strong"
This reverts commit 8765b1035f.

This prevents x86 from booting.

http://b/26046864

Change-Id: Ica3f7e7e639c99fd3158df3643acb49307197881
2015-12-08 02:53:51 +00:00
Ying Wang 4f2f19518e Set -bootclasspath to "" if LOCAL_NO_STANDARD_LIBRARIES
Without this if a Java libraryw with LOCAL_NO_STANDARD_LIBRARIES doesn't
have core-libart in its LOCAL_JAVA_LIBRARIES, it would use core-libart
as bootclasspath but without having dependency on it.

Change-Id: I611a5a5df2bf0ad59e0be50ed1ad1afe8b843e90
(cherry-pick from commit c6a301756c)
2015-12-07 18:50:34 -08:00
Alex Klyubin b437f58006 Merge "Do not run zipalign when building APK (except prebuilts)." 2015-12-07 22:08:14 +00:00
Ying Wang 03b6e8b6c4 Fix TARGET_ASAN build.
Bug: 26044735
Change-Id: I9c6b3b16637ca2d0da4765e896a9f03c1d5dc51c
2015-12-07 10:45:19 -08:00
Nick Kralevich c5c2e60707 Merge "enable -fstack-protector-strong"
am: 2a49aba35b

* commit '2a49aba35b9b9216df1da245f1af13c6faa5a850':
  enable -fstack-protector-strong
2015-12-05 14:23:57 -08:00
Nick Kralevich 2a49aba35b Merge "enable -fstack-protector-strong" 2015-12-05 22:20:46 +00:00
Daniel Micay 8765b1035f enable -fstack-protector-strong
This results in nearly all functions with the possibility of stack
corruption getting stack canaries, because it applies to any function
taking a reference to the frame or with a local array rather than just
the functions with arrays larger than 8 bytes. It was developed for use
in Chrome (and Chrome OS) and has also been adopted by various other
distributions (Arch, Fedora, Ubuntu, etc).

The code size increase ranges from ~1.5% to ~2.5%, compared to ~0.3% to
~0.7% with the more conservative switch. The increase in the performance
loss is usually minimal. The overall size increase once everything other
than C and C++ code is taken into account is minimal, and it greatly
improves the mitigation of stack buffer overflow vulnerabilities.

https://lwn.net/Articles/584225/

Change-Id: Ie83d381e09d94deb34c5ff142a101ba3d14cf3ba
2015-12-05 01:52:45 -05:00
Ying Wang fe27825ca5 Merge "Gmake doesn\'t like newline in macro expansion result."
am: c7d5e54dfe

* commit 'c7d5e54dfe71766dc60adcf06e6ec1a2b12cdda9':
  Gmake doesn't like newline in macro expansion result.
2015-12-05 00:53:25 +00:00
Ying Wang 427f8c43aa Gmake doesn't like newline in macro expansion result.
When $(call func) in the makefile text expansion includes newline, gmake
reports error "missing separator". But it's fine if the expansion includes
only spaces. That's a bit odd.
This change fixes the "missing separator".

Change-Id: I094e5ae1725699ebfa4ed66544eef037dd68714c
2015-12-04 16:44:03 -08:00
Dan Willemsen a4769d2956 Merge "Sanity check LOCAL_SRC_FILES_EXCLUDE"
am: cc3b2a5854

* commit 'cc3b2a58548832ab7a6620d6b607d315f06dfc06':
  Sanity check LOCAL_SRC_FILES_EXCLUDE
2015-12-04 15:17:58 -08:00
Alex Klyubin 5b826ac609 Do not run zipalign when building APK (except prebuilts).
This changes the build system to no longer run zipalign except for
those prebuilts which do not need to re-signed.

Running zipalign is no longer needed because signapk takes care of
alignment. For those prebuilts which do not need to be re-signed
signapk is not invoked and thus zipalign is still needed because the
prebuilts may not have been aligned properly. This exemption will go
away once prebuilts are properly aligned.

Bug: 25794543
Change-Id: I31f10af80b9baa3c9481cb36f41e5e5046e852f9
2015-12-04 10:15:06 -08:00
Dan Willemsen c29172c333 Sanity check LOCAL_SRC_FILES_EXCLUDE
Error out if there is a file listed in LOCAL_SRC_FILES_EXCLUDE but not in
LOCAL_SRC_FILES. This should catch typos or other mistakes that would
otherwise be missed.

Change-Id: Iaddf575a6ce35238998ac47b59591a7d05fbcd0d
2015-12-03 22:58:39 -08:00
Colin Cross b275dd1623 Merge "Remove extra definition of AIDL"
am: 77f411e116

* commit '77f411e116981ae1de9f060b128e4df0b2facd57':
  Remove extra definition of AIDL
2015-12-03 21:56:25 +00:00
Colin Cross a8b896856a Remove extra definition of AIDL
AIDL is defined in the sometimes-prebuilt tools section, remove the
extra definition that was overriding it.

Change-Id: I677bf46475fd5fd4a9258c77d91ecee806e5f205
2015-12-03 13:33:11 -08:00
Colin Cross 8581e58b3b Merge "Use prebuilt tools in place"
am: 50e0646dbe

* commit '50e0646dbe1fb52918b38c75aefc49d24bfd9a24':
  Use prebuilt tools in place
2015-12-03 20:18:38 +00:00
Dan Willemsen da9c00da5f Enforce linker version-scripts are valid
Currently, if a version script is passed to the linker (using
-Wl,--version-script,...), it is used to limit symbol visibility and
assign symbol versions. But if a symbol is listed in the version script
but is not present in the binary, no error or warning is given.

Pass -Wl,--no-undefined-version to the linker so that it verifies all
(non-wildcard, C) entries in the version script match symbols in the
binary.

Change-Id: I65878931ab61124ae75e2c738cc733adfb107afc
2015-12-02 19:19:04 -08:00
Colin Cross 4e7bf63314 Merge "Provide path to mainDexClasses"
am: 62e99632c6

* commit '62e99632c61ef74fb04cf2bf6e079844e5dd8ae1':
  Provide path to mainDexClasses
2015-12-03 01:13:57 +00:00
Colin Cross fd08247bcf Use prebuilt tools in place
Don't install the prebuilt SDK tools for TARGET_BUILD_APPS builds, just
execute them in place.  Avoids issues with duplicate rules for the
prebuilts and source modules when building with TARGET_BUILD_APPS in a
full platform tree.

Change-Id: I3cdb4f1a8208e8750310a5cc6130657613b683d1
2015-12-02 17:12:38 -08:00
Colin Cross f87e971606 Provide path to mainDexClasses
Set MAINDEXCLASSES to the path to mainDexClasses.

Change-Id: I82532e8ea8dc7349178347e080fa0c63078ca9f5
2015-12-02 16:25:49 -08:00
Ying Wang 79215cdeab Merge "make USER limited to 6 characters when generating BF_BUILD_NUMBER"
am: 88ca8aff3e

* commit '88ca8aff3e4c6f776444ca8267b044b314f6aa0f':
  make USER limited to 6 characters when generating BF_BUILD_NUMBER
2015-12-02 17:53:17 +00:00
wei qiao 6fa82b50f4 make USER limited to 6 characters when generating BF_BUILD_NUMBER
the value of USER is dependent from the compilation environment,so
when compiling one same device project, the BUILD_FINGERPRINT may
exceed 91 characters because ${USER} is long, but with short ${USER}
the compilation can pass.

Signed-off-by: wei qiao <qiaowei224@gmail.com>
Change-Id: Ia0f7dfa9cf7d605f1f2603f70dd0e6877482eb8a
2015-12-02 11:47:27 +08:00
Tao Bao e82ea963e8 Merge "Stop packaging obsolete OTA tools."
am: b98fa19703

* commit 'b98fa19703ed0c7608f926007b1df257127ea777':
  Stop packaging obsolete OTA tools.
2015-12-01 02:28:19 +00:00
Tao Bao b98fa19703 Merge "Stop packaging obsolete OTA tools." 2015-12-01 02:25:02 +00:00
Colin Cross b16a63cbb0 Merge "Make export_includes a restat rule"
am: 615d66e2c2

* commit '615d66e2c21603552dc952db9493f43bbcc7f2b1':
  Make export_includes a restat rule
2015-12-01 01:45:58 +00:00
Colin Cross 615d66e2c2 Merge "Make export_includes a restat rule" 2015-12-01 01:42:26 +00:00
Colin Cross 6b9bddde6f Make export_includes a restat rule
There is currently an intentional incremental rebuild issue with
import_includes.  export_includes might get updated with an identical
version, but we don't want to force everything downstream of it to
rebuild.

When BUILDING_WITH_NINJA==true, only update export_includes if it
changes, and use .KATI_RESTAT to only run downstream rules if it
changes.  import_includes will only be updated if one of the
export_includes files is updated, so object files can have a normal
dependency on import_includes instead of an order-only dependency.
All downstream object files will now be recompiled if their imported
include paths change.

Bug: 25910568
Change-Id: I626f3b24ac02ac1309049cf1ce66cfe8ec816513
2015-11-30 17:33:26 -08:00
Colin Cross bae8872294 Merge changes I1de10391,I4399ca26,Iec3b2b0b
am: bff3c9b4c1

* commit 'bff3c9b4c10dcb3ce3820d3a5e144e3df20313dc':
  Use libstdc++ for ijar
  Build ijar for apps build
  Use .KATI_RESTAT to reduce unnecessary rebuilds of .jar files
2015-12-01 00:03:27 +00:00
Tao Bao a04fca31bf Stop packaging obsolete OTA tools.
applypatch, applypatch_static and sqlite3 are no longer needed.

Bug: 24621915
Change-Id: I6de5bc45bc8434b9c387e1d3d1b6c347c23a5290
2015-11-30 12:22:24 -08:00
Shinichiro Hamaji 89b255ab71 Use .KATI_RESTAT to reduce unnecessary rebuilds of .jar files
The same optimization was done for binaries in

https://android-review.googlesource.com/#/c/175250/

To create a TOC file from .jar files, this change introduces
ijar, which is designed for this purpose. Only #include lines
were modified from the original version.

https://github.com/bazelbuild/bazel/tree/master/third_party/ijar

Performance:

$ m && touch
frameworks/base/core/java/com/google/android/util/Procedure.java && time
m
Before: 4m30s (1580 targets)
After: 3m57s (772 targets)

Unfortunately, the improvement is small yet, but local
experiments showed we can cut ~2 more minutes if the similar
optimization is done for .dex files.

(cherry picked from commit c1f5d9c203)

Bug: 24597504
Change-Id: Iec3b2b0b0e674bee5d80cce3c300dc8fad6e7c13
2015-11-30 11:16:23 -08:00
Shinichiro Hamaji 51ef51c4ad Merge "Revert "Use .KATI_RESTAT to reduce unnecessary rebuilds of .jar files""
am: 2ff3ad9045

* commit '2ff3ad90455e868a1805d065f0aa2b8babbc6660':
  Revert "Use .KATI_RESTAT to reduce unnecessary rebuilds of .jar files"
2015-11-27 04:02:09 +00:00
Shinichiro Hamaji 2ff3ad9045 Merge "Revert "Use .KATI_RESTAT to reduce unnecessary rebuilds of .jar files"" 2015-11-27 03:59:30 +00:00
Shinichiro Hamaji 3ae7f66bab Revert "Use .KATI_RESTAT to reduce unnecessary rebuilds of .jar files"
This reverts commit c1f5d9c203.

Change-Id: I7e9969a060e3f1380154da65e76134168aee15d8
2015-11-27 03:58:51 +00:00
Paul Duffin 9c4bb4c1c0 Merge "Fix generated-sources-dir-for for COMMON"
am: 623799d3e0

* commit '623799d3e0aab49b00552fb7862f2528b845bd51':
  Fix generated-sources-dir-for for COMMON
2015-11-26 11:43:02 +00:00
Paul Duffin 623799d3e0 Merge "Fix generated-sources-dir-for for COMMON" 2015-11-26 11:39:30 +00:00
Shinichiro Hamaji 27770abe27 Merge "Use .KATI_RESTAT to reduce unnecessary rebuilds of .jar files"
am: c9a1b27845

* commit 'c9a1b278458eddd3065c0e9fc06e12b2cb1c38cb':
  Use .KATI_RESTAT to reduce unnecessary rebuilds of .jar files
2015-11-26 05:30:54 +00:00
Shinichiro Hamaji c9a1b27845 Merge "Use .KATI_RESTAT to reduce unnecessary rebuilds of .jar files" 2015-11-26 05:25:58 +00:00
Paul Duffin 699a32217a Fix generated-sources-dir-for for COMMON
When the 4th argument specified is non-empty then it attempts to
use either HOST_OUT_GEN_COMMON or TARGET_OUT_GEN_COMMON
depending on whether the 3rd argument is non-empty or not
respectively. Unfortunately, those two variables do not exist,
the correct names for those variables is HOST_OUT_COMMON_GEN and
TARGET_OUT_COMMON_GET.

Change-Id: I66edb02824c06e0f504ebe04ff80ddbd77a16c95
2015-11-25 13:14:23 +00:00
Ying Wang f0522b0c34 Merge "Fix typo."
am: deeb2d2453

* commit 'deeb2d245397a8330890247697d01629f763ec31':
  Fix typo.
2015-11-24 22:16:45 +00:00
Ying Wang deeb2d2453 Merge "Fix typo." 2015-11-24 22:09:49 +00:00
Ying Wang 6cce4026ff Fix typo.
Change-Id: I299076791c620968fa7a5c420b5ca21ea4d30b51
2015-11-24 14:09:11 -08:00
Ying Wang fdfd0b0d81 Merge "Don\'t delete META-INF in jack-java-to-dex when packing resources."
am: 81bbac6a0f

* commit '81bbac6a0fe76f2b007f6f0c2c3dc44f85fd4dd6':
  Don't delete META-INF in jack-java-to-dex when packing resources.
2015-11-24 22:01:54 +00:00
Ying Wang 81bbac6a0f Merge "Don't delete META-INF in jack-java-to-dex when packing resources." 2015-11-24 21:58:06 +00:00
Ying Wang 3be52e6692 Don't delete META-INF in jack-java-to-dex when packing resources.
LOCAL_DONT_DELETE_JAR_META_INF is meant for deleting resources carried
by static Java libraries, see comment in clear_vars.mk.
For a module's own resources, we should pick up whatever in
LOCAL_JAVA_RESOURCE_DIRS.
The same applies  when building .jack from a  prebult jar in
transform-jar-to-jack.

Bug: 25860887
Change-Id: I20c120e039342a1124362c5f8747eace94b03931
(cherry-pick from commit 996ae38ffd)
2015-11-24 13:57:10 -08:00
Shinichiro Hamaji 22a2efde22 Merge "Prevent findleaves.py from traversing copies of "
am: 84639d127b

* commit '84639d127b50734ef670232bfa43a6fb9f3f0576':
  Prevent findleaves.py from traversing copies of $(OUT_DIR)
2015-11-24 04:57:26 +00:00
Shinichiro Hamaji 84639d127b Merge "Prevent findleaves.py from traversing copies of $(OUT_DIR)" 2015-11-24 04:54:02 +00:00
Ying Wang 59ab005dde Merge "Increase droiddoc -J-Xmx to 1600MB."
am: 01f49a3d5e

* commit '01f49a3d5e5d8f4fdd83d1b74a230f8160aabe08':
  Increase droiddoc -J-Xmx to 1600MB.
2015-11-20 02:38:00 +00:00
Ying Wang 02bcb27b4a Increase droiddoc -J-Xmx to 1600MB.
As we occasionally see  java.lang.OutOfMemoryError when running
doc-comment-check-docs.

Bug: 25787786
Change-Id: I6c505c96ec36d09d28d400e03027b169870c49bb
2015-11-19 18:31:01 -08:00
Christopher Wiley dbc3d09ca6 Merge "Fix race in C++ AIDL file generation"
am: b2055df782

* commit 'b2055df782eb5276128ef14ac4724d32f94e1aec':
  Fix race in C++ AIDL file generation
2015-11-19 22:07:06 +00:00
Colin Cross d924c14097 Merge "Switch to using kati env script"
am: 7926e42209

* commit '7926e42209b41766369e49b2093e6334564f93d4':
  Switch to using kati env script
2015-11-19 22:06:52 +00:00
Christopher Wiley b2055df782 Merge "Fix race in C++ AIDL file generation" 2015-11-19 22:01:27 +00:00
Christopher Wiley 2d91c61ef0 Fix race in C++ AIDL file generation
The export_includes file for a library needs to express a dependency on
all generated exported headers.  For aidl generated headers, express a
dependency on the .cpp file instead, since the generator promises to
generate this file last.  Unfortunately, the C++ headers generated from
a .aidl file depend on the contents of the file.

Change-Id: I9402b364e4538b502c0958ac8c7bd72cb0add724
2015-11-19 13:52:15 -08:00
Colin Cross 7926e42209 Merge "Switch to using kati env script" 2015-11-19 21:11:01 +00:00
Christopher Wiley a626a5f6d9 Merge "Export generated AIDL headers"
am: 0c595d4730

* commit '0c595d47304e6c00a493600b4a46f655cd148db9':
  Export generated AIDL headers
2015-11-19 19:24:42 +00:00
Christopher Wiley 0c595d4730 Merge "Export generated AIDL headers" 2015-11-19 19:17:47 +00:00
Christopher Wiley c7e936f530 Export generated AIDL headers
It is common for developers to generate/compile AIDL in a static
library, then link that library into an executable.  When doing this,
developers need to export the generated headers.

Bug: 25779424
Test: a refactoring of the aidl Android.mk shows this works

Change-Id: I4f7d471a601d2a683cb5a9da5e02e3fab576c26a
2015-11-19 11:04:18 -08:00
Stephen Hines 4b191b40b7 Merge "Rename AArch64 ASan target runtime library to match upstream convention."
am: af9e29d040

* commit 'af9e29d040dc20aeb4cceb545d864d41ecf0bca5':
  Rename AArch64 ASan target runtime library to match upstream convention.
2015-11-19 16:20:00 +00:00
Stephen Hines af9e29d040 Merge "Rename AArch64 ASan target runtime library to match upstream convention." 2015-11-19 16:14:08 +00:00
Shinichiro Hamaji 6a378a3a7a Prevent findleaves.py from traversing copies of $(OUT_DIR)
by putting blank Android.mk and CleanSpec.mk in $(OUT_DIR).

Bug: 25732342
Change-Id: I3fcc4efddb9ee5ce309502e978f0589335af8371
2015-11-19 18:31:29 +09:00
Shinichiro Hamaji c1f5d9c203 Use .KATI_RESTAT to reduce unnecessary rebuilds of .jar files
The same optimization was done for binaries in

https://android-review.googlesource.com/#/c/175250/

To create a TOC file from .jar files, this change introduces
ijar, which is designed for this purpose. Only #include lines
were modified from the original version.

https://github.com/bazelbuild/bazel/tree/master/third_party/ijar

Performance:

$ m && touch
frameworks/base/core/java/com/google/android/util/Procedure.java && time
m
Before: 4m30s (1580 targets)
After: 3m57s (772 targets)

Unfortunately, the improvement is small yet, but local
experiments showed we can cut ~2 more minutes if the similar
optimization is done for .dex files.

Bug: 24597504
Change-Id: Id54953aea25e497c8ebbe783b03f13b488577c6a
2015-11-19 17:10:35 +09:00
Dan Albert e3b4114410 Merge "Really allow overriding the LLVM prebuilts path."
am: ec18c0fdfe

* commit 'ec18c0fdfe0475cb4eff2458cf1f825d37fbc2b5':
  Really allow overriding the LLVM prebuilts path.
2015-11-19 06:33:50 +00:00
Stephen Hines bf45029dc4 Rename AArch64 ASan target runtime library to match upstream convention.
Rename from
 libclang_rt.asan-arm64-android.so
to
 libclang_rt.asan-aarch64-android.so

Change-Id: I6d73f458f437440c1de5bc72d2188d392c80cb98
2015-11-18 22:13:16 -08:00
Dan Albert 2d6d5c6e53 Really allow overriding the LLVM prebuilts path.
Not sure why my previous testing was working without this, but kati is
a bit pickier about ?= vs :=.

Change-Id: I80243a3c93dec7fd9b8e6f92e2c6cc956706ace0
2015-11-18 18:01:31 -08:00
Colin Cross b35469cb90 Merge "Support LOCAL_ACP_UNAVAILABLE for prebuilts"
am: 153af5a27e

* commit '153af5a27e48627c24bda68495d1a972c744aa00':
  Support LOCAL_ACP_UNAVAILABLE for prebuilts
2015-11-17 21:36:45 +00:00
Colin Cross ea20915b30 Switch to using kati env script
Kati generates a shell script to run ninja, but that makes it difficult
to customize the ninja command line.  Switch to sourcing the new env
script and then starting ninja manually.

Change-Id: I7139290a463018ddf5e05b4d61a0d2f18b1a2247
2015-11-17 12:10:13 -08:00
Colin Cross d6f389299c Support LOCAL_ACP_UNAVAILABLE for prebuilts
Files built by soong will be installed using BUILD_PREBUILT, and may
include prerequesites of the acp binary.  Allow specifying
LOCAL_ACP_UNAVAILABLE:=true on prebuilts.

Change-Id: Iccfe61092f90b61f397a45f5334b0c1c0f439b32
2015-11-16 17:46:10 -08:00
Dan Albert c00e0b841a Merge "Allow overriding the LLVM prebuilts path."
am: 9119f14943

* commit '9119f14943b3d90863660fec58b4967c9ba2ccaa':
  Allow overriding the LLVM prebuilts path.
2015-11-16 18:33:08 +00:00
Dan Albert 9119f14943 Merge "Allow overriding the LLVM prebuilts path." 2015-11-16 18:28:24 +00:00
Dan Albert 8b1d17706f Allow overriding the LLVM prebuilts path.
The automated build will need to do a two stage build, and we want to
do that without altering the source directory. Building with
`make LLVM_PREBUILTS_BASE=/path/to/prebuilts` will build using an
arbitrary toolchain instead of the installed one.

Bug: http://b/17441393
Change-Id: I4ff5c5224fbb8ebeb3a752907d6c4cd0a925aa1e
2015-11-13 23:06:07 -08:00
Sen Jiang 48ea511512 Merge "Write AB_OTA_POSTINSTALL_CONFIG to META/postinstall_config.txt."
am: 99d5f361b4

* commit '99d5f361b4d587eed1b197f501bff64223dda3b9':
  Write AB_OTA_POSTINSTALL_CONFIG to META/postinstall_config.txt.
2015-11-13 19:17:06 +00:00
Sen Jiang 99d5f361b4 Merge "Write AB_OTA_POSTINSTALL_CONFIG to META/postinstall_config.txt." 2015-11-13 19:14:00 +00:00
Sen Jiang 8f22e2a0bb Write AB_OTA_POSTINSTALL_CONFIG to META/postinstall_config.txt.
The config file will be passed to delta_generator to add the postinstall
field in the update payload.

Bug: 24537566
Change-Id: I06b8d9d0b2c37f9a3e7a844ac4d9e2eead8cd4d2
TEST: make dist
2015-11-13 10:46:09 -08:00
Shinichiro Hamaji 13248f9343 Merge "Use GOMA_HERMETIC=error for USE_GOMA=true build"
am: a50961ae95

* commit 'a50961ae9517cdaab83294e537f35922717e17f9':
  Use GOMA_HERMETIC=error for USE_GOMA=true build
2015-11-13 07:30:53 +00:00
Shinichiro Hamaji 21a18b7509 Use GOMA_HERMETIC=error for USE_GOMA=true build
With this flag, goma's client (gomacc) fails when local
compiler is different from goma's. Without this, goma's
backend finds a fallback compiler which looks closer to the
local compiler using version info, etc.

Bug: 25668061

Change-Id: I64ff81751f3fe960a557ddb2ca30a090c26c4327
2015-11-13 15:53:56 +09:00
Elliott Hughes 8b0e2e5094 Merge "Set WINVER as well as _WIN32_WINNT."
am: 4b6bb08da3

* commit '4b6bb08da308004898ad7db177834f78c808eabb':
  Set WINVER as well as _WIN32_WINNT.
2015-11-13 03:11:39 +00:00
Elliott Hughes 4b6bb08da3 Merge "Set WINVER as well as _WIN32_WINNT." 2015-11-13 03:09:25 +00:00
Dan Willemsen aa725f6769 Merge "Sort dex and static lib resources"
am: 67d993fc9c

* commit '67d993fc9cd01950f8994b7613362ea749be561a':
  Sort dex and static lib resources
2015-11-13 01:44:44 +00:00
Dan Willemsen 67d993fc9c Merge "Sort dex and static lib resources" 2015-11-13 01:39:30 +00:00
Dan Albert 37a9e5d568 Merge "Make not having Jack non-fatal."
am: 5f88dd0dd6

* commit '5f88dd0dd68356679ebdc5991c20bbbad657cc43':
  Make not having Jack non-fatal.
2015-11-13 01:18:32 +00:00
Dan Albert 18ace0f2fe Merge "Allow globally disabling the relocation packer."
am: 6d6ba8aaf1

* commit '6d6ba8aaf19b3f5cb209c0b60c7bfd1900411945':
  Allow globally disabling the relocation packer.
2015-11-13 01:18:24 +00:00
Dan Albert fd8c722714 Make not having Jack non-fatal.
Not every build needs Java.

Bug: http://b/17441393
Change-Id: Ia55742cfd43c3a4f9c7873b87816bcce99f8156f
2015-11-12 15:29:12 -08:00
Dan Albert 52831d118c Allow globally disabling the relocation packer.
The relocation packer is part of prebuilts/misc, and pulling that
repository into the manifest requires pulling in a lot of other things
not needed by the simpler builds (like the clang toolchain manifest).

Bug: http://b/17441393
Change-Id: If4a94804fc1a3f81215b840247f8e332d0b510c1
2015-11-12 15:27:49 -08:00
Elliott Hughes cf1c15c975 Set WINVER as well as _WIN32_WINNT.
Change-Id: I6ace26d6c25549cf42755423340af07e96e05779
2015-11-12 13:33:20 -08:00
Tao Bao 741c16686e Merge "build: Remove check_prereq."
am: 79dd4b2983

* commit '79dd4b29831b5fe5b6d9627c0b0373374c4e3036':
  build: Remove check_prereq.
2015-11-12 16:46:13 +00:00
Tao Bao 79dd4b2983 Merge "build: Remove check_prereq." 2015-11-12 16:41:45 +00:00
Yohann Roussel 94f86f8877 Sort dex and static lib resources
Before adding them to the apk or javalib.jar. This allows the entries
order to be reproducible and will help to have a reproducible build.

Bug: 25629246

Change-Id: Ie596aecfdd08047ea9f9071896a2b980e7200b41
2015-11-12 14:58:19 +01:00
Tao Bao cb4abef523 build: Remove check_prereq.
check_prereq is a tool for recovery API v2, which has been obselete
since we moved to v3 in [1].

[1] commit e08991e02a7d678f2574e85289a34b2a9a537c82

Bug: 24621915
Change-Id: Ie96348fb56c5a3e029cac2417b59d8eb62dc085b
2015-11-11 21:26:29 -08:00
Dan Willemsen 0cfcb599ea Merge "Make uncompressing jni libs in prebuilt APKs reproducible"
am: ae8e6c8cda

* commit 'ae8e6c8cda704277ab84851c475ecd8bf4c484cb':
  Make uncompressing jni libs in prebuilt APKs reproducible
2015-11-12 05:25:24 +00:00
Dan Willemsen 5c64b4e81c Make uncompressing jni libs in prebuilt APKs reproducible
This was extracting the shared libraries into a temporary directory,
then adding them back into the zip file using the raw filesystem
ordering. Fix that by passing a sorted list to zip.

Bug: 24201956
Change-Id: I59c41151968be6faf289e04719a9992157eb405d
2015-11-11 18:26:38 -08:00
Chih-hung Hsieh 5188f77e8f Merge "Revert "Enable gold linker for aarch64.""
am: 98c27a83da

* commit '98c27a83da8caee0ed4e57c596d4f51e182588ef':
  Revert "Enable gold linker for aarch64."
2015-11-12 01:09:32 +00:00
Chih-hung Hsieh 98c27a83da Merge "Revert "Enable gold linker for aarch64."" 2015-11-12 01:04:06 +00:00
Chih-hung Hsieh 65c7b5c6d6 Revert "Enable gold linker for aarch64."
This reverts commit a7f68ee9ea.

Change-Id: I8c15df8ce81859f1b950dbac0a47d7d24c0f4cc2
BUG: 25642296
2015-11-11 23:07:01 +00:00
Ying Wang d54b9e6ba0 Merge "Add suffix .so to use directly libart.so"
am: d1fd823f33

* commit 'd1fd823f3349c55ba1d7e3b022a6bbff9f1f2680':
  Add suffix .so to use directly libart.so
2015-11-11 22:12:24 +00:00
Ying Wang d1fd823f33 Merge "Add suffix .so to use directly libart.so" 2015-11-11 22:05:48 +00:00
randy.jeong 59bdffa76a Add suffix .so to use directly libart.so
It should be the complete name with suffix .so to use libart.
At present, unnecessarily falls back like below.
"Falling back from libart to libart.so after dlopen error:
dlopen failed: library "libart" not found"

Change-Id: Ie5da35a71d6661434d2097c842407e6a254f8f58
Signed-off-by: randy.jeong <randy.jeong@samsung.com>
2015-11-10 16:42:49 +09:00
Stephen Hines 3f83ed0181 Merge "Switch from clang 3.6 to new clang repository (with 3.8)."
am: 106eb619e2

* commit '106eb619e242ef6694f66a862c1e21249de68f97':
  Switch from clang 3.6 to new clang repository (with 3.8).
2015-11-10 06:01:47 +00:00
Stephen Hines e8119e96fc Switch from clang 3.6 to new clang repository (with 3.8).
This reverts commit f7dbab16ff.

Bug: 23396112

Switch from "-fsanitize-undefined-trap-on-error" to
"-fsanitize-trap=all". The former ends up accidentally leaving
unresolved calls to __ubsan* helper functions in the object file with
clang 3.8. The latter is used when we don't include address sanitizer,
and replaces any misbehavior with a direct call to abort().
2015-11-09 16:32:11 -08:00
Lee Campbell 5bd31df419 Merge "build: Add LINUX_KERNEL_COPYING license file"
am: 8b2c37c953

* commit '8b2c37c9533f94f81fd8b15257c56061ce10998c':
  build: Add LINUX_KERNEL_COPYING license file
2015-11-09 20:47:25 +00:00
Lee Campbell b463fcde80 build: Add LINUX_KERNEL_COPYING license file
The build requires LINUX_KERNEL_COPYING when building
the notices. Change from depending on a file in
prebuilds/qemu-kernel to one in /build/core.

This is required as Brillo does not have the qemu-kernel
in its checkout.

BUG=25578534

Change-Id: Ieff6970035d27884c0769106e507284c1096c33f
2015-11-09 02:27:01 +01:00
Ying Wang 7c09c937b6 Merge "Tag "tests" alone doesn\'t prevent including emma.jar"
am: a23a97e3bf

* commit 'a23a97e3bf77bdd7fa01cd1f681d758a943db63a':
  Tag "tests" alone doesn't prevent including emma.jar
2015-11-06 19:31:00 +00:00
Ying Wang a23a97e3bf Merge "Tag "tests" alone doesn't prevent including emma.jar" 2015-11-06 19:27:52 +00:00
Ying Wang 324ffb2785 Tag "tests" alone doesn't prevent including emma.jar
Only if an app has LOCAL_INSTRUMENTATION_FOR, it can get the emma
classes from the target app and we don't need to instrument the test app
itself.

Change-Id: If0fba50ddae757254fc58ca104d729d61603fd78
2015-11-06 11:22:28 -08:00
Steve Fung dc43cddbf6 Merge "Add the build type to META folder in target files.zip"
am: 53a6fd6498

* commit '53a6fd649817e5d9909d9aaca0369c19840f8613':
  Add the build type to META folder in target files.zip
2015-11-06 03:23:31 +00:00
Steve Fung 53a6fd6498 Merge "Add the build type to META folder in target files.zip" 2015-11-06 03:18:35 +00:00
Steve Fung 4044b38f0a Add the build type to META folder in target files.zip
For AB builds, add the build type to META/build_type.txt so the
server can easily determine user, userdebug, and eng builds
from each other.

Bug: 25420005
Change-Id: I6e4de2ba36a6fd1208c65a434d4725bb93d2cee6
2015-11-05 15:04:11 -08:00
Than McIntosh fbf9234233 Merge "Enable gold linker for aarch64."
am: 838ad09b17

* commit '838ad09b17c6525122e6e8881674030e6746a8c4':
  Enable gold linker for aarch64.
2015-11-05 11:52:25 +00:00
Than McIntosh 838ad09b17 Merge "Enable gold linker for aarch64." 2015-11-05 11:49:56 +00:00
Shinichiro Hamaji 7070e5dc59 Merge "Allow missing SONAME in .toc files"
am: 457345e58c

* commit '457345e58c9f273a467847e2086318d6d8380d5b':
  Allow missing SONAME in .toc files
2015-11-05 04:07:21 +00:00
Shinichiro Hamaji f0972f7966 Allow missing SONAME in .toc files
At least one shared object in internal repo doesn't have
SONAME entry in its dynamic segment because it is created by
objcopy instead of a linker.

Change-Id: If7106da022ff1e4e925191402f9072795dc3ddcb
2015-11-05 12:51:08 +09:00
Shinichiro Hamaji 7557ad2bbd Merge "Use .KATI_RESTAT to reduce unnecessary rebuilds of binaries"
am: 2f8ffa61be

* commit '2f8ffa61bee03593a89913806e863f73a8e646b7':
  Use .KATI_RESTAT to reduce unnecessary rebuilds of binaries
2015-11-05 01:27:06 +00:00
Shinichiro Hamaji 2f8ffa61be Merge "Use .KATI_RESTAT to reduce unnecessary rebuilds of binaries" 2015-11-05 00:46:04 +00:00
Than McIntosh a7f68ee9ea Enable gold linker for aarch64.
[Second attempt, this time with updated mac prebuilt]

Switches default linker from -fuse-ld-bfd to
-fuse-ld=gold, and enables -Wl,--icf=safe. This
changes reduces /system/lib64/*.so text size
by about 2% for N9.

Change-Id: I587075aae9d70cb6b16e55dc9cd1052580ac2626
2015-11-04 19:34:50 -05:00
Ying Wang 3a5c02e295 Merge "Don\'t run ziptime on host zip files."
am: 7f50cf7f50

* commit '7f50cf7f501a7289cbe8c03eb20ed0f54edf5a99':
  Don't run ziptime on host zip files.
2015-11-04 18:19:54 +00:00
Ying Wang 5d88770f26 Don't run ziptime on host zip files.
ziptime fails on zip file larger than 2GB.
These zip files won't installed on device and we don't care that much
about their reprodudcibility across builds.

Change-Id: I47062928d075a59eda92dd5333e59502f490d1cb
2015-11-04 10:06:25 -08:00
Shinichiro Hamaji 0e7587a9ea Use .KATI_RESTAT to reduce unnecessary rebuilds of binaries
When a shared object is rebuilt, all dependent libraries and
executables are rebuilt. Such rebuild is unnecessary when there
is no interface change. With this patch, .toc files will be
generated for all .so files. The rule which generates .toc files
has ninja's restat=1 and .toc files are not changed ninja won't
rebuild dependent targets.

Performance:

$ m && touch bionic/libc/stdio/stdio.c && time m
Before: 1m03s (2563 targets)
After: 21s (90 targets)

Bug: 24597504
Change-Id: Ia5dd950273d143f4e99eee8bef7478f1a94cd138
2015-11-04 15:23:59 +09:00
Ying Wang 32078cd8b2 Merge "Sort out ANDROID_GOALS, KATI_GOALS and NINJA_GOALS."
am: 5dd68067a6

* commit '5dd68067a6a5e48b29882ca065606ab85b20d3d7':
  Sort out ANDROID_GOALS, KATI_GOALS and NINJA_GOALS.
2015-11-04 01:15:47 +00:00
Ying Wang 4a4a0bc38f Sort out ANDROID_GOALS, KATI_GOALS and NINJA_GOALS.
ANDROID_GOALS: any Android goals that need to be built.
KATI_GOALS: goals that we need to pass to Kati.
NINJA_GOALS: goals we need to pass to Ninja.

For modifier Android goals (dist, INTERNAL_MODIFIER_TARGETS),
we don't need to pass them to Ninja. See also commit
80e46c7c5c.
Restore the dist rule removed by the above commit.

Previously "droid" was never passed to Ninja. That's incorrect.
"make droid docs" should build both docs and droiod.
Fixed with this change.

Change-Id: I5c28061fe0ebe7848872ee349056d029b787ff71
2015-11-03 17:10:28 -08:00
Dan Willemsen 3665246dcb Merge "Don\'t use ziptime with unbundled builds"
am: 29a6675983

* commit '29a667598340624f38b0a08c3e9984afc375b12d':
  Don't use ziptime with unbundled builds
2015-11-04 00:33:44 +00:00
Dan Willemsen a25ddad7d6 Don't use ziptime with unbundled builds
Some of the trees are unable to compile native code with the normal
build rules, even though they can build kati.

Bug: 24201956
Change-Id: I2afc3468480b2c78407d62323e6b82979c8ee254
2015-11-03 16:18:41 -08:00
Bill Yi af05ad919a Merge commit '4f5e8cc3ca6da83f11bf42d04f1a57b9af16a582' into HEAD 2015-11-03 14:28:58 -08:00
Dan Willemsen a0975edc16 Merge "Remove changing uids/timestamps from zip/jar files" 2015-11-03 21:38:45 +00:00
Ying Wang fb89fd36b2 Merge "Don\'t check the host JDK tools when build/core/config.mk is called from envsetup.sh."
am: a63d379aab

* commit 'a63d379aab75fe3991320319f63faddd3b84b287':
  Don't check the host JDK tools when build/core/config.mk is called from envsetup.sh.
2015-11-03 00:40:38 +00:00
Ying Wang a63d379aab Merge "Don't check the host JDK tools when build/core/config.mk is called from envsetup.sh." 2015-11-03 00:17:43 +00:00
Ying Wang 7fcd2f9086 Don't check the host JDK tools when build/core/config.mk is called from envsetup.sh.
Envsetup.sh (lunch) relies on config.mk to get build varaible values; while
config.mk may rely on envsetup.sh to set up JAVA_HOME/PATH.
Without this change config.mk may be checking the host JDK tools before
JAVA_HOME/PATH get set up.

Change-Id: I1e6b5e33147258832ce2f0a425f9526ef4782c43
2015-11-02 16:00:47 -08:00
Dan Willemsen 48a621c277 Remove changing uids/timestamps from zip/jar files
Pass -X to zip so that Unix UID/GID and extra timestamps aren't
saved into the zip files.

Add a new tool, ziptime, that uses a very stripped down copy of
zipalign. It no longer depends on libandroidfw, and now rewrites the
timestamps in place instead of making a copy of the zipfile. This should
improve speed and reduce disk requirements, especially with the large
packaging zip files.

Bug: 24201956
Change-Id: I50f68669f659da1b4393e964ad40b6aafb00c1e7
2015-11-02 14:51:54 -08:00
Gaurav Shah af80a461d6 Merge "envsetup,product,ninja: enable symlink traversal"
am: f589c7b442

* commit 'f589c7b442feb02843bdf82305b599b686fc5204':
  envsetup,product,ninja: enable symlink traversal
2015-11-02 22:27:27 +00:00
Gaurav Shah 00b8cd9a15 Merge "Support build targets with no installable apps/packages"
am: aed6805380

* commit 'aed6805380810f51bb0d8b93fc5eac005a6de364':
  Support build targets with no installable apps/packages
2015-11-02 22:27:20 +00:00
Gaurav Shah 64ea350dd8 Merge "build: Add extra build customization for /product"
am: a80f1e3257

* commit 'a80f1e32575db5d66f4b4e6efdf79dd10dd2295e':
  build: Add extra build customization for /product
2015-11-02 22:27:14 +00:00
Gaurav Shah 881ec090c4 Merge "build: Add support for defining products in /product"
am: acb8a7c1f8

* commit 'acb8a7c1f8cacaf136edba1a25d64467d352a432':
  build: Add support for defining products in /product
2015-11-02 22:27:08 +00:00
Gaurav Shah f589c7b442 Merge "envsetup,product,ninja: enable symlink traversal" 2015-11-02 22:22:50 +00:00
Gaurav Shah aed6805380 Merge "Support build targets with no installable apps/packages" 2015-11-02 22:22:40 +00:00
Gaurav Shah a80f1e3257 Merge "build: Add extra build customization for /product" 2015-11-02 22:22:32 +00:00
Gaurav Shah acb8a7c1f8 Merge "build: Add support for defining products in /product" 2015-11-02 22:22:22 +00:00
Will Drewry c13f9c952d envsetup,product,ninja: enable symlink traversal
When searching device, product, or hardware, allow
find to follow symlinks.

Add KATI_EMULATE_FIND=false to allow disabling the find
emulator which changes findleaves.py behavior wrt
symlinks.

BUG=24605247
TEST=works with CL:783781 (without the find wrapper in that CL)

Change-Id: Ia9d0e4add391a56f34828a09a6cec3f435ccc548
2015-11-02 14:18:45 -08:00
Gaurav Shah 67c2ed390f Support build targets with no installable apps/packages
Specifically, do not error out if no installable apps are found.

- When creating an archive of all the apps, and if no apps exist
for the target, generate an empty archive file.
- If building for a target with no installable jar(s) or apk(s),
generate an empty package stats file.

The former is just an output artifact. The latter is used
by the upload_pkg_stats.py script which correctly handles
an empty input file.

BUG: 23421592

Change-Id: I48db9f9e1f61914d8fd938130e09b41849685450
2015-11-02 14:18:30 -08:00
Lee Campbell 04ba31236e build: Add extra build customization for /product
This makes /product more consistent with /device & /vendor

BUG: 22030305

Change-Id: Ic65bfde7fb3e9fab8c8fb8d99af15404574abde0
2015-11-02 14:18:13 -08:00
Lee Campbell 455f6f458d build: Add support for defining products in /product
The build will now search for AndroidProducts.mk in /product

BUG: 22030305

Change-Id: I2d067d95d0c8dc1341a55167f9ac7f6926e04ce3
2015-11-02 14:17:47 -08:00
Ying Wang cce30b6daa Merge "Add _asan suffix to ro.build.flavor for ASAN builds."
am: f0a8dd43b2

* commit 'f0a8dd43b26d49ad67e2c6c8c936e64a62df8582':
  Add _asan suffix to ro.build.flavor for ASAN builds.
2015-11-02 19:52:04 +00:00
Ying Wang 603e4ed594 Merge "Fix "make product-graph" and "make dump-products"."
am: 888f30aa44

* commit '888f30aa448370206a49ff7df940e134b8ff7017':
  Fix "make product-graph" and "make dump-products".
2015-11-02 19:51:57 +00:00
Ying Wang f0a8dd43b2 Merge "Add _asan suffix to ro.build.flavor for ASAN builds." 2015-11-02 19:47:31 +00:00
Ying Wang 888f30aa44 Merge "Fix "make product-graph" and "make dump-products"." 2015-11-02 19:46:53 +00:00
Dan Willemsen d8d06da814 Merge "Revert "Remove changing uids/timestamps from zip/jar files""
am: 49d8c5196e

* commit '49d8c5196eb690fc987673c27cb61087c5886be4':
  Revert "Remove changing uids/timestamps from zip/jar files"
2015-10-29 21:33:39 +00:00
Dan Willemsen b589ae4e26 Revert "Remove changing uids/timestamps from zip/jar files"
This reverts commit 3c2c064c87.

zipalign depends on libandroidfw, and some setups don't include frameworks/base.

Bug: 24201956
Change-Id: I48ee95808924f6b2221f0a49ab205c2565096b1f
2015-10-29 21:26:18 +00:00
Dan Willemsen a51b1d532e Merge "Remove changing uids/timestamps from zip/jar files"
am: 9f25219371

* commit '9f252193714c82dbce702e8055ffaa7eec4afe66':
  Remove changing uids/timestamps from zip/jar files
2015-10-29 19:12:37 +00:00
Dan Willemsen 3c2c064c87 Remove changing uids/timestamps from zip/jar files
Pass -X to zip so that Unix UID/GID and extra timestamps aren't
saved into the zip files.

Add a new option to zipalign, -t, to replace all timestamps with static
timestamps (2008 Jan 1 00:00:00). Use this for all non-APK zip files.
APK zip timestamps are set based on the certificate date in SignApk.

Bug: 24201956
Change-Id: Ifb619fc499ba9d99fc624f2acd5f8de36d78ef8e
2015-10-29 11:57:16 -07:00
Tao Bao e5eb4567d4 Merge "Honor TARGET_NO_RECOVERY flag."
am: c448e91c3d

* commit 'c448e91c3d3d095f8f200c9925f7db2ad525132f':
  Honor TARGET_NO_RECOVERY flag.
2015-10-29 16:45:31 +00:00
Tao Bao c448e91c3d Merge "Honor TARGET_NO_RECOVERY flag." 2015-10-29 16:13:52 +00:00
Ying Wang 21ec03d186 Add _asan suffix to ro.build.flavor for ASAN builds.
Bug: 25344475
Change-Id: I27f2472906631239ca725ee09da2ab791cad2195
2015-10-28 18:47:00 -07:00
Ying Wang 4f5e8cc3ca Merge "Normalize the product makefile path in inherit-product." am: aabff90bfe
am: 3482ea54a2

* commit '3482ea54a2fecc756c79a94f37a66113d21d7558':
  Normalize the product makefile path in inherit-product.
2015-10-28 23:59:12 +00:00
Ying Wang 3482ea54a2 Merge "Normalize the product makefile path in inherit-product."
am: aabff90bfe

* commit 'aabff90bfe2312a95d3cf57564845fef8dc469a2':
  Normalize the product makefile path in inherit-product.
2015-10-28 23:55:10 +00:00
Ying Wang 67132baa4d Fix "make product-graph" and "make dump-products".
- For unmodified "make product-graph" and "make dump-products",
  load only the current product configuration makefiles. This is much
  faster than loading all product makefiles.
- For "make product-graph ANDROID_PRODUCT_GRAPH=--all",
  "make dump-products ANDROID_DUMP_PRODUCTS=all", load all product
  makefiles.
- Move product-graph.mk out of build tasks, so we can skip loading all
  the Android.mks, which takes long and we don't really need them.
  More importantly, with all product makefiles loaded, modules in
  Android.mks are prone to clash (if they are conditionally included
  by variables set up in product makefiles) and lead to parse-time
  error.

Change-Id: Idc1d6b0c23eb2c8bb34fdd7a1fa4d56171768d21
2015-10-28 16:49:44 -07:00
Ying Wang a174261042 Normalize the product makefile path in inherit-product.
Some vendor product makefiles call $(inherit-product) on the same
product makefile with different paths, by using "../" in relative paths.
However inherit-product requires unique path as ID for a product
makefile, for bookkeeping purpose.
Normalize the product makefile path in inherit-product, if the path
contains "../".

Change-Id: I1a864ce120c713d8e79ec179213b9fc9352aba53
2015-10-28 15:20:41 -07:00
Colin Cross 0dc087dff7 Merge "Remove use of .INTERMEDIATE" am: dda5e96b14
am: 24ef58d163

* commit '24ef58d1638716c1fdbc130e6cf871d052e9d672':
  Remove use of .INTERMEDIATE
2015-10-28 21:15:27 +00:00
Colin Cross 24ef58d163 Merge "Remove use of .INTERMEDIATE"
am: dda5e96b14

* commit 'dda5e96b144c15a75d625ceac7e92b50cf9c363a':
  Remove use of .INTERMEDIATE
2015-10-28 21:12:02 +00:00
Colin Cross 42470e915d Remove use of .INTERMEDIATE
make 3.81 has a bug where combining an up-to-date .INTERMEDIATE rule
with -j causes an infinite loop (http://savannah.gnu.org/bugs/?15919).
.INTERMEDIATE was only necessary to support multiple outputs while only
running a command once, remove .INTERMEDIATE by replacing
$(KATI_OUTPUTS) dependencies with $(KATI_BUILD_NINJA).  We can assume
that $(KATI_NINJA_SH) will be updated at the same time as
$(KATI_BUILD_NINJA), and not explicitly depend on it.

Also remove generateonly and fastincremental, which are no longer
necessary and were overcomplicating ninja.mk.  kati now always runs due
to FORCE, and ninja is run by a phony rule that depends on
$(KATI_BUILD_NINJA).

Bug: 25344116
Change-Id: I99d2713b1532ea11d83da9a11b1be26cfe13a5d2
2015-10-28 13:31:40 -07:00
Tao Bao db45efa647 Honor TARGET_NO_RECOVERY flag.
Don't generate recovery.img when calling 'make dist' if
TARGET_NO_RECOVERY is set. The build system passes the flag to the
packaging script which then generates recovery.img conditionally.

Bug: 25329471
Change-Id: Ifbc999300d5c31e897878f81e231ae7dd2aca660
2015-10-27 20:00:10 -07:00
Colin Cross 1ac51c013e Merge "Error out early on nonstandard JDK directory layouts" am: 506113d267
am: e95cf75293

* commit 'e95cf75293c7111957229ae898ad1afd453ead50':
  Error out early on nonstandard JDK directory layouts
2015-10-27 19:22:07 +00:00
Colin Cross e95cf75293 Merge "Error out early on nonstandard JDK directory layouts"
am: 506113d267

* commit '506113d2671e8f3dd5a46b63b7996accec6acb35':
  Error out early on nonstandard JDK directory layouts
2015-10-27 19:17:38 +00:00
Colin Cross 506113d267 Merge "Error out early on nonstandard JDK directory layouts" 2015-10-27 19:12:40 +00:00
Ying Wang fd06048887 Merge "Revert "Enable gold linker for aarch64."" am: edfa0981c9
am: 5eccb209d0

* commit '5eccb209d06bcc9c7502d5767dbc6c9e2fc7f8c5':
  Revert "Enable gold linker for aarch64."
2015-10-27 18:55:19 +00:00
Ying Wang 5eccb209d0 Merge "Revert "Enable gold linker for aarch64.""
am: edfa0981c9

* commit 'edfa0981c958453215fbbfccdcf6d05662cf9583':
  Revert "Enable gold linker for aarch64."
2015-10-27 18:49:07 +00:00
Ying Wang edfa0981c9 Merge "Revert "Enable gold linker for aarch64."" 2015-10-27 18:36:47 +00:00
Dan Albert e4256f5759 Revert "Enable gold linker for aarch64."
Causes build failures on Darwin.

prebuilts/gcc/darwin-x86/aarch64/aarch64-linux-android-4.9/aarch64-linux-android/bin/ld.gold: warning: cannot scan executable section 5 of out/target/product/flounder/obj/SHARED_LIBRARIES/libdl_intermediates/libdl.o for Cortex-A53 erratum because it has no mapping symbols.

prebuilts/gcc/darwin-x86/aarch64/aarch64-linux-android-4.9/aarch64-linux-android/bin/ld.gold: warning: cannot scan executable section 8 of out/target/product/flounder/obj/SHARED_LIBRARIES/libdl_intermediates/libdl.o for Cortex-A53 erratum because it has no mapping symbols.

prebuilts/gcc/darwin-x86/aarch64/aarch64-linux-android-4.9/aarch64-linux-android/bin/ld.gold: warning: cannot scan executable section 11 of out/target/product/flounder/obj/SHARED_LIBRARIES/libdl_intermediates/libdl.o for Cortex-A53 erratum because it has no mapping symbols.

prebuilts/gcc/darwin-x86/aarch64/aarch64-linux-android-4.9/aarch64-linux-android/bin/ld.gold: error: treating warnings as errors

This reverts commit 127d110172.

Change-Id: I1d3de90f5ae777b66a8f94fbcc9ccde8a9e3001c
2015-10-27 18:18:46 +00:00
Ying Wang 86a7c218e0 Merge "Strip LOCAL_MODULE before referencing it." am: 411b2f90a9
am: fbb85a95b5

* commit 'fbb85a95b5d1089c335106c33ce3613e3e39702a':
  Strip LOCAL_MODULE before referencing it.
2015-10-27 00:16:05 +00:00
Ying Wang fbb85a95b5 Merge "Strip LOCAL_MODULE before referencing it."
am: 411b2f90a9

* commit '411b2f90a95e5a471f248ec769826cf22dd12296':
  Strip LOCAL_MODULE before referencing it.
2015-10-27 00:12:53 +00:00
Ying Wang 227cdd02c4 Strip LOCAL_MODULE before referencing it.
Bug: 24985980
Change-Id: Ic97e852aa7a8bf2d9224d3d6656d33145cc67800
(cherry-pick from commit 4d20a32a79)
2015-10-26 17:06:08 -07:00
Dan Albert bcaf671bb6 Merge "Drop GCC back to C++11." am: dba46710fe
am: a01ec70d92

* commit 'a01ec70d92fa95d0851171f9f40eeb6d4dcb7dd3':
  Drop GCC back to C++11.
2015-10-26 21:14:46 +00:00
Dan Albert a01ec70d92 Merge "Drop GCC back to C++11."
am: dba46710fe

* commit 'dba46710fe5bb0ea3bea8c3c0fea76273d343ff3':
  Drop GCC back to C++11.
2015-10-26 21:10:15 +00:00
Dan Albert da63739767 Drop GCC back to C++11.
Our GCC does not use a valid C++14 ABI.

Bug: http://b/25022512
Change-Id: I6f4b3450137c24a6a0c00bf956bae7a0ba280094
2015-10-26 11:28:33 -07:00
Than McIntosh 77bdc82f5f Merge "Enable gold linker for aarch64." am: 14c2d968b9
am: 52cc54dcee

* commit '52cc54dceeb17fa6818b6a3e1496c894cb2bd231':
  Enable gold linker for aarch64.
2015-10-26 12:31:34 +00:00
Than McIntosh 52cc54dcee Merge "Enable gold linker for aarch64."
am: 14c2d968b9

* commit '14c2d968b913573e7a21fe72723254c9cc277210':
  Enable gold linker for aarch64.
2015-10-26 12:27:28 +00:00
Than McIntosh 14c2d968b9 Merge "Enable gold linker for aarch64." 2015-10-26 12:22:26 +00:00
Colin Cross ca440e58d1 Merge "Add dummy description for GET-INSTALL-PATH" am: 9d192f1c10
am: bc20982b40

* commit 'bc20982b405a228984f9242957a23db6d463aad2':
  Add dummy description for GET-INSTALL-PATH
2015-10-24 21:15:53 +00:00
Colin Cross bc20982b40 Merge "Add dummy description for GET-INSTALL-PATH"
am: 9d192f1c10

* commit '9d192f1c1090a757c9218296457482d2ba737989':
  Add dummy description for GET-INSTALL-PATH
2015-10-24 21:13:05 +00:00
Colin Cross 9d192f1c10 Merge "Add dummy description for GET-INSTALL-PATH" 2015-10-24 21:09:34 +00:00
Colin Cross ec1b561981 Add dummy description for GET-INSTALL-PATH
kati takes the first @echo command in a rule and turns it in to a ninja
description that gets pretty-printed.  The GET-INSTALL-PATH is only
@echo commands and is parsed by development/testrunner/runtest.py, so
it fails to parse the pretty-printed first test.

Add a dummy @echo to GET-INSTALL-PATH for kati to use as the
description, so the rest of the @echo commands are left unmodified.

Change-Id: I192fde48b26726a2f6760448f819243bd2f21312
2015-10-23 21:38:12 -07:00
Colin Cross 112753ca55 Error out early on nonstandard JDK directory layouts
On Darwin, javac may be located in a nonstandard directory layout such as:
/System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/javac
The sed command to replace bin/javac with lib/tools.jar would fail to
match, resulting in the HOST_JDK_TOOLS_JAR being set to the javac path.
Since javac exists, the checks for missing tools.jar would all pass, and
javac would be added to the classpath instead of tools.jar, and causing
hard to debug errors about missing com.sun.javadoc when building doclava.

Change the sed command to replace /javac$, which should always be found,
with /../lib/tools.jar.

Change-Id: I5072f04636a5c14b3aeaa3a5cc3b366feae89c37
2015-10-23 19:00:43 -07:00
Ying Wang 8ac0c4bebb Merge "Normalize java source file paths before running "sort -u"." am: 0d4dad46f4
am: 471d347b89

* commit '471d347b8928e6b030d94869a2a9229086b79528':
  Normalize java source file paths before running "sort -u".
2015-10-23 20:28:15 +00:00
Ying Wang 471d347b89 Merge "Normalize java source file paths before running "sort -u"."
am: 0d4dad46f4

* commit '0d4dad46f44d6f4a498a1a8205a4b26ae2e55ac5':
  Normalize java source file paths before running "sort -u".
2015-10-23 20:24:52 +00:00
Ying Wang 4d68879ca6 Normalize java source file paths before running "sort -u".
We rely on "sort -u" to dedupe aidl/logtags generated java files added
by both from $(all_java_sources) and from "find
$(PRIVATE_SOURCE_INTERMEDIATES_DIR) -name '*.java".
But "sort -u" doesn't work if any of the aidl/logtags source file path
has "../" in it.
This change fixes this issue by normalizing the source file paths before
passing them to "sort -u".

Change-Id: I12d2c4e0397bed9f426a1ed9b13608d72d01e0df
2015-10-23 13:19:47 -07:00
Tao Bao 5ddc4ac802 Merge "Bump up the BBOTA version to 4." am: ac4ec1a4ea
am: ada3927e53

* commit 'ada3927e53f5ff99beb6919162ea186924cb7621':
  Bump up the BBOTA version to 4.
2015-10-23 18:49:59 +00:00
Tao Bao ada3927e53 Merge "Bump up the BBOTA version to 4."
am: ac4ec1a4ea

* commit 'ac4ec1a4ea83a150e08ccd43f30fe34de52cdebf':
  Bump up the BBOTA version to 4.
2015-10-23 18:45:35 +00:00
Tao Bao ac4ec1a4ea Merge "Bump up the BBOTA version to 4." 2015-10-23 18:38:03 +00:00
Ying Wang a34fb5fe34 Merge "Make sure R.stamp is always created" am: 47e46f7725
am: 3d7584d9c3

* commit '3d7584d9c3b619619eaf10a0110f28f4f802f2cb':
  Make sure R.stamp is always created
2015-10-23 18:22:31 +00:00
Ying Wang 3d7584d9c3 Merge "Make sure R.stamp is always created"
am: 47e46f7725

* commit '47e46f77257e172c3603208587cce55c0a9fc28f':
  Make sure R.stamp is always created
2015-10-23 18:16:45 +00:00
Ying Wang 47e46f7725 Merge "Make sure R.stamp is always created" 2015-10-23 18:09:11 +00:00
Martin Arenlind fb6985e4dc Make sure R.stamp is always created
When an app has a resource directory, but the
directory contain no resources, R.stamp is not created.

This leads to that such apps are always rebuilt,
even when there are no changes.

This patch changes so that an empty R.stamp is
created even if there are no resources.
This leads to that affected apps are not rebuilt
unless changed.

Change-Id: Ia63e5b1913a4456402700b615ba7f9d56d2da852
2015-10-23 11:07:28 -07:00
Tao Bao eba409c4da Bump up the BBOTA version to 4.
To accommodate new changes (such as error correction in [1]) to BBOTA
in N release. We bump up the version to keep the OTA script backward
compatible.

Needs the matching CL in commit
1fdec8685af858c5ff4f45d2e3059186ab5ed2ab.

[1]: commit 0a7b47397db3648afe6f3aeb2abb175934c2cbca

Change-Id: Ib9158b455cd5905fe2d4742ce81feb1b7583054f
2015-10-23 10:45:36 -07:00
Alex Deymo 47d31960d5 Merge "Rename UPDATE_AB_PARTITIONS to AB_OTA_PARTITIONS." am: c82b873b9b
am: 7410ed86c6

* commit '7410ed86c6ffa165ee7cc4b142e9843c18ae61a6':
  Rename UPDATE_AB_PARTITIONS to AB_OTA_PARTITIONS.
2015-10-23 14:51:34 +00:00
Alex Deymo 7410ed86c6 Merge "Rename UPDATE_AB_PARTITIONS to AB_OTA_PARTITIONS."
am: c82b873b9b

* commit 'c82b873b9b6c234da128cdbc0dde6624e45f5b6d':
  Rename UPDATE_AB_PARTITIONS to AB_OTA_PARTITIONS.
2015-10-23 14:48:30 +00:00
Alex Deymo 49be2b115c Rename UPDATE_AB_PARTITIONS to AB_OTA_PARTITIONS.
In order to have all the A/B updater variables in the same AB_OTA_
namespace we rename UPDATE_AB_PARTITIONS to AB_OTA_PARTITIONS.

Bug: None
Test: `make dist` includes the partitions.txt file if properly configured.

Change-Id: Ied4faabd7e2f0ab8a5007afb44ad2f38df8d630d
2015-10-22 18:17:36 -07:00
Ian Pedowitz 36bf4976bb Bump Android to 6.0.1 am: 0a20c942c4 am: 1f9ba9f89e
am: 4919ed4afc

* commit '4919ed4afc0c289683bfb4932640f6f9b52ed9c7':
  Bump Android to 6.0.1
2015-10-22 22:04:15 +00:00
Zach Jang dca5dd4f79 Update security string to 2015-12-01 am: 0f1512bc03 am: 7b4c7fe5b7
am: 5e994e0d9c

* commit '5e994e0d9cb29bbb5e57bb4389086a6e106f6acd':
  Update security string to 2015-12-01
2015-10-22 22:04:07 +00:00
Ian Pedowitz 0a20c942c4 Bump Android to 6.0.1
Bug: 24777474
Change-Id: Ibaca3c2d583aa92c8ca998b6d380ee720b71b1b8
2015-10-22 21:46:00 +00:00
Than McIntosh 127d110172 Enable gold linker for aarch64.
Switches default linker from -fuse-ld-bfd to
-fuse-ld=gold, and enables -Wl,--icf=safe. This
changes reduces /system/lib64/*.so text size
by about 2% for N9.

Change-Id: I0ef2483e1c47c34e63292dad6f6bf532359b733e
2015-10-22 09:44:48 -04:00
Yohann Roussel 8c8c868180 Merge changes from topic \'jack-server-1.3-a3\'
am: e0c7b4ec96

* commit 'e0c7b4ec96d4aa584f79a24aea7c682a114143d8':
  Remove LOCAL_JACK_EXTRA_ARGS
  Allow control of jack used for compilation
  Clean call-jack and its callers
2015-10-22 10:50:40 +00:00
Yohann Roussel e0c7b4ec96 Merge changes from topic 'jack-server-1.3-a3'
* changes:
  Remove LOCAL_JACK_EXTRA_ARGS
  Allow control of jack used for compilation
  Clean call-jack and its callers
2015-10-22 10:46:37 +00:00
Stephen Hines adb12a039a Merge "Revert "Switch from clang 3.6 to new clang repository (with 3.8).""
am: a7918b4948

* commit 'a7918b49488ad0daed6def7459fbf0f9d281b4b5':
  Revert "Switch from clang 3.6 to new clang repository (with 3.8)."
2015-10-21 16:39:12 +00:00
Stephen Hines f7dbab16ff Revert "Switch from clang 3.6 to new clang repository (with 3.8)."
This reverts commit 1332828b6e.

Bug: 25141123

Change-Id: Idd5d8757095b2b370046a84aea76bc95e16f3876
2015-10-21 09:09:38 -07:00
Yohann Roussel 6528ea3086 Remove LOCAL_JACK_EXTRA_ARGS
Use of DEFAULT_JACK_EXTRA_ARGS and LOCAL_JACK_FLAGS provides all needed
support.

(cherry picked from commit d2b2983cc7)

Change-Id: I1cd76836792e7332bc3750408a860400b0957485
2015-10-21 17:22:27 +02:00
Yohann Roussel 8998d57404 Allow control of jack used for compilation
Version of Jack used to compile a module can now be control from
a dedicated mk located in prebuilts/sdk/tools

Bug: 24564814

(cherry picked from commit b68c9a498d)

Change-Id: I7809dc966026ff94b5cb2daa7e2c63762ca4768d
2015-10-21 17:22:05 +02:00
Yohann Roussel b2c5558435 Clean call-jack and its callers
This is possible now that we have the new Jack server.
Also fix dependency from dex/jack target to jack script
instead of jack.jar.

(cherry picked from commit 5e50b34221)

Change-Id: I8e7aa5087ba8d73cc93140ddfca8f4ab2f505175
2015-10-21 17:02:25 +02:00
Stephen Hines bbbd421809 Merge "Switch from clang 3.6 to new clang repository (with 3.8)."
am: f5782d6097

* commit 'f5782d609724b5f41506433392ca51e1bed9c828':
  Switch from clang 3.6 to new clang repository (with 3.8).
2015-10-21 00:22:02 +00:00
Colin Cross 8b63d67e1b Merge changes I2ba90314,I5f47307d
am: fc8b331858

* commit 'fc8b331858747f8207e3861c0ada2c4fd359f648':
  makeparallel: prepend flags to ninja command line
  Put NINJA_ARGS last
2015-10-21 00:21:52 +00:00
Stephen Hines f5782d6097 Merge "Switch from clang 3.6 to new clang repository (with 3.8)." 2015-10-21 00:18:05 +00:00
Colin Cross fc8b331858 Merge changes I2ba90314,I5f47307d
* changes:
  makeparallel: prepend flags to ninja command line
  Put NINJA_ARGS last
2015-10-21 00:15:33 +00:00
Andreas Gampe 3c131856ee Merge "Build: Fix DEX2OAT_TARGET_CPU_VARIANT setting"
am: 6c45f4493e

* commit '6c45f4493e125f4632ee0d0ed95d0198018cbb80':
  Build: Fix DEX2OAT_TARGET_CPU_VARIANT setting
2015-10-20 23:50:59 +00:00
Andreas Gampe 6c45f4493e Merge "Build: Fix DEX2OAT_TARGET_CPU_VARIANT setting" 2015-10-20 23:37:36 +00:00
Colin Cross 88dc18a319 Put NINJA_ARGS last
Put NINJA_ARGS at the end of the command line so it can contain tools,
which expect to be last.

Change-Id: I5f47307d01aa52eb74a333b19ffe3a7cd8950b01
2015-10-20 15:12:12 -07:00
Dan Willemsen b93e8250d7 Merge "Stop encoding absolute paths in symbols"
am: 9f576acde6

* commit '9f576acde6c27149c9ca563f0a73e9f1c5e0e768':
  Stop encoding absolute paths in symbols
2015-10-20 20:52:09 +00:00
Dan Willemsen 9f576acde6 Merge "Stop encoding absolute paths in symbols" 2015-10-20 20:46:21 +00:00
Andreas Gampe 847b00bf1b Build: Fix DEX2OAT_TARGET_CPU_VARIANT setting
The secondary variant fallback was not set. The build system expects
the variants, so system properties were malformed for x86-64:

  [dalvik.vm.isa.x86.variant]: [dalvik.vm.isa.x86.features=default]

Bug: 24989387
Change-Id: Idbf54f81494f2650ad56080305807fd6b7ed4161
2015-10-19 18:21:18 -07:00
Zach Jang 0f1512bc03 Update security string to 2015-12-01
Change-Id: I525bab4579449dd285ba87d7ddc9cb36223bf7fd
2015-10-19 17:57:33 -07:00
Christopher Wiley 487cc7beaf Merge "Invoke the aidl-cpp compiler to generate C++"
am: ba39c5690a

* commit 'ba39c5690aae0bcd7102c0030a31b705ce1b92f1':
  Invoke the aidl-cpp compiler to generate C++
2015-10-19 23:49:58 +00:00
Christopher Wiley 2df75d17a8 Invoke the aidl-cpp compiler to generate C++
Bug: 23599697
Test: test application compiles generated code

Change-Id: I35255517dd0b7ef7a82134be1c862093eaa3ce6b
2015-10-19 16:18:03 -07:00
Dan Willemsen 3fc56a1fa1 am 77493047: Merge "Add support for LOCAL_SRC_FILES_EXCLUDE"
* commit '7749304741070af8239e02f68d688fc45fd877d1':
  Add support for LOCAL_SRC_FILES_EXCLUDE
2015-10-19 14:24:53 -07:00
Dan Willemsen 7749304741 Merge "Add support for LOCAL_SRC_FILES_EXCLUDE" 2015-10-19 21:21:40 +00:00
Sami Tolvanen 58a748d37e am 87f58261: Merge "Error correction: Append codes to verified partitions"
* commit '87f582611a5a5c23abf3237abe0e467e46111567':
  Error correction: Append codes to verified partitions
2015-10-19 02:55:51 -07:00
Sami Tolvanen 87f582611a Merge "Error correction: Append codes to verified partitions" 2015-10-19 09:49:18 +00:00
Colin Cross a04abc8e23 Add support for LOCAL_SRC_FILES_EXCLUDE
LOCAL_SRC_FILES_EXCLUDE will be used to filter files out of
LOCAL_SRC_FILES.  A common usage will be to use
LOCAL_SRC_FILES_EXCLUDE_<arch> to remove a source file that will be
replaced with an arch-optimized version.

Change-Id: I75cc6114c47fb784bab65cae8f618c4f395f07bb
2015-10-16 17:33:01 -07:00
Ying Wang 19fcc054bd am 19e4741d: Merge "Use direct dependency on the JNI so files."
* commit '19e4741df60643d4fdb876e77069bb63857a12b2':
  Use direct dependency on the JNI so files.
2015-10-16 01:25:15 +00:00
Ying Wang 19e4741df6 Merge "Use direct dependency on the JNI so files." 2015-10-16 01:19:48 +00:00
Ying Wang d358f826e7 Use direct dependency on the JNI so files.
With the order-only dependency if the jni so files is updated,
make won't rebuild the system.img, which has dependency only on the apk
file.

Bug: 24865400
Change-Id: I9d5bee82b8a712a2c24dabaa0cd4c50174ea219f
2015-10-15 17:50:06 -07:00
Dan Albert b56b2e9aa0 am 5baea143: Merge "Use libgcov OR libclang_rt.profile, not both."
* commit '5baea1436371dea7e14562b17431bcd2b6a55f7d':
  Use libgcov OR libclang_rt.profile, not both.
2015-10-15 18:48:42 +00:00
Dan Albert 5baea14363 Merge "Use libgcov OR libclang_rt.profile, not both." 2015-10-15 18:39:42 +00:00
Steve Fung a6968d8f1d am 2af58637: Merge "Add the Product ID to target_files.zip"
* commit '2af586376d2b99c75a5672c72a704f2031adc0fe':
  Add the Product ID to target_files.zip
2015-10-15 18:19:52 +00:00
Steve Fung 2af586376d Merge "Add the Product ID to target_files.zip" 2015-10-15 18:13:41 +00:00
Peter Qiu cf58d1f5fe am 7d3690eb: Merge "Export include path to D-Bus headers for multilib builds"
* commit '7d3690eb3572477b65c04c7a7964a3367c2f69a6':
  Export include path to D-Bus headers for multilib builds
2015-10-15 04:08:50 +00:00
Peter Qiu 7d3690eb35 Merge "Export include path to D-Bus headers for multilib builds" 2015-10-15 04:00:38 +00:00
Ying Wang ef67c1963f am 84c5ae52: Merge "Use @arg-lsit-file for jar in add-carried-jack-resources"
* commit '84c5ae523201f17b94b5b0afe85a9af3f26c8231':
  Use @arg-lsit-file for jar in add-carried-jack-resources
2015-10-15 01:15:34 +00:00
Ying Wang 3a562a9942 Use @arg-lsit-file for jar in add-carried-jack-resources
Don't pass the arg list as argument in any bash command;
Instead store the arg list to the arg list file and
run "jar @arg-lsit-file".
Note we need to quote the arguments in the arg list file.

This fixed "argument list too long" build error on Mac.

Bug: 24789595
Change-Id: I718f84e540d82bb83516824894a473b2961da278
2015-10-14 17:48:21 -07:00
Dan Willemsen 6a66a887ba Stop encoding absolute paths in symbols
GCC & Clang encode the current working directory into the symbol files.
Even if the binaries are stripped before being installed, the build-id
hash will be different. This means that two different checkouts will
produce different installed binaries, even if the sources are identical.

To prevent this, set PWD=/proc/self/cwd, so that it replaces the
absolute path with the static path /proc/self/cwd. With GCC, use
-fdebug-prefix-map to remove that static path. Our clang does not yet
support this flag, but it was merged in r250094.

This does change the behavior when using gdb -- you now need to be in
$ANDROID_BUILD_TOP before gdb will load the sources.

Bug: 24204119
Change-Id: I792d65b042b7a3fdc78d567c5a6e93cdf0141b9b
2015-10-14 17:30:11 -07:00
Peter Qiu 425e01996a Export include path to D-Bus headers for multilib builds
Bug:None

Change-Id: I6e3898c71f54ede08a27f5be93e95a2b219e5ea6
2015-10-14 16:54:48 -07:00
Ying Wang 5b7aaeaa2e am ed4b0eeb: Merge "Revert "Use @arg-lsit-file for jar in add-carried-jack-resources""
* commit 'ed4b0eeb435903d9be502dcebd2c000f143df575':
  Revert "Use @arg-lsit-file for jar in add-carried-jack-resources"
2015-10-14 23:32:18 +00:00
Ying Wang ed4b0eeb43 Merge "Revert "Use @arg-lsit-file for jar in add-carried-jack-resources"" 2015-10-14 23:09:14 +00:00