dpkg.m4 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. dnl DPKG_CACHED_TRY_COMPILE(<description>,<cachevar>,<include>,<program>,<ifyes>,<ifno>)
  2. AC_DEFUN(DPKG_CACHED_TRY_COMPILE,[
  3. AC_MSG_CHECKING($1)
  4. AC_CACHE_VAL($2,[
  5. AC_TRY_COMPILE([$3],[$4],[$2=yes],[$2=no])
  6. ])
  7. if test "x$$2" = xyes; then
  8. true
  9. $5
  10. else
  11. true
  12. $6
  13. fi
  14. ])
  15. dnl DPKG_C_GCC_ATTRIBUTE(<short-label>,<cachevar>,<func-params>,<attribute>,<HAVE>,<desc>,[<true-cmds>],[<false-cmds>])
  16. AC_DEFUN(DPKG_C_GCC_ATTRIBUTE,[
  17. DPKG_CACHED_TRY_COMPILE(__attribute__(($1)),dpkg_cv_c_attribute_$2,,
  18. [extern int testfunction($3) __attribute__(($4))],
  19. AC_MSG_RESULT(yes)
  20. AC_DEFINE(HAVE_GNUC25_$5,,$6)
  21. $7,
  22. AC_MSG_RESULT(no)
  23. $8)
  24. ])
  25. dnl DPKG_C_GCC_TRY_WARNS(<warnings>,<cachevar>)
  26. AC_DEFUN(DPKG_C_GCC_TRY_WARNS,[
  27. AC_MSG_CHECKING([GCC warning flag(s) $1])
  28. if test "${GCC-no}" = yes
  29. then
  30. AC_CACHE_VAL($2,[
  31. if $CC $1 -c /dev/null 2>/dev/null; then
  32. $2=yes
  33. else
  34. $2=
  35. fi
  36. ])
  37. if test "x$$2" = xyes; then
  38. CWARNS="${CWARNS} $1"
  39. AC_MSG_RESULT(ok)
  40. else
  41. AC_MSG_RESULT(no)
  42. fi
  43. else
  44. AC_MSG_RESULT(no, not using GCC)
  45. fi
  46. ])
  47. dnl DPKG_CACHED_TRY_COMPILE(<description>,<cachevar>,<include>,<program>,<ifyes>,<ifno>)
  48. dnl Check if a #define is present in an include file
  49. AC_DEFUN(DPKG_CHECK_DEFINE,
  50. [AC_CACHE_CHECK(if $1 is defined in $2,
  51. ac_cv_define_$1,
  52. [AC_TRY_COMPILE([
  53. #include <$2>
  54. ],[
  55. int i = $1;
  56. ],
  57. ac_cv_define_$1=yes,
  58. ac_cv_define_$1=no)
  59. ])
  60. if test "$ac_cv_define_$1" = yes ; then
  61. AC_DEFINE(HAVE_$1,,[define if $1 is defined])
  62. fi
  63. ])