Commit graph

22016 commits

Author SHA1 Message Date
Colin Cross
b71d24931c Only put PARSE_TIME_MAKE_GOALS into KATI_TARGETS
Only goals that modify the parsing need to be passed to kati, filter out
everything else and only pass it to ninja.

Change-Id: I28788a3409d601fe838749bcf15394bc8f3d775b
2015-09-22 14:24:00 -07:00
Colin Cross
9ff24387c2 Merge "Make USE_NINJA=true the default" 2015-09-22 17:05:22 +00:00
Dan Albert
30b326206b Merge "Revert "Don't re-export libgcc symbols from every object."" 2015-09-21 19:20:24 +00:00
Dan Albert
5408ff73d6 Revert "Don't re-export libgcc symbols from every object."
For some reason shamu doesn't boot after this change.

Bug: http://b/24166967

This reverts commit e92d25f296.

Change-Id: Ibd90c0fccb1fe7446f959c937963d1aa4e43c37c
2015-09-21 19:19:02 +00:00
Dan Albert
86e1aa1a1d Merge "Move python-adb to development/python-packages." 2015-09-21 17:26:15 +00:00
Ying Wang
3c4c34183a Merge "Don't add build number to apps' version name for platform build." 2015-09-20 03:22:07 +00:00
Ying Wang
d75d893da8 Don't add build number to apps' version name for platform build.
Bug: 24201956
Change-Id: I4a4bb483bb7b1bf7b7a856050d548bee4db0fe93
2015-09-19 10:56:35 -07:00
Colin Cross
0881ce1817 Merge changes Ic1be7572,Id6481430
* changes:
  Pass --ninja to makeparallel for ninja
  makeparallel: improve support for wrapping ninja
2015-09-18 23:33:59 +00:00
Colin Cross
f77030bb30 Make USE_NINJA=true the default
Build with kati + ninja by default, unless specifically disabled with
USE_NINJA=false in the environment or on the make command line.

Bug: 23565895
Change-Id: I1fa9f5c6eb4d4ed3f5b81454f89d19fd2f1f6abb
2015-09-18 15:10:21 -07:00
Colin Cross
af6c071a5f Pass --ninja to makeparallel for ninja
When parallelism is being handled by ninja, pass --ninja to makeparallel
to have it translate -j with no number to default ninja parallelism, and
-k to -k0.

Bug: 24199503
Change-Id: Ic1be7572f93b33e4a71ed23e9e73dea1d4255703
2015-09-18 15:02:40 -07:00
Colin Cross
69047fab7e makeparallel: improve support for wrapping ninja
Allow makeparallel to pass better -j and -k arguments to ninja if the
first argument to makeparallel is --ninja.  Uses getopt to parse
MAKEFLAGS to get values for --jobserver-fds, -k, and -j, and uses the
result to not pass any -j argument to ninja for make -j with no number,
and pass -k0 to ninja for make -k.

Also improve the test makefile to provide many more tests.

Bug: 24199503
Change-Id: Id6481430f77e9e952213be58a98fe78c46ee5d6a
2015-09-18 15:02:40 -07:00
Christopher Ferris
9bc462c12a Merge "Add the common directory back to kernel headers." 2015-09-18 20:44:58 +00:00
Dan Albert
f5caa3d3ba Move python-adb to development/python-packages.
Nothing else was being imported from system/core yet, and a path under
development makes more sense for this.

Bug: http://b/22881740
Change-Id: Ib0beb02137805b3e382535514a2bc067b7fd1d33
2015-09-18 13:40:26 -07: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
909fe8e0f7 Merge "build: support compiling .mm on host" 2015-09-17 23:11:10 +00: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
Ying Wang
6fb36397e5 Merge "Use $(OUT_DIR)/ninja_build to mark ninja build." 2015-09-16 23:12:37 +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
45075cf623 Merge "Generate installed-files-vendor.txt" 2015-09-15 21:52:13 +00: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
Ying Wang
6eb3d977c5 Merge "Remove legacy kernel build toolchain PATH setup in envsetup.sh" 2015-09-15 17:04:48 +00:00
Ying Wang
750396dd30 Remove legacy kernel build toolchain PATH setup in envsetup.sh
We used to rely on envsetup.sh to set up PATH before doing kernel build.
Now we have new kernel build process.
Also the variable doesn't work any more as we don't have corresponding arm-eabi
toolchain for the latest arm-linux-androideabi toolchain.

Change-Id: I99443fdc58e94f57f4f1f7e88da6dd127f3b2fac
2015-09-14 19:32:50 -07:00
Dan Willemsen
b384eb84c3 Merge "kati: Handle MAKECMDGOALS modifications" 2015-09-15 00:28:42 +00:00
Colin Cross
4ce3cea770 Merge changes I6e4f957c,Id41a2d81
* changes:
  Use makeparallel to propagate -j flag to ninja or kati
  Implement makeparallel
2015-09-15 00:18:43 +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
Colin Cross
a55544875a Implement makeparallel
makeparallel communicates with the GNU make jobserver
(http://make.mad-scientist.net/papers/jobserver-implementation/)
in order claim all available jobs, and then passes the number of jobs
claimed to a subprocess with -j<jobs>.

Change-Id: Id41a2d81e0d835517da8ba52c818c763fc455c14
2015-09-14 14:33:50 -07:00
Dan Albert
da196abf10 Merge "Fix LOCAL_CXX_STL := none for Windows." 2015-09-11 20:44:46 +00: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
96d3c0d0b1 Merge "Update the build system doc" 2015-09-10 00:45: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
c8db47a021 Merge "Don't build windows modules with clang, fix flags" 2015-09-09 23:17:47 +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
Tao Bao
c5fe3f117d Merge "releasetools: Fix the expected total blocks." 2015-09-09 19:29:59 +00:00
Tao Bao
b32d56ea8c releasetools: Fix the expected total blocks.
With the change in [1], it zeroes out extra blocks that might be read
by dm-verity. We should update the expected number of blocks that get
touched.

[1] commit e9b619108d.

Bug: 23786644
Change-Id: I7a7c3531e5af6bf381d3a14832e77abfa9a8efce
2015-09-09 11:56:58 -07:00
Dan Willemsen
f1c09d7fbd Merge "Add HOST_CROSS_OS" 2015-09-09 18:13:21 +00:00
Dan Albert
feb3ecaff0 Merge "Fix name for NDK protobuf libraries." 2015-09-09 18:13:16 +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
Tao Bao
10b2e62b6d Merge "releasetools: Don't write empty groups." 2015-09-08 22:25:42 +00:00
Tao Bao
42206c3f2f releasetools: Don't write empty groups.
For a DataImage, we may have no mapping of ZERO or NONZERO blocks. Don't
write those groups if they are empty.

Bug: 19024504
Change-Id: I1e921effcdbf0661d4f4b541c104dd456ac0c582
2015-09-08 14:06:08 -07: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
Tao Bao
16656668e1 Merge "releasetools: Always write the last block if it's padded." 2015-09-08 17:41:47 +00:00