OSDN Git Service

android-x86/build.git
8 years agoMerge "build: Add LINUX_KERNEL_COPYING license file"
Lee Campbell [Mon, 9 Nov 2015 20:41:08 +0000 (20:41 +0000)]
Merge "build: Add LINUX_KERNEL_COPYING license file"

8 years agobuild: Add LINUX_KERNEL_COPYING license file
Lee Campbell [Mon, 9 Nov 2015 00:28:15 +0000 (16:28 -0800)]
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

8 years agoMerge "Let qemu_props service set system properties in ro.emu and ro.emulator"
Griff Hazen [Sun, 8 Nov 2015 00:59:09 +0000 (00:59 +0000)]
Merge "Let qemu_props service set system properties in ro.emu and ro.emulator"

8 years agoLet qemu_props service set system properties in ro.emu and ro.emulator
Griff Hazen [Sun, 8 Nov 2015 00:44:44 +0000 (16:44 -0800)]
Let qemu_props service set system properties in ro.emu and ro.emulator

These boot properties are used by android wear emulator to configure
round and chin shaped devices.

Bug: 23324757
Change-Id: I812da02d771bba0ffc63b14459c7de7cbdeed142

8 years agoMerge "Tag "tests" alone doesn't prevent including emma.jar"
Ying Wang [Fri, 6 Nov 2015 19:27:52 +0000 (19:27 +0000)]
Merge "Tag "tests" alone doesn't prevent including emma.jar"

8 years agoTag "tests" alone doesn't prevent including emma.jar
Ying Wang [Fri, 6 Nov 2015 19:22:28 +0000 (11:22 -0800)]
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

8 years agoMerge "Add the build type to META folder in target files.zip"
Steve Fung [Fri, 6 Nov 2015 03:18:35 +0000 (03:18 +0000)]
Merge "Add the build type to META folder in target files.zip"

8 years agoAdd the build type to META folder in target files.zip
Steve Fung [Thu, 5 Nov 2015 10:04:04 +0000 (02:04 -0800)]
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

8 years agoMerge "Use explicitly sized types in zipalign/ziptime"
Dan Willemsen [Thu, 5 Nov 2015 20:28:20 +0000 (20:28 +0000)]
Merge "Use explicitly sized types in zipalign/ziptime"

8 years agoMerge "Enable gold linker for aarch64."
Than McIntosh [Thu, 5 Nov 2015 11:49:56 +0000 (11:49 +0000)]
Merge "Enable gold linker for aarch64."

8 years agoMerge "Allow missing SONAME in .toc files"
Shinichiro Hamaji [Thu, 5 Nov 2015 04:02:37 +0000 (04:02 +0000)]
Merge "Allow missing SONAME in .toc files"

8 years agoAllow missing SONAME in .toc files
Shinichiro Hamaji [Thu, 5 Nov 2015 03:51:08 +0000 (12:51 +0900)]
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

8 years agoMerge "Use .KATI_RESTAT to reduce unnecessary rebuilds of binaries"
Shinichiro Hamaji [Thu, 5 Nov 2015 00:46:04 +0000 (00:46 +0000)]
Merge "Use .KATI_RESTAT to reduce unnecessary rebuilds of binaries"

8 years agoEnable gold linker for aarch64.
Than McIntosh [Thu, 5 Nov 2015 00:21:00 +0000 (19:21 -0500)]
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

8 years agoUse explicitly sized types in zipalign/ziptime
Dan Willemsen [Wed, 4 Nov 2015 22:08:20 +0000 (14:08 -0800)]
Use explicitly sized types in zipalign/ziptime

getLongLE would return a 64-bit number with the upper 32-bits set when
decoding a 32-bit number with the top bit set. Per the zip file format,
it was only expected to return a 32-bit number. Use explicitly sized
types so that we use the proper sizes and don't do any implicit
extensions.

Change-Id: I5a4304dc99ce5f8f17284d4ca3094ae115207a1e

8 years agoMerge "selinux: Grant all processes the domain_deprecated attribute"
Jeffrey Vander Stoep [Wed, 4 Nov 2015 18:47:32 +0000 (18:47 +0000)]
Merge "selinux: Grant all processes the domain_deprecated attribute"

8 years agoMerge "Don't run ziptime on host zip files."
Ying Wang [Wed, 4 Nov 2015 18:13:03 +0000 (18:13 +0000)]
Merge "Don't run ziptime on host zip files."

8 years agoDon't run ziptime on host zip files.
Ying Wang [Wed, 4 Nov 2015 18:06:25 +0000 (10:06 -0800)]
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

8 years agoselinux: Grant all processes the domain_deprecated attribute
Jeff Vander Stoep [Wed, 4 Nov 2015 16:49:07 +0000 (08:49 -0800)]
selinux: Grant all processes the domain_deprecated attribute

Bug: 25433265
Change-Id: Iafad5abd6e75c5a46f844ef3e744adf1c904b362

8 years agoUse .KATI_RESTAT to reduce unnecessary rebuilds of binaries
Shinichiro Hamaji [Fri, 9 Oct 2015 05:36:04 +0000 (14:36 +0900)]
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

8 years agoMerge "Sort out ANDROID_GOALS, KATI_GOALS and NINJA_GOALS."
Ying Wang [Wed, 4 Nov 2015 01:11:14 +0000 (01:11 +0000)]
Merge "Sort out ANDROID_GOALS, KATI_GOALS and NINJA_GOALS."

8 years agoSort out ANDROID_GOALS, KATI_GOALS and NINJA_GOALS.
Ying Wang [Wed, 28 Oct 2015 19:34:03 +0000 (12:34 -0700)]
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
80e46c7c5cb7b1d80114876d301798a8624b4200.
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

8 years agoMerge "Don't use ziptime with unbundled builds"
Dan Willemsen [Wed, 4 Nov 2015 00:24:59 +0000 (00:24 +0000)]
Merge "Don't use ziptime with unbundled builds"

8 years agoDon't use ziptime with unbundled builds
Dan Willemsen [Wed, 4 Nov 2015 00:09:49 +0000 (16:09 -0800)]
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

8 years agoMerge "Docs: Add Security tab to top"
Clay Murphy [Tue, 3 Nov 2015 23:45:56 +0000 (23:45 +0000)]
Merge "Docs: Add Security tab to top"

8 years agoMerge "Remove changing uids/timestamps from zip/jar files"
Dan Willemsen [Tue, 3 Nov 2015 21:38:45 +0000 (21:38 +0000)]
Merge "Remove changing uids/timestamps from zip/jar files"

8 years agoMerge "Don\'t check the host JDK tools when build/core/config.mk is called from envse...
Ying Wang [Tue, 3 Nov 2015 00:40:38 +0000 (00:40 +0000)]
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.

8 years agoMerge "Don't check the host JDK tools when build/core/config.mk is called from envset...
Ying Wang [Tue, 3 Nov 2015 00:17:43 +0000 (00:17 +0000)]
Merge "Don't check the host JDK tools when build/core/config.mk is called from envsetup.sh."

8 years agoDon't check the host JDK tools when build/core/config.mk is called from envsetup.sh.
Ying Wang [Mon, 2 Nov 2015 23:56:58 +0000 (15:56 -0800)]
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

8 years agoRemove changing uids/timestamps from zip/jar files
Dan Willemsen [Thu, 29 Oct 2015 23:33:05 +0000 (16:33 -0700)]
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

8 years agoMerge "envsetup,product,ninja: enable symlink traversal"
Gaurav Shah [Mon, 2 Nov 2015 22:27:27 +0000 (22:27 +0000)]
Merge "envsetup,product,ninja: enable symlink traversal"
am: f589c7b442

* commit 'f589c7b442feb02843bdf82305b599b686fc5204':
  envsetup,product,ninja: enable symlink traversal

8 years agoMerge "Support build targets with no installable apps/packages"
Gaurav Shah [Mon, 2 Nov 2015 22:27:20 +0000 (22:27 +0000)]
Merge "Support build targets with no installable apps/packages"
am: aed6805380

* commit 'aed6805380810f51bb0d8b93fc5eac005a6de364':
  Support build targets with no installable apps/packages

8 years agoMerge "build: Add extra build customization for /product"
Gaurav Shah [Mon, 2 Nov 2015 22:27:14 +0000 (22:27 +0000)]
Merge "build: Add extra build customization for /product"
am: a80f1e3257

* commit 'a80f1e32575db5d66f4b4e6efdf79dd10dd2295e':
  build: Add extra build customization for /product

8 years agoMerge "build: Add support for defining products in /product"
Gaurav Shah [Mon, 2 Nov 2015 22:27:08 +0000 (22:27 +0000)]
Merge "build: Add support for defining products in /product"
am: acb8a7c1f8

* commit 'acb8a7c1f8cacaf136edba1a25d64467d352a432':
  build: Add support for defining products in /product

8 years agoMerge "envsetup,product,ninja: enable symlink traversal"
Gaurav Shah [Mon, 2 Nov 2015 22:22:50 +0000 (22:22 +0000)]
Merge "envsetup,product,ninja: enable symlink traversal"

8 years agoMerge "Support build targets with no installable apps/packages"
Gaurav Shah [Mon, 2 Nov 2015 22:22:40 +0000 (22:22 +0000)]
Merge "Support build targets with no installable apps/packages"

8 years agoMerge "build: Add extra build customization for /product"
Gaurav Shah [Mon, 2 Nov 2015 22:22:32 +0000 (22:22 +0000)]
Merge "build: Add extra build customization for /product"

8 years agoMerge "build: Add support for defining products in /product"
Gaurav Shah [Mon, 2 Nov 2015 22:22:22 +0000 (22:22 +0000)]
Merge "build: Add support for defining products in /product"

8 years agoenvsetup,product,ninja: enable symlink traversal
Will Drewry [Wed, 7 Oct 2015 02:40:11 +0000 (19:40 -0700)]
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

8 years agoSupport build targets with no installable apps/packages
Gaurav Shah [Sun, 23 Aug 2015 16:40:05 +0000 (09:40 -0700)]
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

8 years agobuild: Add extra build customization for /product
Lee Campbell [Thu, 20 Aug 2015 22:39:56 +0000 (15:39 -0700)]
build: Add extra build customization for /product

This makes /product more consistent with /device & /vendor

BUG: 22030305

Change-Id: Ic65bfde7fb3e9fab8c8fb8d99af15404574abde0

8 years agobuild: Add support for defining products in /product
Lee Campbell [Thu, 20 Aug 2015 20:55:45 +0000 (13:55 -0700)]
build: Add support for defining products in /product

The build will now search for AndroidProducts.mk in /product

BUG: 22030305

Change-Id: I2d067d95d0c8dc1341a55167f9ac7f6926e04ce3

8 years agoMerge "Add _asan suffix to ro.build.flavor for ASAN builds."
Ying Wang [Mon, 2 Nov 2015 19:52:04 +0000 (19:52 +0000)]
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.

8 years agoMerge "Fix "make product-graph" and "make dump-products"."
Ying Wang [Mon, 2 Nov 2015 19:51:57 +0000 (19:51 +0000)]
Merge "Fix "make product-graph" and "make dump-products"."
am: 888f30aa44

* commit '888f30aa448370206a49ff7df940e134b8ff7017':
  Fix "make product-graph" and "make dump-products".

8 years agoMerge "Add _asan suffix to ro.build.flavor for ASAN builds."
Ying Wang [Mon, 2 Nov 2015 19:47:31 +0000 (19:47 +0000)]
Merge "Add _asan suffix to ro.build.flavor for ASAN builds."

8 years agoMerge "Fix "make product-graph" and "make dump-products"."
Ying Wang [Mon, 2 Nov 2015 19:46:53 +0000 (19:46 +0000)]
Merge "Fix "make product-graph" and "make dump-products"."

8 years agoDocs: Add Security tab to top
Clay Murphy [Tue, 20 Oct 2015 22:16:12 +0000 (15:16 -0700)]
Docs: Add Security tab to top

Bug: 24908502
Change-Id: If3331bc4ba84a8694bc30cfa81d9dc080e93fa09

8 years agoMerge "Revert "Remove changing uids/timestamps from zip/jar files""
Dan Willemsen [Thu, 29 Oct 2015 21:33:39 +0000 (21:33 +0000)]
Merge "Revert "Remove changing uids/timestamps from zip/jar files""
am: 49d8c5196e

* commit '49d8c5196eb690fc987673c27cb61087c5886be4':
  Revert "Remove changing uids/timestamps from zip/jar files"

8 years agoMerge "Revert "Remove changing uids/timestamps from zip/jar files""
Dan Willemsen [Thu, 29 Oct 2015 21:28:17 +0000 (21:28 +0000)]
Merge "Revert "Remove changing uids/timestamps from zip/jar files""

8 years agoRevert "Remove changing uids/timestamps from zip/jar files"
Dan Willemsen [Thu, 29 Oct 2015 21:26:18 +0000 (21:26 +0000)]
Revert "Remove changing uids/timestamps from zip/jar files"

This reverts commit 3c2c064c8791ed2d4b9d6780d7b87f406ab78f10.

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

Bug: 24201956
Change-Id: I48ee95808924f6b2221f0a49ab205c2565096b1f

8 years agoMerge "Remove changing uids/timestamps from zip/jar files"
Dan Willemsen [Thu, 29 Oct 2015 19:12:37 +0000 (19:12 +0000)]
Merge "Remove changing uids/timestamps from zip/jar files"
am: 9f25219371

* commit '9f252193714c82dbce702e8055ffaa7eec4afe66':
  Remove changing uids/timestamps from zip/jar files

8 years agoMerge "Remove changing uids/timestamps from zip/jar files"
Dan Willemsen [Thu, 29 Oct 2015 19:07:36 +0000 (19:07 +0000)]
Merge "Remove changing uids/timestamps from zip/jar files"

8 years agoRemove changing uids/timestamps from zip/jar files
Dan Willemsen [Tue, 27 Oct 2015 23:25:29 +0000 (16:25 -0700)]
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

8 years agoMerge "Honor TARGET_NO_RECOVERY flag."
Tao Bao [Thu, 29 Oct 2015 16:45:31 +0000 (16:45 +0000)]
Merge "Honor TARGET_NO_RECOVERY flag."
am: c448e91c3d

* commit 'c448e91c3d3d095f8f200c9925f7db2ad525132f':
  Honor TARGET_NO_RECOVERY flag.

8 years agoMerge "Error correction: Use block_image_recover in block OTAs"
Sami Tolvanen [Thu, 29 Oct 2015 16:45:14 +0000 (16:45 +0000)]
Merge "Error correction: Use block_image_recover in block OTAs"
am: fe4e86c7fd

* commit 'fe4e86c7fd1b9c8903fda194b8515451c477ced9':
  Error correction: Use block_image_recover in block OTAs

8 years agoMerge "Honor TARGET_NO_RECOVERY flag."
Tao Bao [Thu, 29 Oct 2015 16:13:52 +0000 (16:13 +0000)]
Merge "Honor TARGET_NO_RECOVERY flag."

8 years agoMerge "Error correction: Use block_image_recover in block OTAs"
Sami Tolvanen [Thu, 29 Oct 2015 16:05:46 +0000 (16:05 +0000)]
Merge "Error correction: Use block_image_recover in block OTAs"

8 years agoError correction: Use block_image_recover in block OTAs
Sami Tolvanen [Thu, 25 Jun 2015 10:48:29 +0000 (11:48 +0100)]
Error correction: Use block_image_recover in block OTAs

If block_image_verify fails, attempt to recover using FEC before giving up.

Bug: 21893453
Change-Id: Ibc1fe5d28b2a8099d2b5094277b572ec08229c3a

8 years agoAdd _asan suffix to ro.build.flavor for ASAN builds.
Ying Wang [Thu, 29 Oct 2015 01:45:03 +0000 (18:45 -0700)]
Add _asan suffix to ro.build.flavor for ASAN builds.

Bug: 25344475
Change-Id: I27f2472906631239ca725ee09da2ab791cad2195

8 years agoMerge "Normalize the product makefile path in inherit-product."
Ying Wang [Wed, 28 Oct 2015 23:55:10 +0000 (23:55 +0000)]
Merge "Normalize the product makefile path in inherit-product."
am: aabff90bfe

* commit 'aabff90bfe2312a95d3cf57564845fef8dc469a2':
  Normalize the product makefile path in inherit-product.

8 years agoMerge "Normalize the product makefile path in inherit-product."
Ying Wang [Wed, 28 Oct 2015 23:51:57 +0000 (23:51 +0000)]
Merge "Normalize the product makefile path in inherit-product."

8 years agoFix "make product-graph" and "make dump-products".
Ying Wang [Wed, 28 Oct 2015 23:42:39 +0000 (16:42 -0700)]
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

8 years agoNormalize the product makefile path in inherit-product.
Ying Wang [Wed, 28 Oct 2015 21:33:40 +0000 (14:33 -0700)]
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

8 years agoMerge "Remove use of .INTERMEDIATE"
Colin Cross [Wed, 28 Oct 2015 21:12:02 +0000 (21:12 +0000)]
Merge "Remove use of .INTERMEDIATE"
am: dda5e96b14

* commit 'dda5e96b144c15a75d625ceac7e92b50cf9c363a':
  Remove use of .INTERMEDIATE

8 years agoMerge "Remove use of .INTERMEDIATE"
Colin Cross [Wed, 28 Oct 2015 21:09:05 +0000 (21:09 +0000)]
Merge "Remove use of .INTERMEDIATE"

8 years agoRemove use of .INTERMEDIATE
Colin Cross [Wed, 28 Oct 2015 20:28:11 +0000 (13:28 -0700)]
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

8 years agoHonor TARGET_NO_RECOVERY flag.
Tao Bao [Wed, 28 Oct 2015 02:25:18 +0000 (19:25 -0700)]
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

8 years agoMerge "Move arm64 target to clang by default."
Chih-hung Hsieh [Tue, 27 Oct 2015 23:12:23 +0000 (23:12 +0000)]
Merge "Move arm64 target to clang by default."
am: befb82f204

* commit 'befb82f20429b469aaebf6c8e7d0a2c4a0d414e3':
  Move arm64 target to clang by default.

8 years agoMerge "Move arm target to clang by default."
Chih-hung Hsieh [Tue, 27 Oct 2015 23:12:13 +0000 (23:12 +0000)]
Merge "Move arm target to clang by default."
am: 873d394c54

* commit '873d394c543e2d0ac96736db77b88e41acb5bc36':
  Move arm target to clang by default.

8 years agoMerge "Move arm64 target to clang by default."
Chih-hung Hsieh [Tue, 27 Oct 2015 23:02:26 +0000 (23:02 +0000)]
Merge "Move arm64 target to clang by default."

8 years agoMerge "Move arm target to clang by default."
Chih-hung Hsieh [Tue, 27 Oct 2015 23:02:10 +0000 (23:02 +0000)]
Merge "Move arm target to clang by default."

8 years agoMove arm64 target to clang by default.
Chih-Hung Hsieh [Tue, 27 Oct 2015 20:44:53 +0000 (13:44 -0700)]
Move arm64 target to clang by default.

Bug: 23163853
Change-Id: I59c311f552ca060bc7bd034fa4f1c03eb24802d5

8 years agoMove arm target to clang by default.
Chih-Hung Hsieh [Tue, 27 Oct 2015 20:42:34 +0000 (13:42 -0700)]
Move arm target to clang by default.

Bug: 23163853
Change-Id: I4cb95ed652ca697461e2fb22811779aa2df8d262

8 years agoMerge "Error out early on nonstandard JDK directory layouts"
Colin Cross [Tue, 27 Oct 2015 19:17:38 +0000 (19:17 +0000)]
Merge "Error out early on nonstandard JDK directory layouts"
am: 506113d267

* commit '506113d2671e8f3dd5a46b63b7996accec6acb35':
  Error out early on nonstandard JDK directory layouts

8 years agoMerge "Error out early on nonstandard JDK directory layouts"
Colin Cross [Tue, 27 Oct 2015 19:12:40 +0000 (19:12 +0000)]
Merge "Error out early on nonstandard JDK directory layouts"

8 years agoMerge "Revert "Enable gold linker for aarch64.""
Ying Wang [Tue, 27 Oct 2015 18:49:07 +0000 (18:49 +0000)]
Merge "Revert "Enable gold linker for aarch64.""
am: edfa0981c9

* commit 'edfa0981c958453215fbbfccdcf6d05662cf9583':
  Revert "Enable gold linker for aarch64."

8 years agoMerge "Revert "Enable gold linker for aarch64.""
Ying Wang [Tue, 27 Oct 2015 18:36:47 +0000 (18:36 +0000)]
Merge "Revert "Enable gold linker for aarch64.""

8 years agoRevert "Enable gold linker for aarch64."
Dan Albert [Tue, 27 Oct 2015 18:18:46 +0000 (18:18 +0000)]
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 127d110172818c7dce14fefcc72b07a18686ee9c.

Change-Id: I1d3de90f5ae777b66a8f94fbcc9ccde8a9e3001c

8 years agoMerge "Strip LOCAL_MODULE before referencing it."
Ying Wang [Tue, 27 Oct 2015 00:12:53 +0000 (00:12 +0000)]
Merge "Strip LOCAL_MODULE before referencing it."
am: 411b2f90a9

* commit '411b2f90a95e5a471f248ec769826cf22dd12296':
  Strip LOCAL_MODULE before referencing it.

8 years agoMerge "Strip LOCAL_MODULE before referencing it."
Ying Wang [Tue, 27 Oct 2015 00:08:05 +0000 (00:08 +0000)]
Merge "Strip LOCAL_MODULE before referencing it."

8 years agoStrip LOCAL_MODULE before referencing it.
Ying Wang [Fri, 16 Oct 2015 00:47:09 +0000 (17:47 -0700)]
Strip LOCAL_MODULE before referencing it.

Bug: 24985980
Change-Id: Ic97e852aa7a8bf2d9224d3d6656d33145cc67800
(cherry-pick from commit 4d20a32a793a4a52d53b3a3a8e66cf04089093dc)

8 years agoMerge "Drop GCC back to C++11."
Dan Albert [Mon, 26 Oct 2015 21:10:15 +0000 (21:10 +0000)]
Merge "Drop GCC back to C++11."
am: dba46710fe

* commit 'dba46710fe5bb0ea3bea8c3c0fea76273d343ff3':
  Drop GCC back to C++11.

8 years agoMerge "Drop GCC back to C++11."
Dan Albert [Mon, 26 Oct 2015 21:05:39 +0000 (21:05 +0000)]
Merge "Drop GCC back to C++11."

8 years agoDrop GCC back to C++11.
Dan Albert [Mon, 26 Oct 2015 18:09:24 +0000 (11:09 -0700)]
Drop GCC back to C++11.

Our GCC does not use a valid C++14 ABI.

Bug: http://b/25022512
Change-Id: I6f4b3450137c24a6a0c00bf956bae7a0ba280094

8 years agoMerge "Enable gold linker for aarch64."
Than McIntosh [Mon, 26 Oct 2015 12:27:28 +0000 (12:27 +0000)]
Merge "Enable gold linker for aarch64."
am: 14c2d968b9

* commit '14c2d968b913573e7a21fe72723254c9cc277210':
  Enable gold linker for aarch64.

8 years agoMerge "Enable gold linker for aarch64."
Than McIntosh [Mon, 26 Oct 2015 12:22:26 +0000 (12:22 +0000)]
Merge "Enable gold linker for aarch64."

8 years agoMerge "Add dummy description for GET-INSTALL-PATH"
Colin Cross [Sat, 24 Oct 2015 21:13:05 +0000 (21:13 +0000)]
Merge "Add dummy description for GET-INSTALL-PATH"
am: 9d192f1c10

* commit '9d192f1c1090a757c9218296457482d2ba737989':
  Add dummy description for GET-INSTALL-PATH

8 years agoMerge "Add dummy description for GET-INSTALL-PATH"
Colin Cross [Sat, 24 Oct 2015 21:09:34 +0000 (21:09 +0000)]
Merge "Add dummy description for GET-INSTALL-PATH"

8 years agoAdd dummy description for GET-INSTALL-PATH
Colin Cross [Sat, 24 Oct 2015 04:38:12 +0000 (21:38 -0700)]
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

8 years agoError out early on nonstandard JDK directory layouts
Colin Cross [Fri, 23 Oct 2015 21:33:51 +0000 (14:33 -0700)]
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

8 years agoMerge "Normalize java source file paths before running "sort -u"."
Ying Wang [Fri, 23 Oct 2015 20:24:52 +0000 (20:24 +0000)]
Merge "Normalize java source file paths before running "sort -u"."
am: 0d4dad46f4

* commit '0d4dad46f44d6f4a498a1a8205a4b26ae2e55ac5':
  Normalize java source file paths before running "sort -u".

8 years agoMerge "Normalize java source file paths before running "sort -u"."
Ying Wang [Fri, 23 Oct 2015 20:21:10 +0000 (20:21 +0000)]
Merge "Normalize java source file paths before running "sort -u"."

8 years agoNormalize java source file paths before running "sort -u".
Ying Wang [Thu, 22 Oct 2015 23:30:00 +0000 (16:30 -0700)]
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

8 years agoMerge "Bump up the BBOTA version to 4."
Tao Bao [Fri, 23 Oct 2015 18:45:35 +0000 (18:45 +0000)]
Merge "Bump up the BBOTA version to 4."
am: ac4ec1a4ea

* commit 'ac4ec1a4ea83a150e08ccd43f30fe34de52cdebf':
  Bump up the BBOTA version to 4.

8 years agoMerge "Bump up the BBOTA version to 4."
Tao Bao [Fri, 23 Oct 2015 18:38:03 +0000 (18:38 +0000)]
Merge "Bump up the BBOTA version to 4."

8 years agoMerge "Make sure R.stamp is always created"
Ying Wang [Fri, 23 Oct 2015 18:16:45 +0000 (18:16 +0000)]
Merge "Make sure R.stamp is always created"
am: 47e46f7725

* commit '47e46f77257e172c3603208587cce55c0a9fc28f':
  Make sure R.stamp is always created

8 years agoMerge "Make sure R.stamp is always created"
Ying Wang [Fri, 23 Oct 2015 18:09:11 +0000 (18:09 +0000)]
Merge "Make sure R.stamp is always created"

8 years agoMake sure R.stamp is always created
Martin Arenlind [Tue, 15 Sep 2015 13:52:56 +0000 (15:52 +0200)]
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

8 years agoBump up the BBOTA version to 4.
Tao Bao [Wed, 21 Oct 2015 20:30:43 +0000 (13:30 -0700)]
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

8 years agoMerge "Rename UPDATE_AB_PARTITIONS to AB_OTA_PARTITIONS."
Alex Deymo [Fri, 23 Oct 2015 14:48:30 +0000 (14:48 +0000)]
Merge "Rename UPDATE_AB_PARTITIONS to AB_OTA_PARTITIONS."
am: c82b873b9b

* commit 'c82b873b9b6c234da128cdbc0dde6624e45f5b6d':
  Rename UPDATE_AB_PARTITIONS to AB_OTA_PARTITIONS.