run.sh 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. #!/bin/sh
  2. function test_ex {
  3. make -C ex V=1 clean > ex.out 2>&1
  4. make -C ex V=1 >> ex.out 2>&1
  5. if [ ! -x ./ex/ex ]; then
  6. echo FAILED
  7. exit -1
  8. fi
  9. make -C ex V=1 clean > /dev/null 2>&1
  10. rm -f ex.out
  11. }
  12. function test_ex_suffix {
  13. make -C ex V=1 clean > ex.out 2>&1
  14. # use -rR to disable make's builtin rules
  15. make -rR -C ex V=1 ex.o >> ex.out 2>&1
  16. make -rR -C ex V=1 ex.i >> ex.out 2>&1
  17. make -rR -C ex V=1 ex.s >> ex.out 2>&1
  18. if [ -x ./ex/ex ]; then
  19. echo FAILED
  20. exit -1
  21. fi
  22. if [ ! -f ./ex/ex.o -o ! -f ./ex/ex.i -o ! -f ./ex/ex.s ]; then
  23. echo FAILED
  24. exit -1
  25. fi
  26. make -C ex V=1 clean > /dev/null 2>&1
  27. rm -f ex.out
  28. }
  29. function test_ex_include {
  30. make -C ex V=1 clean > ex.out 2>&1
  31. # build with krava.h include
  32. touch ex/krava.h
  33. make -C ex V=1 CFLAGS=-DINCLUDE >> ex.out 2>&1
  34. if [ ! -x ./ex/ex ]; then
  35. echo FAILED
  36. exit -1
  37. fi
  38. # build without the include
  39. rm -f ex/krava.h ex/ex
  40. make -C ex V=1 >> ex.out 2>&1
  41. if [ ! -x ./ex/ex ]; then
  42. echo FAILED
  43. exit -1
  44. fi
  45. make -C ex V=1 clean > /dev/null 2>&1
  46. rm -f ex.out
  47. }
  48. echo -n Testing..
  49. test_ex
  50. test_ex_suffix
  51. test_ex_include
  52. echo OK