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
This commit removes BannedLibDict and compute_vndk_cap() from the VNDK
definition tool.
Test: ./tests/run.py
Change-Id: I6098b6247c9b0a44accf54cd9fc90b60e28085bb
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
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
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
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
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
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
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>
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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