c425c83
diff -U0 dejagnu-1.5/ChangeLog.gfortran dejagnu-1.5/ChangeLog
c425c83
--- dejagnu-1.5/ChangeLog.gfortran	2011-03-09 05:29:16.000000000 +0100
c425c83
+++ dejagnu-1.5/ChangeLog	2012-05-14 18:38:36.316469119 +0200
c425c83
@@ -0,0 +1,8 @@
a30074d
+2011-06-30  Tom Tromey  <tromey@redhat.com>
a30074d
+
a30074d
+	* doc/ref.xml: Document find_gfortran.
a30074d
+	* doc/dejagnu.texi: Regenerate.
a30074d
+	* lib/target.exp (default_target_compile): Handle f90.
a30074d
+	(default_target_compile): Likewise.
a30074d
+	* lib/libgloss.exp (find_gfortran): New proc.
a30074d
+
c425c83
diff -up dejagnu-1.5/doc/dejagnu.texi.gfortran dejagnu-1.5/doc/dejagnu.texi
c425c83
--- dejagnu-1.5/doc/dejagnu.texi.gfortran	2011-03-08 01:26:30.000000000 +0100
c425c83
+++ dejagnu-1.5/doc/dejagnu.texi	2012-05-14 18:38:36.317469122 +0200
c425c83
@@ -6548,6 +6548,7 @@ executable image for an embedded systems
a30074d
 * Find_gcj Procedure: find_gcj procedure.
a30074d
 * Find_g++ Procedure: find_g++ procedure.
a30074d
 * Find_g77 Procedure: find_g77 procedure.
a30074d
+* Find_gfortran Procedure: find_gfortran procedure.
a30074d
 * Process_multilib_options Procedure: process_multilib_options procedure.
a30074d
 * Add_multilib_option Procedure: add_multilib_option procedure.
a30074d
 * Find_gas Procedure: find_gas procedure.
c425c83
@@ -6752,7 +6753,7 @@ executable image for an embedded systems
a30074d
 @t{@b{find_g++}(@i{});}
a30074d
 @end quotation
a30074d
 
a30074d
-@node find_g77 procedure, process_multilib_options procedure, find_g++ procedure, Libgloss
a30074d
+@node find_g77 procedure, find_gfortran procedure, find_g++ procedure, Libgloss
a30074d
 @subsubsection Find_g77 Procedure
a30074d
 
a30074d
 
c425c83
@@ -6761,7 +6762,16 @@ executable image for an embedded systems
a30074d
 @t{@b{find_g77}(@i{});}
a30074d
 @end quotation
a30074d
 
a30074d
-@node process_multilib_options procedure, add_multilib_option procedure, find_g77 procedure, Libgloss
a30074d
+@node find_gfortran procedure, process_multilib_options procedure, find_g77 procedure, Libgloss
a30074d
+@subsubsection Find_gfortran Procedure
a30074d
+
a30074d
+
a30074d
+@quotation
a30074d
+
a30074d
+@t{@b{find_gfortran}(@i{});}
a30074d
+@end quotation
a30074d
+
a30074d
+@node process_multilib_options procedure, add_multilib_option procedure, find_gfortran procedure, Libgloss
a30074d
 @subsubsection Process_multilib_options Procedure
a30074d
 
a30074d
 
c425c83
diff -up dejagnu-1.5/doc/ref.xml.gfortran dejagnu-1.5/doc/ref.xml
c425c83
--- dejagnu-1.5/doc/ref.xml.gfortran	2011-03-03 22:38:25.000000000 +0100
c425c83
+++ dejagnu-1.5/doc/ref.xml	2012-05-14 18:38:36.333469167 +0200
a30074d
@@ -4146,6 +4146,19 @@
a30074d
         </funcsynopsis>
a30074d
 	</sect4>
a30074d
 
a30074d
+	<sect4 id="findgfortran" xreflabel="find_gfortran procedure">
a30074d
+	  <title>Find_gfortran Procedure</title>
a30074d
+
a30074d
+	  <para></para>
a30074d
+
a30074d
+	<funcsynopsis role="tcl">
a30074d
+          <funcprototype>
a30074d
+            <funcdef><function>find_gfortran</function></funcdef>
a30074d
+	    <paramdef><parameter></parameter></paramdef>
a30074d
+           </funcprototype>
a30074d
+        </funcsynopsis>
a30074d
+	</sect4>
a30074d
+
a30074d
 	
a30074d
 	procedure">
a30074d
 	  <title>Process_multilib_options Procedure</title>
c425c83
diff -up dejagnu-1.5/lib/libgloss.exp.gfortran dejagnu-1.5/lib/libgloss.exp
c425c83
--- dejagnu-1.5/lib/libgloss.exp.gfortran	2011-03-03 10:58:56.000000000 +0100
c425c83
+++ dejagnu-1.5/lib/libgloss.exp	2012-05-14 18:38:36.364469259 +0200
a30074d
@@ -1,5 +1,5 @@
a30074d
 # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
a30074d
-# 2002, 2003, 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
a30074d
+# 2002, 2003, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software Foundation, Inc.
a30074d
 #
a30074d
 # This file is part of DejaGnu.
a30074d
 #
c425c83
@@ -701,6 +701,25 @@ proc find_g77 {} {
c425c83
     }
a30074d
     return $CC
a30074d
 }
c425c83
+
a30074d
+proc find_gfortran {} {
a30074d
+    global tool_root_dir
a30074d
+
a30074d
+    if {![is_remote host]} {
a30074d
+	set file [lookfor_file $tool_root_dir gfortran]
a30074d
+	if { $file == "" } {
a30074d
+	    set file [lookfor_file $tool_root_dir gcc/gfortran]
a30074d
+	}
a30074d
+	if { $file != "" } {
a30074d
+	    set CC "$file -B[file dirname $file]/"
a30074d
+	} else {
a30074d
+	    set CC [transform gfortran]
a30074d
+	}
a30074d
+    } else {
a30074d
+	set CC [transform gfortran]
a30074d
+    }
a30074d
+    return $CC
a30074d
+}
c425c83
 
a30074d
 proc find_gnatmake {} {
a30074d
     global tool_root_dir
c425c83
diff -up dejagnu-1.5/lib/target.exp.gfortran dejagnu-1.5/lib/target.exp
c425c83
--- dejagnu-1.5/lib/target.exp.gfortran	2011-03-03 10:58:56.000000000 +0100
c425c83
+++ dejagnu-1.5/lib/target.exp	2012-05-14 18:38:36.399469362 +0200
a30074d
@@ -1,5 +1,5 @@
a30074d
 # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
a30074d
-# 2002, 2003, 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
a30074d
+# 2002, 2003, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software Foundation, Inc.
a30074d
 #
a30074d
 # This file is part of DejaGnu.
a30074d
 #
c425c83
@@ -367,6 +367,18 @@ proc default_target_compile {source dest
a30074d
 	    }
a30074d
 	}
a30074d
 
a30074d
+	if { $i == "f90" } {
a30074d
+	    set compiler_type "f90"
a30074d
+	    if {[board_info $dest exists f90flags]} {
a30074d
+		append add_flags " [target_info f90flags]"
a30074d
+	    }
a30074d
+	    if {[board_info $dest exists f90compiler]} {
a30074d
+		set compiler [target_info f90compiler]
a30074d
+	    } else {
a30074d
+		set compiler [find_gfortran]
a30074d
+	    }
a30074d
+	}
a30074d
+
a30074d
 	if {[regexp "^dest=" $i]} {
a30074d
 	    regsub "^dest=" $i "" tmp
a30074d
 	    if {[board_info $tmp exists name]} {
c425c83
@@ -420,6 +432,7 @@ proc default_target_compile {source dest
a30074d
     global CC_FOR_TARGET
a30074d
     global CXX_FOR_TARGET
a30074d
     global F77_FOR_TARGET
a30074d
+    global F90_FOR_TARGET
a30074d
     global GNATMAKE_FOR_TARGET
a30074d
 
a30074d
     if {[info exists GNATMAKE_FOR_TARGET]} {
c425c83
@@ -446,6 +459,12 @@ proc default_target_compile {source dest
a30074d
 	}
a30074d
     }
a30074d
 
a30074d
+    if {[info exists F90_FOR_TARGET]} {
a30074d
+	if { $compiler_type == "f90" } {
a30074d
+	    set compiler $F90_FOR_TARGET
a30074d
+	}
a30074d
+    }
a30074d
+
a30074d
     if { $compiler == "" } {
a30074d
 	set compiler [board_info $dest compiler]
a30074d
 	if { $compiler == "" } {