[RFA,2/3] Add debug-stabs debug-dwarf and class option for pascal compiler

Message ID 001801d02c27$e94033f0$bbc09bd0$@muller@ics-cnrs.unistra.fr
State New, archived
Headers

Commit Message

Pierre Muller Jan. 9, 2015, 4:18 p.m. UTC
  This part adds support for
pascal specific compilation option:
  - "debug-stabs" to force use of stabs debugging format.
  - "debug-dwarf" to force use of dwarf debugging format.
  - "class" to enable pascal "class" types.

gdb/testsuite/Changelog entry :

2015-01-09  Pierre Muller  <muller@sourceware.org>

	* lib/pascal.exp (gpc_compile): Handle new options:
	"debug-stabs", "debug-dwarf" and "class".
	(fpc_compile): Likewise.
---
 gdb/testsuite/lib/pascal.exp | 42
++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 42 insertions(+)

$add_flags $source"]
@@ -120,6 +141,27 @@ proc fpc_compile {source dest type options} {
 		append add_flags " -g"
 	    }
 	}
+	if { $i == "debug-stabs" } {
+	    if [board_info $dest exists debug_stabs_flags] {
+		append add_flags " [board_info $dest debug_stabs_flags]"
+	    } else {
+		append add_flags " -gs"
+	    }
+	}
+	if { $i == "debug-dwarf" } {
+	    if [board_info $dest exists debug_dwarf_flags] {
+		append add_flags " [board_info $dest debug_dwarf_flags]"
+	    } else {
+		append add_flags " -gw"
+	    }
+	}
+	if { $i == "class" } {
+	    if [board_info $dest exists pascal_class_flags] {
+		append add_flags " [board_info $dest pscal_class_flags]"
+	    } else {
+		append add_flags " -Mobjfpc"
+	    }
+	}
     }
 
     set result [remote_exec host $fpc_compiler "-o$dest $add_flags
$source"]
  

Patch

diff --git a/gdb/testsuite/lib/pascal.exp b/gdb/testsuite/lib/pascal.exp
index 994e3da..587352c 100644
--- a/gdb/testsuite/lib/pascal.exp
+++ b/gdb/testsuite/lib/pascal.exp
@@ -91,6 +91,27 @@  proc gpc_compile {source dest type options} {
 		append add_flags " -g"
 	    }
 	}
+	if { $i == "debug-stabs" } {
+	    if [board_info $dest exists debug_stabs_flags] {
+		append add_flags " [board_info $dest debug_stabs_flags]"
+	    } else {
+		append add_flags " -gstabs"
+	    }
+	}
+	if { $i == "debug-dwarf" } {
+	    if [board_info $dest exists debug_dwarf_flags] {
+		append add_flags " [board_info $dest debug_dwarf_flags]"
+	    } else {
+		append add_flags " -gdwarf-2"
+	    }
+	}
+	if { $i == "class" } {
+	    if [board_info $dest exists pascal_class_flags] {
+		append add_flags " [board_info $dest pscal_class_flags]"
+	    } else {
+		append add_flags " --extended-syntax"
+	    }
+	}
     }
 
     set result [remote_exec host $gpc_compiler "-o $dest --automake