Commit Graph

2458 Commits

Author SHA1 Message Date
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
Dan Willemsen 54138edc0b Native Coverage support in Soong (gcov) am: 581341d4f2 am: a57d0d2f0d
am: 0a6a7bc066

Change-Id: I547b7cf6dc3f920772f344d0ffa1aebf9e933fa3
2017-02-15 00:41:48 +00:00
Dan Willemsen 0a6a7bc066 Native Coverage support in Soong (gcov) am: 581341d4f2
am: a57d0d2f0d

Change-Id: Ie372f0c32e498768ff797992ab415dc1ca83fe4c
2017-02-15 00:39:16 +00:00
Dan Willemsen a57d0d2f0d Native Coverage support in Soong (gcov)
am: 581341d4f2

Change-Id: Ie2d314780bd8a4476216c41285c35c11bdcbd3f1
2017-02-15 00:36:45 +00:00
Dan Willemsen 581341d4f2 Native Coverage support in Soong (gcov)
This is configured the same as make -- a global NATIVE_COVERAGE=true
flag to allow native coverage, then COVERAGE_PATHS=path1,path2,... to
turn it on for certain paths.

There are .gcnodir files exported to Make and saved in $OUT/coverage/...
files which are `ar` archives containing all of the compiler-produced
.gcno files for a particular executable / shared library.

Unlike the Make implementation, this only passes links the helper
library (automatically through --coverage) when one of the object files
or static libraries being used actually has coverage enabled.

Host support is currently disabled, since we set -nodefaultlibs, which
prevents libclang_rt.profile-*.a from being picked up automatically.

Bug: 32749731
Test: NATIVE_COVERAGE=true COVERAGE_PATHS=system/core/libcutils m -j libbacktrace libutils tombstoned
      $OUT/coverage/system/lib*/libcutils.gcnodir looks correct (self)
      $OUT/coverage/system/lib*/libbacktrace.gcnodir looks correct (static)
      $OUT/coverage/system/lib*/libutils.gcnodir doesn't exist (shared)
      $OUT/coverage/system/bin/tombstoned.gcnodir looks correct (executable)
Test: NATIVE_COVERAGE=true COVERAGE_PATHS=external/libcxxabi m -j libc++
      Confirm that $OUT/coverage/system/lib*/libc++.gcnodir looks correct (whole_static_libs)
Change-Id: I48aaa0ba8d76e50e9c2d1151421c0c6dc8ed79a9
2017-02-14 13:05:48 -08:00
Dan Willemsen 17ff636322 Ban --coverage now that we have native coverage
Bug: 32749731
Test: m -j
Change-Id: Icb6ca0d846cba0ca842d3fb12dde1f1e8701cf5d
2017-02-14 13:05:48 -08:00
Vishwath Mohan 982bc9f761 Merge "Disble CFI for ARM32 processes." am: e13374d3c1 am: 9639d3b72c
am: 58a0cb31be

Change-Id: I88ba52d9050337ef625c0259dc6690e36c91f542
2017-02-13 21:00:02 +00:00
Vishwath Mohan 58a0cb31be Merge "Disble CFI for ARM32 processes." am: e13374d3c1
am: 9639d3b72c

Change-Id: Ia4ffc01104f56f526c8a0e2ce73d7892640b2983
2017-02-13 20:57:59 +00:00
Vishwath Mohan 9639d3b72c Merge "Disble CFI for ARM32 processes."
am: e13374d3c1

Change-Id: Ib9939f42e6f7d3f932b2b29b10ba539dd4cf6239
2017-02-13 20:56:01 +00:00
Vishwath Mohan e13374d3c1 Merge "Disble CFI for ARM32 processes." 2017-02-13 20:49:20 +00:00
Colin Cross f34a9c45c8 Merge "Add soong_javac_filter tool" am: 040ffff84b am: e8c9190547
am: c5e523eb88

Change-Id: I813506a8357332e70559b68fc9b81ce57beee7fe
2017-02-10 09:00:32 +00:00
Colin Cross c5e523eb88 Merge "Add soong_javac_filter tool" am: 040ffff84b
am: e8c9190547

Change-Id: I038f1c7d1376e0f7458d864bb1deca382d8d11c8
2017-02-10 08:58:30 +00:00
Colin Cross e8c9190547 Merge "Add soong_javac_filter tool"
am: 040ffff84b

Change-Id: I17af3f306e9b5df3e604384a9ed8e2312fb85f69
2017-02-10 08:56:00 +00:00
Treehugger Robot 040ffff84b Merge "Add soong_javac_filter tool" 2017-02-10 08:06:06 +00:00
Colin Cross 521534f3d8 Add soong_javac_filter tool
The soong_javac_filter tool will take the output of the javac tool
on stdin and produce a colorized version similar to what clang
produces on stdout.  It also strips the useless "warning there are
warnings" messages:
   Note: Some input files use or override a deprecated API.
   Note: Recompile with -Xlint:deprecation for details.
   Note: Some input files use unchecked or unsafe operations.
   Note: Recompile with -Xlint:unchecked for details.
Modules that want the warnings can pass the appropriate -Xlint
options.

Test: javac_filter_test
Change-Id: Ic8d337d95ae6c48146771f2982fd1316cb7d82be
2017-02-09 17:50:21 -08:00
Jack He 6cd6282aec Removed Bluetooth build variables from the soong build parser am: ee8e7a7a2c am: 405b958886
am: 4e87a35798

Change-Id: I74f477de4e8bd0d2dc88765e7f71dba8de59053c
2017-02-10 01:07:20 +00:00
Jack He 4e87a35798 Removed Bluetooth build variables from the soong build parser am: ee8e7a7a2c
am: 405b958886

Change-Id: Ia1e6b26bf7d328fbd1956452a3aa500fb58b989d
2017-02-10 01:01:50 +00:00
Jack He 405b958886 Removed Bluetooth build variables from the soong build parser
am: ee8e7a7a2c

Change-Id: Iad836fd6e45f78b0af4fc2e28743db0fdd2e6390
2017-02-10 00:58:21 +00:00
Jack He ee8e7a7a2c Removed Bluetooth build variables from the soong build parser
* Removed BLUETOOTH_HCI_USE_MCT
* Removed BOARD_BLUETOOTH_BDROID_HCILP_INCLUDED

Bug: 34951912, 35203653
Test: Code compilation, no visible user effects
Change-Id: I89af075a334f2ec7b2a3046a4aaa5bcc19d454e0
2017-02-09 14:36:09 -08:00
Vishwath Mohan 6d67e6e68e Disble CFI for ARM32 processes.
This CL disables CFI for 32-bit ARM processes, which is broken due to
a compiler error in the most recent version of clang.

Bug: 35157333
Test: ENABLE_CFI=true m -j40 does not enable CFI for 32-bit processes
Change-Id: I52ccf60d91ff1a2af4cf024376b7d70f87040674
2017-02-08 19:46:27 -08:00
Dan Willemsen a5c1bdc192 Merge "Ship the build log and trace on the build servers" am: 62944779e2 am: 62b3ed5b61
am: fdf3f43c7d

Change-Id: I8bfc458b26716645ec485422c1a731f040bc8818
2017-02-09 02:40:54 +00:00
Dan Willemsen fdf3f43c7d Merge "Ship the build log and trace on the build servers" am: 62944779e2
am: 62b3ed5b61

Change-Id: If4d564b9809842aed3a77f28b2af900b152b92e4
2017-02-09 02:37:22 +00:00
Dan Willemsen 62b3ed5b61 Merge "Ship the build log and trace on the build servers"
am: 62944779e2

Change-Id: I90a5a33d7ddbdf93c6fa875a69738154998f7657
2017-02-09 02:35:55 +00:00
Dan Willemsen 62944779e2 Merge "Ship the build log and trace on the build servers" 2017-02-09 02:10:07 +00:00
Jayant Chowdhary b091cde31a Merge "Add RenderScript toolchain information to soong." am: 89a0d797d7 am: 3fa9724d7e
am: 8c54c2f20a

Change-Id: Ia689bcc372b713a16f1b31b5371cfcc62bd7b534
2017-02-08 18:32:09 +00:00
Jayant Chowdhary 8c54c2f20a Merge "Add RenderScript toolchain information to soong." am: 89a0d797d7
am: 3fa9724d7e

Change-Id: I3ebb02d564569fdf01c8cb76b7ed58c0250f9b38
2017-02-08 18:25:10 +00:00
Jayant Chowdhary 3fa9724d7e Merge "Add RenderScript toolchain information to soong."
am: 89a0d797d7

Change-Id: Idc70ad42629347b7573de5198b9840c78e9d4cf0
2017-02-08 17:59:41 +00:00
Jayant Chowdhary 89a0d797d7 Merge "Add RenderScript toolchain information to soong." 2017-02-08 17:45:38 +00:00
Jeff Gaston a739f24cb2 Add script to make a Go-style workspace for Soong
Test: ./scripts/setup_go_workspace_for_soong.sh

Change-Id: If091175d3b69976d3e1488304c4274296cc8afb4
2017-02-07 18:24:10 -08:00
Dan Willemsen 8a073a8b7b Ship the build log and trace on the build servers
Test: m -j; m -j dist
Change-Id: I4718e7a0cda6719bbab4243038ea2666c212cf19
2017-02-07 16:51:11 -08:00
Fabien Sanglard 4a0bd6ef7c Merge "Fix CMakeList generator CFlag bug" am: 1d83bc7866 am: 1d2221ed26
am: c268f05010

Change-Id: Iea0a5c2b462ebbbbb6a4723682cd7c2bf2f7f0d5
2017-02-07 23:53:50 +00:00
Fabien Sanglard c268f05010 Merge "Fix CMakeList generator CFlag bug" am: 1d83bc7866
am: 1d2221ed26

Change-Id: I383796cf200dde13d9767e6b792c46d3a91326f9
2017-02-07 23:46:49 +00:00
Fabien Sanglard 1d2221ed26 Merge "Fix CMakeList generator CFlag bug"
am: 1d83bc7866

Change-Id: I68e9011ae41464d26fa8d228df64032b6f47236a
2017-02-07 23:42:19 +00:00
Fabien Sanglard 1d83bc7866 Merge "Fix CMakeList generator CFlag bug" 2017-02-07 23:36:01 +00:00
Fabien Sanglard f69269c698 Merge "Add support for CMakefile generation" am: 46d17c1c99 am: 38165b2b67
am: 28d0fb1407

Change-Id: I9ca8fb882069e7893ad43cd2d439657651b7d890
2017-02-07 23:02:46 +00:00
Fabien Sanglard 28d0fb1407 Merge "Add support for CMakefile generation" am: 46d17c1c99
am: 38165b2b67

Change-Id: I7460c021303e86fd17486c4b8060f65eedecc9d5
2017-02-07 23:00:46 +00:00
Fabien Sanglard 38165b2b67 Merge "Add support for CMakefile generation"
am: 46d17c1c99

Change-Id: I894a6705e0288d5b55644a3bbe33a89bd13e238b
2017-02-07 22:58:46 +00:00