depend.m4 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. # DO_DEPS
  2. # ------------------------------
  3. dnl EGG_CHECK_DEPMODE()
  4. dnl
  5. AC_DEFUN([EGG_CHECK_DEPMODE],
  6. [
  7. CCDEPMODE=gcc
  8. num=`$CXX -dumpversion | sed "s/^\\\(.\\\).*/\\\1/"`
  9. if test $num -ge "3"; then
  10. CCDEPMODE=gcc3
  11. # GCC3="-Wpadded -Wpacked -Wno-unused-parameter -Wmissing-format-attribute -Wdisabled-optimization"
  12. GCC3_CFLAGS="-W -Wno-unused-parameter -Wdisabled-optimization -Wno-write-strings -Wno-format-security -fno-strict-aliasing -Wno-format-y2k"
  13. GCC3_CXXFLAGS="-Woverloaded-virtual"
  14. GCC3DEB="-Wno-disabled-optimization -Wmissing-format-attribute"
  15. fi
  16. AC_SUBST(CCDEPMODE)dnl
  17. AC_SUBST(GCC3_CFLAGS)dnl
  18. AC_SUBST(GCC3_CXXFLAGS)dnl
  19. AC_SUBST(GCC3DEB)dnl
  20. AC_SUBST(GCC4DEB)dnl
  21. ])
  22. AC_DEFUN([DO_DEPS],
  23. [
  24. files="src/Makefile.in"
  25. for mf in $files; do
  26. # Strip MF so we end up with the name of the file.
  27. mf=${mf%%:*}
  28. dirmf=${mf%/*}
  29. rm -f "$dirmf/.deps/includes"
  30. test -d "$dirmf/.deps" || mkdir "$dirmf/.deps"
  31. for file in `sed -n -e '
  32. /^OBJS = .*\\\\$/ {
  33. s/^OBJS = //
  34. :loop
  35. s/\\\\$//
  36. p
  37. n
  38. /\\\\$/ b loop
  39. p
  40. }
  41. /^OBJS = / s/^OBJS = //p' < "$mf"`;
  42. do
  43. dirpart="${dirmf}/${file}"
  44. dirpart="${dirpart%/*}"
  45. if [[ "${dirpart}" != "${dirmf}" ]]; then
  46. test -d "${dirpart}/.deps" || mkdir "${dirpart}/.deps"
  47. fi
  48. file="${file##*/}"
  49. suffix=${file##*.}
  50. base=${file%%.*}
  51. test -f "$dirpart/$base.cc" || test -f "$dirpart/$base.c" || continue
  52. if ! test -f "$dirpart/.deps/$base.Po"; then
  53. echo '# dummy' > "$dirpart/.deps/$base.Po"
  54. #Remove the .o file, because it needs to be recompiled for its dependancies.
  55. if test -f "$dirpart/${base}.${suffix}"; then
  56. rm -f "$dirpart/${base}.${suffix}"
  57. fi
  58. fi
  59. echo "include .${dirpart#${dirmf}}/.deps/$base.Po" >> "${dirmf}/.deps/includes"
  60. done
  61. done
  62. ])