Commit graph

1729 commits

Author SHA1 Message Date
Colin Cross
a4966dc789 Move frameworks/native/include from -isystem to -I am: 315a6ffc99
am: d2290252c8

Change-Id: Ibe11bce52de686a0c803b5fe2b38c86c8f4bea59
2016-10-05 23:29:29 +00:00
Colin Cross
d2290252c8 Move frameworks/native/include from -isystem to -I
am: 315a6ffc99

Change-Id: Icae207517be29a55a9d7200970c8d4b1ae92beb9
2016-10-05 23:26:29 +00:00
Dan Willemsen
de18f47250 Mark Soong-exported make variables as readonly
Using new .KATI_READONLY extension.

Test: build/tooks/kati_all_products.sh on AOSP master and internal
Change-Id: I71794c1268456c3403a351c1b242f1e78b060355
2016-10-05 15:21:41 -07:00
Colin Cross
315a6ffc99 Move frameworks/native/include from -isystem to -I
-isystem hides all warnings.  The warnings in frameworks/native/include
have been cleaned up, so move it from -isystem to -I.

Test: m -j checkbuild
Bug: 31752268
Change-Id: Ie3656348b5b2a1828dec790aa047635ac0fe6d86
2016-10-05 12:58:29 -07:00
Dan Willemsen
b35bab5cc3 Disable cc_benchmark for Darwin hosts am: 0b24c74fcb am: e2934f369d
am: f6428f6afe

Change-Id: I55de714646eb55648438163da39c2b32660f7dd8
2016-10-05 03:43:13 +00:00
Dan Willemsen
f6428f6afe Disable cc_benchmark for Darwin hosts am: 0b24c74fcb
am: e2934f369d

Change-Id: Id313301de1ea6af65dc173708a844d7ad200ca55
2016-10-05 03:41:13 +00:00
Dan Willemsen
e2934f369d Disable cc_benchmark for Darwin hosts
am: 0b24c74fcb

Change-Id: I378014ffe1b7b49764c6dab6e28dcfea6cbee681
2016-10-05 03:38:43 +00:00
Dan Albert
12ae79c935 Add frameworks/wilhelm to Android.bp.
Test: make native
Bug: http://b/30465923
Change-Id: I97d736deb5f1b56f0492ece4afb635539bc34610
2016-10-04 17:26:03 -07:00
Dan Willemsen
0b24c74fcb Disable cc_benchmark for Darwin hosts
The google-benchmark library is disabled on Darwin, so we cannot create
host benchmarks. Instead of having every user specify this, put the
logic in Soong. Then if we decide to support it later, it's an easier
switch.

Test: build.ninja identical before/after on Linux
Test: Ignores failing cc_benchmark_host on Darwin
Change-Id: I61f3a571fd160d8e479a512992bc68601f1c9b28
2016-10-04 15:20:16 -07:00
Colin Cross
e548f2c92a Enable toc optimization for host builds am: 89562dc308 am: 8a60db561d
am: dbd0800adf

Change-Id: Iafbe90b0e9ac0cbdd045470935b95144aa581a71
2016-10-04 21:08:48 +00:00
Colin Cross
dbd0800adf Enable toc optimization for host builds am: 89562dc308
am: 8a60db561d

Change-Id: Id2af0f43b0b78b5ef65a6eb30e98ff9df6679a49
2016-10-04 21:04:27 +00:00
Colin Cross
8a60db561d Enable toc optimization for host builds
am: 89562dc308

Change-Id: Ibb2aa669ff6d835142212b8ff6ab12096bf7f37f
2016-10-04 21:02:27 +00:00
Colin Cross
d61ea4f3ca Fix toc path am: 4d67642cbd am: 2c45e1be9b
am: 573fcfbf7a

Change-Id: I32688f1d1a32d6c3be3ab2a441676b384c2ff22b
2016-10-04 18:35:46 +00:00
Colin Cross
573fcfbf7a Fix toc path am: 4d67642cbd
am: 2c45e1be9b

Change-Id: I2cd7d726b49069e16442a25962e0345410223f0a
2016-10-04 18:27:42 +00:00
Colin Cross
2c45e1be9b Fix toc path
am: 4d67642cbd

Change-Id: If895f8c2b9a9dff50235dadafc8c536b51033ef0
2016-10-04 18:21:42 +00:00
Colin Cross
89562dc308 Enable toc optimization for host builds
The toc optimization had been disabled for host builds to ensure that
the timestamp of the final binary changed whenever its implementation
changed, in order to support rerunning host tools that were modified
during incremental builds.  However, only the final install rule must be
re-run to update the timestamp, and not the link rule.

Update the shared library install dependencies to use normal
dependencies instead of order-only dependencies for host modules, and
then enable the the toc optimization for host modules.  If the
implementation of a library changes it will be reinstalled, and
libraries or binaries that depend on it will also be reinstalled.

Also move toc generation to happen on the packed, stripped library,
which is what will be used for linking, to ensure that it is available
at link time when depending only on the toc file.

Bug: 26015464
Test: m -j; touch system/tools/hidl/Annotation.cpp; m -j, verify
      out/soong/host/linux-x86/bin/hidl-gen is updated
Change-Id: I8953261d2209376f3dccbf0b1a93f7af4e45c4d0
2016-10-04 10:12:04 -07:00
Colin Cross
4d67642cbd Fix toc path
toc path was including the build directory twice, which breaks builds
with absolute paths to the build directory.

Test: m -j
Bug: 26014946
Change-Id: Ibc0856d1b22a44ec0c297f5dd84a932fde9f20af
2016-10-04 09:36:43 -07:00
Colin Cross
45f4577a10 Add support for toc optimization in soong am: 26c34ede29 am: 1e9c6a06a4
am: 0db018c2cc

Change-Id: I05e2b9b08c88b641c08defd1e9881fdbe39de55b
2016-10-03 21:48:36 +00:00
Colin Cross
0db018c2cc Add support for toc optimization in soong am: 26c34ede29
am: 1e9c6a06a4

Change-Id: Ie99243f8da6f255157a32f3ad08013622b7d2ff7
2016-10-03 21:46:03 +00:00
Colin Cross
1e9c6a06a4 Add support for toc optimization in soong
am: 26c34ede29

Change-Id: I2af5ef5564b311905c9ae14c2e56529e26e2c5d5
2016-10-03 21:44:33 +00:00
Colin Cross
26c34ede29 Add support for toc optimization in soong
Skip relinking against shared libraries whose interface hasn't changed.

Test: mmma -j frameworks/native/libs/gui
Test: touch frameworks/native/libs/gui/BufferItem.cpp
Test: mmma -j frameworks/native/libs/gui, see nothing relinks past libgui
Bug: 26014946
Change-Id: I4d4b8da6a35c682341ae51869f5c72b51e192053
2016-09-30 21:05:59 -07:00
Colin Cross
8caef9da47 Merge "Ninja and shell escape command line flags" am: 12013c8fe6 am: f3da303b51
am: d088e4cfbc

Change-Id: Ia67532faeb51fd922f3474e90ec28f1759160ede
2016-09-30 04:26:55 +00:00
Colin Cross
d088e4cfbc Merge "Ninja and shell escape command line flags" am: 12013c8fe6
am: f3da303b51

Change-Id: I5cc72ed9af81a7ea40a421d3871d97eae335e550
2016-09-30 04:24:25 +00:00
Colin Cross
f3da303b51 Merge "Ninja and shell escape command line flags"
am: 12013c8fe6

Change-Id: I104dc23636f4caf2942dbf47d8f8ba560bcdb406
2016-09-30 04:21:17 +00:00
Treehugger Robot
12013c8fe6 Merge "Ninja and shell escape command line flags" 2016-09-30 04:17:59 +00:00
Dan Willemsen
3dea1e4e79 Handle dependencies with export_generated_headers am: 847dcc7d2a am: beb9903058
am: 7f7b05ada1

Change-Id: I5f3e9fc3ec55a22cbad8ae9484355d876998af5c
2016-09-30 01:48:30 +00:00
Dan Willemsen
7f7b05ada1 Handle dependencies with export_generated_headers am: 847dcc7d2a
am: beb9903058

Change-Id: Ia9ed4677020aa76de79c51c945d80db165b5ca76
2016-09-30 01:46:32 +00:00
Dan Willemsen
beb9903058 Handle dependencies with export_generated_headers
am: 847dcc7d2a

Change-Id: I968eb6c870b9ed157c4f76bebd59fc7f9245b7c5
2016-09-30 01:44:01 +00:00
Dan Willemsen
847dcc7d2a Handle dependencies with export_generated_headers
This sets up the proper dependencies within Soong by adding the imported
dependencies into GeneratedHeaders, and re-exporting them as necessary.
It also exports them to Make using the new LOCAL_EXPORT_C_INCLUDE_DEPS.

Bug: 31742855
Test: Inspection, build hardware/interfaces (pending)
Change-Id: I6a10ceec377a97966baa9d4876b90fcda391dd01
2016-09-30 01:37:38 +00:00
Colin Cross
4b963f8d6a Ninja and shell escape command line flags
Strings like cflags in Android.bp files are parsed by blueprint,
written to build.ninja files, parsed by ninja, and then passed to
/bin/sh -c.  This had resulted in a combination of blueprint
(\"), ninja ($$), and shell (\$) escaping being necessary.

Update Soong to automatically handle ninja and shell escaping in
cflags and ldflags.

Bug: 31221587
Test: m -j
Change-Id: Ibe087b2788b355b73c3225b5928870619a0a53bc
2016-09-29 15:57:59 -07:00
Dan Willemsen
6d31717316 Trigger binary installation in Soong from Make am: 03ce63eaa6 am: f9a8e25486
am: 13e53fd9c1

Change-Id: I1a9c0e51aa5eb003b907ab0db9f138049efc0628
2016-09-29 22:53:16 +00:00
Dan Willemsen
13e53fd9c1 Trigger binary installation in Soong from Make am: 03ce63eaa6
am: f9a8e25486

Change-Id: I0b1d36df06a6576ee53519cfd4620cf0619abb12
2016-09-29 22:47:52 +00:00
Dan Willemsen
f9a8e25486 Trigger binary installation in Soong from Make
am: 03ce63eaa6

Change-Id: I8276ab905b807a7f264a5978609c94add27bec1a
2016-09-29 22:44:36 +00:00
Josh Gao
3923e84a49 Allow -lobjc and -framework IOKit in darwin host_ldlibs.
Bug: http://b/31321337
Test: mma of external/libusb on darwin
Change-Id: I1023a2a7ff1fdf809ac47104bca7b4171861abef
2016-09-29 14:47:47 -07:00
Dan Willemsen
03ce63eaa6 Trigger binary installation in Soong from Make
We prepended Soong's binary installation path to PATH, but now
rebuilding binaries that are in Soong and exported to Make produces
inconsistent results. From an empty out directory:

Run `m -j hidl-gen`, PATH will get a hidl-gen binary in out/host/...
Run `m -j android.hardware.tests.foo@1.0`, PATH will get a new hidl-gen
binary in out/soong/host/...
Make a change to hidl-gen, then run `m -j hidl-gen`. The hidl-gen first
in PATH is still the one without the changes.

Bug: 31742855
Test: m -j hidl-gen showcommands
Change-Id: If01a76d10d786dac6f16f31d1142634af4964228
2016-09-29 13:56:02 -07:00
Dan Willemsen
f29c869ac0 Merge changes from topic 'genrule-multi-out' am: 81ef084a00 am: 2a44260f73
am: 75d27fae46

Change-Id: I017423268cc7463cfd4861213f2dfe457706def7
2016-09-29 05:55:41 +00:00
Dan Willemsen
10b110570d Remove shared lib name checks am: 27279ece28 am: 40570b9fc4
am: fde0bb4aba

Change-Id: Ie47708ff9a2e688185a24ad5adf716ae699cee63
2016-09-29 05:55:40 +00:00
Dan Willemsen
0d5b0a4914 Add export_generated_headers am: b3454ab24d am: db22db3473
am: 9aa20fa06f

Change-Id: Ifc20f9f90e5d827233a0ef7157b463489b583860
2016-09-29 05:55:40 +00:00
Dan Willemsen
cf8e924898 Support multiple outputs for genrule am: 9c8681f4f9 am: 6966d7071f
am: 3ca1d9ccbb

Change-Id: I381f9d5ff1f9abe976c8ced89a745d3e3dd54ba9
2016-09-29 05:55:39 +00:00
Dan Willemsen
7e55fb61c1 Parse genrule's cmd property am: 3f4539b035 am: 392499e757
am: c7a673f16d

Change-Id: Idd137dd5209dc8762819a942cd6656745d9526fe
2016-09-29 05:55:38 +00:00
Dan Willemsen
6fbb191573 Expose HostToolPath on the cc module to fix genrule.tool am: 4aa75ca244 am: 2658e9b516
am: d04c49768b

Change-Id: I02b486fd52719bfd6bf65197dd721b01aa50021f
2016-09-29 05:55:37 +00:00
Dan Willemsen
75d27fae46 Merge changes from topic 'genrule-multi-out' am: 81ef084a00
am: 2a44260f73

Change-Id: Iaa4144966f308bd74c5c3b98d39529d39c5030bc
2016-09-29 05:47:08 +00:00
Dan Willemsen
fde0bb4aba Remove shared lib name checks am: 27279ece28
am: 40570b9fc4

Change-Id: I0669f867e416d76acf6c46b1cd451f63314aacc6
2016-09-29 05:47:07 +00:00
Dan Willemsen
9aa20fa06f Add export_generated_headers am: b3454ab24d
am: db22db3473

Change-Id: Ibedd6b8a934e51d4d16ed3579b99f91a5d86a63e
2016-09-29 05:47:06 +00:00
Dan Willemsen
3ca1d9ccbb Support multiple outputs for genrule am: 9c8681f4f9
am: 6966d7071f

Change-Id: Iab1dc0b7e789eac9f1e5a7c7e8e45a7d52d337d1
2016-09-29 05:47:06 +00:00
Dan Willemsen
c7a673f16d Parse genrule's cmd property am: 3f4539b035
am: 392499e757

Change-Id: Iebd6c47dd0998fb74fbd46dd35e843d92d930a68
2016-09-29 05:47:05 +00:00
Dan Willemsen
d04c49768b Expose HostToolPath on the cc module to fix genrule.tool am: 4aa75ca244
am: 2658e9b516

Change-Id: If6cc08dfcde698af955d2ca2d76f6e0992546d99
2016-09-29 05:47:04 +00:00
Dan Willemsen
2a44260f73 Merge changes from topic 'genrule-multi-out'
am: 81ef084a00

Change-Id: Id449809a0258c075de33923517a4b2b32670ec7e
2016-09-29 05:42:37 +00:00
Dan Willemsen
40570b9fc4 Remove shared lib name checks
am: 27279ece28

Change-Id: I2c81c7ca8989a1a8d40d87d5da8f6de97c906bc4
2016-09-29 05:42:37 +00:00
Dan Willemsen
db22db3473 Add export_generated_headers
am: b3454ab24d

Change-Id: I3c893df045a5bfcd5e4bac87a0314f197fe3bd8b
2016-09-29 05:42:36 +00:00