Emmanuel Briot wrote:
Later, I found out that generating a .gpr project file that
extends the top-level project file was the wrong approach. As
soon as a developer checks a file out of a lower-level project,
gnat find and gnat ls complain that a source file cannot belong to
two projects (one copy of the file is in the developer's view and
belongs to the generated, extending project, and another copy is
in the read-only baseline and belongs to the baseline project
which is not top-level), so navigation is again broken. So, I've
reverted to generating an Ada mode project path instead and it
seems to work like a charm, so far.
Something you can't do in GPS; Emacs to the rescue :).
Unless you look up "extends all" in the documentation for project
files :-)
Yes, I discovered that later. For other reasons, though, the Ada mode
project file works better; namely there seems to be a minor bug in our
environment whereby ADA_PROJECTS_PATH is not always set correctly
whereas ADA_OBJECTS_PATH is always OK.
Ludovic, you need to extend the project that contains the file you
are trying to override (not simply put it in the context of your
root extension).
That's not practically feasible. The only project file that is
practical for me to use and extend is the top-level one. Consider
that a developer might check out files from multiple sub-projects
in their view. The copies of the files in the view must hide those
in the multiple read-only directories, each belonging to a
separate project file.
--
Ludovic Brenta.
_______________________________________________
Emacs-ada-mode mailing list
[email protected]
http://host114.hostmonster.com/mailman/listinfo/emacs-ada-mode_stephe-leake.org