nexmon – Blame information for rev 1
?pathlinks?
Rev | Author | Line No. | Line |
---|---|---|---|
1 | office | 1 | # intdiv0.m4 serial 5 (gettext-0.18.2) |
2 | dnl Copyright (C) 2002, 2007-2008, 2010-2011 Free Software Foundation, Inc. |
||
3 | dnl This file is free software; the Free Software Foundation |
||
4 | dnl gives unlimited permission to copy and/or distribute it, |
||
5 | dnl with or without modifications, as long as this notice is preserved. |
||
6 | |||
7 | dnl From Bruno Haible. |
||
8 | |||
9 | AC_DEFUN([gt_INTDIV0], |
||
10 | [ |
||
11 | AC_REQUIRE([AC_PROG_CC])dnl |
||
12 | AC_REQUIRE([AC_CANONICAL_HOST])dnl |
||
13 | |||
14 | AC_CACHE_CHECK([whether integer division by zero raises SIGFPE], |
||
15 | gt_cv_int_divbyzero_sigfpe, |
||
16 | [ |
||
17 | gt_cv_int_divbyzero_sigfpe= |
||
18 | changequote(,)dnl |
||
19 | case "$host_os" in |
||
20 | macos* | darwin[6-9]* | darwin[1-9][0-9]*) |
||
21 | # On MacOS X 10.2 or newer, just assume the same as when cross- |
||
22 | # compiling. If we were to perform the real test, 1 Crash Report |
||
23 | # dialog window would pop up. |
||
24 | case "$host_cpu" in |
||
25 | i[34567]86 | x86_64) |
||
26 | gt_cv_int_divbyzero_sigfpe="guessing yes" ;; |
||
27 | esac |
||
28 | ;; |
||
29 | esac |
||
30 | changequote([,])dnl |
||
31 | if test -z "$gt_cv_int_divbyzero_sigfpe"; then |
||
32 | AC_RUN_IFELSE( |
||
33 | [AC_LANG_SOURCE([[ |
||
34 | #include <stdlib.h> |
||
35 | #include <signal.h> |
||
36 | |||
37 | static void |
||
38 | sigfpe_handler (int sig) |
||
39 | { |
||
40 | /* Exit with code 0 if SIGFPE, with code 1 if any other signal. */ |
||
41 | exit (sig != SIGFPE); |
||
42 | } |
||
43 | |||
44 | int x = 1; |
||
45 | int y = 0; |
||
46 | int z; |
||
47 | int nan; |
||
48 | |||
49 | int main () |
||
50 | { |
||
51 | signal (SIGFPE, sigfpe_handler); |
||
52 | /* IRIX and AIX (when "xlc -qcheck" is used) yield signal SIGTRAP. */ |
||
53 | #if (defined (__sgi) || defined (_AIX)) && defined (SIGTRAP) |
||
54 | signal (SIGTRAP, sigfpe_handler); |
||
55 | #endif |
||
56 | /* Linux/SPARC yields signal SIGILL. */ |
||
57 | #if defined (__sparc__) && defined (__linux__) |
||
58 | signal (SIGILL, sigfpe_handler); |
||
59 | #endif |
||
60 | |||
61 | z = x / y; |
||
62 | nan = y / y; |
||
63 | exit (2); |
||
64 | } |
||
65 | ]])], |
||
66 | [gt_cv_int_divbyzero_sigfpe=yes], |
||
67 | [gt_cv_int_divbyzero_sigfpe=no], |
||
68 | [ |
||
69 | # Guess based on the CPU. |
||
70 | changequote(,)dnl |
||
71 | case "$host_cpu" in |
||
72 | alpha* | i[34567]86 | x86_64 | m68k | s390*) |
||
73 | gt_cv_int_divbyzero_sigfpe="guessing yes";; |
||
74 | *) |
||
75 | gt_cv_int_divbyzero_sigfpe="guessing no";; |
||
76 | esac |
||
77 | changequote([,])dnl |
||
78 | ]) |
||
79 | fi |
||
80 | ]) |
||
81 | case "$gt_cv_int_divbyzero_sigfpe" in |
||
82 | *yes) value=1;; |
||
83 | *) value=0;; |
||
84 | esac |
||
85 | AC_DEFINE_UNQUOTED([INTDIV0_RAISES_SIGFPE], [$value], |
||
86 | [Define if integer division by zero raises signal SIGFPE.]) |
||
87 | ]) |