configure 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. #!/bin/bash
  2. BUILD_DIR="build/"
  3. MAKEFILE="./Makefile"
  4. OPTIONS="-DCMAKE_VERBOSE_MAKEFILE=1"
  5. DEBUG=0
  6. while [[ $# -gt 0 ]]; do
  7. flag="${1}"
  8. case "${flag}" in
  9. --cc=*)
  10. OPTIONS="${OPTIONS} -DCMAKE_C_COMPILER=${flag#*=}"
  11. ;;
  12. --cxx=*)
  13. OPTIONS="${OPTIONS} -DCMAKE_CXX_COMPILER=${flag#*=}"
  14. ;;
  15. --devel)
  16. OPTIONS="${OPTIONS} -DDEVEL=1"
  17. ;;
  18. --debug)
  19. DEBUG=1
  20. ;;
  21. --trtis)
  22. OPTIONS="${OPTIONS} -DBUILD_TRTIS=1"
  23. ;;
  24. *)
  25. echo "Unknown argument '${flag}'."
  26. exit 1
  27. ;;
  28. esac
  29. shift
  30. done
  31. if [[ "${DEBUG}" == "1" ]]; then
  32. OPTIONS="${OPTIONS} -DCMAKE_BUILD_TYPE=Debug"
  33. else
  34. OPTIONS="${OPTIONS} -DCMAKE_BUILD_TYPE=Release"
  35. fi
  36. if [[ -d "${BUILD_DIR}" ]]; then
  37. rm -rf "${BUILD_DIR}"
  38. fi
  39. mkdir -p "${BUILD_DIR}"
  40. pushd "${BUILD_DIR}"
  41. cmake --version
  42. echo "cmake .. ${OPTIONS}"
  43. cmake .. ${OPTIONS}
  44. popd
  45. echo "# Auto generated makefile" > "${MAKEFILE}"
  46. echo "" >> "${MAKEFILE}"
  47. echo "all test:" >> "${MAKEFILE}"
  48. echo " make -C \"${BUILD_DIR}\" \$@" >> "${MAKEFILE}"
  49. echo "" >> "${MAKEFILE}"
  50. echo ".PHONY: all" >> "${MAKEFILE}"
  51. echo "" >> "${MAKEFILE}"