You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

abi-check.sh 989 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. #!/bin/sh
  2. # The 0.17 release is broken
  3. #prev=0.17
  4. prev=0.16
  5. release=0.18
  6. # ... clone json-c, abi-compliance-checker, abi-dumper
  7. if [ "$1" != "--skip-build" ] ; then
  8. mkdir build
  9. cd build
  10. CFLAGS=-Og cmake -DCMAKE_INSTALL_PREFIX=~/json-c-installs/json-c-${release} ..
  11. make && make test && make install
  12. fi
  13. # Assume the old version has already been built
  14. cd ~/abi-compliance-checker
  15. mkxml()
  16. {
  17. ver="$1"
  18. cat <<EOF > json-c-${ver}.xml
  19. <foo>
  20. <version>
  21. ${ver}
  22. </version>
  23. <headers>
  24. ../json-c-installs/json-c-${ver}/include/json-c
  25. </headers>
  26. <libs>
  27. ../json-c-installs/json-c-${ver}/lib64/libjson-c.so
  28. </libs>
  29. </foo>
  30. EOF
  31. }
  32. mkxml ${release}
  33. mkxml ${prev}
  34. perl abi-compliance-checker.pl -lib json-c -dump json-c-${prev}.xml -dump-path ./ABI-${prev}.dump
  35. perl abi-compliance-checker.pl -lib json-c -dump json-c-${release}.xml -dump-path ./ABI-${release}.dump
  36. perl abi-compliance-checker.pl -l json-c -old ABI-${prev}.dump -new ABI-${release}.dump
  37. echo "look in compat_reports/json-c/..."