X-Original-To: alpine-aports@lists.alpinelinux.org Received: from out3-smtp.messagingengine.com (out3-smtp.messagingengine.com [66.111.4.27]) by lists.alpinelinux.org (Postfix) with ESMTP id CE89E5C5834 for ; Thu, 21 Dec 2017 20:11:55 +0000 (GMT) Received: from compute4.internal (compute4.nyi.internal [10.202.2.44]) by mailout.nyi.internal (Postfix) with ESMTP id A81F820C58; Thu, 21 Dec 2017 15:11:55 -0500 (EST) Received: from frontend2 ([10.202.2.161]) by compute4.internal (MEProxy); Thu, 21 Dec 2017 15:11:55 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=lochnair.net; h= cc:date:from:in-reply-to:message-id:references:subject:to :x-me-sender:x-me-sender:x-sasl-enc; s=mesmtp; bh=3bF0bBo1iO3lVC ALTnA50KXL7cJUnqQb7JWF++17jUQ=; b=TnulUmHzP6vdy1B0yQv5rZL31rinji wVStRK1cwD9bFuRyCsffir9LjJ+pi9ejcNfZ15MGELv+Eh9BhhPuiWLQ2+iKkzFn wDM9mJVRI9aFJ+58h0Gff6oQqNu/TqZIq97s02fOmzLjeYPGOyjA9HwFWSABMPfZ 03bdi6byjGlyE= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:date:from:in-reply-to:message-id :references:subject:to:x-me-sender:x-me-sender:x-sasl-enc; s= fm1; bh=3bF0bBo1iO3lVCALTnA50KXL7cJUnqQb7JWF++17jUQ=; b=nlrxpgUp Q9rNt/moRkNroA+XN0P2Ne9GIUba20nhMQotk7/N9YKHXQIGgfcBeztP41fU2icF d2uQVj9ruJnA7fNBR3yvTPPlGnzYXJDOvI3HPhKpIbybnlutNnt6oU/wwks3YeCr JLfXMlokJeHqVTocmkrJPqJ9Y7MGgl8OcJPjPkJtukI9ifN+Sq6GYIKyZZI3/ixW lOCHBjeW3mcJLf1UllmIDsFJ+eKtHB4Q8cXD+tJ9IS03plu+Kaj/OtfUKn8BU/V2 DKfk/CbD9lPUd+NVTooobLQzvOGsFe/a2sbG6+cn9hXHN2H/Z/eADijd6HrILWsF FFzP+dJjS3rs4w== X-ME-Sender: Received: from halyard.svee.in (77.18.132.45.tmi.telenormobil.no [77.18.132.45]) by mail.messagingengine.com (Postfix) with ESMTPA id 766C6240DF; Thu, 21 Dec 2017 15:11:54 -0500 (EST) From: Nils Andreas Svee To: alpine-aports@lists.alpinelinux.org Cc: Nils Andreas Svee Subject: [alpine-aports] [PATCH 3/3] main/gcc: ada mips64 support, and fix error caused by the pure64 patch Date: Thu, 21 Dec 2017 21:11:41 +0100 Message-Id: <20171221201141.22387-3-me@lochnair.net> X-Mailer: git-send-email 2.15.1 In-Reply-To: <20171221201141.22387-1-me@lochnair.net> References: <20171221201141.22387-1-me@lochnair.net> X-Mailinglist: alpine-aports Precedence: list List-Id: Alpine Development List-Unsubscribe: List-Post: List-Help: List-Subscribe: --- main/gcc/APKBUILD | 4 +- main/gcc/ada-mips64.patch | 224 ++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 227 insertions(+), 1 deletion(-) create mode 100644 main/gcc/ada-mips64.patch diff --git a/main/gcc/APKBUILD b/main/gcc/APKBUILD index 5386f595dd..68776c0564 100644 --- a/main/gcc/APKBUILD +++ b/main/gcc/APKBUILD @@ -188,6 +188,7 @@ source="ftp://gcc.gnu.org/pub/gcc/releases/gcc-${_pkgbase:-$pkgver}/gcc-${_pkgba fix-rs6000-pie.patch fix-linux-header-use-in-libgcc.patch gcc-pure64-mips.patch + ada-mips64.patch " # we build out-of-tree @@ -639,4 +640,5 @@ fa44c8158111627aa0e91c43e7cc3aa38642c2041c96532dd4f0932dae4d6f92ea2850b683abcf10 f4ef08454e28c8732db69115e4998ec153399e8d229dd27f923dbdcf57b68128a65640d026cc7f45b58ba8764ab1eb575d4eb6d6dfc550a87a183f8b94e76181 320-libffi-gnulinux.patch 01c71cd5881fc07ea3b9b980697e89b3ca0fe98502958ceafc3fca18b2604c844e2f457feab711baf8e03f00a5383b0e38aac7eb954034e306f43d4a37f165ed fix-rs6000-pie.patch 34a818d5be67eb1f34e44a80b83c28a9b9c17d37fc9fac639f490d6bb5b53ebe3318140d09c236a17d7c98f5a7792ae3d6cefccda8067a5e942d6305b9d1f87c fix-linux-header-use-in-libgcc.patch -86be3338cc9c33089608bc4c5e3b7918c4e500a345c338f361b18c342119a6ed69af5495d72950de7106d760f003528b46ad14795e805f8a3331e206dcb234e3 gcc-pure64-mips.patch" +86be3338cc9c33089608bc4c5e3b7918c4e500a345c338f361b18c342119a6ed69af5495d72950de7106d760f003528b46ad14795e805f8a3331e206dcb234e3 gcc-pure64-mips.patch +f09273975f76f98967ebbc2e9c61d7c720fdc5b220bf90a6eb31a040539422cf76069945f186e0996ba3cc2556031170a073a32fd9d78b5326ad5d250d7a26e8 ada-mips64.patch" diff --git a/main/gcc/ada-mips64.patch b/main/gcc/ada-mips64.patch new file mode 100644 index 0000000000..fe944b2949 --- /dev/null +++ b/main/gcc/ada-mips64.patch @@ -0,0 +1,224 @@ +From 5bbd6ca3755e2a199de98d2b270d8a6f616aa6a6 Mon Sep 17 00:00:00 2001 +From: Nils Andreas Svee +Date: Thu, 21 Dec 2017 16:46:12 +0100 +Subject: [PATCH] ada-mips64 + +--- + gcc/ada/gcc-interface/Makefile.in | 29 ++++++-- + gcc/ada/system-linux-mips64.ads | 147 ++++++++++++++++++++++++++++++++++++++ + 2 files changed, 171 insertions(+), 5 deletions(-) + create mode 100644 gcc/ada/system-linux-mips64.ads + +diff --git a/gcc/ada/gcc-interface/Makefile.in b/gcc/ada/gcc-interface/Makefile.in +index 598b262d9..1844a6962 100644 +--- a/gcc/ada/gcc-interface/Makefile.in ++++ b/gcc/ada/gcc-interface/Makefile.in +@@ -1854,9 +1854,9 @@ ifeq ($(strip $(filter-out cygwin% mingw32% pe,$(target_os))),) + LIBRARY_VERSION := $(LIB_VERSION) + endif + +-# Mips Linux +-ifeq ($(strip $(filter-out mips linux%,$(target_cpu) $(target_os))),) +- LIBGNAT_TARGET_PAIRS = \ ++# Mips and Mips64 Linux ++ifeq ($(strip $(filter-out mips mips64 linux%,$(target_cpu) $(target_os))),) ++ LIBGNAT_TARGET_PAIRS_COMMON = \ + a-intnam.ads. -- ++-- -- ++-- GNAT was originally developed by the GNAT team at New York University. -- ++-- Extensive contributions were provided by Ada Core Technologies Inc. -- ++-- -- ++------------------------------------------------------------------------------ ++ ++package System is ++ pragma Pure; ++ -- Note that we take advantage of the implementation permission to make ++ -- this unit Pure instead of Preelaborable; see RM 13.7.1(15). In Ada ++ -- 2005, this is Pure in any case (AI-362). ++ ++ pragma No_Elaboration_Code_All; ++ -- Allow the use of that restriction in units that WITH this unit ++ ++ type Name is (SYSTEM_NAME_GNAT); ++ System_Name : constant Name := SYSTEM_NAME_GNAT; ++ ++ -- System-Dependent Named Numbers ++ ++ Min_Int : constant := Long_Long_Integer'First; ++ Max_Int : constant := Long_Long_Integer'Last; ++ ++ Max_Binary_Modulus : constant := 2 ** Long_Long_Integer'Size; ++ Max_Nonbinary_Modulus : constant := Integer'Last; ++ ++ Max_Base_Digits : constant := Long_Long_Float'Digits; ++ Max_Digits : constant := Long_Long_Float'Digits; ++ ++ Max_Mantissa : constant := 63; ++ Fine_Delta : constant := 2.0 ** (-Max_Mantissa); ++ ++ Tick : constant := 0.000_001; ++ ++ -- Storage-related Declarations ++ ++ type Address is private; ++ pragma Preelaborable_Initialization (Address); ++ Null_Address : constant Address; ++ ++ Storage_Unit : constant := 8; ++ Word_Size : constant := 64; ++ Memory_Size : constant := 2 ** 64; ++ ++ -- Address comparison ++ ++ function "<" (Left, Right : Address) return Boolean; ++ function "<=" (Left, Right : Address) return Boolean; ++ function ">" (Left, Right : Address) return Boolean; ++ function ">=" (Left, Right : Address) return Boolean; ++ function "=" (Left, Right : Address) return Boolean; ++ ++ pragma Import (Intrinsic, "<"); ++ pragma Import (Intrinsic, "<="); ++ pragma Import (Intrinsic, ">"); ++ pragma Import (Intrinsic, ">="); ++ pragma Import (Intrinsic, "="); ++ ++ -- Other System-Dependent Declarations ++ ++ type Bit_Order is (High_Order_First, Low_Order_First); ++ Default_Bit_Order : constant Bit_Order := High_Order_First; ++ pragma Warnings (Off, Default_Bit_Order); -- kill constant condition warning ++ ++ -- Priority-related Declarations (RM D.1) ++ ++ Max_Priority : constant Positive := 30; ++ Max_Interrupt_Priority : constant Positive := 31; ++ ++ subtype Any_Priority is Integer range 0 .. 31; ++ subtype Priority is Any_Priority range 0 .. 30; ++ subtype Interrupt_Priority is Any_Priority range 31 .. 31; ++ ++ Default_Priority : constant Priority := 15; ++ ++private ++ ++ type Address is mod Memory_Size; ++ Null_Address : constant Address := 0; ++ ++ -------------------------------------- ++ -- System Implementation Parameters -- ++ -------------------------------------- ++ ++ -- These parameters provide information about the target that is used ++ -- by the compiler. They are in the private part of System, where they ++ -- can be accessed using the special circuitry in the Targparm unit ++ -- whose source should be consulted for more detailed descriptions ++ -- of the individual switch values. ++ ++ Backend_Divide_Checks : constant Boolean := False; ++ Backend_Overflow_Checks : constant Boolean := True; ++ Command_Line_Args : constant Boolean := True; ++ Configurable_Run_Time : constant Boolean := False; ++ Denorm : constant Boolean := True; ++ Duration_32_Bits : constant Boolean := False; ++ Exit_Status_Supported : constant Boolean := True; ++ Fractional_Fixed_Ops : constant Boolean := False; ++ Frontend_Layout : constant Boolean := False; ++ Machine_Overflows : constant Boolean := False; ++ Machine_Rounds : constant Boolean := True; ++ Preallocated_Stacks : constant Boolean := False; ++ Signed_Zeros : constant Boolean := True; ++ Stack_Check_Default : constant Boolean := False; ++ Stack_Check_Probes : constant Boolean := True; ++ Stack_Check_Limits : constant Boolean := False; ++ Support_Aggregates : constant Boolean := True; ++ Support_Composite_Assign : constant Boolean := True; ++ Support_Composite_Compare : constant Boolean := True; ++ Support_Long_Shifts : constant Boolean := True; ++ Always_Compatible_Rep : constant Boolean := False; ++ Suppress_Standard_Library : constant Boolean := False; ++ Use_Ada_Main_Program_Name : constant Boolean := False; ++ Frontend_Exceptions : constant Boolean := False; ++ ZCX_By_Default : constant Boolean := True; ++ ++end System; +-- +2.15.1 + -- 2.15.1 --- Unsubscribe: alpine-aports+unsubscribe@lists.alpinelinux.org Help: alpine-aports+help@lists.alpinelinux.org ---