Commit Graph

5734 Commits

Author SHA1 Message Date
Colin Cross 6abc973a9c Update jacoco command line flags for latest version
jacoco_cli wants --quiet and --dest instead of -quiet and -dest.

Bug: 69669951
Test: m EMMA_INSTRUMENT=true EMMA_INSTRUMENT_FRAMEWORK=true SKIP_BOOT_JARS_CHECK=true WITH_DEXPREOPT=false tests
Change-Id: I72b3d0a21c5fa02a58914953d3d794065f59bd18
2017-12-21 14:29:56 -08:00
Colin Cross 7b60cdd6e5 Strip module-info.class files when combining jars
Combining static jars from dependencies may bring in module-info.class
files, which don't make sense once multiple modules have been combined,
and sometimes confuse downstream tools like desugar.  Strip them out
like make does when combining jars.

Test: m checkbuild
Change-Id: I560c5acfcc6e1be9adf604c22cf200581f92f702
2017-12-21 14:29:56 -08:00
Colin Cross c5de1b6cb2 Remove --no-locals -> --release translation
--no-locals is never used any more, remove the translation.

Bug: 70886092
Test: m checkbuild
Change-Id: Ie89aaad618c12c288d7e7bca863834cf7ee824fb
2017-12-21 13:01:49 -08:00
Treehugger Robot cd406fa70b Merge "Ignore 'extern "C++"' section in a version script" 2017-12-21 15:13:34 +00:00
Tobias Thierer 38501a959f Merge "Make ANDROID_JAVA{8,9}_HOME available to config.mk." 2017-12-21 11:46:20 +00:00
Treehugger Robot 95fba1a8f8 Merge "Add [soc|device|product]_specific" 2017-12-21 09:02:20 +00:00
Colin Cross d7deceb8fa Fix jacoco filters
Add space after -x argument for jacoco excludes.
Add .class to end of file name for jacoco includes.

Bug: 64836607
Test: jacoco_test.go
Change-Id: I4c1024755882c976f7326f7382c4f2e99a20233d
2017-12-21 04:34:46 +00:00
Colin Cross 7a3139e05d Add jacoco filter tests
Add tests for converting jacoco filters to command line arguments
to soong_zip.

Bug: 64836607
Test: jacoco_test.go
Change-Id: I969fa877e4be19bb92dcab5a796a4e4ec3fc166a
2017-12-21 04:34:26 +00:00
Jiyong Park 2db7692a74 Add [soc|device|product]_specific
Added three properties (soc_specific, device_specific, and
product_specific) that shows what a module is specific to.

`soc_specific: true` means that the module is specific to an SoC
(System-On-a-Chip) and thus need to be installed to vendor partition.
This has the same meaning as the old `vendor: true` setting.

`device_specific: true` means that the module is specific to the entire
hardware configuration of a device includeing the SoC and off-chip
peripherals. These modules are installed to odm partition (or /vendor/odm
when odm partition does not exist).

`product_specific: true` means that the module is specific to the
software configuration of a product such as country, network operator,
etc. These modules are installed to oem partition (or /system/oem when
oem partition does not exist). These modules are assumed to be agnostic
to hardware, so this property can't be true when either soc_specific or
device_specific is set to true.

Bug: 68187740
Test: Build. path_tests amended.
Change-Id: I44ff055d87d53b0d2676758c506060de54cbffa0
2017-12-21 12:16:29 +09:00
Treehugger Robot 828001d59d Merge "Add -p, -e options in merge_zips for supporting par format." 2017-12-21 01:27:32 +00:00
Treehugger Robot 91aa9f9d54 Merge "Add 'openmp' compiler property" 2017-12-21 00:38:45 +00:00
Treehugger Robot 3b528a802d Merge "Update the NDK ARM ABI to armv7." 2017-12-21 00:37:29 +00:00
Tobias Thierer e59aeff5c4 Make ANDROID_JAVA{8,9}_HOME available to config.mk.
Previously, these variables were exported only by makevars.go,
but those values are not available to config.mk. This CL adds
the variable to ui/build/config.go, which also makes it
available to config.mk.

Test: Treehugger
Bug: 70862583
Bug: 70521453
Change-Id: Ib54660e4b08ab751265b30004630cf1bb8c0041b
2017-12-20 23:14:37 +00:00
Dan Albert d3c8ca4469 Update the NDK ARM ABI to armv7.
We don't support armv5 any more, and we can't build bionic as armv5.

Test: build/soong/scripts/build-ndk-prebuilts.sh
Bug: https://github.com/android-ndk/ndk/issues/272
Change-Id: I4026d48e7d5db78f6aa4e9796da1ec9cf10021ca
2017-12-20 14:48:39 -08:00
Nan Zhang 5925b0fda4 Add -p, -e options in merge_zips for supporting par format.
Move __init__.py files population to merge_zips, and add options: -p, and
-e. Since par needs entry_point.txt to search the program entry point, so
add -e option to support it.

Test: ./merge_zips -p -e entry_point.txt out in1.zip in2.zip
Bug: 70568913
Change-Id: Ida10faf125e1b94dffc98b30240db3b90fd75b25
2017-12-20 12:57:10 -08:00
Treehugger Robot 57603998a6 Merge "Remove sepolicy_split from soong." 2017-12-20 19:10:32 +00:00
Pirama Arumuga Nainar fadb7b511a Add 'openmp' compiler property
Bug: http://b/70692399

If a module has 'openmp: true', add '-fopenmp' to CFlags during any
compile step and pass the libomp runtime to the linker during any link
step.

Test: Build samples in http://aosp/572924
Change-Id: Ic2a6410ec69aae548edaf582ee41659b0058561e
2017-12-19 23:14:19 -08:00
Treehugger Robot 6f86613420 Merge "Add compile-time pathDeps as implicit dependencies" 2017-12-20 04:05:39 +00:00
Alan Leung 731c8dac6d Merge "Prep D8 default instead of CompatDX in build/soong" 2017-12-20 02:00:45 +00:00
Treehugger Robot 32bf18b10a Merge "Ensure -I . is the first protoc argument" 2017-12-20 00:37:30 +00:00
Treehugger Robot 750e6fab06 Merge "Add default -Werror to hardware/libhardware/modules" 2017-12-20 00:08:36 +00:00
Pirama Arumuga Nainar 70ba5a38d1 Add compile-time pathDeps as implicit dependencies
Bug: http://b/70820751
Bug: http://b/70857959

Clang does not output file dependencies from the -fprofile-use= flag
during -MD/-MM.  Add this and other path dependencies as implicit Ninja
dependencies.  Generated header dependencies are retained as OrderOnly
dependencies.

Test: Perturb profdata files for hwui/skia in internal branch and verify
that the sources get rebuilt.

Change-Id: I3247d995ee27a4882172eb15ff36acf56536b6f7
2017-12-19 15:44:38 -08:00
Steven Moreland 65b3fd900a neverallows in Soong
Straightforward way of expressing policy inspired by a similar
syntax in SELinux.

Bug: 70165717
Test: no neverallows hit
Test: manually checking neverallow rules by changing them/adding violations
Change-Id: I7e15a0094d1861391bfe21a2ea30797d7593c142
2017-12-19 15:26:08 -08:00
Steven Moreland 0afa55ae12 Remove sepolicy_split from soong.
No longer needed.

Bug: 62019611
Test: manual
Change-Id: Id485e6db4cc9b5a7cf553e5089fd85b667c7c660
2017-12-19 20:41:21 +00:00
Alan Leung c37c6343e2 Prep D8 default instead of CompatDX in build/soong
Bug: 69329508
Test: m checkbuild tests
Change-Id: Ibaa2d787c644cf25104af78305a6eed16028dcf0
2017-12-18 23:56:30 -08:00
Treehugger Robot b267295324 Merge "Expose the NDK STLs to make." 2017-12-19 00:29:52 +00:00
Treehugger Robot 26e5a168bf Merge "Call clang-tidy with -quiet unless WITH_TIDY is set." 2017-12-16 21:02:06 +00:00
Colin Cross 9bc4343bea Add missing dependencies on classpath jars for kotlinc
The kotlinc build rules were missing dependencies on the jars in
the classpath.

Test: TestKotlin in java_test.go
Change-Id: I56681785289f942b1070751b7dc5944e7a995b7f
2017-12-16 06:05:38 +00:00
Chih-Hung Hsieh dc0c0302e9 Call clang-tidy with -quiet unless WITH_TIDY is set.
* Default builds calls clang-tidy only if enabled locally.
  In this case, clang-tidy should be quiet.
* If WITH_TIDY is 1 or true, let clang-tidy emit default messages.
* Even with -quiet and all warnings are suppressed,
  clang-tidy emits one line message of the number of suppressed messages.
  This one-liner could be suppressed in future changes.

Bug: 69051430
Test: default build and build with WITH_TIDY=1
Change-Id: I45303149930b33544e271e6d5eeddf18c9e48d7a
2017-12-15 20:57:48 -08:00
Treehugger Robot 2555b259ad Merge "Allow NDK static libraries to use the NDK sysroot." 2017-12-16 03:14:43 +00:00
Chih-Hung Hsieh 41fe048372 Add default -Werror to hardware/libhardware/modules
Bug: 66996870
Test: normal build
Change-Id: I0e38533b0fa2970524ac98eca25b2c2fd472fc31
2017-12-15 18:08:36 -08:00
Treehugger Robot 04bd5080bf Merge "Support output params in java proto" 2017-12-16 01:32:32 +00:00
Colin Cross 30eaac67bd Merge "Export app implementation and header jars to Make" 2017-12-16 00:00:24 +00:00
Treehugger Robot 81f139bcff Merge "Add basic NDK STL link type check." 2017-12-15 23:50:13 +00:00
Chih-Hung Hsieh 77abc230f6 Add default -Werror to tools/adt/idea
Bug: 66996870
Test: normal build
Change-Id: Id5493eacf546d3246f501ca70bac26312837947e
2017-12-15 23:37:11 +00:00
Chih-Hung Hsieh 1ef5ed54ee Add default -Werror to external/skia.
Test: normal build
Change-Id: If66639a9000865e14c1ad5288b8642dfe5583f56
2017-12-15 23:34:33 +00:00
Chih-hung Hsieh cc64cfd81f Merge "Add default -Werror to frameworks/av/drm/mediacas" 2017-12-15 23:08:42 +00:00
Dan Albert d0e4cc1dc4 Merge "Don't install host or VNDK libs to the NDK." 2017-12-15 23:00:21 +00:00
Dan Albert 8ba131b3e2 Expose the NDK STLs to make.
Without this any module exposed to make that uses an NDK STL will
have unsatisfied dependencies.

Test: make native
Bug: None
Change-Id: Ia456cdc230d5ebf5e1256ab131ab78248b790bc8
2017-12-15 14:51:30 -08:00
Dan Albert 202fe493e3 Add basic NDK STL link type check.
Test: make native
Bug: None
Change-Id: If883fade38c837839857d82f294c459b0dae1ce0
2017-12-15 13:56:59 -08:00
Colin Cross a3b25001e8 Ensure -I . is the first protoc argument
The first include directory affects where protoc places the
output files.  Ensure -I . is always the first protoc argument.

Bug: 70704330
Test: m checkbuild
Change-Id: I4992e4074f612409865e6e18dc8993c6f68385fd
2017-12-15 13:42:09 -08:00
Colin Cross 0f2ee15576 Support output params in java proto
Allow java modules using proto to specify output params to be
passed to the proto generator.

Test: m checkbuild
Change-Id: I8a06f07218073236f4f85996ea5f09fb3702ed1a
2017-12-15 13:42:09 -08:00
Colin Cross 5dfabfba3e Export app implementation and header jars to Make
App implementation and header jars are necessary for tests to
run against apps.

Test: m checkbuild
Change-Id: Ia54ebf41f17346d3c59f3ec9512e68f195cdb67f
2017-12-15 13:42:09 -08:00
Yi Kong 85ae70556e Merge "Propagate LTO type from binary/DSO to object files" 2017-12-15 21:36:02 +00:00
Treehugger Robot ec6cf6afde Merge "Add cflags sub-property to 'pgo'" 2017-12-15 21:10:58 +00:00
Treehugger Robot e565435a7b Merge "Remove Treble/PRODUCT_FULL_TREBLE from Soong." 2017-12-15 20:07:20 +00:00
Joe Onorato 2c95b3f124 Merge "When compiling with the lite protobuf option, pass the option to aprotoc to force the lite runtime." 2017-12-15 19:39:46 +00:00
Chih-Hung Hsieh c2996ff701 Add default -Werror to frameworks/av/drm/mediacas
Bug: 66996870
Test: normal build
Change-Id: I7af738fd1543c6c44279bbc13b02b0273e9d6533
2017-12-15 18:26:44 +00:00
Steven Moreland dd0bb0b26c Remove Treble/PRODUCT_FULL_TREBLE from Soong.
This variable is being broken up because it isn't well
defined, and breaking it into smaller components makes
device bringup easier.

Bug: 62019611
Test: nothing uses it
Change-Id: I748958b7276f607f8a711289f3bde163a1a56596
2017-12-15 10:25:48 -08:00
Treehugger Robot 4c016b996e Merge "Add split PRODUCT_FULL_TREBLE variables to Soong." 2017-12-15 17:41:27 +00:00