Commit graph

8803 commits

Author SHA1 Message Date
Dan Willemsen
9f41040b00 Merge "Add -Werror=date-time to target builds"
am: 5c3f812507

* commit '5c3f812507bd025da2fc3d5fa40e8a278535dff2':
  Add -Werror=date-time to target builds
2016-01-16 20:17:01 +00:00
Dan Willemsen
5c3f812507 Merge "Add -Werror=date-time to target builds" 2016-01-16 20:13:30 +00:00
Dan Willemsen
766eeb747e Merge "Allow building kati & makeparallel with soong"
am: 77cde9e244

* commit '77cde9e244de9b043793ef528818de0ffea862e1':
  Allow building kati & makeparallel with soong
2016-01-14 02:05:24 +00:00
Colin Cross
dbd43849fb Don't force color diagnostics outside of ninja
Building with USE_NINJA=false and piping build output to a file will
result in ANSI color codes in the build output.  Only force ANSI codes
on when building with ninja, which strips the ANSI codes when writing
build output to a non-TTY.

Change-Id: Ifd2fb53799fd99c23b7ad91cdb84d943bf707db0
2016-01-13 14:05:54 -08:00
Dan Willemsen
3f60c4b6c0 Allow building kati & makeparallel with soong
This uses far fewer hacks in order to build these host tools, but will
require more libraries(libc++,etc) from unbundled and stripped down
branches.

Once this becomes the only option, all builds will happen after soong
runs. Then the toolchain / global cflags information will be able to be
moved from make to soong (and exported back to make).

Change-Id: I270b1d92bcef28a96fbc3ec9910d9bd0c101ac0f
2016-01-13 13:08:29 -08:00
Stephen Hines
4f14e16324 Merge "Switch to Vista instead of Win2K."
am: c8299320da

* commit 'c8299320dac3a399430be37e0581bc263bef997e':
  Switch to Vista instead of Win2K.
2016-01-13 20:52:09 +00:00
Stephen Hines
c8299320da Merge "Switch to Vista instead of Win2K." 2016-01-13 20:47:13 +00:00
Colin Cross
1ed08efbb9 Merge "Ignore Android.mk files with USE_SOONG=true"
am: 19f6638026

* commit '19f6638026b8481e04003fcbd5a8ef017a66d9c8':
  Ignore Android.mk files with USE_SOONG=true
2016-01-13 20:43:22 +00:00
Colin Cross
19f6638026 Merge "Ignore Android.mk files with USE_SOONG=true" 2016-01-13 20:32:26 +00:00
Stephen Hines
625e7159ff Switch to Vista instead of Win2K.
Bug: http://b/26524325
Bug: http://b/25282907

The latest Clang/LLVM requires Vista APIs in order to execute, so we
need to bump the minimum required Windows version for our host tools.

Change-Id: Ic1a760bc240060f5de39ce3a68484886021ff3d9
2016-01-12 17:56:47 -08:00
Dan Willemsen
b2cfef28fb Merge "Remove -Wa,noexecstack from unsupported arm clang flags"
am: d29a84161e

* commit 'd29a84161edf1c82b988c8b181638b9b37540e6d':
  Remove -Wa,noexecstack from unsupported arm clang flags
2016-01-13 01:02:40 +00:00
Dan Willemsen
d29a84161e Merge "Remove -Wa,noexecstack from unsupported arm clang flags" 2016-01-13 00:56:59 +00:00
Dan Willemsen
d1baa0f001 Remove -Wa,noexecstack from unsupported arm clang flags
This was marked as unsupported only on arm[64], even though it works.
For soong, we want to keep a single list of unsupported clang flags
for all architectures.

Change-Id: I9c4ae0f255c549d2346ba7abae57e22c86ddcc61
2016-01-12 15:54:57 -08:00
Tao Bao
506cbfa8b4 Merge "Fix mounting /sdcard under recovery."
am: 948b9c30b4

* commit '948b9c30b4197a709846e604c8e571d90161b17f':
  Fix mounting /sdcard under recovery.
2016-01-12 22:32:11 +00:00
Tao Bao
3f56a33041 Fix mounting /sdcard under recovery.
The CL in [1] changed to create a symlink to /storage/self/primary for
/sdcard. It breaks the mount of /sdcard under recovery.

[1] commit 595003a3d06a13862052ef2f4f578371dae5ad65

Bug: 26509280
Change-Id: I98d02d54d707c2c8826c5ee119cf1a3ffa0c4bc9
2016-01-12 11:40:30 -08:00
Ying Wang
0f0b6962ed Merge "Generate .c for .y and .l"
am: 873eeec194

* commit '873eeec1944c46cd50779cd4fc8d4cd8ca0457ea':
  Generate .c for .y and .l
2016-01-12 18:57:03 +00:00
Ying Wang
50b3d28dcc Merge "Move "include configure_local_jack.mk""
am: 5799af6563

* commit '5799af6563c2da0a3730f1d4e007052c429ccaf8':
  Move "include configure_local_jack.mk"
2016-01-12 18:56:53 +00:00
Ying Wang
873eeec194 Merge "Generate .c for .y and .l" 2016-01-12 17:35:30 +00:00
Ying Wang
64088f2459 Generate .c for .y and .l
- For .l/.y source files, generate .c files; for .ll/.yy source files,
  generate c++ files.
- Simplified the rules by adding the generated sources to
  my_generated_sources.
- Simplified generated header file naming by always using .h extension
  with bison's "--defines=" option.
- Removed the unnecesarry conditional inclusion to the generated
  headers. Bison already automatically generates such things.

Bug: 26492989
Change-Id: I9ab6dc149c258f7642bc36c3fa32f90ff7ee51a4
2016-01-11 17:41:56 -08:00
Zach Jang
a9ac12d276 Updating security patch string to 2016-03-01 am: c24c6ccd4d am: 293887c43e am: 53e7d9bf7f am: c9da4cce57 am: 6c61548bb7 am: 6facd249d5 am: 1b29f2f9c9
am: b0b568b5c8

* commit 'b0b568b5c8731e40c53a6bfc3149a3720d1a2570':
  Updating security patch string to 2016-03-01
2016-01-12 01:40:37 +00:00
Zach Jang
b0b568b5c8 Updating security patch string to 2016-03-01 am: c24c6ccd4d am: 293887c43e am: 53e7d9bf7f am: c9da4cce57 am: 6c61548bb7 am: 6facd249d5
am: 1b29f2f9c9

* commit '1b29f2f9c97bc1b099712cd7c93c31e7f7a18ad1':
  Updating security patch string to 2016-03-01
2016-01-12 01:38:31 +00:00
Zach Jang
6facd249d5 Updating security patch string to 2016-03-01 am: c24c6ccd4d am: 293887c43e am: 53e7d9bf7f am: c9da4cce57
am: 6c61548bb7

* commit '6c61548bb7e426704760c9351e3211fb45d67dae':
  Updating security patch string to 2016-03-01
2016-01-12 01:33:23 +00:00
Zach Jang
6c61548bb7 Updating security patch string to 2016-03-01 am: c24c6ccd4d am: 293887c43e am: 53e7d9bf7f
am: c9da4cce57

* commit 'c9da4cce57d387f52b675d1024459af5e73c6dbc':
  Updating security patch string to 2016-03-01
2016-01-12 01:30:53 +00:00
Zach Jang
c9da4cce57 Updating security patch string to 2016-03-01 am: c24c6ccd4d am: 293887c43e
am: 53e7d9bf7f

* commit '53e7d9bf7f298c438157dccc5222b7484b083d9e':
  Updating security patch string to 2016-03-01
2016-01-12 01:28:37 +00:00
Zach Jang
53e7d9bf7f Updating security patch string to 2016-03-01 am: c24c6ccd4d
am: 293887c43e

* commit '293887c43ee5b797f8628f5983f64bf766002009':
  Updating security patch string to 2016-03-01
2016-01-12 01:26:41 +00:00
Zach Jang
293887c43e Updating security patch string to 2016-03-01
am: c24c6ccd4d

* commit 'c24c6ccd4d5de8be010b74b9021b8fdb926e1dad':
  Updating security patch string to 2016-03-01
2016-01-12 01:24:55 +00:00
Zach Jang
c24c6ccd4d Updating security patch string to 2016-03-01
b/26499556

Change-Id: I18a5ad9d8d08e2050053bcebc1a9a0c46db86733
2016-01-11 17:12:37 -08:00
Colin Cross
861ab99536 Ignore Android.mk files with USE_SOONG=true
When USE_SOONG=true, ignore any Android.mk file that has an Android.bp
file in the same directory.

Change-Id: Id79bd90c2aed5dafc2f8ad2c5b7eb0aa6e81dc18
2016-01-11 13:43:27 -08:00
Ying Wang
a8f28ff859 Move "include configure_local_jack.mk"
Move "include configure_local_jack.mk" out of the scope of
"ifdef LOCAL_RESOURCE_DIR".

Change-Id: I67bbb4e6b59414559219d24136ff91ba799fda25
2016-01-11 13:34:16 -08:00
Dan Willemsen
eff0611096 Add -Werror=date-time to target builds
The lack of a changing timestamp improves reproducibility of builds, and
helps create smaller OTAs.

Bug: 24204119
Change-Id: I68acfb53be962ffd5c488337517dadb950a13b6f
2016-01-08 16:29:50 -08:00
Shinichiro Hamaji
bb1207f99c Merge "Have symbol versions in .so.toc files"
am: c610c42b99

* commit 'c610c42b99c0f9570492731911199ae75d1ad9c0':
  Have symbol versions in .so.toc files
2016-01-07 05:17:27 +00:00
Shinichiro Hamaji
c610c42b99 Merge "Have symbol versions in .so.toc files" 2016-01-07 05:14:37 +00:00
Josh Gao
5774bafd18 Merge "Kill BOARD_MALLOC_ALIGNMENT."
am: 1ad7edd5e4

* commit '1ad7edd5e46793bee4450a7d6deadc39538dbf54':
  Kill BOARD_MALLOC_ALIGNMENT.
2016-01-06 22:54:05 +00:00
Josh Gao
b1171e4a31 Kill BOARD_MALLOC_ALIGNMENT.
Bug: http://b/26403338
Change-Id: I55d2c417d972f78caddc5fb28a065807feb86b0a
2016-01-06 14:15:46 -08:00
Josh Gao
3fe35f9775 Merge "Replace MALLOC_IMPL with MALLOC_SVELTE."
am: 9fb0221abe

* commit '9fb0221abedf9c8aadbe0d5efd7797ff9b293a46':
  Replace MALLOC_IMPL with MALLOC_SVELTE.
2016-01-06 20:30:24 +00:00
Shinichiro Hamaji
2b0caa3a67 Have symbol versions in .so.toc files
Use readelf --dyn-syms instead of nm, filtering out addresses
and sizes of symbols.

Bug: 26412928
Change-Id: I061ffb428076a79c7b255381ae4d4f8a8e7a4bd7
2016-01-06 15:13:25 +09:00
Josh Gao
a4f00d74fc Replace MALLOC_IMPL with MALLOC_SVELTE.
Bug: http://b/26390299
Change-Id: Ib1bef4aa272033412bea57a9bccf1d67793d2bda
2016-01-05 13:08:45 -08:00
Dan Willemsen
c4ba49dbec Merge "Prevent changes to COMMON_GLOBAL_C(PP)FLAGS"
am: d443abf1aa

* commit 'd443abf1aaa12c1b0fb82c940df60046c06aaed7':
  Prevent changes to COMMON_GLOBAL_C(PP)FLAGS
2016-01-05 05:52:06 +00:00
Dan Willemsen
d443abf1aa Merge "Prevent changes to COMMON_GLOBAL_C(PP)FLAGS" 2016-01-05 05:47:43 +00:00
Tao Bao
7da6338cf3 Merge "Build delta_generator for A/B update."
am: bf4213ebae

* commit 'bf4213ebaee1c505fa5070419aba4cd5ddccaae2':
  Build delta_generator for A/B update.
2016-01-04 19:51:30 +00:00
Tao Bao
f8e6fbe2f5 Build delta_generator for A/B update.
delta_generator computes the OTA package (aka payload) for A/B update.
Also add its dependent libraries into otatools.zip.

Bug: 25715402
Change-Id: Iddf4b9ac188cc4c8bf3f89ce3641d68451632ba1
2016-01-04 09:57:32 -08:00
Narayan Kamath
4baa857e6d Merge "Revert "Temporary workaround to build bouncycastle / nist-pkits""
am: 54a5e368fe

* commit '54a5e368fea461a265374db9ecf2c0b4c6825460':
  Revert "Temporary workaround to build bouncycastle / nist-pkits"
2015-12-30 11:47:12 +00:00
Narayan Kamath
cdc3d5ac03 Revert "Temporary workaround to build bouncycastle / nist-pkits"
This reverts commit 3006881f84.
2015-12-24 12:39:51 +00:00
Narayan Kamath
45ae4eb8a2 Merge changes from topic \'aosp-merge-24-12\'
am: 8b9589216d

* commit '8b9589216dd8c2a644dab9623952b5fd8a32e550':
  Temporary workaround to build bouncycastle / nist-pkits
  Build: Build changes for multi oat/image support.
  Allow modules to override the default NOTICE file.
  Track introduction of libopenjdkjvm.
  Allow for 5200 words in dump-words-to-file
  Update the package whitelist for the boot image.
  Use core-oj alongside core-libart wherever required.
2015-12-24 12:04:50 +00:00
Narayan Kamath
3006881f84 Temporary workaround to build bouncycastle / nist-pkits
Change-Id: I20bb834f08eeff03f627ab7d8f422a5ba9f3eb1a
2015-12-24 11:49:45 +00:00
Jeff Hao
5aabca204f Build: Build changes for multi oat/image support.
Use the --multi-image option to generate a preopted boot image. This
generates a separate oat file and image file output for each dex file
input.

Stop inlining core.

(cherry picked from commit d1d3fd933f)

Change-Id: Ibd23bc06d346ff404cabd88f7461f041af6016dd
2015-12-24 10:10:55 +00:00
Narayan Kamath
76c7d68ed9 Allow modules to override the default NOTICE file.
It's useful in projects where different top level modules have
different licenses associated with them.

(cherry picked from commit 3026f4daf1)

Change-Id: I71b20d6f979c0f50562f4f44b2af1f3ec2909444
2015-12-24 10:10:55 +00:00
Przemyslaw Szczepaniak
20de4fa41c Allow for 5200 words in dump-words-to-file
After switching to OpenJdk,  doc-comment-check target
started to fail due to "Too many words (5082)" while
generating out/target/common/docs/doc-comment-check-timestamp.rsp
This change extends number of dumped words to 5200.

Bug: 25758743

(cherry picked from commit 972a2681c6)

Change-Id: I9b8516d1e7c113d667dcfb7963ee352972677afa
2015-12-24 10:10:55 +00:00
Narayan Kamath
436d0c1117 Update the package whitelist for the boot image.
.. to track the inclusion of OpenJdk.

(cherry picked from commit b3c9e4a22e)

Change-Id: Ie7277a0403dee9ccd114d9dcb7bf95cdaf5688a0
2015-12-24 10:10:55 +00:00
Piotr Jastrzebski
052a00f64e Use core-oj alongside core-libart wherever required.
With some core classes moved to separate core-oj jar
we need to use the new jar.

(cherry picked from commit 89b94c827f)

Change-Id: I025c0adc70535bf23def3ab0ce28a1bfaef72514
2015-12-24 10:10:55 +00:00
Nick Kralevich
45407b471e Merge "set ro.adb.secure=1 for user builds"
am: f9911ae087

* commit 'f9911ae087189c26e0ef8a2334233116a8944aa7':
  set ro.adb.secure=1 for user builds
2015-12-23 20:27:00 +00:00
Nick Kralevich
f9911ae087 Merge "set ro.adb.secure=1 for user builds" 2015-12-23 20:22:30 +00:00
Daniel Micay
18a141cc8c set ro.adb.secure=1 for user builds
In user builds, adb without authentication is always disabled. However,
it doesn't work with the defaults because authentication doesn't work
without having ro.adb.secure=1 set. It makes sense to offer builds with
no adb but not builds with adb present in an unusable state (especially
as the default).

Bug: 22220212
Bug: 21862859
Change-Id: Ic22300a70586fd57692ac59d6873ab16dde70919
2015-12-23 20:18:15 +00:00
Tao Bao
647a1d779a Merge "Makefile: Clean up the condition for RECOVERY_RESOURCE_ZIP."
am: 9d4dbe09ed

* commit '9d4dbe09edcaeccd461138b5aefceb76759f5fd9':
  Makefile: Clean up the condition for RECOVERY_RESOURCE_ZIP.
2015-12-22 14:27:04 -08:00
Tao Bao
9d4dbe09ed Merge "Makefile: Clean up the condition for RECOVERY_RESOURCE_ZIP." 2015-12-22 22:22:44 +00:00
Dan Willemsen
5a204d1d31 Merge "Default LOCAL_MULTILIB:=both for HOST_NATIVE_TEST"
am: d52953e9ed

* commit 'd52953e9ed3a9625a61548234575acd4f0bbe87a':
  Default LOCAL_MULTILIB:=both for HOST_NATIVE_TEST
2015-12-22 14:15:47 -08:00
Dan Willemsen
d52953e9ed Merge "Default LOCAL_MULTILIB:=both for HOST_NATIVE_TEST" 2015-12-22 22:05:30 +00:00
Tao Bao
4594d0e0fd Makefile: Clean up the condition for RECOVERY_RESOURCE_ZIP.
Change-Id: I6909d4572bd54da48f7fd6b76d4a5ee03c84206c
2015-12-22 11:28:35 -08:00
Yohann Roussel
42c42b6971 Merge "Always start jack server before first call to jack"
am: 4a01711267

* commit '4a017112672901130c7ceb6c778f1ca243f2dd49':
  Always start jack server before first call to jack
2015-12-22 14:03:54 +00:00
Yohann Roussel
4a01711267 Merge "Always start jack server before first call to jack" 2015-12-22 13:59:49 +00:00
Dan Willemsen
8b9a464de4 Default LOCAL_MULTILIB:=both for HOST_NATIVE_TEST
The target BUILD_NATIVE_TEST defaults to building both 32 and 64-bit
versions of the tests. Many of our host tests have opted into this
manually, but some have not. Switch the default on the host tests to
stay consistent.

To preserve script compatibility, a symlink remains pointing to the
binary that would have been built before this change.

Change-Id: I9585984e933c2ac36134fc1968736c0bb5fea7be
2015-12-21 16:34:25 -08:00
Shinichiro Hamaji
e3d595c530 Merge "Do not use 0 in recipe"
am: 67e960b70f

* commit '67e960b70ff0c07a3ba817a687791cab538ceb66':
  Do not use $? in recipe
2015-12-21 23:07:15 +00:00
Shinichiro Hamaji
67e960b70f Merge "Do not use $? in recipe" 2015-12-21 22:46:01 +00:00
Tao Bao
c27ad030b6 Merge "Allow building recovery as boot."
am: 781b7b20d4

* commit '781b7b20d41cfe80472707aec46d0eac5473bfc5':
  Allow building recovery as boot.
2015-12-21 19:22:00 +00:00
Daniel Rosenberg
40ef35b9e9 Allow building recovery as boot.
With BOARD_USES_RECOVERY_AS_BOOT = true, we skip building the
non-ramdisk boot.img but building the recovery image as boot.img. It
contains recovery's ramdisk (e.g. with /sbin/recovery). It depends on
the bootloader parameter (skip_initramfs) to determine the actual mode
to boot into.

Change-Id: Id6e2d0a2b94383944ca8f35bba688c6401745622
(cherry picked from commit d80bef2b9e)
2015-12-21 11:17:08 -08:00
Evgenii Stepanov
778ad5bb91 Merge "Remove RPATH for AddressSanitizer."
am: 18733b9b0c

* commit '18733b9b0c2a1c3b9b6a2808497f47be076c9561':
  Remove RPATH for AddressSanitizer.
2015-12-21 18:37:35 +00:00
Evgenii Stepanov
18733b9b0c Merge "Remove RPATH for AddressSanitizer." 2015-12-21 18:32:36 +00:00
Evgenii Stepanov
bbd944a25d Remove RPATH for AddressSanitizer.
RPATH was used in order for ASan executables to prefer ASan libraries
under /data. Now ASan executables use a special loader (linker_asan),
which implements this logic. RPATH is no longer needed.

Change-Id: Ic7a39b022267b80bd0ce3e95a2e822eb308a1fba
2015-12-21 10:29:54 -08:00
Shinichiro Hamaji
9cb76922aa Do not use $? in recipe
Kati cannot support this automatic variable as ninja doesn't
have a feature for this.

Change-Id: Ibc3a18dc5739b5008b156d2672a626621e046f5a
2015-12-22 00:55:37 +09:00
Yohann Roussel
0a24035cf6 Merge "Do not set Jack source version, use default"
am: 2983fd4b0f

* commit '2983fd4b0f66e58620afd57d5f68794c0767b641':
  Do not set Jack source version, use default
2015-12-21 05:01:36 -08:00
Yohann Roussel
2983fd4b0f Merge "Do not set Jack source version, use default" 2015-12-21 12:57:29 +00:00
Shinichiro Hamaji
f2f5294cb1 Merge "Disable goma/ccache with USE_XXX=false"
am: 6c90e49f4a

* commit '6c90e49f4a70e100a56e2a1b2f2550a782c72311':
  Disable goma/ccache with USE_XXX=false
2015-12-21 05:51:26 +00:00
Shinichiro Hamaji
6c90e49f4a Merge "Disable goma/ccache with USE_XXX=false" 2015-12-21 05:48:44 +00:00
Elliott Hughes
3a8929bd5a Merge "Enable -fstack-protector-strong for arm64."
am: 03b7effb8d

* commit '03b7effb8d018eb248fed9e6856a7b8795cdb907':
  Enable -fstack-protector-strong for arm64.
2015-12-18 13:45:31 -08:00
Elliott Hughes
d51fd72f73 Merge "Enable -fstack-protector-strong for arm."
am: 7fca8a373f

* commit '7fca8a373f9885d4cb23145a5b457d7f2f1c5f22':
  Enable -fstack-protector-strong for arm.
2015-12-18 13:45:23 -08:00
Elliott Hughes
03b7effb8d Merge "Enable -fstack-protector-strong for arm64." 2015-12-18 21:36:49 +00:00
Elliott Hughes
7fca8a373f Merge "Enable -fstack-protector-strong for arm." 2015-12-18 21:36:27 +00:00
Dan Willemsen
93b8a1294c Prevent changes to COMMON_GLOBAL_C(PP)FLAGS
Reorder the definitions of the core cflags so that we can prevent device
configurations from changing the global C(PP)FLAGS.

There is no reason for devices to be configuring the global cflags -- if
something needs to change for a particular device, that flag should be
defined in the BoardConfig.mk, then used in the individual makefiles
where it is needed. The common global flags also affected host tools,
which should not change between device configurations.

Bug: 26165350
Change-Id: Icece4505ce3d2a9168087d802953378534018d47
2015-12-18 12:57:57 -08:00
Yohann Roussel
09ee66e2b4 Do not set Jack source version, use default
Default source version is 1.7 in Jack B and Jack C so this means no
change to default. Not forcing it in the build rules will allow to
change it in LOCAL_JACK_FLAGS.

Bug: 26257295
Change-Id: If9b5fe250eea4bc6bcb3c16ad9cf7024d399ff3c
2015-12-18 10:30:21 +01:00
Shinichiro Hamaji
d78cba12fe Disable goma/ccache with USE_XXX=false
Bug: 26009364
Change-Id: Ic0001e6fdc62ca2373309bfe3127c5fec64d2d85
2015-12-18 15:26:17 +09:00
Neil Fuller
401aae0783 Merge "Set -Xdoclint:none"
am: d49e55561a

* commit 'd49e55561aa139af1b7c5a2f448ab5c7d93272d6':
  Set -Xdoclint:none
2015-12-17 10:27:33 +00:00
Neil Fuller
d49e55561a Merge "Set -Xdoclint:none" 2015-12-17 10:18:28 +00:00
Dan Willemsen
05177f7cb1 Merge "Define __BRILLO__ only for target modules"
am: e63d3328df

* commit 'e63d3328dfc5a3e46233bf6fcc20a17e15d3545c':
  Define __BRILLO__ only for target modules
2015-12-16 23:39:27 +00:00
Dan Willemsen
e63d3328df Merge "Define __BRILLO__ only for target modules" 2015-12-16 23:30:40 +00:00
Dan Willemsen
152755aa81 Merge "Move __BRILLO__ to the core build system"
am: 3931873418

* commit '39318734186de8b2ed09d827f69877bf9bb8c9aa':
  Move __BRILLO__ to the core build system
2015-12-16 23:25:10 +00:00
Dan Willemsen
3931873418 Merge "Move __BRILLO__ to the core build system" 2015-12-16 23:14:09 +00:00
Dan Willemsen
de6494b9ae Define __BRILLO__ only for target modules
__ANDROID__ is only defined for target modules, do the same for
__BRILLO__.

Change-Id: Ie1417e1a5b21c051acf05b2bd3bdb3ddd31be878
2015-12-16 15:04:51 -08:00
Todd Poynor
77d1b2ec31 Merge "Make squashfs sparse image generation optional"
am: ffce16c7e6

* commit 'ffce16c7e6bdabb909a36c2b97b7881eddd5ba54':
  Make squashfs sparse image generation optional
2015-12-16 22:32:31 +00:00
Dan Willemsen
16e7e0f556 Move __BRILLO__ to the core build system
In preparation for locking down COMMON_GLOBAL_CFLAGS.

Bug: 26165350
Change-Id: Ifdfb7808c1e1b624ffb0f99ab443ec2c5503a81c
2015-12-16 14:28:21 -08:00
Todd Poynor
ffce16c7e6 Merge "Make squashfs sparse image generation optional" 2015-12-16 22:12:53 +00:00
Ying Wang
71aaa02533 Merge "make USER limited to 6 characters when generating BUILD_NUMBER"
am: e9430e2361

* commit 'e9430e2361d152cae00e779fd055454fc0acf209':
  make USER limited to 6 characters when generating BUILD_NUMBER
2015-12-16 21:50:08 +00:00
Ying Wang
e9430e2361 Merge "make USER limited to 6 characters when generating BUILD_NUMBER" 2015-12-16 21:42:07 +00:00
Narayan Kamath
8abec039ff Set -Xdoclint:none
Mac builds use a javadoc tool that fails on more warnings than linux
builds.  Add -Xdoclint:none to all java 8 standard doclet javadoc
commands.

Don't add it to javadoc commands that use the com.google.doclava.Doclava
doclet, it doesn't understand -Xdoclint:none.

(cherry-picked from commit 8bf7b5d51a)

Change-Id: Ic5b8431ec2facb7989473b06ebe07246f6d2317f
2015-12-16 19:26:02 +00:00
Than McIntosh
831b4bca1b Merge "Re-enable gold linker for aarch64."
am: 9d76c75782

* commit '9d76c757820701587013aa295f4482c915d4b166':
  Re-enable gold linker for aarch64.
2015-12-16 12:10:32 +00:00
Than McIntosh
9d76c75782 Merge "Re-enable gold linker for aarch64." 2015-12-16 12:02:04 +00:00
weiqiao
c9219c2c73 make USER limited to 6 characters when generating BUILD_NUMBER
BUILD_NUMBER is use to generate ro.build.description and
ro.build.display.id, if USER is long, these properties will
exceed 91 characters easily.

Change-Id: I7f99ef351f80210172a873104edd980b36c3f8f1
Signed-off-by: weiqiao <qiaowei224@gmail.com>
2015-12-16 13:28:21 +08:00
Todd Poynor
b2a555e6fc Make squashfs sparse image generation optional
Allow non-sparse squashfs image generation, a la ext filesystems.

Bug: 26218766
Change-Id: Ifd596af16411e0cf69a2e7e05d725fd9442dc79c
2015-12-15 20:11:12 -08:00
Colin Cross
17f2961cd6 Merge "Tell soong that it is embedded in a make build"
am: 61b771e79f

* commit '61b771e79f19f19eae62d1b7a97d105ef6222cff':
  Tell soong that it is embedded in a make build
2015-12-16 01:57:20 +00:00
Colin Cross
17d3f5426b Merge "Combine soong builds into make builds"
am: 3bfc560cc5

* commit '3bfc560cc54b58376d095aeaf22d3a74726bcec7':
  Combine soong builds into make builds
2015-12-16 01:57:07 +00:00
Dan Willemsen
5f38f9be22 Tell soong that it is embedded in a make build
So that it can munge its ninja targets to not conflict with make.

Change-Id: I0c2273c0ca2fdfced1fa1590f2ea3eac8cddb905
2015-12-16 01:47:02 +00:00
Colin Cross
3ebb2f7326 Combine soong builds into make builds
Bootstrap soong if necessary, and wrap the kati and soong ninja files
into a single ninja file.

Change-Id: I0000c7eaa1adda763189681c57ec27a97a12ee1f
2015-12-15 16:05:57 -08:00
Ying Wang
13a225ff9f Merge "Remove the prebuilt tools cleanstep logic."
am: cff032ca54

* commit 'cff032ca54f4dfc06f88b863d09c66040151bc36':
  Remove the prebuilt tools cleanstep logic.
2015-12-15 21:56:59 +00:00
Ying Wang
a79e1324a0 Remove the prebuilt tools cleanstep logic.
We switched to running prebuilt host tools in place in
prebuilts/sdk/tools in TARGET_BUILD_APPS build. This logic is no longer
needed.

Change-Id: Ibf88b3c0a09fb3a1a04b25403457c48851ecc6f4
2015-12-15 12:39:02 -08:00
Ying Wang
8449b88b2e Merge "Disable .toc optimization for host modules."
am: 7b92312ea1

* commit '7b92312ea1184fc50b230f68214fe6ae9d3f597d':
  Disable .toc optimization for host modules.
2015-12-15 19:22:37 +00:00
Ying Wang
c01f2dcb10 Disable .toc optimization for host modules.
Host binaries may be run during the build process and the internal
implementation of the shared libraries makes a difference for the build
result. This change makes sure host tools get re-linked and re-run when
any of its dependency libraries gets updated.
DEX2OAT is such a host tool. We also changed DEX2OAT as full dependency
of dex-preoptimization, so we rebuild the odex files if DEX2OAT itself,
or any dependency libraries changed.

Bug: 24597504
Change-Id: Idf0d9be82ccebd826d9c5b405a39cff437e0af29
2015-12-15 10:00:19 -08:00
Shinichiro Hamaji
0d4a0a9dd5 Merge "Reduce unnecessary rebuilds of .dex files with restat=1"
am: 542aa57f1d

* commit '542aa57f1d48b1a8f4afa71d6635f8ed93c82289':
  Reduce unnecessary rebuilds of .dex files with restat=1
2015-12-15 16:05:10 +00:00
Than McIntosh
2c3b926ab3 Re-enable gold linker for aarch64.
Turn back on ld.gold and W-l,--icf=safe for
aarch64, now that the prebuilt ld.gold has been updated
with support for reloc 311/312 (fixed upstream, see
https://sourceware.org/bugzilla/show_bug.cgi?id=19042)

Bug: 25642296
Bug: 26153840

Change-Id: Idceb357a48d9da4eec38ab8f2103245d500622ae
2015-12-15 09:27:19 -05:00
Shinichiro Hamaji
542aa57f1d Merge "Reduce unnecessary rebuilds of .dex files with restat=1" 2015-12-15 06:27:31 +00:00
Elliott Hughes
b96f6bad55 Merge "Turn on stack protector for mips64."
am: 6725b4b004

* commit '6725b4b004b45cd4cf3ed2ebdb40daf194e0b733':
  Turn on stack protector for mips64.
2015-12-14 23:13:48 +00:00
Elliott Hughes
0391338750 Merge "Turn on stack protector for mips."
am: 391caae952

* commit '391caae9528a5e7cc77763be6f456bd01325f66e':
  Turn on stack protector for mips.
2015-12-14 23:13:31 +00:00
Elliott Hughes
09ba4c870d Turn on stack protector for mips64.
Go straight to -fstack-protector-strong, since it works to boot the emulator.

Change-Id: I2b65a0ab4426856ae05f66c1e294951e45bd72b6
2015-12-14 14:46:38 -08:00
Elliott Hughes
b9b89e9385 Turn on stack protector for mips.
Go straight to -fstack-protector-strong, since it works to boot the emulator.

Change-Id: Ie44abd869355d2163dec7d9e2635b26b45255df6
2015-12-14 14:15:12 -08:00
Elliott Hughes
d3eae50874 Merge "Enable -fstack-protector-strong for x86-64."
am: 02191c97ef

* commit '02191c97effe88dddfd60b365a9c408861ba8870':
  Enable -fstack-protector-strong for x86-64.
2015-12-14 13:54:03 -08:00
Elliott Hughes
39d848b1b4 Merge "Be smarter about stack-protector on the host."
am: 19e85a25ee

* commit '19e85a25eefe5fbb12a7121a6b87a0e5d87be39b':
  Be smarter about stack-protector on the host.
2015-12-14 13:53:53 -08:00
Elliott Hughes
02191c97ef Merge "Enable -fstack-protector-strong for x86-64." 2015-12-14 21:45:40 +00:00
Elliott Hughes
505e4ec646 Be smarter about stack-protector on the host.
Some projects are still built with our host GCC 4.8, which doesn't
support -fstack-protector-strong. The combo .mk files are used by
GCC and clang, so it's not safe to turn on -fstack-protector-strong
there. Instead, do it in the clang-specific .mk for now.

We can clean this up when elfutils (the last code built for the host
with GCC that I'm aware of) is built by clang. We'll be able to
remove the host GCC prebuilts too!

Change-Id: I314b9eab071c132a8e2cb8cc779a75ae8abb12e2
2015-12-14 13:20:59 -08:00
Elliott Hughes
49d443b6f7 Merge "Enable -fstack-protector-strong for x86."
am: 7abad39b78

* commit '7abad39b78225d2517bc46dff3192ea001184947':
  Enable -fstack-protector-strong for x86.
2015-12-14 13:16:22 -08:00
Elliott Hughes
7abad39b78 Merge "Enable -fstack-protector-strong for x86." 2015-12-14 21:05:21 +00:00
Elliott Hughes
3313f0b094 Merge "Enable -fstack-protector-strong for the host."
am: a4b3d20d28

* commit 'a4b3d20d28da1f86dde6063b732c75cf238976ee':
  Enable -fstack-protector-strong for the host.
2015-12-14 12:44:02 -08:00
Elliott Hughes
2747fa8f87 Enable -fstack-protector-strong for arm64.
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: I2fb7f0bfccbfa5d22ca8858309a133469edbc7b6
2015-12-14 11:18:24 -08:00
Elliott Hughes
c8cc919db5 Enable -fstack-protector-strong for arm.
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: Iccc20852db8a5e4dd9792f9da6d5e325fc59b0a5
2015-12-14 11:17:08 -08:00
Elliott Hughes
5324c3c19f Enable -fstack-protector-strong for x86-64.
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: I3ce7a73c5cf36eba5c74df37367f3d3475b0a4ed
2015-12-14 11:16:20 -08:00
Elliott Hughes
8ebc4d6aab Enable -fstack-protector-strong for x86.
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: I55a9fdbf5777ccdeed9f2e9a23c73bb94ad7b646
2015-12-14 11:15:15 -08:00
Elliott Hughes
ae316d2d59 Enable -fstack-protector-strong for the host.
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: I97a2187cebac64e3b9f22b691d4676b6da083ebd
2015-12-14 11:14:21 -08:00
Shinichiro Hamaji
f972a4a980 Reduce unnecessary rebuilds of .dex files with restat=1
The .dex.toc files are created by dexdump, which outputs all
information in a .dex file which may affect compilation of
other modules.

For prebuilt java libraries and static java libraries, we'll
output empty .toc files and don't set restat=1. .dex.toc files
are necessary even for static java libraries because they can
be referenced by LOCAL_JAVA_LIBRARIES (instead of
LOCAL_STATIC_JAVA_LIBRARIES).

We don't use this optimization for apps build. We cannot build
dexdump for apps build due to lack of libc++.

Performance:

$ m && touch \
  frameworks/base/core/java/com/google/android/util/Procedure.java \
  && time m
Before: 3m48s
After: 1m46s

Bug: 24597504
Change-Id: Id1665923b414dee705dc60af4c021390a19ea26f
2015-12-14 19:07:34 +09:00
Stephen Hines
67b6cc2201 Merge "Revert "Change USE_CLANG_PLATFORM_BUILD default to true.""
am: eca3206abb

* commit 'eca3206abbf2223d6bc6c1c4337c911077fc2897':
  Revert "Change USE_CLANG_PLATFORM_BUILD default to true."
2015-12-13 15:10:18 -08:00
Stephen Hines
eca3206abb Merge "Revert "Change USE_CLANG_PLATFORM_BUILD default to true."" 2015-12-13 23:06:03 +00:00
Stephen Hines
7a0c88ec3e Revert "Change USE_CLANG_PLATFORM_BUILD default to true."
This reverts commit 3c8036da53.

Change-Id: I930bbebce8396d7c0abd847530640a696d3418e7
2015-12-13 22:58:22 +00:00
Dan Albert
3340159339 Merge "Use lib64 for mips64 as well."
am: 6674573897

* commit '667457389791a505660e102bc2bdde1362543e37':
  Use lib64 for mips64 as well.
2015-12-11 16:21:35 -08:00
Dan Albert
445bc2fc2d Use lib64 for mips64 as well.
This was previously working because for some reason prebuilts/ndk had
a tangled mess of hand assembled symlinks that pointed lib -> lib64
for the multilib architectures.

Change-Id: I294d67f58f2008b1a53790cf676f5223df449cbc
2015-12-11 15:04:59 -08:00
Dan Willemsen
33b4913adf Merge "Enforce linker version-scripts are valid"
am: e223965f0c

* commit 'e223965f0c26c1cba020a47cb41ba109dd308db8':
  Enforce linker version-scripts are valid
2015-12-11 13:05:28 -08:00
Dan Willemsen
e223965f0c Merge "Enforce linker version-scripts are valid" 2015-12-11 20:58:03 +00:00
Alex Klyubin
dfd2199ef6 Merge "Make signapk use Conscrypt."
am: 7884a63731

* commit '7884a63731a876f483c13288c87d8e7af7a533e4':
  Make signapk use Conscrypt.
2015-12-11 10:37:16 -08:00
Alex Klyubin
7884a63731 Merge "Make signapk use Conscrypt." 2015-12-11 18:29:36 +00:00
Chih-hung Hsieh
a3fbb3b0e4 Merge "Change USE_CLANG_PLATFORM_BUILD default to true."
am: eb486309d8

* commit 'eb486309d8860babc0ed5fc725009e6c53eae2dd':
  Change USE_CLANG_PLATFORM_BUILD default to true.
2015-12-11 09:08:07 -08:00
Chih-hung Hsieh
eb486309d8 Merge "Change USE_CLANG_PLATFORM_BUILD default to true." 2015-12-11 16:54:13 +00:00
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
2001743c7a Merge "Rename libext2 host libraries to standard suffix."
am: 6950168f1d

* commit '6950168f1d4bd6ddfd64755c26d7de6ef3709f00':
  Rename libext2 host libraries to standard suffix.
2015-12-10 14:28:46 -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
064b18f155 Merge "Fix the mips build."
am: 0f8bd686e1

* commit '0f8bd686e1ef6f5936d478cff4de8d9248daca35':
  Fix the mips build.
2015-12-09 16:34:52 -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
9a986a6e68 Merge "Add support for LOCAL_NDK_STL_VARIANT := none."
am: 2ad9079305

* commit '2ad9079305cc7aedfcfccf2c360c58502dc7d16e':
  Add support for LOCAL_NDK_STL_VARIANT := none.
2015-12-10 00:22:00 +00: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
0477dce031 Merge "Build NDK binaries with --hash-style=both."
am: 30cb36ff5e

* commit '30cb36ff5e4834800a0c4694d0ccfe9759ffea83':
  Build NDK binaries with --hash-style=both.
2015-12-09 23:48:12 +00:00
Dan Albert
30cb36ff5e Merge "Build NDK binaries with --hash-style=both." 2015-12-09 23:41:01 +00:00
Zach Jang
96c1a8cf01 Update Security String to 2016-02-01 am: f0f73c06e2 am: 5e2b003a11 am: 8b5be4dd4f am: 1536565dc3
am: 61fc840849

* commit '61fc840849a617ddca29189b40169abbc88544f3':
  Update Security String to 2016-02-01
2015-12-09 15:09:34 -08:00
Zach Jang
61fc840849 Update Security String to 2016-02-01 am: f0f73c06e2 am: 5e2b003a11 am: 8b5be4dd4f
am: 1536565dc3

* commit '1536565dc3ef67ad2e0ac7727554c29bb9638a97':
  Update Security String to 2016-02-01
2015-12-09 23:06:44 +00:00