PageRenderTime 44ms CodeModel.GetById 18ms RepoModel.GetById 1ms app.codeStats 0ms

/cln-1.3.2/m4/longlong.m4

#
m4 | 42 lines | 34 code | 3 blank | 5 comment | 0 complexity | 4b94282f904f916c7bebdf402b509564 MD5 | raw file
Possible License(s): GPL-2.0
  1. dnl -*- Autoconf -*-
  2. dnl Copyright (C) 1993-2006 Free Software Foundation, Inc.
  3. dnl This file is free software, distributed under the terms of the GNU
  4. dnl General Public License. As a special exception to the GNU General
  5. dnl Public License, this file may be distributed as part of a program
  6. dnl that contains a configuration script generated by Autoconf, under
  7. dnl the same distribution terms as the rest of that program.
  8. dnl From Bruno Haible, Marcus Daniels, Sam Steingold, Paul Eggert.
  9. AC_PREREQ(2.57)
  10. AC_DEFUN([CL_LONGLONG],
  11. [AC_CACHE_CHECK(for long long type, cl_cv_c_longlong, [
  12. AC_TRY_RUN([
  13. #include <stdlib.h>
  14. int main()
  15. {
  16. /* long longs don't work right with gcc-2.7.2 on m68k */
  17. /* long longs don't work right with gcc-2.7.2 on rs6000: avcall/tests.c gets
  18. miscompiled. */
  19. #if defined(__m68k__) || (defined(_IBMR2) || defined(__powerpc))
  20. #if defined(__GNUC__) && (__GNUC__ == 2) && (__GNUC_MINOR__ <= 7)
  21. exit(1);
  22. #endif
  23. #endif
  24. { long x = 944938507; long y = 737962842; long z = 162359677;
  25. exit(!(((long long) x)*((long long) y)>>32 == z));
  26. }
  27. }],
  28. cl_cv_c_longlong=yes, cl_cv_c_longlong=no, [
  29. dnl When cross-compiling, use the test from gnulib.
  30. AC_TRY_LINK([long long ll = 1LL; int i = 63;],
  31. [long long llmax = (long long) -1;
  32. return ll << i | ll >> i | llmax / ll | llmax % ll;],
  33. cl_cv_c_longlong=yes,
  34. cl_cv_c_longlong=no)])
  35. ])
  36. if test $cl_cv_c_longlong = yes; then
  37. AC_DEFINE(HAVE_LONGLONG,,[compiler supports the `long long' type])
  38. fi
  39. ])