check_register.sh 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. #!/bin/bash
  2. # StarPU --- Runtime system for heterogeneous multicore architectures.
  3. #
  4. # Copyright (C) 2011 Centre National de la Recherche Scientifique
  5. #
  6. # StarPU is free software; you can redistribute it and/or modify
  7. # it under the terms of the GNU Lesser General Public License as published by
  8. # the Free Software Foundation; either version 2.1 of the License, or (at
  9. # your option) any later version.
  10. #
  11. # StarPU is distributed in the hope that it will be useful, but
  12. # WITHOUT ANY WARRANTY; without even the implied warranty of
  13. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
  14. #
  15. # See the GNU Lesser General Public License in COPYING.LGPL for more details.
  16. stcolor=$(tput sgr0)
  17. datacolor=$(tput setaf 2)
  18. filecolor=$(tput setaf 1)
  19. process_file()
  20. {
  21. datas=$(grep "data_register(" $f| awk -F',' '{print $1}' | awk -F'(' '{print $2}' | tr -d '&' | sed 's/\[/\\\[/g' | sed 's/\]/\\\]/g' | sed 's/\*/\\\*/g')
  22. for data in $datas ; do
  23. x=$(grep "data_unregister($data" $1)
  24. if test "$x" == "" ; then
  25. x=$(grep "data_unregister_no_coherency($data" $1)
  26. if test "$x" == "" ; then
  27. echo "Error. File <${filecolor}$1${stcolor}>. Handle <${datacolor}$data${stcolor}> is not unregistered"
  28. fi
  29. fi
  30. done
  31. }
  32. for f in $(find tests -type f -not -path "*svn*") ; do process_file $f ; done
  33. for f in $(find examples -type f -not -path "*svn*") ; do process_file $f ; done