Commit Graph

27278 Commits

Author SHA1 Message Date
Dan Willemsen
dd9aee166b Merge "Record module type statistics" 2016-07-29 20:47:14 +00:00
Dan Willemsen
3bf15e71d3 Record module type statistics
Creates a build_system_stats.txt build artifact that contains statistics
on how many BUILD_* modules are defined in a build. Also writes out
information about the Soong module types sent from the Soong build.

Merged-In: Iaf0c7062f542dc6942b5349854f3d49267cac4a5
Change-Id: Iaf0c7062f542dc6942b5349854f3d49267cac4a5
2016-07-29 19:58:35 +00:00
Dan Albert
65de8e446c Merge changes from topic 'soong-sysroots'
* changes:
  Add a phony target for the NDK sysroots.
  Use the just built NDK headers and libs.
  Add LOCAL_COPY_TO_INTERMEDIATE_LIBRARIES.
2016-07-28 15:58:52 +00:00
Dan Albert
c61174aac1 Add a phony target for the NDK sysroots.
`make ndk` will build all the NDK sysroots.

Test: make ndk
Bug: http://b/27533932
Change-Id: Ic2f5bf61f8911f7b8d08a473f2fe0576f3e06224
2016-07-28 00:06:20 -07:00
Dan Albert
02bf138d64 Use the just built NDK headers and libs.
The list of libraries is currently empty. Will add migrated libraries
in a follow up patch.

Test: Still builds.
Bug: http://b/27533932
Change-Id: Ibd9750620ca2ae86fe888a8a993bd26493bc1c8a
2016-07-28 00:06:19 -07:00
Dan Albert
4ac4231ca1 Add LOCAL_COPY_TO_INTERMEDIATE_LIBRARIES.
This allows a module to avoid being installed to the common library
directory.

Test: Prevents copying of NDK libraries with the NDK sysroot patches.
Bug: http://b/27533932
Change-Id: I24f11d5a70595bcd524ac5bd85034c226d2de211
2016-07-28 00:06:19 -07:00
Tao Bao
653980bfe4 Merge "Handle multiple APKs from the same package in check_target_files_signatures.py." 2016-07-28 04:28:38 +00:00
Tao Bao
6a54299fbd Handle multiple APKs from the same package in check_target_files_signatures.py.
We were using the package name as the key to index APKs. APKs from the
same package got messed up and gave wrong signature summary. Switch to
using the package filename as the key, which is identical in a given build.

Also fix the trailing space when printing the signature summary.

Bug: 30418268
Test: Run with a target_files.zip that has multiple APKs from the same package.

Change-Id: I6317e8c05e987c5690915e05c294153d10e2f0ab
2016-07-27 19:52:28 -07:00
Treehugger Robot
b3389f4823 Merge "Link to shared libraries with the full paths." 2016-07-27 21:06:32 +00:00
Dan Albert
121aa60c46 Link to shared libraries with the full paths.
This ensures that we're not accidentally linking the wrong version of
a library with the same name thanks to -L.

Test: Still builds.
Change-Id: I22e9e28412844ff4f8bda42ebbc300ea6574e474
2016-07-27 11:00:11 -07:00
Chih-Hung Hsieh
6c083acf2a Fix clang-tidy performance warnings.
* Use const reference parameter type to avoid unnecessary copy.

Bug: 30407689
Change-Id: Iefab05c077367f272abf545036b853e8a295c8cd
Test: build with WITH_TIDY=1
2016-07-27 10:28:33 -07:00
Treehugger Robot
4b4fdf0b2f Merge "Pass binder ABI to Soong" 2016-07-27 00:14:59 +00:00
Treehugger Robot
620ce44a7a Merge "Add option to dump HTML warnings per project." 2016-07-26 23:04:29 +00:00
Dan Willemsen
369b7df35c Pass binder ABI to Soong
Change-Id: I7a7f197a114c39ab3a4233d430d9c677f581b1f9
2016-07-26 15:55:16 -07:00
Treehugger Robot
32c8bcf0bd Merge "Add performance* to default global tidy checks." 2016-07-26 22:44:36 +00:00
Chih-Hung Hsieh
4354a33874 Add option to dump HTML warnings per project.
* Use --byproject flag to dump warnings in HTML file by projects.
* Add external/google and vendor/google projects, vs other
  external/non-google and vendor/non-google projects.
* Refactor code in dumpcategory to dump warnings by projects
  when --byproject is specified.
* Recognize new compiler -Wvarargs warning pattern.
* No change to default HTML output format.

Change-Id: I2406ad392ab18683357ff0ee0cf6c41f87cf399c
Test: run through current build.log files.
2016-07-26 14:53:28 -07:00
Chih-Hung Hsieh
c868293abc Add performance* to default global tidy checks.
* This enables 5 performance related checks:
    performance-faster-string-find
    performance-for-range-copy
    performance-implicit-cast-in-loop
    performance-unnecessary-copy-initialization
    performance-unnecessary-value-param
* Recognize these new warnings in warn.py.

Bug: http://b/27779618
Change-Id: I7af3fdc262dd44db90d3b62eb37c5eac5a2eaa01
Test: build with WITH_TIDY=1 and run warn.py with build.log
2016-07-26 14:36:54 -07:00
Treehugger Robot
4698a191e5 Merge "Remove unused libraries from otatools." 2016-07-26 00:36:57 +00:00
Alex Deymo
3c1075b2a5 Remove unused libraries from otatools.
libbrillo-http was actually never used but it was being liked into
delta_generator anyway.

Bug: None
TEST=`lddtree delta_generator` doesn't show librillo-http.

Change-Id: I69ac66c87847d925b5798cf261c79466a3ff432a
2016-07-25 16:10:14 -07:00
Treehugger Robot
79498a069a Merge "Revert "Rename libevent-host to libevent"" 2016-07-23 00:40:35 +00:00
Dan Willemsen
8c2b6bb15e Revert "Rename libevent-host to libevent"
This reverts commit ef31fc6477.
It's now using unique_host_soname to use a different installed name,
but keeping the libevent module name.

Change-Id: I1cb6e8e670636089993054236b089da059629da1
2016-07-22 23:16:30 +00:00
Narayan Kamath
900e9e6392 Merge "Add java.lang.invoke to the package whitelist." 2016-07-22 09:33:16 +00:00
Chih-hung Hsieh
053c54b554 Merge "Count warnings per project and dump out CSV format." 2016-07-22 00:54:50 +00:00
Chih-Hung Hsieh
48a16ba709 Count warnings per project and dump out CSV format.
* No change to html output, except removing unused "PageTop" anchor.
* Add --gencsv flag to output a CSV file instead of html file.
  CSV files are combined to a table for dashboard charts.
* Count warnings from selected source project directories.
* CSV output lines are:
   num_of_warnings,project_name,warning_description
* project_name is empty for sum of warnings from all projects.
* warning_description could be:
  (1) "<severity>: <warning type description>"
      for one warning type, or
  (2) "<severity> warnings"
      for all warning types of the severity.

Change-Id: I1cf976ed0cf142091226b22665b7f28d383608fd
Test: run through current build.log files.
2016-07-21 14:43:02 -07:00
Colin Cross
921be36569 Merge "Split -isystem headers into separate variables" 2016-07-21 17:51:13 +00:00
Narayan Kamath
497c35c1a7 Add java.lang.invoke to the package whitelist.
Tracks libcore change that adds the first classes from this package
to core-oj.jar. Note that packages need to be whitelisted even if
the classes in question aren't public API.

Test: make checkbuild docs

Change-Id: I917dc63899124ca30bbeb2902787faea6754bb43
2016-07-21 15:27:09 +01:00
Colin Cross
23ba612aad Split -isystem headers into separate variables
Split the variables that contain header directories into ones that
should be prefixed with -isystem and ones that should be prefixed with
-I in preparation for moving some headers from -isystem to -I.

Add $(wildcard) around SRC_HEADERS to match the soong behavior, and move
users of SRC_HEADERS from config.mk to binary.mk so that the exported
soong value is present.

Test: no changes to build.ninja compile rules
Change-Id: Iadecbbf4351a01e53cb57e721d31f4f836bb82d9
2016-07-20 23:09:29 -07:00
Treehugger Robot
6131119708 Merge "Recognize new clang and clang-tidy warnings." 2016-07-20 22:57:29 +00:00
Chih-Hung Hsieh
c21ddbdcce Recognize new clang and clang-tidy warnings.
* Count new clang-tidy warnings:
    google-runtime-references
    google-runtime-operator
* Count new clang warnings:
    -Wconst-conversion similar to -Wliteral-conversion
    -Wundefined-var-template
* Modified static analyzer warning message about
    "Null passed to a callee that requires a non-null ..."
* Disable google-runtime-references by default and
  disable misc-macro-parentheses in vendor projects;
  too many old C/C++ code have this warning.

Change-Id: Ib35e0af85875aada17c92b0237b76cd5ae3bfcc8
Test: build with clang-tidy.
2016-07-20 14:45:01 -07:00
Treehugger Robot
95fa32b577 Merge "Factor out common include directories into helper" 2016-07-20 21:11:22 +00:00
Fang Deng
14df2ef4d0 Merge "Remove GOMA_HERMETIC form goma.mk" 2016-07-19 23:32:37 +00:00
Colin Cross
e25fd79337 Factor out common include directories into helper
Refactor includes in transform-*-to-o to simplify future changes to the
default include paths.

Test: whitespace-only changes to the compile rules in build.ninja
Change-Id: I766af1f22a4838d933691b6df37530db3ba4e21d
2016-07-19 15:09:50 -07:00
Stephen Hines
b1beb6f274 Merge "Switch to prebuilt clang-3016494" 2016-07-19 22:02:31 +00:00
Stephen Hines
11e0e36462 Merge "Disable warnings triggered in Clang r271374" 2016-07-19 22:02:31 +00:00
Fang Deng
c0829a5899 Remove GOMA_HERMETIC form goma.mk
This CL removes the GOMA_HERMETIC setting from goma.mk so that
the default setting will be used. By default, GOMA will fallback
to local compiler if the exactly matched compiler is not available.

Change-Id: I22c83594f6bd30bc8ed1334ab7bb256ef218567b
2016-07-19 20:58:22 +00:00
Pirama Arumuga Nainar
1679c3649b Disable warnings triggered in Clang r271374
http://b/28149048
http://b/29823425

Disable -Wnull-dereference.  The second bug above tracks that this
warning gets re-enabled.

Test: Tested build, boot and common usage for Arm, Arm64, x86, x86_64,
Mips images in AOSP and internal branch.

Change-Id: Ie41a495dd9bb247d3609f4848d7669d1faaeeb79
2016-07-19 20:32:28 +00:00
Pirama Arumuga Nainar
d1c2ff4f06 Switch to prebuilt clang-3016494
Test: Tested build, boot and common usage for Arm, Arm64, x86, x86_64,
Mips images in AOSP and internal branch.

Bug: http://b/29823425
Change-Id: I97299c8b41ff9d3ac7019a349aa569609a099233
2016-07-19 20:32:21 +00:00
Treehugger Robot
0cbba3df2a Merge "Avoid matching the same warning line twice." 2016-07-18 23:18:47 +00:00
Chih-Hung Hsieh
5ecafd1260 Avoid matching the same warning line twice.
Used to skip only immediately followed identical warning lines.
Now classifywarning is called only once for each unique warning line.

Change-Id: Ie3b77ded70b41dafad91c042dbe15ad2be119e62
Test: run through build.log file
2016-07-18 15:27:02 -07:00
Dan Willemsen
575a023039 Merge "Rename libevent-host to libevent" 2016-07-18 19:18:32 +00:00
Colin Cross
458c0cd37b Merge "Only add linker_asan as dependency to shared executables" 2016-07-17 23:38:39 +00:00
Colin Cross
d08699e464 Only add linker_asan as dependency to shared executables
linker_asan is only needed by shared exectuables, prevent adding it as a
dependency of anything else.  Avoids a dependency loop from
linker_asan -> linker -> linker_asan.

Change-Id: Id7744ad8a5901468518fac80741c75e764adb559
2016-07-17 15:30:46 -07:00
Treehugger Robot
1e92cfb9a0 Merge "Add support for LOCAL_MODULE_SYMLINKS" 2016-07-15 21:34:33 +00:00
Colin Cross
744d33b381 Add support for LOCAL_MODULE_SYMLINKS
Specifying LOCAL_MODULE_SYMLINKS will create symlinks to the installed
module in the same directory.

Change-Id: Idecb2b75f0c9999eb000eed9a79a989244ccf6c2
2016-07-15 12:22:39 -07:00
Badhri Jagan Sridharan
70a9714625 Merge "Add build variant to kernel command line" 2016-07-15 17:00:13 +00:00
Dan Willemsen
ef31fc6477 Rename libevent-host to libevent
There's no need to use a different name for target and host modules, and
in Soong, it's better to use the same for both.

Change-Id: Ib2d8d0cc8a1e0f7f95d7c2795a360f02d946fa1a
2016-07-13 23:47:24 -07:00
Dan Willemsen
4ea20be28b Merge "Allow prebuilts to specify mini-debug-info" 2016-07-14 04:04:43 +00:00
Dan Willemsen
4598fbc9dd Allow prebuilts to specify mini-debug-info
So that Soong can specify the default that's used by Make.

Change-Id: I0c1062ad8f21df8b9a483f99dce679a1434e4859
2016-07-13 17:39:56 -07:00
Tao Bao
461a3283d9 Merge "Fix root_filesystem_config.txt generation" 2016-07-13 23:04:10 +00:00
Treehugger Robot
b8bd19db88 Merge "Pass ENABLE_CPUSETS and ENABLE_SCHEDBOOST to Soong" 2016-07-13 00:39:06 +00:00