mirror of
https://git.proxmox.com/git/mirror_zfs.git
synced 2026-05-25 03:37:45 +03:00
Library ABI tracking with abigail
Provide two make targets: checkabi and storeabi. storeabi uses libabigail to generate a reference copy of the ABI for the public libraries. checkabi compares such a reference to the compiled version, failing if they are not compatible. No ABI is generated for libzpool.so, it is only used by ztest and zdb and not external consumers. Co-authored-by: Brian Behlendorf <behlendorf1@llnl.gov> Signed-off-by: Antonio Russo <aerusso@aerusso.net> Closes #11144
This commit is contained in:
committed by
Brian Behlendorf
parent
e6c59cd171
commit
14c34c3d49
+18
-1
@@ -15,4 +15,21 @@ SUBDIRS += libzutil libunicode
|
||||
|
||||
# These five libraries, which are installed as the final build product,
|
||||
# incorporate the eight convenience libraries given above.
|
||||
SUBDIRS += libuutil libzfs_core libzfs libzpool libzfsbootenv
|
||||
DISTLIBS = libuutil libzfs_core libzfs libzpool libzfsbootenv
|
||||
SUBDIRS += $(DISTLIBS)
|
||||
DISTLIBS += libnvpair
|
||||
|
||||
# An ABI is stored for each of these libraries. Note that libzpool.so
|
||||
# is only linked against by ztest and zdb and no stable ABI is provided.
|
||||
ABILIBS = libnvpair libuutil libzfs_core libzfs libzfsbootenv
|
||||
|
||||
PHONY = checkabi storeabi
|
||||
checkabi: $(ABILIBS)
|
||||
set -e ; for dir in $(ABILIBS) ; do \
|
||||
$(MAKE) -C $$dir checkabi ; \
|
||||
done
|
||||
|
||||
storeabi: $(ABILIBS)
|
||||
set -e ; for dir in $(ABILIBS) ; do \
|
||||
$(MAKE) -C $$dir storeabi ; \
|
||||
done
|
||||
|
||||
Reference in New Issue
Block a user