PageRenderTime 3102ms CodeModel.GetById 1ms RepoModel.GetById 0ms app.codeStats 0ms

/ldr-utils/autogen.sh

https://bitbucket.org/pizzafactory/blackfin-toolchain
Shell | 82 lines | 74 code | 4 blank | 4 comment | 1 complexity | cdf902639c49d97f04b5f3101a21210e MD5 | raw file
Possible License(s): GPL-2.0, LGPL-2.0, GPL-3.0, AGPL-1.0, LGPL-2.1
  1. #!/bin/bash
  2. set -e -x
  3. # force consistent sorting in generated files
  4. # so we dont get pointless changes across builds
  5. export LC_ALL=C
  6. make distclean
  7. # figure out which vcs we're using
  8. if svn info >&/dev/null ; then
  9. VCS="svn"
  10. elif git rev-parse HEAD >&/dev/null ; then
  11. VCS="git"
  12. else
  13. echo "ERROR: no idea what vcs i'm using"
  14. exit 1
  15. fi
  16. # prep files for autotoolization
  17. case ${VCS} in
  18. svn)
  19. svn log > ChangeLog
  20. ;;
  21. git)
  22. if git config svn-remote.svn.url >/dev/null ; then
  23. git svn log > ChangeLog
  24. else
  25. git log > ChangeLog
  26. fi
  27. ;;
  28. esac
  29. topfiles=$(echo *.c *.h)
  30. sed -i "/^ldr_SOURCES/s:=.*:= ${topfiles} \$(RC_SOURCES):" Makefile.am
  31. ver=$(./local-version.sh ${VCS})
  32. sed -i "/^AC_INIT/s:\([^,]*,\)[^,]*:\1 [${ver}]:" configure.ac
  33. testatfiles=$(cd tests; echo *.at)
  34. testfiles=$(cd tests; echo *.c *.in elfs/* ldrs/*)
  35. sed -i \
  36. -e "/^EXTRA_DIST/s:=.*:= ${testfiles} \$(AT_FILES) \$(TESTSUITE):" \
  37. -e "/^AT_FILES/s:=.*:= ${testatfiles}:" \
  38. tests/Makefile.am
  39. find gnulib/{lib,m4}/ '(' -type f -print ')' -o '(' -name .svn -prune ')' | xargs -r rm -f
  40. PATH=/usr/local/src/gnu/gnulib:${PATH}
  41. gnulib-tool --source-base=gnulib/lib --m4-base=gnulib/m4 --import $(<gnulib/modules) || :
  42. rm -f gnulib/*/.gitignore
  43. find gnulib -name '*~' -exec rm {} +
  44. autoreconf -f -i -v
  45. # stupid automake bug
  46. case ${VCS} in
  47. svn) svn revert INSTALL ;;
  48. git) git checkout INSTALL ;;
  49. esac
  50. # update copyrights automatically
  51. case ${VCS} in
  52. svn)
  53. for f in $(grep -lI 'Copyright.*Analog Devices Inc.' `svn ls`) ; do
  54. year=$(svn info $f | awk '$0 ~ /^Last Changed Date:/ {print $4}' | cut -d- -f1)
  55. sed -i \
  56. -e "s:\(Copyright\) [-0-9]* \(Analog Devices Inc.\):\1 2006-${year} \2:" \
  57. ${f}
  58. done
  59. ;;
  60. esac
  61. # test building
  62. if [ -d build ] ; then
  63. chmod -R 777 build
  64. rm -rf build
  65. fi
  66. mkdir build
  67. cd build
  68. ../configure
  69. make
  70. make check
  71. make dist
  72. make distcheck