Your message dated Tue, 28 Jun 2005 01:55:13 +0200 with message-id <[EMAIL PROTECTED]> and subject line fixed gcc-4.0 reports has caused the attached Bug report to be marked as done.
This means that you claim that the problem has been dealt with. If this is not the case it is now your responsibility to reopen the Bug report if necessary, and/or fix the problem forthwith. (NB: If you are a system administrator and have no idea what I am talking about this indicates a serious mail system misconfiguration somewhere. Please contact me immediately.) Debian bug tracking system administrator (administrator, Debian Bugs database) -------------------------------------- Received: (at submit) by bugs.debian.org; 13 May 2005 12:24:09 +0000 >From [EMAIL PROTECTED] Fri May 13 05:24:09 2005 Return-path: <[EMAIL PROTECTED]> Received: from c211008.adsl.hansenet.de (localhost.localdomain) [213.39.211.8] by spohr.debian.org with esmtp (Exim 3.35 1 (Debian)) id 1DWZD6-0002Kj-00; Fri, 13 May 2005 05:24:08 -0700 Received: from aj by localhost.localdomain with local (Exim 4.50) id 1DWZD0-0001D2-RP; Fri, 13 May 2005 14:24:02 +0200 To: Debian Bug Tracking System <[EMAIL PROTECTED]> From: Andreas Jochens <[EMAIL PROTECTED]> Subject: gcc-4.0: Please add Ada support for the ppc64 architecture Message-Id: <[EMAIL PROTECTED]> Date: Fri, 13 May 2005 14:24:02 +0200 Delivered-To: [EMAIL PROTECTED] X-Spam-Checker-Version: SpamAssassin 2.60-bugs.debian.org_2005_01_02 (1.212-2003-09-23-exp) on spohr.debian.org X-Spam-Status: No, hits=-7.0 required=4.0 tests=BAYES_01,HAS_PACKAGE autolearn=no version=2.60-bugs.debian.org_2005_01_02 X-Spam-Level: Package: gcc-4.0 Severity: wishlist Tags: patch The attached patch makes Ada work on the ppc64 architecture. The patch changes the following: * debian/patches/ppc64-ada.dpatch - Add gcc/ada/system-linux-ppc64.ads, which has been copied from gcc/ada/system-linux-ppc.ads and changed to use 'Word_Size' 64 instead of 32. - gcc/ada/Makefile.in: Use gcc/ada/system-linux-ppc64.ads on powerpc64. * debian/rules.patch - Use ppc64-ada patch on ppc64. * debian/rules.d/binary-ada.mk Place the symlinks libgnat.so, libgnat-4.0.so, libgnarl.so, libgnarl-4.0.so in '/usr/lib' instead of '/usr/lib/gcc/powerpc64-linux/4.0.1/adalib'. The files libgnat-4.0.so.1 and libgnarl-4.0.so.1, where these symlinks point to, are already in '/usr/lib'. Without this change, it would not be possible to just specify '-lgnat' to link an Ada program. Instead, an additional ugly architecture-specific and gcc-version-specific linker option would have to be specified, e.g. '-L/usr/lib/gcc/powerpc64-linux/4.0.1/adalib'. This patch has been used for quite a while by the ppc64/gcc4 archive on alioth. The resulting gnat-4.0 compiler compiles itself without problems. It also compiles almost all Debian Ada source packages when the (Build-)Depends are changed to allow building with gnat-4.0 and the Architecture lines are changed to 'any'. Regards Andreas Jochens diff -urN ../tmp-orig/gcc-4.0-4.0.0/debian/patches/ppc64-ada.dpatch ./debian/patches/ppc64-ada.dpatch --- ../tmp-orig/gcc-4.0-4.0.0/debian/patches/ppc64-ada.dpatch 1970-01-01 01:00:00.000000000 +0100 +++ ./debian/patches/ppc64-ada.dpatch 2005-05-08 09:23:23.000000000 +0200 @@ -0,0 +1,259 @@ +#! /bin/sh -e + +# DP: Add gcc/ada/system-linux-ppc64.ads and use it in gcc/ada/Makefile.in +# DP: + +dir= +if [ $# -eq 3 -a "$2" = '-d' ]; then + pdir="-d $3" + dir="$3/" +elif [ $# -ne 1 ]; then + echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" + exit 1 +fi +case "$1" in + -patch) + patch $pdir -f --no-backup-if-mismatch -p1 < $0 + #cd ${dir}gcc && autoconf + ;; + -unpatch) + patch $pdir -f --no-backup-if-mismatch -R -p1 < $0 + #rm ${dir}gcc/configure + ;; + *) + echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" + exit 1 +esac +exit 0 + +diff -urN src.orig/gcc/ada/Makefile.in src/gcc/ada/Makefile.in +--- src.orig/gcc/ada/Makefile.in 2005-05-02 16:39:32.000000000 +0200 ++++ src/gcc/ada/Makefile.in 2005-05-02 16:36:37.000000000 +0200 +@@ -1346,6 +1346,31 @@ + LIBRARY_VERSION := $(LIB_VERSION) + endif + ++ifeq ($(strip $(filter-out powerpc64% linux%,$(arch) $(osys))),) ++ LIBGNAT_TARGET_PAIRS = \ ++ a-intnam.ads<a-intnam-linux.ads \ ++ s-inmaop.adb<s-inmaop-posix.adb \ ++ s-intman.adb<s-intman-posix.adb \ ++ s-osinte.adb<s-osinte-posix.adb \ ++ s-osinte.ads<s-osinte-linux.ads \ ++ s-osprim.adb<s-osprim-posix.adb \ ++ s-taprop.adb<s-taprop-linux.adb \ ++ s-taspri.ads<s-taspri-linux.ads \ ++ s-tpopsp.adb<s-tpopsp-posix-foreign.adb \ ++ s-parame.adb<s-parame-linux.adb \ ++ system.ads<system-linux-ppc64.ads ++ ++ TOOLS_TARGET_PAIRS = \ ++ mlib-tgt.adb<mlib-tgt-linux.adb \ ++ indepsw.adb<indepsw-linux.adb ++ ++ THREADSLIB = -lpthread ++ GNATLIB_SHARED = gnatlib-shared-dual ++ GMEM_LIB = gmemlib ++ PREFIX_OBJS = $(PREFIX_REAL_OBJS) ++ LIBRARY_VERSION := $(LIB_VERSION) ++endif ++ + ifeq ($(strip $(filter-out sparc% linux%,$(arch) $(osys))),) + LIBGNAT_TARGET_PAIRS = \ + a-intnam.ads<a-intnam-linux.ads \ +diff -urN src.orig/gcc/ada/system-linux-ppc64.ads src/gcc/ada/system-linux-ppc64.ads +--- src.orig/gcc/ada/system-linux-ppc64.ads 1970-01-01 01:00:00.000000000 +0100 ++++ src/gcc/ada/system-linux-ppc64.ads 2005-05-02 16:33:38.000000000 +0200 +@@ -0,0 +1,151 @@ ++------------------------------------------------------------------------------ ++-- -- ++-- GNAT RUN-TIME COMPONENTS -- ++-- -- ++-- S Y S T E M -- ++-- -- ++-- S p e c -- ++-- (GNU-Linux/PPC64 Version) -- ++-- -- ++-- Copyright (C) 1992-2004 Free Software Foundation, Inc. -- ++-- -- ++-- This specification is derived from the Ada Reference Manual for use with -- ++-- GNAT. The copyright notice above, and the license provisions that follow -- ++-- apply solely to the contents of the part following the private keyword. -- ++-- -- ++-- GNAT 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. GNAT 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 GNAT; see file COPYING. If not, write -- ++-- to the Free Software Foundation, 59 Temple Place - Suite 330, Boston, -- ++-- MA 02111-1307, 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. -- ++-- -- ++-- 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 (System); ++-- Note that we take advantage of the implementation permission to ++-- make this unit Pure instead of Preelaborable, see RM 13.7(36) ++ ++ 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; ++ 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; ++ ++ -- 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. ++ ++ AAMP : constant Boolean := False; ++ Backend_Divide_Checks : constant Boolean := False; ++ Backend_Overflow_Checks : constant Boolean := False; ++ 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; ++ Functions_Return_By_DSP : constant Boolean := False; ++ Machine_Overflows : constant Boolean := False; ++ Machine_Rounds : constant Boolean := True; ++ OpenVMS : constant Boolean := False; ++ Preallocated_Stacks : constant Boolean := False; ++ Signed_Zeros : constant Boolean := True; ++ Stack_Check_Default : constant Boolean := False; ++ Stack_Check_Probes : constant Boolean := False; ++ Support_64_Bit_Divides : constant Boolean := True; ++ Support_Aggregates : constant Boolean := True; ++ Support_Composite_Assign : constant Boolean := True; ++ Support_Composite_Compare : constant Boolean := True; ++ Support_Long_Shifts : constant Boolean := True; ++ Suppress_Standard_Library : constant Boolean := False; ++ Use_Ada_Main_Program_Name : constant Boolean := False; ++ ZCX_By_Default : constant Boolean := True; ++ GCC_ZCX_Support : constant Boolean := True; ++ Front_End_ZCX_Support : constant Boolean := False; ++ ++ -- Obsolete entries, to be removed eventually (bootstrap issues!) ++ ++ High_Integrity_Mode : constant Boolean := False; ++ Long_Shifts_Inlined : constant Boolean := True; ++ ++end System; +diff -urN tmp/gcc/ada/s-auxdec.ads src/gcc/ada/s-auxdec.ads +--- tmp/gcc/ada/s-auxdec.ads 2004-06-11 12:47:36.000000000 +0200 ++++ src/gcc/ada/s-auxdec.ads 2005-05-03 11:34:17.000000000 +0200 +@@ -108,13 +108,13 @@ + pragma Warnings (Off); + + type F_Float is digits 6; +- pragma Float_Representation (VAX_Float, F_Float); ++-- pragma Float_Representation (VAX_Float, F_Float); + + type D_Float is digits 9; +- pragma Float_Representation (Vax_Float, D_Float); ++-- pragma Float_Representation (Vax_Float, D_Float); + + type G_Float is digits 15; +- pragma Float_Representation (Vax_Float, G_Float); ++-- pragma Float_Representation (Vax_Float, G_Float); + + -- Floating point type declarations for IEEE floating point data types + +--- tmp/gcc/ada/s-vaflop.ads 2003-10-21 15:42:18.000000000 +0200 ++++ src/gcc/ada/s-vaflop.ads 2005-05-03 15:24:24.000000000 +0200 +@@ -40,15 +40,15 @@ + -- Suppress warnings if not on Alpha/VAX + + type D is digits 9; +- pragma Float_Representation (VAX_Float, D); ++-- pragma Float_Representation (VAX_Float, D); + -- D Float type on Vax + + type G is digits 15; +- pragma Float_Representation (VAX_Float, G); ++-- pragma Float_Representation (VAX_Float, G); + -- G Float type on Vax + + type F is digits 6; +- pragma Float_Representation (VAX_Float, F); ++-- pragma Float_Representation (VAX_Float, F); + -- F Float type on Vax + + type S is digits 6; diff -urN ../tmp-orig/gcc-4.0-4.0.0/debian/rules.patch ./debian/rules.patch --- ../tmp-orig/gcc-4.0-4.0.0/debian/rules.patch 2005-05-07 10:00:50.000000000 +0200 +++ ./debian/rules.patch 2005-05-07 10:17:38.000000000 +0200 @@ -69,7 +69,7 @@ debian_patches += amd64-biarch # amd64-multilib endif ifeq ($(DEB_TARGET_ARCH),ppc64) - debian_patches += ppc64-biarch + debian_patches += ppc64-biarch ppc64-ada endif ifeq ($(DEB_TARGET_GNU_CPU),alpha) diff -urN ../tmp-orig/gcc-4.0-4.0.0/debian/rules.d/binary-ada.mk ./debian/rules.d/binary-ada.mk --- ../tmp-orig/gcc-4.0-4.0.0/debian/rules.d/binary-ada.mk 2005-05-07 10:00:47.000000000 +0200 +++ ./debian/rules.d/binary-ada.mk 2005-05-07 10:17:37.000000000 +0200 @@ -106,8 +106,8 @@ for lib in lib{gnat,gnarl}; do \ vlib=$$lib-$(GNAT_SONAME); \ dh_link -p$(p_gnat) \ - /$(PF)/$(libdir)/$$vlib.so.1 /$(gcc_lib_dir)/adalib/$$vlib.so \ - /$(PF)/$(libdir)/$$vlib.so.1 /$(gcc_lib_dir)/adalib/$$lib.so; \ + /$(PF)/$(libdir)/$$vlib.so.1 /$(PF)/$(libdir)/$$vlib.so \ + /$(PF)/$(libdir)/$$vlib.so.1 /$(PF)/$(libdir)/$$lib.so; \ done endif debian/dh_doclink -p$(p_gnat) $(p_base) --------------------------------------- Received: (at 308948-done) by bugs.debian.org; 27 Jun 2005 23:55:19 +0000 >From [EMAIL PROTECTED] Mon Jun 27 16:55:19 2005 Return-path: <[EMAIL PROTECTED]> Received: from mail.cs.tu-berlin.de [130.149.17.13] (root) by spohr.debian.org with esmtp (Exim 3.35 1 (Debian)) id 1Dn3Re-0008FE-00; Mon, 27 Jun 2005 16:55:18 -0700 Received: from mailhost.cs.tu-berlin.de ([EMAIL PROTECTED] [130.149.17.13]) by mail.cs.tu-berlin.de (8.9.3p2/8.9.3) with ESMTP id BAA05467; Tue, 28 Jun 2005 01:55:16 +0200 (MEST) Received: from localhost (localhost [127.0.0.1]) by mailhost.cs.tu-berlin.de (Postfix) with ESMTP id E119EF2B9; Tue, 28 Jun 2005 01:55:15 +0200 (MEST) Received: from mailhost.cs.tu-berlin.de ([127.0.0.1]) by localhost (bueno [127.0.0.1]) (amavisd-new, port 10224) with ESMTP id 23854-28; Tue, 28 Jun 2005 01:55:14 +0200 (MEST) 11357 Received: from bolero.cs.tu-berlin.de (bolero.cs.tu-berlin.de [130.149.19.1]) by mailhost.cs.tu-berlin.de (Postfix) with ESMTP; Tue, 28 Jun 2005 01:55:14 +0200 (MEST) Received: (from [EMAIL PROTECTED]) by bolero.cs.tu-berlin.de (8.12.10+Sun/8.12.8/Submit) id j5RNtEhx027440; Tue, 28 Jun 2005 01:55:14 +0200 (MEST) From: Matthias Klose <[EMAIL PROTECTED]> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Message-ID: <[EMAIL PROTECTED]> Date: Tue, 28 Jun 2005 01:55:13 +0200 To: [EMAIL PROTECTED], [EMAIL PROTECTED] Subject: fixed gcc-4.0 reports X-Mailer: VM 7.17 under 21.4 (patch 17) "Jumbo Shrimp" XEmacs Lucid X-Virus-Scanned: by amavisd-new at cs.tu-berlin.de Delivered-To: [EMAIL PROTECTED] X-Spam-Checker-Version: SpamAssassin 2.60-bugs.debian.org_2005_01_02 (1.212-2003-09-23-exp) on spohr.debian.org X-Spam-Status: No, hits=-3.0 required=4.0 tests=BAYES_00 autolearn=no version=2.60-bugs.debian.org_2005_01_02 X-Spam-Level: X-CrossAssassin-Score: 2 fixed in 4.0.0-9. * Add Ada support for the ppc64 architecture (Andreas Jochens): * debian/patches/ppc64-ada.dpatch - Add gcc/ada/system-linux-ppc64.ads, which has been copied from gcc/ada/system-linux-ppc.ads and changed to use 'Word_Size' 64 instead of 32. - gcc/ada/Makefile.in: Use gcc/ada/system-linux-ppc64.ads on powerpc64. * debian/rules.patch - Use ppc64-ada patch on ppc64. * debian/rules.d/binary-ada.mk Place the symlinks libgnat.so, libgnat-4.0.so, libgnarl.so, libgnarl-4.0.so in '/usr/lib' instead of '<gcc_lib_dir>/adalib'. Closes: #308948. * Add libc6-dev-i386 as an alternative build dependency for amd64. Closes: #305690. -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]