[PATCH] dejagnu: Add D support to default_target_compile

Iain Buclaw <[email protected]>
Newsgroups gmane.comp.sysutils.dejagnu.general
Message-ID <CABOHX+fY=NSwuZDZSb9SODkwdQhvGKi19THhgBRYueMmnjpZBA@mail.gmail.com>
Hi,

Forwarding this patch on from gdb that adds D support in
default_target_compile, which should allow D sources to be used in
dejagnu framework.

Regards,
Iain.

_______________________________________________
DejaGnu mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/dejagnu
dejagnu-dsupport.patch (text/x-diff, 1.7 KB)
ChangeLog:
	* lib/libgloss.exp (find_gdc): New proc.
	* lib/target.exp (default_target_compile): Add D support.

---

--- a/lib/libgloss.exp
+++ b/lib/libgloss.exp
@@ -683,6 +683,25 @@ proc find_g++ {} {
     return $CC
 }
 
+proc find_gdc {} {
+    global tool_root_dir
+
+    if {![is_remote host]} {
+	set file [lookfor_file $tool_root_dir gdc]
+	if { $file == "" } {
+	    set file [lookfor_file $tool_root_dir gcc/gdc]
+	}
+	if { $file != "" } {
+	    set CC "$file -B[file dirname $file]/"
+	} else {
+	    set CC [transform gdc]
+	}
+    } else {
+	set CC [transform gdc]
+    }
+    return $CC
+}
+
 proc find_g77 {} {
     global tool_root_dir
 
--- a/lib/target.exp
+++ b/lib/target.exp
@@ -362,6 +362,18 @@ proc default_target_compile {source destfile type options} {
 	    }
 	}
 
+	if { $i == "d" } {
+	    set compiler_type "d"
+	    if {[board_info $dest exists dflags]} {
+		append add_flags " [target_info dflags]"
+	    }
+	    if {[board_info $dest exists dcompiler]} {
+		set compiler [target_info dcompiler]
+	    } else {
+		set compiler [find_gdc]
+	    }
+	}
+
 	if { $i == "f77" } {
 	    set compiler_type "f77"
 	    if {[board_info $dest exists f77flags]} {
@@ -438,6 +450,7 @@ proc default_target_compile {source destfile type options} {
 
     global CC_FOR_TARGET
     global CXX_FOR_TARGET
+    global D_FOR_TARGET
     global F77_FOR_TARGET
     global F90_FOR_TARGET
     global GNATMAKE_FOR_TARGET
@@ -460,6 +473,12 @@ proc default_target_compile {source destfile type options} {
 	}
     }
 
+    if {[info exists D_FOR_TARGET]} {
+	if { $compiler_type == "d" } {
+	    set compiler $D2_FOR_TARGET
+	}
+    }
+
     if {[info exists F77_FOR_TARGET]} {
 	if { $compiler_type == "f77" } {
 	    set compiler $F77_FOR_TARGET
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.