Commit graph

6664 commits

Author SHA1 Message Date
Christopher Ferris
9bc462c12a Merge "Add the common directory back to kernel headers." 2015-09-18 20:44:58 +00:00
Evgenii Stepanov
908260a566 Merge "Add support of SANITIZE_TARGET='address coverage' for fuzzing." 2015-09-18 20:21:54 +00:00
Ivan Krasin
74b32b8dfc Add support of SANITIZE_TARGET='address coverage' for fuzzing.
Also, add trace-cmp instrumentation to fuzz_test and host_fuzz_test.

Bug: 22850550
Change-Id: Ifff7b8be693ae991feb0a64e19439370a19b2748
2015-09-18 11:54:43 -07:00
Dan Albert
000e1a973e Merge "Don't re-export libgcc symbols from every object." 2015-09-18 17:21:13 +00:00
Christopher Ferris
6a2f28514c Add the common directory back to kernel headers.
There will only be a very small set of non-uapi headers. This is
mostly being done for the scsi headers since the kernel has not
made uapi versions of all of them.

Change-Id: I44904b07ff96de918dc5fcab4e5f117a34cb2a87
2015-09-17 21:20:03 -07:00
Dan Albert
e92d25f296 Don't re-export libgcc symbols from every object.
Target modules shouldn't re-export libgcc.a because we don't want
other binaries importing them when they should be getting their own
copy of the builtins.

Bug: http://b/24166967
Change-Id: Iaa208933885375da4a8e1b8935f76e9f3ea0647f
2015-09-17 17:18:12 -07:00
Scott James Remnant
dd86e5a0de build: support compiling .mm on host
libchrome uses .mm (Objective-C++) files to bridge C++ code with
OS X Frameworks. This adds support for compiling .mm to .o by just
using the existing C++ support.

Bug: 24168923
Change-Id: Ia65357e2e2584dfffcb6796e214fe6b27635c3a6
2015-09-17 15:51:32 -07:00
Dan Albert
3ee9daac6a Merge "Remove WITHOUT_(HOST|TARGET)_CLANG." 2015-09-16 23:24:40 +00:00
Dan Albert
32f7ff14ce Remove WITHOUT_(HOST|TARGET)_CLANG.
This is unused.

Change-Id: Ibc461fef02c82d110718003aceffb943c930ffe6
2015-09-16 15:43:00 -07:00
Ying Wang
eb1e18e689 Use $(OUT_DIR)/ninja_build to mark ninja build.
Bug: 23565895
Change-Id: I000e88a45278fd52096312262eacc52511f02efb
2015-09-16 15:29:08 -07:00
Ying Wang
8da19e3688 Generate installed-files-vendor.txt
Similar to installed-files.txt, installed-files-vendor.txt lists the
content of vendor.img.

Bug: 24009297
Change-Id: Ib8112b19cc9f54d0c0d6a829063e4fe72d8ce664
2015-09-15 14:24:00 -07:00
Dan Willemsen
b384eb84c3 Merge "kati: Handle MAKECMDGOALS modifications" 2015-09-15 00:28:42 +00:00
Dan Willemsen
cb1bd116ed kati: Handle MAKECMDGOALS modifications
For some special targets (PRODUCT-%), the MAKECMDGOALS variable is
modified. Before this change, using one would result in a "no rule to
make target" error, since the new target was not stubbed out.

Change-Id: I879642a48b84a66789d4bdb7db1b6fd1130819b7
2015-09-14 16:30:51 -07:00
Colin Cross
f7ca64faa0 Use makeparallel to propagate -j flag to ninja or kati
When USE_NINJA=true is set, use makeparallel to claim all jobs from make and
pass them to ninja with -j.  If USE_GOMA is set, pass the -j flag to
kati instead so the parallelism can be set in the local_pool instead.

Change-Id: I6e4f957c65683b74533ecb6d33e25de858922823
2015-09-14 14:41:00 -07:00
Dan Albert
d1d68b19ac Fix LOCAL_CXX_STL := none for Windows.
We still need to link the various MSVC libraries even if we aren't
using the STL.

Bug: http://b/22953515
Change-Id: I73c35710a6162408e99480a4840eedd291adf7ab
2015-09-11 13:37:51 -07:00
Shinichiro Hamaji
6d20af0391 Merge "Use the same build.ninja for normal make targets" 2015-09-10 03:31:59 +00:00
Dan Willemsen
0b6c3481d5 Update the build system doc
This adds a reference to the _{32|64|arm|arm64|...|darwin|linux|windows}
variables, and adds information about how LOCAL_MODULE_HOST_OS works.

It also removes many (but not all) obsolete references.

Bug: 23566667
Change-Id: Ief16a5e245eb65ac00fc23d4fc1b7a409a7a64bd
2015-09-10 00:20:12 +00:00
Dan Willemsen
7728817ab9 Don't build windows modules with clang, fix flags
shamu checkbuilds set USE_CLANG_PLATFORM_BUILD, which shouldn't apply to
modules built for windows. Also fix some flags that were being set
improperly.

Bug: 23566667
Change-Id: Id4c5b7cc59966328483d90f2b7be3f35e439ecee
2015-09-09 16:10:50 -07:00
Dan Willemsen
f1c09d7fbd Merge "Add HOST_CROSS_OS" 2015-09-09 18:13:21 +00:00
Dan Willemsen
057aaea54a Add HOST_CROSS_OS
Instead of using recursive make to change the HOST_OS when building the
windows SDK under linux, add the concept of cross-building to another
host os.

Bug: 23566667
Change-Id: I6dc525b601b6251d458d197c30bf4660d7485502
2015-09-09 18:12:29 +00:00
Shinichiro Hamaji
d762bcae25 Use the same build.ninja for normal make targets
$(PARSE_TIME_MAKE_GOALS) is a list of known goals which affect
parsing of make (e.g., there is $(filter XXX,$(MAKECMDGOALS))).
If the make targets contain one of them, we keep using a
different build.ninja for each combination of make targets.
Otherwise, we use the same build.ninja which has all phony
targets.

Also load vendor/google/build/ninja_config.mk so it can add
Google-specific goals to $(PARSE_TIME_MAKE_GOALS).

Bug: 23685536
Change-Id: I3da5c76fa7644a05a55c374a754212f4fb794818
2015-09-09 15:48:10 +09:00
Dan Albert
a187fb5986 Fix name for NDK protobuf libraries.
Name them *-ndk so it's clear which library is which.

Change-Id: I53544a8a97488f902e00d1aedaa021d09ee2f649
2015-09-08 10:47:03 -07:00
Shinichiro Hamaji
e711afb154 Merge "Use $(BUILD_MODULES_IN_PATHS) as a part of ninja suffix" 2015-09-07 05:38:24 +00:00
Shinichiro Hamaji
909e7f40ae Use $(BUILD_MODULES_IN_PATHS) as a part of ninja suffix
So that switching between two different mmma targets won't
need regenerating ninja files.

Change-Id: Ifddd75ec49abd3ab2a54c6afbb902b0b32359db8
2015-09-05 09:00:19 +09:00
Dan Willemsen
ed635cfc0d Fix LOCAL_MODULE_HOST_OS
Make sure LOCAL_IS_HOST_MODULE is set before including
module_arch_supported.mk

Bug: 23566667
Change-Id: I28ef10f093407eb3a6a83574ecc3f098eb775241
2015-09-04 15:41:38 -07:00
Yasuhiro Matsuda
ff82e82a1e Move part of logtags stuff back to base_rules.mk.
Otherwise event tags for non-Java modules
(e.g. logcat, libsurfaceflinger) are not generated.

BUG: 23803975
Change-Id: I6fd53fe2ca39102787fc513aa8c23f906b94f253
2015-09-04 20:02:49 +09:00
Dan Willemsen
859ac34064 Add LOCAL_MODULE_HOST_OS
Instead of wrapping a host module definition in 'ifeq($(HOST_OS),...)'
in the Android.mk files, define which hosts are supported using
LOCAL_MODULE_HOST_OS.

A blank LOCAL_MODULE_HOST_OS means that linux and darwin are supported.
A non-empty LOCAL_MODULE_HOST_OS lists the supported HOST_OSs.

Change-Id: I1e342d1908cfa00aef2c39c145b4f5f81c373bc6
2015-09-03 16:40:51 -07:00
Ying Wang
4e2f190315 Merge "Clean up Javac a little bit." 2015-09-02 20:48:50 +00:00
Ivan Krasin
b83e171c8d Add AddressSanitizer linker flags for x86.
This is the 1/4 change required to get AddressSanitizer
for Android x86 to work.

Change-Id: I848805af34fdd32a313c991504d6014f9b97ab88
2015-09-02 11:59:45 -07:00
Ying Wang
447d69678e Clean up Javac a little bit.
- Added GLOBAL_JAVAC_DEBUG_FLAGS and merge it to
  PRIVATE_JAVACFLAGS/PRIVATE_JACK_FLAGS to get rid of
  PRIVATE_JAVAC_DEBUG_FLAGS/PRIVATE_JACK_DEBUG_FLAGS.
- With Java rules out of base_rules.mk we can get rid
  of java_alternative_checked_module now.

Change-Id: I1a14716c785e3d49330a75044107662ce96a9307
2015-09-02 10:04:18 -07:00
Shinichiro Hamaji
bfd01872cb Set --ninja_suffix based on make/mm/mmm targets
This fixes two issues:

- Switching make target didn't work well when the latter
  make target is not a subset of the first make target.
- Switching between m and mm/mmm forced build.ninja to be
  regenerated.

Bug: 23685536

Change-Id: I3c3550d6cca3007d166a13367d6bc22cc3feede2
2015-09-02 07:37:39 +09:00
Shinichiro Hamaji
ec8f973147 Merge "Show error message when resource limit too low for USE_GOMA=true" 2015-09-01 02:26:15 +00:00
Dan Willemsen
d0ae4796a1 Merge "Blacklist libc++ from windows host builds" 2015-09-01 00:44:21 +00:00
Ying Wang
3351178fb8 Cleaned the outdated incrementaljavac.
Nobody is using this feature and now we switched to jack.

Change-Id: I749b486eb347cbf3ee7b107565fc800eeb238c44
(cherry-picked from commit 90598cb70c)
2015-08-29 11:08:02 -07:00
Shinichiro Hamaji
b601d4b0e4 Show error message when resource limit too low for USE_GOMA=true
This should be particularly helpful for Mac users, because the
default limits of Mac are too low.

Change-Id: I03f0f76a0707b4ce5ef9cddf5df6e3857a215996
2015-08-29 12:01:51 +09:00
Ying Wang
956dcccf76 Move Java stuff out of base_rules.mk
- Moved the target-only .aidl and .logtag rules to java.mk.
- Moved the .proto rules,  Java library dependency calculation,
  Java resource processing and Java-related
  target-specific and global variables setup to a new java_common.java,
  which is shared by both target and host Java modules.
- Minor cleanup for the moved code.

Bug: 23597357
Change-Id: Ic3eb72e26bb1a663e5739abe0a935f96b88bc352
2015-08-28 17:17:19 -07:00
Elliott Hughes
43146118aa Remove AndroidConfig.h.
This change leaves soong references.

Change-Id: Iee32b6b97ad9711f69e999c9d01f01d71562b63f
2015-08-28 10:31:28 -07:00
Dan Willemsen
85ac8d2a00 Add support for LOCAL_SRC_FILES_(host)_(arch)
For boringssl, which has architecture specific host assembly files

Bug: 23566667

Change-Id: Ia4602d28e93a1b3d1400cf95417b5e446c5fb84b
2015-08-28 03:38:43 +00:00
Dan Willemsen
7a5498568f Add _(darwin|linux|windows)
So that we can support building both linux and windows binaries at the
same time on a linux host. This replaces the ifeq($(HOST_OS),...) checks
in Android.mk files.

Bug: 23566667

Change-Id: I693e11984e36d55bb6f09fa0d49bc485463e16fb
2015-08-28 03:36:22 +00:00
Ying Wang
267e957373 Dist the otatools package.
Bug: 23495952
Change-Id: I1f61946580dd8ea29c3d5e1f4e859cc6d1f8554a
2015-08-24 17:13:53 -07:00
Tom Cherry
2df35aea43 remove TARGET_PROVIDES_INIT_RC
Change-Id: I765b80d48333f54fb995e4ccfd77d38683c6cbb9
2015-08-24 13:55:02 -07:00
Christopher Wiley
4e719eafc4 Merge "Change .dbus.xml extension to .dbus-xml" 2015-08-21 20:46:21 +00:00
Shinichiro Hamaji
39c7d24339 Merge "Use goma when USE_GOMA=true is set" 2015-08-21 03:24:27 +00:00
Elliott Hughes
6f5341259c Merge "Fix Linux host checkbuilds." 2015-08-20 23:56:07 +00:00
Elliott Hughes
ac9eea9463 Fix Linux host checkbuilds.
Turns out that thanks to 9d59f41776 we actually
build *all* the host libraries both 32- and 64-bit. Rather than fix the
libraries (or fixing things so we don't build stuff we don't need) right now,
let's just put _FILE_OFFSET_BITS and _LARGEFILE_SOURCE back.

Change-Id: I6c2d6a6919d1518f775e0d6c050e2c774994c5bd
2015-08-20 16:52:47 -07:00
Elliott Hughes
a3fa59b12b Merge "Kill host Linux AndroidConfig.h." 2015-08-20 23:10:05 +00:00
Elliott Hughes
ded991b47d Merge "Revert "Fix Windows SDK build."" 2015-08-20 21:23:59 +00:00
Elliott Hughes
73042ea0c7 Revert "Fix Windows SDK build."
This reverts commit b8dd176441.

This wasn't the problem, and mingw doesn't even use _LARGEFILE_SOURCE. The real problem (using WIN32 instead of _WIN32 in external/llvm) is fixed now.

Change-Id: I2b708a006b530cb18d03b1425cd65edda35ee17e
2015-08-20 21:22:19 +00:00
Elliott Hughes
a6065996cd Merge "Stop defining WIN32." 2015-08-20 21:21:01 +00:00
Elliott Hughes
f0c04c7b2e Stop defining WIN32.
Change-Id: Iac0b4745579e6de55bea02571617ae561308e1a9
2015-08-20 14:04:18 -07:00