autotools.sh 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. # Continuous integration build script for opusfile.
  2. # This script is run by automated frameworks to verify commits
  3. # see https://mf4.xiph.org/jenkins/job/opusfile-autotools/
  4. # This is intended to be run from the top-level source directory.
  5. set -x
  6. # WARNING: clobbers outside the current tree!
  7. rm -f ../opus
  8. ln -s /srv/jenkins/jobs/opus/workspace ../opus
  9. rm -f ../ogg
  10. ln -s /srv/jenkins/jobs/libogg/workspace ../ogg
  11. # HACK: libtool can't link a dynamic library to a static
  12. # library, and the 'unix' makefile build can't link to
  13. # a libopus.la. As a work around, hack our own pkg-config
  14. # file for the uninstalled opus library we want to build
  15. # against.
  16. cat <<EOF > opus-uninstalled.pc
  17. # Opus codec uninstalled pkg-config file
  18. # hacked up for the opusfile autotools build.
  19. libdir=\${pcfiledir}/../opus
  20. includedir=\${libdir}/include
  21. Name: opus uninstalled for opusfile
  22. Description: Opus IETF audio codec (not installed)
  23. Version: 1.0.1
  24. Requires:
  25. Conflicts:
  26. Libs: \${libdir}/libopus.la -lm
  27. Cflags: -I\${includedir}
  28. EOF
  29. cat <<EOF > ogg-uninstalled.pc
  30. # ogg uninstalled pkg-config file
  31. # hacked up for the opusfile autotools build
  32. libdir=\${pcfiledir}/../ogg/src
  33. includedir=\${pcfiledir}/../ogg/include
  34. Name: ogg uninstalled for opusfile
  35. Description: ogg is a library for manipulating ogg bitstreams (not installed)
  36. Version: 1.3.0
  37. Requires:
  38. Conflicts:
  39. Libs: \${libdir}/libogg.la
  40. Cflags: -I\${includedir}
  41. EOF
  42. PKG_CONFIG_PATH=$PWD
  43. # compile
  44. ./autogen.sh
  45. ./configure PKG_CONFIG_PATH=${PKG_CONFIG_PATH}
  46. make clean
  47. make
  48. # verify distribution target
  49. make distcheck PKG_CONFIG_PATH=${PKG_CONFIG_PATH}
  50. # build the documentation
  51. # currently fails on jenkins (debian stretch)
  52. # make -C doc/latex