Commit graph

2394 commits

Author SHA1 Message Date
Dan Willemsen
c38d366d78 Updates for the new ckati drop
We can start removing out directories again in multiproduct_kati, since
the opendir bug has been fixed.

Add --color_warnings to the Kati command line. Since this is different
from Make, take this opportunity to reorder the command line to make
more sense. This wasn't done before because kati forces a regen whenever
the command line changes.

Test: USE_SOONG_UI=true m -j blueprint_tools
Change-Id: I5ad03359fbc16db482722946202297c1ae0f2b90
2017-02-24 10:53:23 -08:00
Josh Gao
7bd4c5c339 Add libwinpthread, link it into win32 binaries.
Bug: http://b/31665213
Test: wine adb.exe
Test: wine fastboot.exe
Change-Id: I6d6ff69f0c016e2654119a09161685841cbccc7e
2017-02-23 17:57:03 -08:00
Dan Albert
9060b1777c Merge "Add preprocessed_ndk_headers."
am: 9383f82428

Change-Id: I278cd8633460a985e7df06c82b1a53217622623c
2017-02-23 21:11:15 +00:00
Dan Albert
9383f82428 Merge "Add preprocessed_ndk_headers." 2017-02-23 21:06:47 +00:00
Colin Cross
c0af80fbcd Merge "Remove cpusets and schedboost product variables"
am: 3c776d1b74

Change-Id: I9763e24df5e2e8400149f0eea2d18c71a4469a2b
2017-02-23 19:21:16 +00:00
Treehugger Robot
3c776d1b74 Merge "Remove cpusets and schedboost product variables" 2017-02-23 19:16:06 +00:00
Colin Cross
d2906e5deb Remove cpusets and schedboost product variables
They are no longer needed, remove them.

Bug: 35129304
Bug: 35128496
Test: builds
Change-Id: Ib144ddc2db40bc4f38a4e06ca40eabe85814e03c
2017-02-23 09:44:22 -08:00
Dan Willemsen
eb22dda417 Don't use runtime.Version() to find the current go version
am: fde8534680

Change-Id: Ief8f39921e5e833ca4e31db445050239bdf21b91
2017-02-23 07:38:16 +00:00
Dan Willemsen
fde8534680 Don't use runtime.Version() to find the current go version
That will be the go version at compile time. So read $GOROOT/VERSION, or
fall back to executing `$GOROOT/bin/go version` to find the go version
currently in GOROOT.

Test: Ensure everything rebuilds when switching between go1.8rc2 and go1.8
Change-Id: I8738a7aa249a088b1e0668af260fa3974844dab7
2017-02-22 22:03:04 -08:00
Dan Albert
269fab82eb Add preprocessed_ndk_headers.
Prototypes in the bionic headers are annotated with `__INTRODUCED_IN`
tags that are processed by bionic/tools/versioner into their usable
form (tags replaced with `#if __ANDROID_API__ >= foo` guards). We've
previously done this as a periodic manual step with the results
checked in to prebuilts/ndk, but that's been a huge hassle for me.
Make the tool a part of the build instead.

Test: make checkbuild
Bug: http://b/35673791
Change-Id: I2f5c1aeae239ac4ab6616eb5c71360e3055f86d5
2017-02-22 14:52:52 -08:00
Dan Willemsen
2e883365e8 Merge "Improve signal handling in soong_ui"
am: fd96d2421a

Change-Id: I5304f3284133d9c017c9ef53d69880654d05915c
2017-02-22 20:33:19 +00:00
Treehugger Robot
fd96d2421a Merge "Improve signal handling in soong_ui" 2017-02-22 20:29:53 +00:00
Dan Willemsen
a23eb2e2f6 Filter kati output to collapse verbose messages
am: 29f88279ba

Change-Id: I96fabf3766f9b1f8b627f6cc9e4267ddd40fa526
2017-02-22 19:26:49 +00:00
Dan Willemsen
9af5fb9ac8 Improve signal handling in soong_ui
Bug: 35214134
Test: ctrl-C during build
Test: add for{} to hang soong_ui in multiple places, ensure it exits
Change-Id: Ic71eedd4b1814ab2f3c441ae61a97570eda4fe16
2017-02-22 10:44:19 -08:00
Dan Willemsen
29f88279ba Filter kati output to collapse verbose messages
1. Collapses the "including .../Android.mk ..." lines like ninja does,
so that we overwrite the last line if there wasn't anything else to
print.
2. Strips ansi control codes so that log files don't include unreadable
characters.

Test: m -j
Test: m -j | tee output.log   (with colored output)
Change-Id: Ib18437f6f9d37084360097a9d586800c833072c5
2017-02-21 19:40:49 -08:00
Colin Cross
9d91b89d78 Merge "increase javac_filter line length limit to 2MB"
am: 5e07dc57c4

Change-Id: Idb854e2eef11b51f4a00fb03ab602f62b6845e52
2017-02-20 07:01:26 +00:00
Treehugger Robot
5e07dc57c4 Merge "increase javac_filter line length limit to 2MB" 2017-02-20 06:56:15 +00:00
Colin Cross
8b82b7ea32 increase javac_filter line length limit to 2MB
Some javac wrappers output the entire list of java files being
compiled on a single line, which can be very large, set the maximum
buffer size to 2MB.

Test: pipe the grok build output through soong_javac_wrapper
Change-Id: Ib208461dca02ced4959433b7695ec760dc134468
2017-02-19 19:56:29 -08:00
Dan Willemsen
bcbd5b1c12 Merge "Add device blueprint files to root build."
am: f29bcfc24b

Change-Id: Ia3aae2fbcba1c1c5353d95eeb8048e26c63c2439
2017-02-18 01:27:48 +00:00
Dan Willemsen
f29bcfc24b Merge "Add device blueprint files to root build." 2017-02-18 01:19:34 +00:00
Dan Willemsen
a711af31fa Merge "Export cc_library_headers as BUILD_HEADER_LIBRARY"
am: 6c1ae37599

Change-Id: Id5fe1fa4447444365eb062b17245e0e89078ebea
2017-02-17 23:55:20 +00:00
Dan Willemsen
6c1ae37599 Merge "Export cc_library_headers as BUILD_HEADER_LIBRARY" 2017-02-17 23:50:41 +00:00
Dan Willemsen
600895b4d3 Merge "Fix Zip64 behavior in zip2zip"
am: f729700729

Change-Id: Iee0aa184a5f9768756737946c4a78a7f96f47dde
2017-02-17 22:34:59 +00:00
Treehugger Robot
f729700729 Merge "Fix Zip64 behavior in zip2zip" 2017-02-17 22:20:25 +00:00
Dan Willemsen
a1354b325d Fix Zip64 behavior in zip2zip
This was blindly copying the zip64 extra fields from the central
directory of the original zip file to the new one. The zip64 extra
fields depend on the contents of the header it's attached toa, and in
this case we were copying the zip64 file header offset from the central
directory entry into the destination local file header, which makes no
sense, especially since the offset changed in the new file.

So strip all zip64 extra entries, and we'll create them as necessary
when writing ou the new file.

Bug: 34704111
Test: zip2zip on the original target-files -> img that was broken
Test: m -j blueprint_tools (new android_test.go)
Change-Id: Ie3c0540b13d3afcf42f3d47fff319065952b126f
2017-02-17 13:21:03 -08:00
Fabien Sanglard
11e0a56d6c Merge "Add Documentation for clion project generator" am: fcc426d394 am: 338c88cf25
am: 2828c5b88a

Change-Id: I17bf74fddef6b55305e9bbdad76f4c7fecacb536
2017-02-16 22:17:13 +00:00
Fabien Sanglard
2828c5b88a Merge "Add Documentation for clion project generator" am: fcc426d394
am: 338c88cf25

Change-Id: I40cccb1ae2ecac77617b3aa149972eeb18af7b70
2017-02-16 22:13:12 +00:00
Fabien Sanglard
338c88cf25 Merge "Add Documentation for clion project generator"
am: fcc426d394

Change-Id: I8ecbf8581b41e080d3fe79c215a078892a6a06d6
2017-02-16 22:09:11 +00:00
Fabien Sanglard
fcc426d394 Merge "Add Documentation for clion project generator" 2017-02-16 22:00:48 +00:00
Dan Willemsen
d5781347e0 Export cc_library_headers as BUILD_HEADER_LIBRARY
And support the reverse translation in androidmk.

Test: Use a cc_library_headers using LOCAL_HEADER_LIBRARIES in make
Test: androidmk with LOCAL_HEADER_LIBRARIES
Test: androidmk with soong's Android-*.mk file for BUILD_HEADER_LIBRARIES
Change-Id: I17adedb62151f62e67e2168b09ad87f1d5648df6
2017-02-16 10:58:26 -08:00
Fabien Sanglard
52d7a66671 Add Documentation for clion project generator
Change-Id: If59d4b7255fcb2718b1ff4b97246b94b4c09a8c7
2017-02-16 09:57:46 -08:00
Colin Cross
fb217dcecd Merge "Export header libraries to make as static libraries" am: 449887957c am: f886425e94
am: 40da51e616

Change-Id: I180d1356ec254c711ab888adf275eb2173dc6a0d
2017-02-16 16:20:18 +00:00
Colin Cross
40da51e616 Merge "Export header libraries to make as static libraries" am: 449887957c
am: f886425e94

Change-Id: If04b57b679c109786ff89f617ea8d4b85478b777
2017-02-16 16:16:20 +00:00
Colin Cross
f886425e94 Merge "Export header libraries to make as static libraries"
am: 449887957c

Change-Id: I261c4a50ac8d7522757a48495bb866e084ae4558
2017-02-16 16:12:48 +00:00
Colin Cross
449887957c Merge "Export header libraries to make as static libraries" 2017-02-16 16:05:20 +00:00
Vishwath Mohan
6a9cd34f20 Merge "Blacklist code for CFI." am: 367a7da041 am: ddfd8d5ac1
am: da115e3077

Change-Id: Icfdc35390702856ed6af902e760d6bd97a1e5a74
2017-02-15 23:41:24 +00:00
Vishwath Mohan
da115e3077 Merge "Blacklist code for CFI." am: 367a7da041
am: ddfd8d5ac1

Change-Id: I4ca7ba81aa127f6be2cf8fbc5cf2676346fc1752
2017-02-15 23:37:52 +00:00
Vishwath Mohan
ddfd8d5ac1 Merge "Blacklist code for CFI."
am: 367a7da041

Change-Id: I2d3350151a3fddb95379641e7e7a13864e4f372a
2017-02-15 23:33:47 +00:00
Colin Cross
4ac44809af Export header libraries to make as static libraries
Header libraries were building an empty .a file but setting
LOCAL_MODULE_CLASS := SHARED_LIBRARIES.  Make the static and shared
checks in libraryDecorator.AndroidMk explicit.

Bug: 35228396
Test: builds, examine out/soong/Android-${TARGET_PRODUCT}.mk
Change-Id: I5653ae92bb41d440d8c3ff4b6d509be188feb961
2017-02-15 23:26:15 +00:00
Treehugger Robot
367a7da041 Merge "Blacklist code for CFI." 2017-02-15 22:52:46 +00:00
Michael Wright
7cac38429b Add device blueprint files to root build.
Test: built with a blueprint file in device/google/marlin
Change-Id: Ia820e6dd3d46b8f6f718b6fddedaa3f548b371fa
2017-02-15 21:43:36 +00:00
Dan Willemsen
93516ac57b Merge "Ban --coverage now that we have native coverage" am: 31160bef1e am: b408965e20
am: b9eef7a590

Change-Id: Iba3534614034079339d2e3eeebbbd95fcb44bde8
2017-02-15 21:36:06 +00:00
Dan Willemsen
b9eef7a590 Merge "Ban --coverage now that we have native coverage" am: 31160bef1e
am: b408965e20

Change-Id: Iecb3e71ee7dda432f3ef26d3af4381159a94afe2
2017-02-15 21:30:55 +00:00
Dan Willemsen
b408965e20 Merge "Ban --coverage now that we have native coverage"
am: 31160bef1e

Change-Id: Iebe613705dc553136161465fc68a854ae1e4a6d2
2017-02-15 21:27:27 +00:00
Treehugger Robot
31160bef1e Merge "Ban --coverage now that we have native coverage" 2017-02-15 20:58:49 +00:00
Vishwath Mohan
f3918d37fb Blacklist code for CFI.
Adds the -fsanitize-blacklist option for CFI, using the built in
blacklist at external/compiler-rt/lib/cfi/cfi_blacklist.txt.

Also refactors the CFI cflags and ldflags into cc/makevars.go to
ensure they're consistent across Soong and make projects.

Bug: 30227045
Test: ENABLE_CFI=true m -j40 builds and boots.
Test: The blacklist prevents runtime errors that otherwise occur.
Change-Id: I91c5420478e7290061d89338a86abdef69c67fe2
2017-02-15 12:46:52 -08:00
Colin Cross
c9f552235a Build a static library for header-only libraries am: a48ab5b207 am: ec0932ba0f
am: 5bfa6b66c4

Change-Id: I89aef77a2d427ae9dad94e6b11ac578099486779
2017-02-15 07:02:37 +00:00
Colin Cross
5bfa6b66c4 Build a static library for header-only libraries am: a48ab5b207
am: ec0932ba0f

Change-Id: Idc38bde71d5a0be32f26cf31883306d1f63809c8
2017-02-15 06:59:36 +00:00
Colin Cross
ec0932ba0f Build a static library for header-only libraries
am: a48ab5b207

Change-Id: I5b27aa8ef0bf86ec6ce85b44eaffe4d899ab8b73
2017-02-15 06:56:36 +00:00
Colin Cross
a48ab5b207 Build a static library for header-only libraries
library.static() was being used to determine if a library was static,
shared, or header only, which resulted in header only libraries
behaving like shared libraries, when they should be treated as static
libraries with no sources.  Explicitly use library.static(),
library.shared(), and library.header() instead.

Bug: 35228396
Test: builds, manually examine changes to build.ninja and Android.mk
Change-Id: I51729992cc6338deda1396b86f12bc9f73e674d8
2017-02-14 17:52:10 -08:00