[gcc-6] 95/401: patches/ada-hurd.diff: Update

Ximin Luo infinity0 at debian.org
Wed Apr 5 15:48:07 UTC 2017


This is an automated email from the git hooks/post-receive script.

infinity0 pushed a commit to branch pu/reproducible_builds
in repository gcc-6.

commit b78994153d111bfe982e093af58e82fb94dcbae0
Author: sthibault <sthibault at 6ca36cf4-e1d1-0310-8c6f-e303bb2178ca>
Date:   Sat Feb 27 21:52:18 2016 +0000

    patches/ada-hurd.diff: Update
    
    git-svn-id: svn://anonscm.debian.org/gcccvs/branches/sid/gcc-6@8701 6ca36cf4-e1d1-0310-8c6f-e303bb2178ca
---
 debian/changelog             |   5 +-
 debian/patches/ada-hurd.diff | 184 +++++++++++++++++++++++++++++++++++++++++--
 2 files changed, 178 insertions(+), 11 deletions(-)

diff --git a/debian/changelog b/debian/changelog
index f60c4c9..db399b3 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -2,9 +2,8 @@ gcc-6 (6-20160225-2) UNRELEASED; urgency=medium
 
   * libgo: Port syscall.SetsockoptUcred from golang (Michael Vogt).
 
-  [ Samuel Thibault ]
-  * ada-hurd.diff: Make pthread_mutexattr_setprotocol/prioceiling return 0
-    like on android, they are not actually implemented.
+  [ Svante Signell ]
+  * patches/ada-hurd.diff: Update.
 
  -- Matthias Klose <doko at debian.org>  Thu, 25 Feb 2016 20:43:06 +0100
 
diff --git a/debian/patches/ada-hurd.diff b/debian/patches/ada-hurd.diff
index 9037a1d..fa57671 100644
--- a/debian/patches/ada-hurd.diff
+++ b/debian/patches/ada-hurd.diff
@@ -1,8 +1,160 @@
+Index: b/src/gcc/ada/s-osinte-gnu.adb
+===================================================================
+--- /dev/null
++++ b/src/gcc/ada/s-osinte-gnu.adb
+@@ -0,0 +1,147 @@
++------------------------------------------------------------------------------
++--                                                                          --
++--                 GNAT RUN-TIME LIBRARY (GNARL) COMPONENTS                 --
++--                                                                          --
++--                   S Y S T E M . O S _ I N T E R F A C E                  --
++--                                                                          --
++--                                   B o d y                                --
++--                                                                          --
++--             Copyright (C) 1991-1994, Florida State University            --
++--                     Copyright (C) 1995-2006, AdaCore                     --
++--                                                                          --
++-- GNARL 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- --
++-- ware  Foundation;  either version 2,  or (at your option) any later ver- --
++-- sion. GNARL is distributed in the hope that it will be useful, but WITH- --
++-- OUT ANY WARRANTY;  without even the  implied warranty of MERCHANTABILITY --
++-- or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License --
++-- for  more details.  You should have  received  a copy of the GNU General --
++-- Public License  distributed with GNARL; see file COPYING.  If not, write --
++-- to  the  Free Software Foundation,  51  Franklin  Street,  Fifth  Floor, --
++-- Boston, MA 02110-1301, USA.                                              --
++--                                                                          --
++-- As a special exception,  if other files  instantiate  generics from this --
++-- unit, or you link  this unit with other files  to produce an executable, --
++-- this  unit  does not  by itself cause  the resulting  executable  to  be --
++-- covered  by the  GNU  General  Public  License.  This exception does not --
++-- however invalidate  any other reasons why  the executable file  might be --
++-- covered by the  GNU Public License.                                      --
++--                                                                          --
++-- GNARL was developed by the GNARL team at Florida State University.       --
++-- Extensive contributions were provided by Ada Core Technologies, Inc.     --
++--                                                                          --
++------------------------------------------------------------------------------
++
++--  This is the GNU/Hurd version of this package.
++
++pragma Polling (Off);
++--  Turn off polling, we do not want ATC polling to take place during
++--  tasking operations. It causes infinite loops and other problems.
++
++--  This package encapsulates all direct interfaces to OS services
++--  that are needed by children of System.
++
++package body System.OS_Interface is
++
++   --------------------
++   -- Get_Stack_Base --
++   --------------------
++
++   function Get_Stack_Base (thread : pthread_t) return Address is
++      pragma Warnings (Off, thread);
++
++   begin
++      return Null_Address;
++   end Get_Stack_Base;
++
++   ------------------
++   -- pthread_init --
++   ------------------
++
++   procedure pthread_init is
++   begin
++      null;
++   end pthread_init;
++
++   --------------------------------------
++   -- pthread_mutexattr_setprioceiling --
++   --------------------------------------
++
++   function pthread_mutexattr_setprioceiling
++     (attr     : access pthread_mutexattr_t;
++      prioceiling : int) return int is
++      pragma Unreferenced (attr, prioceiling);
++   begin
++      return 0;
++   end pthread_mutexattr_setprioceiling;
++
++   --------------------------------------
++   -- pthread_mutexattr_getprioceiling --
++   --------------------------------------
++
++   function pthread_mutexattr_getprioceiling
++     (attr     : access pthread_mutexattr_t;
++      prioceiling : access int) return int is
++      pragma Unreferenced (attr, prioceiling);
++   begin
++      return 0;
++   end pthread_mutexattr_getprioceiling;
++
++   ---------------------------
++   -- pthread_setschedparam --
++   ---------------------------
++
++   function pthread_setschedparam
++     (thread : pthread_t;
++      policy : int;
++      param : access struct_sched_param) return int is
++      pragma Unreferenced (thread, policy, param);
++   begin
++      return 0;
++   end pthread_setschedparam;
++
++   -----------------
++   -- To_Duration --
++   -----------------
++
++   function To_Duration (TS : timespec) return Duration is
++   begin
++      return Duration (TS.tv_sec) + Duration (TS.tv_nsec) / 10#1#E9;
++   end To_Duration;
++
++   ------------------------
++   -- To_Target_Priority --
++   ------------------------
++
++   function To_Target_Priority
++     (Prio : System.Any_Priority) return Interfaces.C.int
++   is
++   begin
++      return Interfaces.C.int (Prio);
++   end To_Target_Priority;
++
++   -----------------
++   -- To_Timespec --
++   -----------------
++
++   function To_Timespec (D : Duration) return timespec is
++      S : time_t;
++      F : Duration;
++
++   begin
++      S := time_t (Long_Long_Integer (D));
++      F := D - Duration (S);
++
++      --  If F has negative value due to a round-up, adjust for positive F
++      --  value.
++
++      if F < 0.0 then
++         S := S - 1;
++         F := F + 1.0;
++      end if;
++
++      return timespec'(tv_sec => S,
++                       tv_nsec => long (Long_Long_Integer (F * 10#1#E9)));
++   end To_Timespec;
++
++end System.OS_Interface;
 Index: b/src/gcc/ada/s-osinte-gnu.ads
 ===================================================================
 --- /dev/null
 +++ b/src/gcc/ada/s-osinte-gnu.ads
-@@ -0,0 +1,785 @@
+@@ -0,0 +1,801 @@
 +------------------------------------------------------------------------------
 +--                                                                          --
 +--                GNU ADA RUN-TIME LIBRARY (GNARL) COMPONENTS               --
@@ -349,8 +501,9 @@ Index: b/src/gcc/ada/s-osinte-gnu.ads
 +   --  returns the stack base of the specified thread. Only call this function
 +   --  when Stack_Base_Available is True.
 +
-+   --  From: /usr/include/unistd.h __getpagesize or getpagesize??
-+   function Get_Page_Size return int;
++   --  From: /usr/include/i386-gnu/bits/shm.h __getpagesize or getpagesize??
++   function Get_Page_Size return size_t;
++   function Get_Page_Size return Address;
 +   pragma Import (C, Get_Page_Size, "__getpagesize");
 +   --  Returns the size of a page
 +
@@ -503,14 +656,30 @@ Index: b/src/gcc/ada/s-osinte-gnu.ads
 +   PTHREAD_PRIO_PROTECT : constant := 2;
 +   PTHREAD_PRIO_INHERIT : constant := 1;
 +
++   --  GNU/Hurd does not support Thread Priority Protection or Thread
++   --  Priority Inheritance and lacks some pthread_mutexattr_* functions.
++   --  Replace them with dummy versions.
 +   --  From: /usr/include/pthread/pthread.h
++
 +   function pthread_mutexattr_setprotocol
 +     (attr     : access pthread_mutexattr_t;
-+      protocol : int) return int is (0);
++      protocol : int) return int;
++   pragma Import (C, pthread_mutexattr_setprotocol,
++     "pthread_mutexattr_setprotocol");
++
++   function pthread_mutexattr_getprotocol
++     (attr     : access pthread_mutexattr_t;
++      protocol : access int) return int;
++   pragma Import (C, pthread_mutexattr_getprotocol,
++     "pthread_mutexattr_getprotocol");
 +
 +   function pthread_mutexattr_setprioceiling
 +     (attr     : access pthread_mutexattr_t;
-+      prioceiling : int) return int is (0);
++      prioceiling : int) return int;
++
++   function pthread_mutexattr_getprioceiling
++     (attr     : access pthread_mutexattr_t;
++      prioceiling : access int) return int;
 +
 +   type struct_sched_param is record
 +      sched_priority : int;  --  scheduling priority
@@ -521,7 +690,6 @@ Index: b/src/gcc/ada/s-osinte-gnu.ads
 +     (thread : pthread_t;
 +      policy : int;
 +      param  : access struct_sched_param) return int;
-+   pragma Import (C, pthread_setschedparam, "pthread_setschedparam");
 +
 +   function pthread_attr_setscope
 +     (attr            : access pthread_attr_t;
@@ -792,7 +960,7 @@ Index: b/src/gcc/ada/gcc-interface/Makefile.in
 ===================================================================
 --- a/src/gcc/ada/gcc-interface/Makefile.in
 +++ b/src/gcc/ada/gcc-interface/Makefile.in
-@@ -1421,6 +1421,35 @@ ifeq ($(strip $(filter-out %86 kfreebsd%
+@@ -1390,6 +1390,35 @@ ifeq ($(strip $(filter-out %86 kfreebsd%
    MISCLIB = -lutil
  endif
  
@@ -802,7 +970,7 @@ Index: b/src/gcc/ada/gcc-interface/Makefile.in
 +  a-intnam.ads<a-intnam-freebsd.ads \
 +  s-inmaop.adb<s-inmaop-posix.adb \
 +  s-intman.adb<s-intman-posix.adb \
-+  s-osinte.adb<s-osinte-posix.adb \
++  s-osinte.adb<s-osinte-gnu.adb \
 +  s-osinte.ads<s-osinte-gnu.ads \
 +  s-osprim.adb<s-osprim-posix.adb \
 +  s-taprop.adb<s-taprop-posix.adb \

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/reproducible/gcc-6.git



More information about the Reproducible-commits mailing list