]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
[multiple changes]
authorArnaud Charlet <charlet@gcc.gnu.org>
Thu, 3 Jan 2013 13:12:02 +0000 (14:12 +0100)
committerArnaud Charlet <charlet@gcc.gnu.org>
Thu, 3 Jan 2013 13:12:02 +0000 (14:12 +0100)
2013-01-03  Pascal Obry  <obry@adacore.com>

* prj-attr.adb, projects.texi, snames.ads-tmpl: Add package remote and
corresponding attibutes.

2013-01-03  Thomas Quinot  <quinot@adacore.com>

* exp_aggr.adb: Minor comment improvement.

From-SVN: r194852

gcc/ada/ChangeLog
gcc/ada/exp_aggr.adb
gcc/ada/prj-attr.adb
gcc/ada/projects.texi
gcc/ada/snames.ads-tmpl

index f7cf5b7d76d7792a89d0e85679d61b73be2e0fab..decde4a9f67b01ff68e07aa8115ecddea745c404 100644 (file)
@@ -1,3 +1,12 @@
+2013-01-03  Pascal Obry  <obry@adacore.com>
+
+       * prj-attr.adb, projects.texi, snames.ads-tmpl: Add package remote and
+       corresponding attibutes.
+
+2013-01-03  Thomas Quinot  <quinot@adacore.com>
+
+       * exp_aggr.adb: Minor comment improvement.
+
 2013-01-03  Hristian Kirtchev  <kirtchev@adacore.com>
 
        * aspects.adb, aspects.ads: Add Aspect_Abstract_State to all the
index 6a5eabebc267dc37badd32e75a8c11b25583f189..efadf4b96348483f00ab7859beabd2af669ba9c9 100644 (file)
@@ -4979,9 +4979,11 @@ package body Exp_Aggr is
       end if;
 
       --  Perform in-place expansion of aggregate in an object declaration.
-      --  Note: actions generated for the aggregate will be captured in a block
-      --  statement so that they can be transferred to freeze actions later
-      --  if there is an address clause for the object.
+      --  Note: actions generated for the aggregate will be captured in an
+      --  expression-with-actions statement so that they can be transferred
+      --  to freeze actions later if there is an address clause for the
+      --  object. (Note: we don't use a block statement because this would
+      --  cause generated freeze nodes to be elaborated in the wrong scope).
 
       --  Should document these individual tests ???
 
index f2af8379100b037ae406e08bb67443f827b43c11..05fec4861e4670e9dfba1131f2432187e1561aba 100644 (file)
@@ -361,6 +361,12 @@ package body Prj.Attr is
    "SVproject_subdir#" &
    "SVactive#" &
 
+   --  package Remote
+
+   "Premote#" &
+   "LVbuild_slaves#" &
+   "SVroot_dir#" &
+
    --  package Stack
 
    "Pstack#" &
index f3ecde9826f3af772cc9e5f18d4a5d1c9e2fac64..6bf1e0c7c208d7893539284073c503335923ffbe 100644 (file)
@@ -227,6 +227,7 @@ should contain the following code:
 * Avoid Duplication With Variables::
 * Naming Schemes::
 * Installation::
+* Distributed support::
 @end menu
 
 @c ---------------------------------------------
@@ -1077,6 +1078,53 @@ Subdirectory of @b{Prefix} where the generated project file is to be
 installed. Default is @b{share/gpr}.
 @end table
 
+@c ---------------------------------------------
+@node Distributed support
+@subsection Distributed support
+@c ---------------------------------------------
+
+@noindent
+For large projects the compilation time can become a limitation in
+the development cycle. To cope with that, GPRbuild supports
+distributed compilation.
+
+The following attributes can be defined in package @code{Remote}:
+
+@table @asis
+
+@item @b{Build_Slaves}
+@cindex @code{Build_Slaves}
+
+A list of string referencing the remote build slaves to use for the
+compilation phase. The format is:
+@code{[protocol://]name.domain[:port]}.
+
+Where @code{protocol} is one of:
+
+@table @asis
+
+@item rsync
+@cindex @code{rsync}
+
+The sources are copied using the external @code{rsync} tool.
+
+@item file
+
+The sources are accessed via a shared directory or mount point.
+
+@end table
+
+The default port used to communicate with @command{gprslave} is
+@code{8484}.
+
+@item @b{Root_Dir}:
+@cindex @code{Root_Dir}
+
+Root directory of the project's sources. The default value is the
+project's directory.
+
+@end table
+
 @c ---------------------------------------------
 @node Organizing Projects into Subsystems
 @section Organizing Projects into Subsystems
index 2968830f93f2ba6fff65acc98ff6902da855a90b..d350c707e00024cf1c6e2cd09647d984536c0e0d 100644 (file)
@@ -1193,6 +1193,7 @@ package Snames is
    Name_Archive_Suffix                     : constant Name_Id := N + $;
    Name_Binder                             : constant Name_Id := N + $;
    Name_Body_Suffix                        : constant Name_Id := N + $;
+   Name_Build_Slaves                       : constant Name_Id := N + $;
    Name_Builder                            : constant Name_Id := N + $;
    Name_Clean                              : constant Name_Id := N + $;
    Name_Compiler                           : constant Name_Id := N + $;
@@ -1308,8 +1309,10 @@ package Snames is
    Name_Project_Files                      : constant Name_Id := N + $;
    Name_Project_Path                       : constant Name_Id := N + $;
    Name_Project_Subdir                     : constant Name_Id := N + $;
+   Name_Remote                             : constant Name_Id := N + $;
    Name_Response_File_Format               : constant Name_Id := N + $;
    Name_Response_File_Switches             : constant Name_Id := N + $;
+   Name_Root_Dir                           : constant Name_Id := N + $;
    Name_Roots                              : constant Name_Id := N + $; -- GB
    Name_Required_Switches                  : constant Name_Id := N + $;
    Name_Run_Path_Option                    : constant Name_Id := N + $;