Adding or removing the dump files cause soong to regenerate the
ninja files, which takes a few minutes for every product.
create_reference_dumps.py makes "findlsdumps" and the lsdumps paths.
These targets do not trigger ABI diff. Thus it is not necessary to
remove the reference dumps before building new dumps.
Test: ./create_reference_dumps.py
Bug: 255702405
Change-Id: I4f4a43476d7a9c46d41ef237b846547ed41c7c04
Since the helper function can compare the opaque types' unique IDs, it
is not necessary to return opaque_diff and compare the reference types'
names.
Test: ./test.py
Bug: 255702405
Change-Id: I1264b0f4d0db178a3dc2202a265c5ccb38df7dc2
multi_update.py runs the update.py for all branches at once.
It makes vndk snapshot update much easy.
Bug: 260021945
Test: development/vndk/snapshot/multi_update.py --all -vv
Change-Id: Iaeadf75c8e05f54bcda2c577aba58f483e99ca00
create_reference_dumps.py recognizes VENDOR and PRODUCT tags in
lsdump_paths.txt. The dumps tagged with VENDOR, PRODUCT, VNDK-ext, or
VNDK-SP-ext cannot be created in the AOSP directories in
prebuilts/abi-dumps. The user who wants to generate dumps for vendor
libraries must specify -ref-dump-dir.
Test: ./create_reference_dumps.py -libs libutils
Test: ./create_reference_dumps.py -libs libutils -ref-dump-dir ./test-abi-dumps
Bug: 227282691
Change-Id: Iecf695d23d7a2e5a67859954c905fa9d1481b8ae
create_reference_dumps.py no longer supports compressing dumps because
they cannot be reviewed or merged.
Bug: 227282691
Test: development/vndk/tools/header-checker/utils/create_reference_dumps.py
Change-Id: If4adccb865e3dba1e8045a6850478e46c9eae5de
This commit changes the structure of -ref-dump-dir. If the argument is
specified, create_reference_dumps.py generates
<arch>/source-based/<lib>.so.lsdump. Otherwise, the script generates
<version>/<binder>/<arch>/source-based/<lib>.so.lsdump in the default
dump directories. Library developers need to use -ref-dump-dir to create
opt-in reference dumps.
Bug: 227282691
Test: development/vndk/tools/header-checker/utils/create_reference_dumps.py \
-libs libutils -ref-dump-dir system/core/libutils/abi-dumps
Change-Id: I74cf7d092de405c76df31757104d66f75fcb9056
The resource dir has been changed from lib64 to lib since clang-r468909.
build-prebuilts.sh creates lib in the dist dir so that developers can
easily run the binaries.
Test: development/vndk/tools/header-checker/android/build-prebuilts.sh
Test: development/vndk/tools/header-checker/tests/test.py
Bug: 255702405
Change-Id: I9bed6f0fd7948830a89d9e24889d9341ebf1a9c4
I previously skipped directories, but that can still lead to problems.
So instead, only add paths that are files.
Test: Ran over a stack that failed when trying to run llvm-readelf
Test: on a directory. After this fix, everything get line numbers.
Change-Id: Ide39c5a118d78a822057cc3977d0f532595f798b
This reverts commit 7c7f0903b6.
Reason for revert: aosp-master sdk build is broken by this change
Bug: 258238947
Test: ACA has successfully verified the above culprit
Change-Id: I6a6ea4778f72e09780a04e062ec3b664aee2001f
This commit adds VTableLayoutDiffIR::IsExtended() that determines
whether the difference is a pure extension, i.e., appending virtual
functions to vtables.
Test: ./test.py
Bug: 248418092
Change-Id: I339713c5fff1dfa50dc7875272c0e3a59f858f57
The current build id check uses the file utility. Unfortunately, it
doesn't work on all systems. Replace with a call to llvm-readelf and
get the bitness and build id using that data.
Other small modifications:
- Only attempt to get the full path for a library once for each library.
- Do not add directories into the symbol libraries.
Test: Unit tests pass.
Test: Running using a libart.so that file doesn't understand and
Test: verifying the line numbers are correct.
Change-Id: I12c3d3c4599d201c3c01feeb48448fee6c633d71
Renderscript is deprecated and scheduled for removal. Let's start by
removing the easiest part to remove.
Test: treehugger
Change-Id: I5f172497756c3931ccfda742e9c08bde56b362c9
The instructions are organized into a section. The developers who need
to resolve ABI difference can easily find it.
Test: None
Bug: 244520027
Change-Id: I211de0e1f65eece093fe716122753ea795c43b3e
That seems like a sign none of these are used. (Two of them haven't been
touched since their initial import in 2009!)
Test: treehugger
Change-Id: I76042f6c8fab84669c83aa72cd0b5df13f01ed7c
Bug: http://b/241011085
Create symlink lib -> lib64 as toolchain libraries have a RUNPATH pointing
to $ORIGIN/../lib instead of lib64
Test: presubmit with new clang-tools prebuilts
Change-Id: I90973fc756b9489a16a0837473b86e728f50d8e0