.gitlab-ci.yml 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. include:
  2. - template: 'Workflows/Branch-Pipelines.gitlab-ci.yml'
  3. default:
  4. tags:
  5. - docker
  6. # Image from https://hub.docker.com/_/gcc/ based on Debian
  7. image: gcc:9
  8. whitespace:
  9. stage: test
  10. script:
  11. - git diff-tree --check origin/master HEAD
  12. autoconf:
  13. stage: build
  14. before_script:
  15. - apt-get update &&
  16. apt-get install -y zip doxygen
  17. script:
  18. - ./autogen.sh
  19. - ./configure
  20. - make -j4
  21. - make distcheck
  22. cache:
  23. paths:
  24. - "src/*.o"
  25. - "src/.libs/*.o"
  26. - "silk/*.o"
  27. - "silk/.libs/*.o"
  28. - "celt/*.o"
  29. - "celt/.libs/*.o"
  30. cmake:
  31. stage: build
  32. before_script:
  33. - apt-get update &&
  34. apt-get install -y cmake ninja-build
  35. script:
  36. - mkdir build
  37. - cmake -S . -B build -G "Ninja" -DCMAKE_BUILD_TYPE=Release -DOPUS_BUILD_TESTING=ON -DOPUS_BUILD_PROGRAMS=ON
  38. - cmake --build build
  39. - cd build && ctest --output-on-failure
  40. meson:
  41. stage: build
  42. before_script:
  43. - apt-get update &&
  44. apt-get install -y python3-pip ninja-build doxygen
  45. - export XDG_CACHE_HOME=$PWD/pip-cache
  46. - pip3 install --user meson
  47. script:
  48. - export PATH=$PATH:$HOME/.local/bin
  49. - mkdir builddir
  50. - meson setup --werror -Dtests=enabled -Ddocs=enabled -Dbuildtype=release builddir
  51. - meson compile -C builddir
  52. - meson test -C builddir
  53. #- meson dist --no-tests -C builddir
  54. cache:
  55. paths:
  56. - 'pip-cache/*'