diff --git a/libgfortran/ChangeLog b/libgfortran/ChangeLog index 433be33f1a8..1412b0b980d 100644 --- a/libgfortran/ChangeLog +++ b/libgfortran/ChangeLog @@ -1,3 +1,11 @@ +2009-07-30 Kaz Kojima + + * configure.host: Define ieee_flags and set it to -mieee for sh. + * configure.ac: Set IEEE_FLAGS with ieee_flags. + * Makefile.am: Add IEEE_FLAGS to AM_CFLAGS. + * configure: Regenerate. + * Makefile.in: Regenerate. + 2009-07-30 Ralf Wildenhues * configure.ac (_AC_ARG_VAR_PRECIOUS): Use m4_rename_force. diff --git a/libgfortran/Makefile.am b/libgfortran/Makefile.am index 4a974ba0066..ee969d06936 100644 --- a/libgfortran/Makefile.am +++ b/libgfortran/Makefile.am @@ -37,6 +37,10 @@ AM_CFLAGS += -fcx-fortran-rules SECTION_FLAGS = @SECTION_FLAGS@ AM_CFLAGS += $(SECTION_FLAGS) +# Some targets require additional compiler options for IEEE compatibility. +IEEE_FLAGS = @IEEE_FLAGS@ +AM_CFLAGS += $(IEEE_FLAGS) + gfor_io_src= \ io/close.c \ io/file_pos.c \ diff --git a/libgfortran/Makefile.in b/libgfortran/Makefile.in index 7741c324aaf..d7742ff7302 100644 --- a/libgfortran/Makefile.in +++ b/libgfortran/Makefile.in @@ -815,7 +815,8 @@ AMDEP_TRUE = @AMDEP_TRUE@ AMTAR = @AMTAR@ # Fortran rules for complex multiplication and division -AM_CFLAGS = @AM_CFLAGS@ -fcx-fortran-rules $(SECTION_FLAGS) +AM_CFLAGS = @AM_CFLAGS@ -fcx-fortran-rules $(SECTION_FLAGS) \ + $(IEEE_FLAGS) AM_FCFLAGS = @AM_FCFLAGS@ AR = @AR@ AS = @AS@ @@ -843,6 +844,9 @@ FCFLAGS = @FCFLAGS@ FGREP = @FGREP@ FPU_HOST_HEADER = @FPU_HOST_HEADER@ GREP = @GREP@ + +# Some targets require additional compiler options for IEEE compatibility. +IEEE_FLAGS = @IEEE_FLAGS@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ diff --git a/libgfortran/configure b/libgfortran/configure index 043884bad5a..9091071e011 100755 --- a/libgfortran/configure +++ b/libgfortran/configure @@ -457,7 +457,7 @@ ac_includes_default="\ # include #endif" -ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS build build_cpu build_vendor build_os build_libsubdir build_subdir host_subdir target_subdir onestep_TRUE onestep_FALSE onestep host host_cpu host_vendor host_os target target_cpu target_vendor target_os INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar am__untar MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT multi_basedir toolexecdir toolexeclibdir CC ac_ct_CC EXEEXT OBJEXT DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE AM_FCFLAGS AM_CFLAGS CFLAGS LIBGFOR_USE_SYMVER_TRUE LIBGFOR_USE_SYMVER_FALSE SECTION_FLAGS AS ac_ct_AS AR ac_ct_AR RANLIB ac_ct_RANLIB LIBTOOL SED EGREP FGREP GREP LD DUMPBIN ac_ct_DUMPBIN NM LN_S OBJDUMP ac_ct_OBJDUMP lt_ECHO DSYMUTIL ac_ct_DSYMUTIL NMEDIT ac_ct_NMEDIT LIPO ac_ct_LIPO OTOOL ac_ct_OTOOL OTOOL64 ac_ct_OTOOL64 CPP CPPFLAGS enable_shared enable_static FC FCFLAGS LDFLAGS ac_ct_FC extra_ldflags_libgfortran FPU_HOST_HEADER LIBOBJS LTLIBOBJS' +ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS build build_cpu build_vendor build_os build_libsubdir build_subdir host_subdir target_subdir onestep_TRUE onestep_FALSE onestep host host_cpu host_vendor host_os target target_cpu target_vendor target_os INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar am__untar MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT multi_basedir toolexecdir toolexeclibdir CC ac_ct_CC EXEEXT OBJEXT DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE AM_FCFLAGS AM_CFLAGS CFLAGS LIBGFOR_USE_SYMVER_TRUE LIBGFOR_USE_SYMVER_FALSE SECTION_FLAGS AS ac_ct_AS AR ac_ct_AR RANLIB ac_ct_RANLIB LIBTOOL SED EGREP FGREP GREP LD DUMPBIN ac_ct_DUMPBIN NM LN_S OBJDUMP ac_ct_OBJDUMP lt_ECHO DSYMUTIL ac_ct_DSYMUTIL NMEDIT ac_ct_NMEDIT LIPO ac_ct_LIPO OTOOL ac_ct_OTOOL OTOOL64 ac_ct_OTOOL64 CPP CPPFLAGS enable_shared enable_static FC FCFLAGS LDFLAGS ac_ct_FC extra_ldflags_libgfortran FPU_HOST_HEADER IEEE_FLAGS LIBOBJS LTLIBOBJS' ac_subst_files='' ac_pwd=`pwd` @@ -33816,6 +33816,10 @@ echo "$as_me: FPU dependent file will be ${fpu_host}.h" >&6;} FPU_HOST_HEADER=config/${fpu_host}.h +# Some targets require additional compiler options for IEEE compatibility. +IEEE_FLAGS="${ieee_flags}" + + # Check out attribute support. echo "$as_me:$LINENO: checking whether the target supports hidden visibility" >&5 @@ -35568,6 +35572,7 @@ s,@LDFLAGS@,$LDFLAGS,;t t s,@ac_ct_FC@,$ac_ct_FC,;t t s,@extra_ldflags_libgfortran@,$extra_ldflags_libgfortran,;t t s,@FPU_HOST_HEADER@,$FPU_HOST_HEADER,;t t +s,@IEEE_FLAGS@,$IEEE_FLAGS,;t t s,@LIBOBJS@,$LIBOBJS,;t t s,@LTLIBOBJS@,$LTLIBOBJS,;t t CEOF diff --git a/libgfortran/configure.ac b/libgfortran/configure.ac index 1fadd2e5091..2d0dff0c68c 100644 --- a/libgfortran/configure.ac +++ b/libgfortran/configure.ac @@ -448,6 +448,10 @@ AC_MSG_NOTICE([FPU dependent file will be ${fpu_host}.h]) FPU_HOST_HEADER=config/${fpu_host}.h AC_SUBST(FPU_HOST_HEADER) +# Some targets require additional compiler options for IEEE compatibility. +IEEE_FLAGS="${ieee_flags}" +AC_SUBST(IEEE_FLAGS) + # Check out attribute support. LIBGFOR_CHECK_ATTRIBUTE_VISIBILITY LIBGFOR_CHECK_ATTRIBUTE_DLLEXPORT diff --git a/libgfortran/configure.host b/libgfortran/configure.host index 73da57172d6..eb68c934c39 100644 --- a/libgfortran/configure.host +++ b/libgfortran/configure.host @@ -38,3 +38,10 @@ fi if test "x${have_fp_enable}" = "xyes" && test "x${have_fp_trap}" = "xyes"; then fpu_host='fpu-aix' fi + +# Some targets require additional compiler options for NaN/Inf. +ieee_flags= +case "${host_cpu}" in + sh*) + ieee_flags="-mieee" ;; +esac