From c7f0bdd2f88d0182bf1d17dbe073754d08cb3ec3 Mon Sep 17 00:00:00 2001 From: Vincent Celier Date: Wed, 6 Jun 2007 12:50:04 +0200 Subject: [PATCH] switch-b.adb (Scan_Binder_Switches): Add processing for new switches -R and -Z 2007-04-20 Vincent Celier * switch-b.adb (Scan_Binder_Switches): Add processing for new switches -R and -Z * switch-m.adb (Normalize_Compiler_Switches): Do not record switch -E (Scan_Make_Switches): Recognize new switch -aP From-SVN: r125470 --- gcc/ada/switch-b.adb | 15 ++++++++++++++- gcc/ada/switch-m.adb | 16 +++++++++++++--- 2 files changed, 27 insertions(+), 4 deletions(-) diff --git a/gcc/ada/switch-b.adb b/gcc/ada/switch-b.adb index ee8ac6a2512..3869d8463f8 100644 --- a/gcc/ada/switch-b.adb +++ b/gcc/ada/switch-b.adb @@ -6,7 +6,7 @@ -- -- -- B o d y -- -- -- --- Copyright (C) 2001-2005, Free Software Foundation, Inc. -- +-- Copyright (C) 2001-2006, Free Software Foundation, Inc. -- -- -- -- GNAT is free software; you can redistribute it and/or modify it under -- -- terms of the GNU General Public License as published by the Free Soft- -- @@ -336,6 +336,13 @@ package body Switch.B is Ptr := Ptr + 1; List_Restrictions := True; + -- Processing for R switch + + when 'R' => + Ptr := Ptr + 1; + Check_Only := True; + List_Closure := True; + -- Processing for s switch when 's' => @@ -456,6 +463,12 @@ package body Switch.B is Ptr := Ptr + 1; No_Main_Subprogram := True; + -- Processing for Z switch + + when 'Z' => + Ptr := Ptr + 1; + Zero_Formatting := True; + -- Processing for --RTS when '-' => diff --git a/gcc/ada/switch-m.adb b/gcc/ada/switch-m.adb index a9239608b0a..7c7259d6b4b 100644 --- a/gcc/ada/switch-m.adb +++ b/gcc/ada/switch-m.adb @@ -6,7 +6,7 @@ -- -- -- B o d y -- -- -- --- Copyright (C) 2001-2006, Free Software Foundation, Inc. -- +-- Copyright (C) 2001-2007, Free Software Foundation, Inc. -- -- -- -- GNAT is free software; you can redistribute it and/or modify it under -- -- terms of the GNU General Public License as published by the Free Soft- -- @@ -27,6 +27,7 @@ with Debug; use Debug; with Osint; use Osint; with Opt; use Opt; +with Prj.Ext; use Prj.Ext; with Table; package body Switch.M is @@ -152,7 +153,7 @@ package body Switch.M is when False => -- All switches that don't start with -gnat stay as is, - -- except -v and -pg + -- except -v, -E and -pg if Switch_Chars = "-pg" then @@ -161,7 +162,10 @@ package body Switch.M is Add_Switch_Component ("-p"); - elsif C /= 'v' then + -- Do not take into account switches that are not transmitted + -- to gnat1 by the gcc driver. + + elsif C /= 'v' and then C /= 'E' then Add_Switch_Component (Switch_Chars); end if; @@ -516,6 +520,12 @@ package body Switch.M is if Switch_Chars = "--create-missing-dirs" then Setup_Projects := True; + elsif Switch_Chars'Length > 3 and then + Switch_Chars (Ptr .. Ptr + 1) = "aP" + then + Add_Search_Project_Directory + (Switch_Chars (Ptr + 2 .. Switch_Chars'Last)); + elsif C = 'v' and then Switch_Chars'Length = 3 then Ptr := Ptr + 1; Verbose_Mode := True;