OSDN Git Service

2007-04-20 Vincent Celier <celier@adacore.com>
authorcharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 6 Jun 2007 10:50:04 +0000 (10:50 +0000)
committercharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 6 Jun 2007 10:50:04 +0000 (10:50 +0000)
* 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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@125470 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ada/switch-b.adb
gcc/ada/switch-m.adb

index ee8ac6a..3869d84 100644 (file)
@@ -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 '-' =>
index a923960..7c7259d 100644 (file)
@@ -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;