build-n-run.sh 613 B

123456789101112131415161718192021222324252627282930
  1. #!/usr/bin/env bash
  2. function build_example()
  3. {
  4. make -C examples || exit 1
  5. }
  6. function list_mod()
  7. {
  8. # Filter out the modules specified in non-working
  9. ls examples/*.ko | awk -F "[/|.]" '{print $2}' | grep -vFxf .ci/non-working
  10. }
  11. function run_mod()
  12. {
  13. # insert/remove twice to ensure resource allocations
  14. ( sudo insmod "examples/$1.ko" && sudo rmmod "$1" ) || exit 1
  15. ( sudo insmod "examples/$1.ko" && sudo rmmod "$1" ) || exit 1
  16. }
  17. function run_examples()
  18. {
  19. for module in $(list_mod); do
  20. echo "Running $module"
  21. run_mod "$module"
  22. done
  23. }
  24. build_example
  25. run_examples