Commit Graph

21565 Commits

Author SHA1 Message Date
Logan Chien
e1e8644124 vndk-def: Remove HL-NDK from code
This commit removes HL-NDK from library classifier used by the
definition tool.  Now, we treat HL-NDK as FWK-ONLY libs.

Test: ./tests/run.py
Test: All commands prints the same output.
Change-Id: I391b59f2c085b017c1f93bca45783ef0d9c22f02
2017-07-07 17:10:00 +08:00
Logan Chien
a73765076f vndk-def: Remove more unused code
This commit removes BannedLibDict and compute_vndk_cap() from the VNDK
definition tool.

Test: ./tests/run.py
Change-Id: I6098b6247c9b0a44accf54cd9fc90b60e28085bb
2017-07-07 16:46:32 +08:00
Treehugger Robot
7369c92fbc Merge changes Iea55330d,I547319f2
* changes:
  vndk-def: Move deps-insight assets
  vndk-def: Remove unsupported commands
2017-07-07 08:43:30 +00:00
Treehugger Robot
683e59ce11 Merge "vndk-def: Use os.path.join() instead of '/'" 2017-07-07 08:43:04 +00:00
Logan Chien
984c62c5a2 vndk-def: Use os.path.join() instead of '/'
Test: deps-graph continues to work
Change-Id: Iefa17ecea8f18eea53bdd8166faa4a35458f8a4f
2017-07-07 10:59:27 +08:00
Treehugger Robot
d82b8eb5ce Merge "Use make variables to access java tools" 2017-07-06 22:42:33 +00:00
Logan Chien
187a74ce91 vndk-def: Move deps-insight assets
This commit moves deps-insight assets into a subdirectory so that they
don't mix with the assets for deps-graph.

Test: `./vndk_definition_tool.py deps-insight` continues to work.
Change-Id: Iea55330d6ad0c351e2c4b4dcca50d4cd1ede7128
2017-07-06 17:42:53 +08:00
Logan Chien
10718d141e vndk-def: Remove unsupported commands
This commit removes vndk-cap, vndk-sp, and sp-lib commands.  The output
of these commands are no longer meaningful.

Test: ./tests/run.py
Change-Id: I547319f2f312afe1f6de2f42550158c0476b18a3
2017-07-06 17:33:47 +08:00
Colin Cross
fff9b6e6e9 Use make variables to access java tools
Use make variables like $(JAVA) to access java tools in preparation
for moving java tools out of the path.

Test: builds
Bug: 62956999
Change-Id: I0bbe109437c80aca23d8e56188ad7e90c93ddaee
2017-07-01 01:04:54 +00:00
Treehugger Robot
37c32c3162 Merge "Fix gdbclient.py -p." 2017-06-30 23:20:26 +00:00
Elliott Hughes
89e1ecf9a1 Fix gdbclient.py -p.
Bug: http://b/26413900
Test: manually ran gdbserver on device, connected with -p
Change-Id: If58b95e52167c38263e77fe85bea14e0d7401bf4
2017-06-30 14:03:32 -07:00
Sundong Ahn
f194748c7b Merge "vndk-def: Add symbol data in VTool" 2017-06-28 23:54:16 +00:00
Jayant Chowdhary
513bf3c355 Merge "Make message format change backwards compatible." 2017-06-28 06:30:36 +00:00
Jayant Chowdhary
ac537690ac Make message format change backwards compatible.
Test: create a reference dump for libc++ with the old format, copy it to
prebuilts/abi-dumps/vndk, run mm -j64 to invoke header-abi-diff,no protobuf
TextFormat errors reported.

Bug: 62463617

Change-Id: I1d9f952a77a3d5f5276773078876dde17d360ecc
2017-06-27 19:24:49 -07:00
Sundong Ahn
f5009921f2 vndk-def: Add symbol data in VTool
Using the command "dep-graph" the tool find the symbols information
between two libs and show the dependency symbols list

Test: Run `vndk_definition_tool.py dep-graph \
	--system ... --vendor ... -o "html_output" \
	--tag-file "[vndk_tag_table].csv"'

Change-Id: Ie7eb33d9227dc2454330049c3edf8bcb77358e2f
2017-06-27 18:50:33 +09:00
Treehugger Robot
53840136c6 Merge "Fix clang API usage for record / enum link names." 2017-06-27 00:56:28 +00:00
Jayant Chowdhary
b88146b0c1 Fix clang API usage for record / enum link names.
1) Also, emit all mangled symbols for constructors.

2) Add a shared object file parser to libheader-abi-util to filter out
   functions and global variables without DEFAULT or PROTECTED visibility.

3) Update expected tests.

Bug: 62721815

Bug: 62463617

Bug: 62307940

Test: Build libclang with "-UNDEBUG", mm -j64 on external/libcxx

Test: Both C1 and C2 constructors are generated for records.

Change-Id: Id5440a647fe41d27cb857a7d0e06429e28e45d8b
2017-06-26 12:10:39 -07:00
Treehugger Robot
3931e177ad Merge "Added fixing of log.h errors" 2017-06-23 07:42:33 +00:00
Treehugger Robot
4a419534fe Merge "Warn that gdbclient is deprecated in favor of gdbclient.py" 2017-06-22 17:08:35 +00:00
Kevin Rocard
75b24f1270 Warn that gdbclient is deprecated in favor of gdbclient.py
Users of gdbclient might not know that a new and improved version exist
in the form of gdbclient.py.

Change-Id: I65243a8d25a1ecbe8ff734d0be4dbe40b50db4b2
Signed-off-by: Kevin Rocard <krocard@google.com>
2017-06-21 18:49:50 -07:00
Treehugger Robot
c5efdcc746 Merge "vndk-def: Add --enumerate to deps-closure" 2017-06-16 11:38:03 +00:00
Logan Chien
9b70b376c3 vndk-def: Add --enumerate to deps-closure
This commit adds --enumerate to deps-closure so that a user can print
the dependency closure for each specified libraries or all libraries.

Bug: 62644173
Test: ./vndk_definition_tool.py deps-closure \
--system ... --vendor ...  --enumerate

Change-Id: I18bb27be10c565538356f774cc6752f8cfc79bd4
2017-06-16 17:30:09 +08:00
Treehugger Robot
23a60824bf Merge "vndk-def: Add --revert flag to deps-closure" 2017-06-16 02:53:19 +00:00
Treehugger Robot
e79b9969d6 Merge "Remove device.get_props." 2017-06-15 19:45:27 +00:00
Logan Chien
1cd902f597 vndk-def: Add --revert flag to deps-closure
This commit adds --revert flag to deps-closure so that a user can list
the transitive users of a library.

Bug: 62644173
Test: ./vndk_definition_tool.py deps-closure --revert /system/lib/libc.so ...
Change-Id: I03aab8d629c88074d6111659853b1396d87326ad
2017-06-15 17:46:12 +08:00
Nicolas Geoffray
867ff783d3 Merge "Track move of tzdata: bionic to system/timezone" 2017-06-15 09:05:33 +00:00
Neil Fuller
784c54378f Track move of tzdata: bionic to system/timezone
Track the movement of the tzdata file from bionic to
system/timezone.

Bug: 31008728
Bug: 36882778
Test: make sdk
Merged-In: I6cff023cb8b6eb7fec81a5ea61f3c06343f462f3
Change-Id: I6cff023cb8b6eb7fec81a5ea61f3c06343f462f3
2017-06-14 16:35:01 +01:00
Mathieu Chartier
524311b26d Merge "Fix potential divide by zero in display_html" 2017-06-13 19:55:39 +00:00
Mathieu Chartier
9ae5ff4895 Fix potential divide by zero in display_html
When using logwrapper, there is only a zygote heap. This caused
a divide by zero for the app heap.

Test: native_heapdump_viewer.py --html art/native_heap.txt > test.html

Change-Id: I7defd94935d72ee9c4cb6e53d7a1a308a1030eb3
2017-06-13 11:00:26 -07:00
Treehugger Robot
9a882a68a1 Merge "vndk-def: Fix check-dep errors on vendor_libs" 2017-06-13 04:31:32 +00:00
Vijay Venkatraman
f374b9f5df Added fixing of log.h errors
Test: make >log 2>&1 && parse-and-fix-errors.sh
Change-Id: I2ad4ef42098e8bcfdf3e5d2731c5c87f374a6bb2
2017-06-12 09:32:34 -07:00
Logan Chien
ba097bb576 vndk-def: Fix check-dep errors on vendor_libs
This commit fixes a check-dep bug introduced by 7e723126e4.  In
7e723126e4, graph.lib_pt[PT_VENDOR].values() was changed to return an
iterator instead of a set.  This means we can only traverse the iterator
once, thus vendor-to-vendor dependencies were treated as ineligible
dependencies.  This commit fixes the problem by creating a set() object
from the iterator, so that `vendor_libs` can be used several times.
This also makes it faster to lookup an object.

Test: Run `vndk_definition_tool.py check-dep` against sailfish images
and vendor-to-vendor dependencies should not show up.

Change-Id: I3b36efa635220941278c491b83f308a65e9f0ffe
2017-06-12 18:33:10 +08:00
Christopher Ferris
8d3f61724d Merge "Fix potential divide by zero." 2017-06-09 22:12:22 +00:00
Treehugger Robot
06d5da59ac Merge changes I5482a45a,I0185e169,Ic17c5e1d
* changes:
  vndk-def: Add tag file support to deps-insight
  vndk-def: Add more output formats to vndk command
  vndk-def: Simplify VNDK result
2017-06-09 16:54:58 +00:00
Logan Chien
7a8bc4db10 vndk-def: Add tag file support to deps-insight
This commit generalizes tag file support so that deps-insight won't
follow the dependencies to ineligible vndk-sp/vndk libs.

Bug: 37867089
Test: libandroid.so will not be tagged as vndk in the html output of
deps-insight tool.

Change-Id: I5482a45acf4232ae7fac1210043ca868b28211ff
2017-06-09 20:56:36 +08:00
Logan Chien
5ad8d0fe74 vndk-def: Add more output formats to vndk command
This commit adds the --output-format option to vndk command.  When
`make` is specified, VNDK definition tool will fill in the placeholders
in the boilerplates and print a make file to stdout.

Bug: 37867089
Test: ./vndk_definition_tool.py vndk --output-format=make ...
Change-Id: I0185e1690264d0cefafa8536db2e0cf34daaeee0
2017-06-09 20:56:35 +08:00
Logan Chien
b68f26d281 vndk-def: Simplify VNDK result
This commit adds extra_vendor_libs and removes extra_vndk_sp_indirect.
With this modification, we can tag each libraries with either vndk_ext,
extra_vendor_libs, vndk_sp_ext or vndk_sp_indirect_ext.

After tagging them precisely, we merge them into vndk_sp, vndk_sp_ext
and extra_vendor_libs before printing the simplified VNDK list.  This
will give us accurate tags when --full is specified and give concise
tags when --full is not specified.

Bug: 37867089
Test: 3 essential sets are printed when --full was not specified.
Change-Id: Ic17c5e1dd4420050217e9724f86516c21609f899
2017-06-09 20:55:59 +08:00
Treehugger Robot
a802f73190 Merge "vndk-def: Remove "follow" from default action" 2017-06-09 07:13:32 +00:00
Logan Chien
8e208817a3 vndk-def: Remove "follow" from default action
This commit removes `follow` option from the default actions to handle
ineligible vndk and vndk-sp usages.  We prefer to stop at ineligible
libs instead of pulling all ineligible dependencies.

Bug: 37867089
Test: libandroid.so is not tagged as vndk by default with sailfish images.
Change-Id: Iafeb27bb2c658fc07916517033fbedcc9cdd84eb
2017-06-09 13:04:03 +08:00
Treehugger Robot
72bc6acd53 Merge changes I526f653e,Iefacd446
* changes:
  vndk-def: Add libz.so back to LL-NDK
  vndk-def: Add libandroid_net to LL-NDK
2017-06-09 04:56:47 +00:00
Logan Chien
1715340334 vndk-def: Add libz.so back to LL-NDK
This commit adds libz.so back to LL-NDK because the change to move
libz.so to VNDK-SP breaks some CTS testcases (which assume there is only
one libz.so under /system/lib[64].)

Whether this is a short-term temporary fix or a long-term solution will
be discussed or updated in b/37617391.

Bug: 62195853
Bug: 37867089
Bug: 37617391

Test: ./tests/test_ndk_libs.py
Test: ./tests/run.py
Test: libz.so tagged as LL-NDK with sailfish images.

Change-Id: I526f653e6141d658ee19e79eefd44d379ecac0dc
2017-06-09 10:08:55 +08:00
Logan Chien
16538ed728 vndk-def: Add libandroid_net to LL-NDK
Test: ./tests/test_ndk_libs.py
Test: libandroid_net.so is tagged as LL-NDK.
Change-Id: Iefacd4464e7d94577119532c11435e70404ea026
2017-06-09 10:00:59 +08:00
Treehugger Robot
16f10f2aaf Merge changes I76bc41e1,I77d8f66d,Icc3b07bc,I7a3b2534,Iad5db641, ...
* changes:
  vndk-def: Implement VNDK-SP-Ext collection
  vndk-def: Collect non-AOSP libs must be copied
  vndk-def: Exclude vndk-sp from vndk
  vndk-sp: Fix vndk-sp-unused computation
  vndk-def: Add (vndk-sp)? to fwk-only-rs matching
  vndk-def: Exclude vndk-sp/vndk from ndk-indirect
  vndk-def: Parse actions for ineligible libs
  vndk-def: Fix vndk-indirect computation bug
2017-06-09 01:37:09 +00:00
Vijay Venkatraman
a198d93cc6 Merge "Added check for vendor module to parse-and-fix-errors" 2017-06-08 20:54:40 +00:00
Josh Gao
8e7fa6bbd4 Merge "gdbrunner: Fix find_binary's named argument." 2017-06-08 19:52:54 +00:00
Logan Chien
489dabb278 vndk-def: Implement VNDK-SP-Ext collection
This commit implements the VNDK-SP-Ext properly so that the output will
copy missing VNDK-SP-Indirect to /vendor/lib[64]/vndk-sp.

Bug: 37867089
Bug: 37940694
Test: Add/remove generic reference dump and make sure vndk-sp libs will
be listed as extra_vndk_sp_indirect.

Change-Id: I76bc41e189e566c66c6f96db9555d366921b7995
2017-06-09 02:08:14 +08:00
Logan Chien
6a2fcac08d vndk-def: Collect non-AOSP libs must be copied
This commit collects all non-AOSP system libraries that are used by
vendor modules and add them to vndk-ext so that they are copied into
vendor partition.

Bug: 37867089
Test: Some vendor HIDL interface libs are tagged with vndk-ext given
sailfish images.

Change-Id: I77d8f66d97b403991593d5b1f88573411e96d679
2017-06-09 01:04:56 +08:00
Logan Chien
89015efb13 vndk-def: Exclude vndk-sp from vndk
This commit excludes vndk-sp libraries from vndk result sets.  This CL
eliminates several false warnings on vendor usages on libhwbinder.so

Bug: 37867089
Test: Warnings on libhwbinder.so usages disappeared given sailfish
images.

Change-Id: Icc3b07bc6a57e41a3fcbaf116c1316f77e7a439d
2017-06-09 00:20:12 +08:00
Logan Chien
55a41a3dd9 vndk-sp: Fix vndk-sp-unused computation
This commit removes vndk-sp-indirect libs from vndk-sp-unused.  They
are actually being used (although indirectly).

Bug: 37867089
Test: libhwbinder.so is removed from vndk-sp-unused given sailfish images.
Change-Id: I7a3b253408c53f1d81d1fea39f79e3fe09f6fb75
2017-06-09 00:15:12 +08:00
Logan Chien
6582daf969 vndk-def: Add (vndk-sp)? to fwk-only-rs matching
This commit adds (?:vndk-sp)? to FWK-ONLY-RS matching because some
targets have a copy of libft2.so in /system/lib[64]/vndk-sp but we still
want to treat it as FWK-ONLY-RS.

Bug: 37867089
Test: libft2.so is not labeled as vndk-sp-indirect in sailfish image.
Change-Id: Iad5db6417573f3e25bad5c027cb547d9df4be23a
2017-06-09 00:12:48 +08:00