prj-env.adb (Set_Ada_Paths.Add.Recursive_Add): Do not add the object directories...
authorVincent Celier <celier@adacore.com>
Mon, 5 Sep 2005 07:56:15 +0000 (09:56 +0200)
committerArnaud Charlet <charlet@gcc.gnu.org>
Mon, 5 Sep 2005 07:56:15 +0000 (09:56 +0200)
2005-09-01  Vincent Celier  <celier@adacore.com>

* prj-env.adb (Set_Ada_Paths.Add.Recursive_Add): Do not add the object
directories of projects that have no Ada sources.

From-SVN: r103874

gcc/ada/prj-env.adb

index 811ee4cfa63bb4a40c09f7e9ebbc3aaa05a2fd2e..26fd99b7c94e19e6431261113f1b002b1a12f9eb 100644 (file)
@@ -32,7 +32,6 @@ with Prj.Com;  use Prj.Com;
 with Tempdir;
 
 with GNAT.Directory_Operations; use GNAT.Directory_Operations;
-with GNAT.OS_Lib;               use GNAT.OS_Lib;
 
 package body Prj.Env is
 
@@ -2138,9 +2137,15 @@ package body Prj.Env is
                            end if;
 
                         --  For a non-library project, add the object
-                        --  directory, if it is not a virtual project.
-
-                        elsif not Data.Virtual then
+                        --  directory, if it is not a virtual project, and
+                        --  if there are Ada sources. If there are no Ada
+                        --  sources, adding the object directory could
+                        --  disrupt the order of the object dirs in the path.
+
+                        elsif not Data.Virtual
+                          and then In_Tree.Projects.Table
+                                     (Project).Ada_Sources_Present
+                        then
                            Add_To_Object_Path
                              (Data.Object_Directory, In_Tree);
                         end if;