OSDN Git Service

2011-09-01 Vincent Celier <celier@adacore.com>
authorcharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 1 Sep 2011 13:37:13 +0000 (13:37 +0000)
committercharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 1 Sep 2011 13:37:13 +0000 (13:37 +0000)
* ug_words: Add /MULTI_UNIT_INDEX= -> -gnateI
* vms_data.ads: Add new VMS qualifier equivalent for -gnateInnn

2011-09-01  Nicolas Roche  <roche@adacore.com>

* adaint.c (__gnat_tmp_name): Don't use tmpnam function from the system
on VxWorks in kernel mode.

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

gcc/ada/ChangeLog
gcc/ada/adaint.c
gcc/ada/ug_words
gcc/ada/vms_data.ads

index 7a2516e..373f901 100644 (file)
@@ -1,3 +1,13 @@
+2011-09-01  Vincent Celier  <celier@adacore.com>
+
+       * ug_words: Add /MULTI_UNIT_INDEX= -> -gnateI
+       * vms_data.ads: Add new VMS qualifier equivalent for -gnateInnn
+
+2011-09-01  Nicolas Roche  <roche@adacore.com>
+
+       * adaint.c (__gnat_tmp_name): Don't use tmpnam function from the system
+       on VxWorks in kernel mode.
+
 2011-09-01  Jose Ruiz  <ruiz@adacore.com>
 
        * s-taprop-linux.adb (Create_Task, Set_Task_Affinity): Use the linux
index 26c6289..adc702a 100644 (file)
@@ -1240,6 +1240,23 @@ __gnat_tmp_name (char *tmp_filename)
     sprintf (tmp_filename, "%s/gnat-XXXXXX", tmpdir);
 
   close (mkstemp(tmp_filename));
+#elif defined (__vxworks) && !(defined (__RTP__) || defined (VTHREADS))
+  int             index;
+  char *          pos;
+  ushort_t        t;
+  static ushort_t seed = 0; /* used to generate unique name */
+
+  /* generate unique name */
+  strcpy (tmp_filename, "tmp");
+
+  /* fill up the name buffer from the last position */
+  index = 5;
+  pos = tmp_filename + strlen (tmp_filename) + index;
+  *pos = '\0';
+
+  seed++;
+  for (t = seed; 0 <= --index; t >>= 3)
+      *--pos = '0' + (t & 07);
 #else
   tmpnam (tmp_filename);
 #endif
index eb0a57b..d92b89c 100644 (file)
@@ -63,6 +63,7 @@ gcc -c          ^ GNAT COMPILE
 -gnateD         ^ /SYMBOL_PREPROCESSING
 -gnatef         ^ /FULL_PATH_IN_BRIEF_MESSAGES
 -gnateG         ^ /GENERATE_PROCESSED_SOURCE
+-gnateI         ^ /MULTI_UNIT_INDEX=
 -gnatem         ^ /MAPPING_FILE
 -gnatep         ^ /DATA_PREPROCESSING
 -gnateP         ^ /CATEGORIZATION_WARNINGS
@@ -229,3 +230,4 @@ stderr          ^ SYS$ERROR
 -O3             ^ /OPTIMIZE=INLINING
 -H32            ^ /32_MALLOC
 -H64            ^ /64_MALLOC
+-Wall           ^ /WARNINGS=ALL_GCC
index b742c69..1da9855 100644 (file)
@@ -1926,6 +1926,12 @@ package VMS_Data is
    --   When using a project file, GNAT MAKE creates a temporary mapping file
    --   and communicates it to the compiler using this switch.
 
+   S_GCC_Multi   : aliased constant S := "/MULTI_UNIT_INDEX=#"             &
+                                            "-gnateI#";
+   --        /MULTI_UNIT_INDEX=nnn
+   --
+   --   Specify the index of the unit to compile in a multi-unit source file.
+
    S_GCC_Mess    : aliased constant S := "/MESSAGES_PROJECT_FILE="         &
                                             "DEFAULT "                     &
                                                "-vP0 "                     &
@@ -3391,12 +3397,6 @@ package VMS_Data is
    --
    --   Inhibit all warning messages of the GCC back-end.
 
-   S_GCC_All_Back : aliased constant S := "/ALL_BACK_END_WARNINGS "        &
-                                            "-Wall";
-   --        /ALL_BACK_END_WARNINGS
-   --
-   --   Activate all warning messages of the GCC back-end.
-
    S_GCC_Wide    : aliased constant S := "/WIDE_CHARACTER_ENCODING="       &
                                              "BRACKETS "                   &
                                                 "-gnatWb "                 &
@@ -3585,6 +3585,7 @@ package VMS_Data is
                      S_GCC_Output  'Access,
                      S_GCC_Machine 'Access,
                      S_GCC_Mapping 'Access,
+                     S_GCC_Multi   'Access,
                      S_GCC_Mess    'Access,
                      S_GCC_Nesting 'Access,
                      S_GCC_Noadc   'Access,
@@ -3627,7 +3628,6 @@ package VMS_Data is
                      S_GCC_Wide    'Access,
                      S_GCC_WideX   'Access,
                      S_GCC_No_Back 'Access,
-                     S_GCC_All_Back'Access,
                      S_GCC_Xdebug  'Access,
                      S_GCC_Lxdebug 'Access,
                      S_GCC_Xref    'Access);