2
0

setupBuildNum.sh 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. #!/bin/sh
  2. v40Filter="--after=28.02.2016"
  3. v30Offset=15471
  4. v25Offset=13822
  5. v21Offset=9146
  6. processBranch() {
  7. Branch="$1"
  8. Adjust="$2"
  9. Filter="$3"
  10. git checkout $Branch
  11. git reset --hard origin/$Branch
  12. git clean -d -x -f
  13. TmpFile=temp.buildno
  14. WriteBuildNumFile="src/misc/writeBuildNum.sh"
  15. BuildNoFile="src/jrd/build_no.h"
  16. OrgBuildNo=$(grep "FB_BUILD_NO" $BuildNoFile | cut -d'"' -f2)
  17. Count=$(git rev-list $Filter --count $Branch)
  18. Skip1=$(git rev-list $Filter --grep="increment build number" --count $Branch)
  19. Skip2=$(git rev-list $Filter --grep="nightly update" --count $Branch)
  20. NewBuildNo=$(($Count-$Skip1-$Skip2+$Adjust))
  21. if [ "$NewBuildNo" != "$OrgBuildNo" ]; then
  22. Starting="BuildNum="
  23. NewLine="BuildNum=$NewBuildNo"
  24. AwkProgram="(/^$Starting.*/ || \$1 == \"$Starting\") {\$0=\"$NewLine\"} {print \$0}"
  25. awk "$AwkProgram" <$WriteBuildNumFile >$TmpFile && mv $TmpFile $WriteBuildNumFile
  26. chmod +x $WriteBuildNumFile
  27. $WriteBuildNumFile rebuildHeader $BuildNoFile $TmpFile
  28. git commit -m "increment build number" $WriteBuildNumFile $BuildNoFile
  29. rm -f $TmpFile
  30. fi
  31. }
  32. git fetch --all
  33. processBranch master 0 $v40Filter
  34. processBranch B3_0_Release $v30Offset
  35. processBranch B2_5_Release $v25Offset
  36. processBranch B2_1_Release $v21Offset
  37. export GIT_COMMITTER_NAME="firebirds"
  38. export GIT_COMMITTER_EMAIL="<>"
  39. export GIT_AUTHOR_NAME="firebirds"
  40. export GIT_AUTHOR_EMAIL="<>"
  41. git push --all