.cirrus.yml 1.2 KB

123456789101112131415161718192021222324252627282930313233
  1. Dinit with hardening CI_task:
  2. skip: "!changesInclude('.cirrus.yml',
  3. 'build/**',
  4. 'configs/**',
  5. 'dasynq/**',
  6. 'src/**',
  7. '**/Makefile',
  8. 'configure',
  9. '!**/meson.build')"
  10. environment:
  11. CXX: /usr/local/bin/clang++15 # Default clang++14 isn't friendly with hardening
  12. CXXFLAGS:
  13. -std=c++11
  14. -flto
  15. -fstack-clash-protection
  16. -fvisibility=hidden
  17. -fsanitize=cfi
  18. -fsanitize=signed-integer-overflow,integer-divide-by-zero
  19. -fsanitize-trap=signed-integer-overflow,integer-divide-by-zero
  20. -fno-sanitize-recover
  21. TEST_LDFLAGS: # ASLR breaks -fsanitize=address,undefined
  22. freebsd_instance:
  23. matrix:
  24. - image_family: freebsd-13-2
  25. - image_family: freebsd-12-4
  26. Getting depends_script: pkg update && ASSUME_ALWAYS_YES=YES pkg install gmake m4 file llvm15
  27. Configure_script: ./configure
  28. Build_script: gmake
  29. Print dinit executive file architecture_script: file ./src/dinit
  30. Unit tests_script: gmake check
  31. Integration tests_script: gmake check-igr DEBUG=1