]> xenbits.xensource.com Git - libvirt.git/commitdiff
Check for private symbols presence as well
authorMichal Privoznik <mprivozn@redhat.com>
Fri, 5 Oct 2012 12:57:36 +0000 (14:57 +0200)
committerMichal Privoznik <mprivozn@redhat.com>
Fri, 5 Oct 2012 13:04:56 +0000 (15:04 +0200)
Currently, we are checking if libvirt.so contains public symbols.
However, sometimes we rename an internal symbol and forget to
change libvirt_private.syms accordingly. Hence, it's safer to check
for internal symbols as well.

src/Makefile.am
src/check-symfile.pl

index ae3d491cadca2e98cb2c1848ea2f2d5796b715d8..c5840c064c9d9eef346000ae3f5bf64dde12d27d 100644 (file)
@@ -318,8 +318,13 @@ if WITH_LINUX
 check-symfile: libvirt.syms libvirt.la
        $(AM_V_GEN)$(PERL) $(srcdir)/check-symfile.pl libvirt.syms \
          .libs/libvirt.so
+
+check-private-symfile: libvirt_private.syms libvirt.la
+       $(AM_V_GEN)$(PERL) $(srcdir)/check-symfile.pl libvirt_private.syms \
+         .libs/libvirt.so
 else
 check-symfile:
+check-private-symfile:
 endif
 
 PROTOCOL_STRUCTS = \
@@ -344,7 +349,7 @@ else !WITH_REMOTE
 check-protocol:
 endif
 EXTRA_DIST += $(PROTOCOL_STRUCTS) check-symfile.pl
-check-local: check-protocol check-symfile
+check-local: check-protocol check-symfile check-private-symfile
 .PHONY: check-protocol $(PROTOCOL_STRUCTS:structs=struct)
 
 # Mock driver, covering domains, storage, networks, etc
index ac37b4614b518b42b1398a24a7cb09366802031c..435e04537bf212d072c47a9476b91ed4735eb9f8 100755 (executable)
@@ -44,7 +44,7 @@ foreach my $elflib (@elflibs) {
     close NM;
 }
 
-foreach my $sym (@wantsyms) {
+foreach my $sym (keys(%wantsyms)) {
     next if exists $gotsyms{$sym};
 
     print STDERR "Expected symbol $sym is not in ELF library\n";