"Fossies" - the Fresh Open Source Software Archive

Member "libextractor-1.11/m4/intdiv0.m4" (2 Dec 2018, 2411 Bytes) of package /linux/privat/libextractor-1.11.tar.gz:


As a special service "Fossies" has tried to format the requested text file into HTML format (style: standard) with prefixed line numbers. Alternatively you can here view or download the uninterpreted source code file. See also the last Fossies "Diffs" side-by-side code changes report for "intdiv0.m4": 1.8_vs_1.9.

    1 # intdiv0.m4 serial 6 (gettext-0.18.2)
    2 dnl Copyright (C) 2002, 2007-2008, 2010-2016 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 Mac OS 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 ])