build-info.sh 763 B

1234567891011121314151617181920212223242526272829303132333435
  1. #!/bin/sh
  2. CC=$1
  3. build_number="0"
  4. build_commit="unknown"
  5. build_compiler="unknown"
  6. build_target="unknown"
  7. if out=$(git rev-list --count HEAD); then
  8. # git is broken on WSL so we need to strip extra newlines
  9. build_number=$(printf '%s' "$out" | tr -d '\n')
  10. fi
  11. if out=$(git rev-parse --short HEAD); then
  12. build_commit=$(printf '%s' "$out" | tr -d '\n')
  13. fi
  14. if out=$($CC --version | head -1); then
  15. build_compiler=$out
  16. fi
  17. if out=$($CC -dumpmachine); then
  18. build_target=$out
  19. fi
  20. echo "#ifndef BUILD_INFO_H"
  21. echo "#define BUILD_INFO_H"
  22. echo
  23. echo "#define BUILD_NUMBER $build_number"
  24. echo "#define BUILD_COMMIT \"$build_commit\""
  25. echo "#define BUILD_COMPILER \"$build_compiler\""
  26. echo "#define BUILD_TARGET \"$build_target\""
  27. echo
  28. echo "#endif // BUILD_INFO_H"