Your message dated Thu, 01 Dec 2005 11:17:16 -0800 with message-id <[EMAIL PROTECTED]> and subject line Bug#341222: fixed in gcc-3.4 3.4.5-1 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; 29 Nov 2005 11:26:00 +0000 >From [EMAIL PROTECTED] Tue Nov 29 03:26:00 2005 Return-path: <[EMAIL PROTECTED]> Received: from farad.aurel32.net ([82.232.2.251]) by spohr.debian.org with esmtp (Exim 4.50) id 1Eh3cV-00083M-DB for [EMAIL PROTECTED]; Tue, 29 Nov 2005 03:26:00 -0800 Received: from hertz.aurel32.net ([2001:618:400:fc13:2e0:18ff:fea3:b80f]) by farad.aurel32.net with esmtps (TLS-1.0:RSA_AES_256_CBC_SHA:32) (Exim 4.50) id 1Eh3cU-0006Sl-0H; Tue, 29 Nov 2005 12:25:58 +0100 Received: from aurel32 by hertz.aurel32.net with local (Exim 4.60) (envelope-from <[EMAIL PROTECTED]>) id 1Eh3cT-00015g-Ob; Tue, 29 Nov 2005 12:25:57 +0100 Content-Type: multipart/mixed; boundary="===============1543998202==" MIME-Version: 1.0 From: Aurelien Jarno <[EMAIL PROTECTED]> To: Debian Bug Tracking System <[EMAIL PROTECTED]> Subject: gcc-3.4: Please add Ada support for GNU/kFreeBSD X-Mailer: reportbug 3.17 Date: Tue, 29 Nov 2005 12:25:57 +0100 Message-Id: <[EMAIL PROTECTED]> 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-Level: X-Spam-Status: No, hits=-3.4 required=4.0 tests=BAYES_44,FROM_ENDS_IN_NUMS, HAS_PACKAGE,RCVD_IN_SORBS autolearn=no version=2.60-bugs.debian.org_2005_01_02 This is a multi-part MIME message sent by reportbug. --===============1543998202== Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline Package: gcc-3.4 Version: 3.4.4-12 Severity: wishlist Tags: patch Hi, Please find attached a patch to add Ada support for gcc-3.4 on GNU/kFreeBSD. I haven't forwarded the patch upstream yet, I currently only have a patch for gcc-3.4 and gcc-4.0, I am working on a patch for gcc-4.1 as well as for CVS HEAD, then I will send it upstream. Please also note that the patch also relax the build-dependency on libc0.1, as we still have our old glibc (with some patches backported from version 2.3.5). Thanks in advance, Aurelien -- System Information: Debian Release: testing/unstable Architecture: kfreebsd-i386 (i686) Shell: /bin/sh linked to /bin/bash Kernel: GNU/kFreeBSD 5.4-1-686 Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8) Versions of packages gcc-3.4 depends on: ii binutils 2.16.1cvs20051117-1 The GNU assembler, linker and bina ii cpp-3.4 3.4.4-12 The GNU C preprocessor ii gcc-3.4-base 3.4.4-12 The GNU Compiler Collection (base ii libc0.1 2.3-1+kbsd.14 GNU C Library: Shared libraries an ii libgcc1 1:4.0.2-4 GCC support library Versions of packages gcc-3.4 recommends: ii libc0.1-dev 2.3-1+kbsd.14 GNU C Library: Development Librari -- no debconf information --===============1543998202== Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename="gcc-3.4.diff" Author: aurel32 Status: in BTS diff -u gcc-3.4-3.4.4ds1/debian/rules.patch gcc-3.4-3.4.4ds1/debian/rules.patch --- gcc-3.4-3.4.4ds1/debian/rules.patch +++ gcc-3.4-3.4.4ds1/debian/rules.patch @@ -131,7 +131,7 @@ endif ifeq ($(DEB_TARGET_ARCH_OS),kfreebsd) - debian_patches += kbsd-gnu + debian_patches += kbsd-gnu kbsd-gnu-ada endif ifeq ($(DEB_TARGET_ARCH_OS),knetbsd) debian_patches += kbsd-gnu diff -u gcc-3.4-3.4.4ds1/debian/rules.defs gcc-3.4-3.4.4ds1/debian/rules.defs --- gcc-3.4-3.4.4ds1/debian/rules.defs +++ gcc-3.4-3.4.4ds1/debian/rules.defs @@ -438,7 +438,7 @@ with_libgnat := yes ada_no_cpus := arm armeb m32r m68k ppc64 -ada_no_systems := hurd-i386 kfreebsd-gnu knetbsd-gnu netbsd-elf-gnu +ada_no_systems := hurd-i386 knetbsd-gnu netbsd-elf-gnu ifeq ($(DEB_TARGET_ARCH_CPU), $(findstring $(DEB_TARGET_ARCH_CPU),$(ada_no_cpus))) with_ada := disabled for architecure $(DEB_TARGET_ARCH_CPU) endif diff -u gcc-3.4-3.4.4ds1/debian/rules.conf gcc-3.4-3.4.4ds1/debian/rules.conf --- gcc-3.4-3.4.4ds1/debian/rules.conf +++ gcc-3.4-3.4.4ds1/debian/rules.conf @@ -36,7 +36,7 @@ LIBC_DEV_DEP = libc0.3-dev$(LS) endif ifeq ($(DEB_TARGET_GNU_SYSTEM),kfreebsd-gnu) - LIBC_DEV_DEP = libc0.1-dev$(LS) + LIBC_DEV_DEP = libc0.1-dev endif ifeq ($(DEB_TARGET_GNU_SYSTEM),knetbsd-gnu) LIBC_DEV_DEP = libc0.1-dev$(LS) --- gcc-3.4-3.4.4ds1.orig/debian/patches/kbsd-gnu-ada.dpatch +++ gcc-3.4-3.4.4ds1/debian/patches/kbsd-gnu-ada.dpatch @@ -0,0 +1,581 @@ +#! /bin/sh -e + +# Description: Ada support for GNU/k*BSD +# Author: Aurelien Jarno <[EMAIL PROTECTED]> +# Status: not yet submitted upstream. + +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 + ;; + -unpatch) + patch $pdir -f --no-backup-if-mismatch -R -p1 < $0 + ;; + *) + echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" + exit 1 +esac +exit 0 + +# append the patch here and adjust the -p? flag in the patch calls. + +--- gcc-3.4.4.old/gcc/ada/Makefile.in 2005-06-25 01:07:05.000000000 +0200 ++++ gcc-3.4.4/gcc/ada/Makefile.in 2005-06-25 01:07:33.000000000 +0200 +@@ -851,6 +851,32 @@ + endif + endif + ++ifeq ($(strip $(filter-out %86 kfreebsd%,$(arch) $(osys))),) ++ LIBGNAT_TARGET_PAIRS = \ ++ a-intnam.ads<45intnam.ads \ ++ g-soccon.ads<35soccon.ads \ ++ a-numaux.adb<86numaux.adb \ ++ a-numaux.ads<86numaux.ads \ ++ s-inmaop.adb<7sinmaop.adb \ ++ s-intman.adb<7sintman.adb \ ++ s-mastop.adb<5omastop.adb \ ++ s-osinte.adb<5iosinte.adb \ ++ s-osinte.ads<57osinte.ads \ ++ s-osprim.adb<7sosprim.adb \ ++ s-taprop.adb<5itaprop.adb \ ++ s-taspri.ads<5itaspri.ads \ ++ s-tpopsp.adb<5atpopsp.adb \ ++ system.ads<56system.ads ++ ++ TOOLS_TARGET_PAIRS = mlib-tgt.adb<5lml-tgt.adb ++ SYMLIB = -laddr2line -lbfd -liberty $(LIBINTL) ++ THREADSLIB = -lpthread ++ GNATLIB_SHARED = gnatlib-shared-dual ++ GMEM_LIB = gmemlib ++ PREFIX_OBJS = $(PREFIX_REAL_OBJS) ++ LIBRARY_VERSION := $(LIB_VERSION) ++endif ++ + ifeq ($(strip $(filter-out %86 freebsd%,$(arch) $(osys))),) + LIBGNAT_TARGET_PAIRS = \ + a-intnam.ads<45intnam.ads \ +--- gcc-3.4.4.old/gcc/ada/57osinte.ads 2005-06-25 01:06:36.000000000 +0200 ++++ gcc-3.4.4/gcc/ada/57osinte.ads 2005-06-25 01:06:03.000000000 +0200 +@@ -0,0 +1,514 @@ ++------------------------------------------------------------------------------ ++-- -- ++-- GNU ADA RUN-TIME LIBRARY (GNARL) COMPONENTS -- ++-- -- ++-- S Y S T E M . O S _ I N T E R F A C E -- ++-- -- ++-- S p e c -- ++-- -- ++-- Copyright (C) 1992-2003 Free Software Foundation, Inc. -- ++-- -- ++-- 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, 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. -- ++-- -- ++-- GNARL was developed by the GNARL team at Florida State University. -- ++-- Extensive contributions were provided by Ada Core Technologies, Inc. -- ++-- -- ++------------------------------------------------------------------------------ ++ ++-- This is the GNU/kFreeBSD (GNU/LinuxThreads) version of this package. ++ ++-- This package encapsulates all direct interfaces to OS services ++-- that are needed by children of System. ++ ++-- PLEASE DO NOT add any with-clauses to this package ++-- or remove the pragma Elaborate_Body. ++-- It is designed to be a bottom-level (leaf) package. ++ ++with Interfaces.C; ++package System.OS_Interface is ++ pragma Preelaborate; ++ ++ pragma Linker_Options ("-lpthread"); ++ ++ subtype int is Interfaces.C.int; ++ subtype char is Interfaces.C.char; ++ subtype short is Interfaces.C.short; ++ subtype long is Interfaces.C.long; ++ subtype unsigned is Interfaces.C.unsigned; ++ subtype unsigned_short is Interfaces.C.unsigned_short; ++ subtype unsigned_long is Interfaces.C.unsigned_long; ++ subtype unsigned_char is Interfaces.C.unsigned_char; ++ subtype plain_char is Interfaces.C.plain_char; ++ subtype size_t is Interfaces.C.size_t; ++ ++ ----------- ++ -- Errno -- ++ ----------- ++ ++ function errno return int; ++ pragma Import (C, errno, "__get_errno"); ++ ++ EAGAIN : constant := 35; ++ EINTR : constant := 4; ++ EINVAL : constant := 22; ++ ENOMEM : constant := 12; ++ EPERM : constant := 1; ++ ETIMEDOUT : constant := 60; ++ ++ ------------- ++ -- Signals -- ++ ------------- ++ ++ Max_Interrupt : constant := 128; ++ type Signal is new int range 0 .. Max_Interrupt; ++ for Signal'Size use int'Size; ++ ++ SIGHUP : constant := 1; -- hangup ++ SIGINT : constant := 2; -- interrupt (rubout) ++ SIGQUIT : constant := 3; -- quit (ASCD FS) ++ SIGILL : constant := 4; -- illegal instruction (not reset) ++ SIGTRAP : constant := 5; -- trace trap (not reset) ++ SIGIOT : constant := 6; -- IOT instruction ++ SIGABRT : constant := 6; -- used by abort, replace SIGIOT in the future ++ SIGEMT : constant := 7; -- EMT instruction ++ SIGFPE : constant := 8; -- floating point exception ++ SIGKILL : constant := 9; -- kill (cannot be caught or ignored) ++ SIGBUS : constant := 10; -- bus error ++ SIGSEGV : constant := 11; -- segmentation violation ++ SIGSYS : constant := 12; -- bad argument to system call ++ SIGPIPE : constant := 13; -- write on a pipe with no one to read it ++ SIGALRM : constant := 14; -- alarm clock ++ SIGTERM : constant := 15; -- software termination signal from kill ++ SIGURG : constant := 16; -- urgent condition on IO channel ++ SIGSTOP : constant := 17; -- stop (cannot be caught or ignored) ++ SIGTSTP : constant := 18; -- user stop requested from tty ++ SIGCONT : constant := 19; -- stopped process has been continued ++ SIGCLD : constant := 20; -- alias for SIGCHLD ++ SIGCHLD : constant := 20; -- child status change ++ SIGTTIN : constant := 21; -- background tty read attempted ++ SIGTTOU : constant := 22; -- background tty write attempted ++ SIGIO : constant := 23; -- I/O possible (Solaris SIGPOLL alias) ++ SIGXCPU : constant := 24; -- CPU time limit exceeded ++ SIGXFSZ : constant := 25; -- filesize limit exceeded ++ SIGVTALRM : constant := 26; -- virtual timer expired ++ SIGPROF : constant := 27; -- profiling timer expired ++ SIGWINCH : constant := 28; -- window size change ++ SIGINFO : constant := 29; -- information request (NetBSD/FreeBSD) ++ SIGUSR1 : constant := 30; -- user defined signal 1 ++ SIGUSR2 : constant := 31; -- user defined signal 2 ++ SIGLTHRRES : constant := 32; -- GNU/LinuxThreads restart signal ++ SIGLTHRCAN : constant := 33; -- GNU/LinuxThreads cancel signal ++ SIGLTHRDBG : constant := 34; -- GNU/LinuxThreads debugger signal ++ ++ SIGADAABORT : constant := SIGABRT; ++ -- Change this if you want to use another signal for task abort. ++ -- SIGTERM might be a good one. ++ ++ type Signal_Set is array (Natural range <>) of Signal; ++ ++ Unmasked : constant Signal_Set := ( ++ SIGTRAP, ++ -- To enable debugging on multithreaded applications, mark SIGTRAP to ++ -- be kept unmasked. ++ ++ SIGBUS, ++ ++ SIGTTIN, SIGTTOU, SIGTSTP, ++ -- Keep these three signals unmasked so that background processes ++ -- and IO behaves as normal "C" applications ++ ++ SIGPROF, ++ -- To avoid confusing the profiler ++ ++ SIGKILL, SIGSTOP, ++ -- These two signals actually cannot be masked; ++ -- POSIX simply won't allow it. ++ ++ SIGLTHRRES, SIGLTHRCAN, SIGLTHRDBG); ++ -- These three signals are used by GNU/LinuxThreads starting from ++ -- glibc 2.1 (future 2.2). ++ ++ Reserved : constant Signal_Set := ++ -- I am not sure why the following signal is reserved. ++ -- I guess they are not supported by this version of GNU/kFreeBSD. ++ (0 .. 0 => SIGVTALRM); ++ ++ type sigset_t is private; ++ ++ function sigaddset (set : access sigset_t; sig : Signal) return int; ++ pragma Import (C, sigaddset, "sigaddset"); ++ ++ function sigdelset (set : access sigset_t; sig : Signal) return int; ++ pragma Import (C, sigdelset, "sigdelset"); ++ ++ function sigfillset (set : access sigset_t) return int; ++ pragma Import (C, sigfillset, "sigfillset"); ++ ++ function sigismember (set : access sigset_t; sig : Signal) return int; ++ pragma Import (C, sigismember, "sigismember"); ++ ++ function sigemptyset (set : access sigset_t) return int; ++ pragma Import (C, sigemptyset, "sigemptyset"); ++ ++ -- sigcontext is architecture dependent, so define it private ++ type struct_sigcontext is private; ++ ++ type struct_sigaction is record ++ sa_handler : System.Address; ++ sa_flags : int; ++ sa_mask : sigset_t; ++ end record; ++ pragma Convention (C, struct_sigaction); ++ ++ type struct_sigaction_ptr is access all struct_sigaction; ++ ++ SIG_BLOCK : constant := 1; ++ SIG_UNBLOCK : constant := 2; ++ SIG_SETMASK : constant := 3; ++ ++ SIG_DFL : constant := 0; ++ SIG_IGN : constant := 1; ++ ++ SA_SIGINFO : constant := 16#0040#; ++ ++ function sigaction ++ (sig : Signal; ++ act : struct_sigaction_ptr; ++ oact : struct_sigaction_ptr) return int; ++ pragma Import (C, sigaction, "sigaction"); ++ ++ ---------- ++ -- Time -- ++ ---------- ++ ++ type timespec is private; ++ ++ function To_Duration (TS : timespec) return Duration; ++ pragma Inline (To_Duration); ++ ++ function To_Timespec (D : Duration) return timespec; ++ pragma Inline (To_Timespec); ++ ++ type struct_timeval is private; ++ ++ function To_Duration (TV : struct_timeval) return Duration; ++ pragma Inline (To_Duration); ++ ++ function To_Timeval (D : Duration) return struct_timeval; ++ pragma Inline (To_Timeval); ++ ++ function gettimeofday ++ (tv : access struct_timeval; ++ tz : System.Address := System.Null_Address) return int; ++ pragma Import (C, gettimeofday, "gettimeofday"); ++ ++ function sysconf (name : int) return long; ++ pragma Import (C, sysconf); ++ ++ SC_CLK_TCK : constant := 2; ++ ++ ------------------------- ++ -- Priority Scheduling -- ++ ------------------------- ++ ++ SCHED_FIFO : constant := 1; ++ SCHED_OTHER : constant := 2; ++ SCHED_RR : constant := 3; ++ ++ ------------- ++ -- Process -- ++ ------------- ++ ++ type pid_t is private; ++ ++ function kill (pid : pid_t; sig : Signal) return int; ++ pragma Import (C, kill, "kill"); ++ ++ function getpid return pid_t; ++ pragma Import (C, getpid, "getpid"); ++ ++ ------------- ++ -- Threads -- ++ ------------- ++ ++ type Thread_Body is access ++ function (arg : System.Address) return System.Address; ++ type pthread_t is private; ++ subtype Thread_Id is pthread_t; ++ ++ type pthread_mutex_t is limited private; ++ type pthread_cond_t is limited private; ++ type pthread_attr_t is limited private; ++ type pthread_mutexattr_t is limited private; ++ type pthread_condattr_t is limited private; ++ type pthread_key_t is private; ++ ++ PTHREAD_CREATE_DETACHED : constant := 1; ++ ++ ----------- ++ -- Stack -- ++ ----------- ++ ++ function Get_Stack_Base (thread : pthread_t) return Address; ++ pragma Inline (Get_Stack_Base); ++ -- This is a dummy procedure to share some GNULLI files ++ ++ --------------------------------------- ++ -- Nonstandard Thread Initialization -- ++ --------------------------------------- ++ ++ procedure pthread_init; ++ pragma Inline (pthread_init); ++ -- This is a dummy procedure to share some GNULLI files ++ ++ ------------------------- ++ -- POSIX.1c Section 3 -- ++ ------------------------- ++ ++ function sigwait (set : access sigset_t; sig : access Signal) return int; ++ pragma Import (C, sigwait, "sigwait"); ++ ++ function pthread_kill (thread : pthread_t; sig : Signal) return int; ++ pragma Import (C, pthread_kill, "pthread_kill"); ++ ++ type sigset_t_ptr is access all sigset_t; ++ ++ function pthread_sigmask ++ (how : int; ++ set : sigset_t_ptr; ++ oset : sigset_t_ptr) return int; ++ pragma Import (C, pthread_sigmask, "pthread_sigmask"); ++ ++ -------------------------- ++ -- POSIX.1c Section 11 -- ++ -------------------------- ++ ++ function pthread_mutexattr_init ++ (attr : access pthread_mutexattr_t) return int; ++ pragma Import (C, pthread_mutexattr_init, "pthread_mutexattr_init"); ++ ++ function pthread_mutexattr_destroy ++ (attr : access pthread_mutexattr_t) return int; ++ pragma Import (C, pthread_mutexattr_destroy, "pthread_mutexattr_destroy"); ++ ++ function pthread_mutex_init ++ (mutex : access pthread_mutex_t; ++ attr : access pthread_mutexattr_t) return int; ++ pragma Import (C, pthread_mutex_init, "pthread_mutex_init"); ++ ++ function pthread_mutex_destroy (mutex : access pthread_mutex_t) return int; ++ pragma Import (C, pthread_mutex_destroy, "pthread_mutex_destroy"); ++ ++ function pthread_mutex_lock (mutex : access pthread_mutex_t) return int; ++ pragma Import (C, pthread_mutex_lock, "pthread_mutex_lock"); ++ ++ function pthread_mutex_unlock (mutex : access pthread_mutex_t) return int; ++ pragma Import (C, pthread_mutex_unlock, "pthread_mutex_unlock"); ++ ++ function pthread_condattr_init ++ (attr : access pthread_condattr_t) return int; ++ pragma Import (C, pthread_condattr_init, "pthread_condattr_init"); ++ ++ function pthread_condattr_destroy ++ (attr : access pthread_condattr_t) return int; ++ pragma Import (C, pthread_condattr_destroy, "pthread_condattr_destroy"); ++ ++ function pthread_cond_init ++ (cond : access pthread_cond_t; ++ attr : access pthread_condattr_t) return int; ++ pragma Import (C, pthread_cond_init, "pthread_cond_init"); ++ ++ function pthread_cond_destroy (cond : access pthread_cond_t) return int; ++ pragma Import (C, pthread_cond_destroy, "pthread_cond_destroy"); ++ ++ function pthread_cond_signal (cond : access pthread_cond_t) return int; ++ pragma Import (C, pthread_cond_signal, "pthread_cond_signal"); ++ ++ function pthread_cond_wait ++ (cond : access pthread_cond_t; ++ mutex : access pthread_mutex_t) return int; ++ pragma Import (C, pthread_cond_wait, "pthread_cond_wait"); ++ ++ function pthread_cond_timedwait ++ (cond : access pthread_cond_t; ++ mutex : access pthread_mutex_t; ++ abstime : access timespec) return int; ++ pragma Import (C, pthread_cond_timedwait, "pthread_cond_timedwait"); ++ ++ Relative_Timed_Wait : constant Boolean := False; ++ -- pthread_cond_timedwait requires an absolute delay time ++ ++ -------------------------- ++ -- POSIX.1c Section 13 -- ++ -------------------------- ++ ++ type struct_sched_param is record ++ sched_priority : int; -- scheduling priority ++ end record; ++ pragma Convention (C, struct_sched_param); ++ ++ function pthread_setschedparam ++ (thread : pthread_t; ++ policy : int; ++ param : access struct_sched_param) return int; ++ pragma Import (C, pthread_setschedparam, "pthread_setschedparam"); ++ ++ function pthread_attr_setschedpolicy ++ (attr : access pthread_attr_t; ++ policy : int) return int; ++ pragma Import ++ (C, pthread_attr_setschedpolicy, "pthread_attr_setschedpolicy"); ++ ++ function sched_yield return int; ++ pragma Import (C, sched_yield, "sched_yield"); ++ ++ --------------------------- ++ -- P1003.1c - Section 16 -- ++ --------------------------- ++ ++ function pthread_attr_init ++ (attributes : access pthread_attr_t) return int; ++ pragma Import (C, pthread_attr_init, "pthread_attr_init"); ++ ++ function pthread_attr_destroy ++ (attributes : access pthread_attr_t) return int; ++ pragma Import (C, pthread_attr_destroy, "pthread_attr_destroy"); ++ ++ function pthread_attr_setdetachstate ++ (attr : access pthread_attr_t; ++ detachstate : int) return int; ++ pragma Import ++ (C, pthread_attr_setdetachstate, "pthread_attr_setdetachstate"); ++ ++ function pthread_attr_setstacksize ++ (attr : access pthread_attr_t; ++ stacksize : size_t) return int; ++ pragma Import (C, pthread_attr_setstacksize, "pthread_attr_setstacksize"); ++ ++ function pthread_create ++ (thread : access pthread_t; ++ attributes : access pthread_attr_t; ++ start_routine : Thread_Body; ++ arg : System.Address) return int; ++ pragma Import (C, pthread_create, "pthread_create"); ++ ++ procedure pthread_exit (status : System.Address); ++ pragma Import (C, pthread_exit, "pthread_exit"); ++ ++ function pthread_self return pthread_t; ++ pragma Import (C, pthread_self, "pthread_self"); ++ ++ -------------------------- ++ -- POSIX.1c Section 17 -- ++ -------------------------- ++ ++ function pthread_setspecific ++ (key : pthread_key_t; ++ value : System.Address) return int; ++ pragma Import (C, pthread_setspecific, "pthread_setspecific"); ++ ++ function pthread_getspecific (key : pthread_key_t) return System.Address; ++ pragma Import (C, pthread_getspecific, "pthread_getspecific"); ++ ++ type destructor_pointer is access procedure (arg : System.Address); ++ ++ function pthread_key_create ++ (key : access pthread_key_t; ++ destructor : destructor_pointer) return int; ++ pragma Import (C, pthread_key_create, "pthread_key_create"); ++ ++private ++ ++ type sigset_t is array (1 .. 4) of unsigned; ++ ++ -- In FreeBSD the component sa_handler turns out to ++ -- be one a union type, and the selector is a macro: ++ -- #define sa_handler __sigaction_u._handler ++ -- #define sa_sigaction __sigaction_u._sigaction ++ ++ -- Should we add a signal_context type here ? ++ -- How could it be done independent of the CPU architecture ? ++ -- sigcontext type is opaque, so it is architecturally neutral. ++ -- It is always passed as an access type, so define it as an empty record ++ -- since the contents are not used anywhere. ++ type struct_sigcontext is null record; ++ pragma Convention (C, struct_sigcontext); ++ ++ type pid_t is new int; ++ ++ type time_t is new long; ++ ++ type timespec is record ++ tv_sec : time_t; ++ tv_nsec : long; ++ end record; ++ pragma Convention (C, timespec); ++ ++ type struct_timeval is record ++ tv_sec : time_t; ++ tv_usec : time_t; ++ end record; ++ pragma Convention (C, struct_timeval); ++ ++ type pthread_attr_t is record ++ detachstate : int; ++ schedpolicy : int; ++ schedparam : struct_sched_param; ++ inheritsched : int; ++ scope : int; ++ guardsize : size_t; ++ stackaddr_set : int; ++ stackaddr : System.Address; ++ stacksize : size_t; ++ end record; ++ pragma Convention (C, pthread_attr_t); ++ ++ type pthread_condattr_t is record ++ dummy : int; ++ end record; ++ pragma Convention (C, pthread_condattr_t); ++ ++ type pthread_mutexattr_t is record ++ mutexkind : int; ++ end record; ++ pragma Convention (C, pthread_mutexattr_t); ++ ++ type pthread_t is new unsigned_long; ++ ++ type struct_pthread_fast_lock is record ++ status : long; ++ spinlock : int; ++ end record; ++ pragma Convention (C, struct_pthread_fast_lock); ++ ++ type pthread_mutex_t is record ++ m_reserved : int; ++ m_count : int; ++ m_owner : System.Address; ++ m_kind : int; ++ m_lock : struct_pthread_fast_lock; ++ end record; ++ pragma Convention (C, pthread_mutex_t); ++ ++ type pthread_cond_t is array (0 .. 47) of unsigned_char; ++ pragma Convention (C, pthread_cond_t); ++ ++ type pthread_key_t is new unsigned; ++ ++end System.OS_Interface; --===============1543998202==-- --------------------------------------- Received: (at 341222-close) by bugs.debian.org; 1 Dec 2005 19:21:26 +0000 >From [EMAIL PROTECTED] Thu Dec 01 11:21:26 2005 Return-path: <[EMAIL PROTECTED]> Received: from katie by spohr.debian.org with local (Exim 4.50) id 1Ehtvg-0008Ck-20; Thu, 01 Dec 2005 11:17:16 -0800 From: Matthias Klose <[EMAIL PROTECTED]> To: [EMAIL PROTECTED] X-Katie: $Revision: 1.60 $ Subject: Bug#341222: fixed in gcc-3.4 3.4.5-1 Message-Id: <[EMAIL PROTECTED]> Sender: Archive Administrator <[EMAIL PROTECTED]> Date: Thu, 01 Dec 2005 11:17:16 -0800 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-Level: X-Spam-Status: No, hits=-6.0 required=4.0 tests=BAYES_00,HAS_BUG_NUMBER autolearn=no version=2.60-bugs.debian.org_2005_01_02 Source: gcc-3.4 Source-Version: 3.4.5-1 We believe that the bug you reported is fixed in the latest version of gcc-3.4, which is due to be installed in the Debian FTP archive: cpp-3.4-doc_3.4.5-1_all.deb to pool/main/g/gcc-3.4/cpp-3.4-doc_3.4.5-1_all.deb cpp-3.4_3.4.5-1_i386.deb to pool/main/g/gcc-3.4/cpp-3.4_3.4.5-1_i386.deb cpp-3.4_3.4.5-1_powerpc.deb to pool/main/g/gcc-3.4/cpp-3.4_3.4.5-1_powerpc.deb g++-3.4_3.4.5-1_i386.deb to pool/main/g/gcc-3.4/g++-3.4_3.4.5-1_i386.deb g++-3.4_3.4.5-1_powerpc.deb to pool/main/g/gcc-3.4/g++-3.4_3.4.5-1_powerpc.deb g77-3.4-doc_3.4.5-1_all.deb to pool/main/g/gcc-3.4/g77-3.4-doc_3.4.5-1_all.deb g77-3.4_3.4.5-1_i386.deb to pool/main/g/gcc-3.4/g77-3.4_3.4.5-1_i386.deb g77-3.4_3.4.5-1_powerpc.deb to pool/main/g/gcc-3.4/g77-3.4_3.4.5-1_powerpc.deb gcc-3.4-base_3.4.5-1_i386.deb to pool/main/g/gcc-3.4/gcc-3.4-base_3.4.5-1_i386.deb gcc-3.4-base_3.4.5-1_powerpc.deb to pool/main/g/gcc-3.4/gcc-3.4-base_3.4.5-1_powerpc.deb gcc-3.4-doc_3.4.5-1_all.deb to pool/main/g/gcc-3.4/gcc-3.4-doc_3.4.5-1_all.deb gcc-3.4_3.4.5-1.diff.gz to pool/main/g/gcc-3.4/gcc-3.4_3.4.5-1.diff.gz gcc-3.4_3.4.5-1.dsc to pool/main/g/gcc-3.4/gcc-3.4_3.4.5-1.dsc gcc-3.4_3.4.5-1_i386.deb to pool/main/g/gcc-3.4/gcc-3.4_3.4.5-1_i386.deb gcc-3.4_3.4.5-1_powerpc.deb to pool/main/g/gcc-3.4/gcc-3.4_3.4.5-1_powerpc.deb gcc-3.4_3.4.5.orig.tar.gz to pool/main/g/gcc-3.4/gcc-3.4_3.4.5.orig.tar.gz gnat-3.4-doc_3.4.5-1_all.deb to pool/main/g/gcc-3.4/gnat-3.4-doc_3.4.5-1_all.deb gnat-3.4_3.4.5-1_i386.deb to pool/main/g/gcc-3.4/gnat-3.4_3.4.5-1_i386.deb gnat-3.4_3.4.5-1_powerpc.deb to pool/main/g/gcc-3.4/gnat-3.4_3.4.5-1_powerpc.deb gobjc-3.4_3.4.5-1_i386.deb to pool/main/g/gcc-3.4/gobjc-3.4_3.4.5-1_i386.deb gobjc-3.4_3.4.5-1_powerpc.deb to pool/main/g/gcc-3.4/gobjc-3.4_3.4.5-1_powerpc.deb gpc-2.1-3.4-doc_3.4.5-1_all.deb to pool/main/g/gcc-3.4/gpc-2.1-3.4-doc_3.4.5-1_all.deb gpc-2.1-3.4_3.4.5-1_i386.deb to pool/main/g/gcc-3.4/gpc-2.1-3.4_3.4.5-1_i386.deb gpc-2.1-3.4_3.4.5-1_powerpc.deb to pool/main/g/gcc-3.4/gpc-2.1-3.4_3.4.5-1_powerpc.deb lib64g2c0_3.4.5-1_i386.deb to pool/main/g/gcc-3.4/lib64g2c0_3.4.5-1_i386.deb lib64g2c0_3.4.5-1_powerpc.deb to pool/main/g/gcc-3.4/lib64g2c0_3.4.5-1_powerpc.deb libg2c0-dev_3.4.5-1_i386.deb to pool/main/g/gcc-3.4/libg2c0-dev_3.4.5-1_i386.deb libg2c0-dev_3.4.5-1_powerpc.deb to pool/main/g/gcc-3.4/libg2c0-dev_3.4.5-1_powerpc.deb libg2c0_3.4.5-1_i386.deb to pool/main/g/gcc-3.4/libg2c0_3.4.5-1_i386.deb libg2c0_3.4.5-1_powerpc.deb to pool/main/g/gcc-3.4/libg2c0_3.4.5-1_powerpc.deb libgnat-3.4_3.4.5-1_i386.deb to pool/main/g/gcc-3.4/libgnat-3.4_3.4.5-1_i386.deb libstdc++6-dbg_3.4.5-1_i386.deb to pool/main/g/gcc-3.4/libstdc++6-dbg_3.4.5-1_i386.deb libstdc++6-dbg_3.4.5-1_powerpc.deb to pool/main/g/gcc-3.4/libstdc++6-dbg_3.4.5-1_powerpc.deb libstdc++6-dev_3.4.5-1_i386.deb to pool/main/g/gcc-3.4/libstdc++6-dev_3.4.5-1_i386.deb libstdc++6-dev_3.4.5-1_powerpc.deb to pool/main/g/gcc-3.4/libstdc++6-dev_3.4.5-1_powerpc.deb libstdc++6-doc_3.4.5-1_all.deb to pool/main/g/gcc-3.4/libstdc++6-doc_3.4.5-1_all.deb libstdc++6-pic_3.4.5-1_i386.deb to pool/main/g/gcc-3.4/libstdc++6-pic_3.4.5-1_i386.deb libstdc++6-pic_3.4.5-1_powerpc.deb to pool/main/g/gcc-3.4/libstdc++6-pic_3.4.5-1_powerpc.deb A summary of the changes between this version and the previous one is attached. Thank you for reporting the bug, which will now be closed. If you have further comments please address them to [EMAIL PROTECTED], and the maintainer will reopen the bug report if appropriate. Debian distribution maintenance software pp. Matthias Klose <[EMAIL PROTECTED]> (supplier of updated gcc-3.4 package) (This message was generated automatically at their request; if you believe that there is a problem with it please contact the archive administrators by mailing [EMAIL PROTECTED]) -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Format: 1.7 Date: Thu, 1 Dec 2005 17:36:39 +0100 Source: gcc-3.4 Binary: g77-3.4-doc gcc-3.4-base libstdc++6 gnat-3.4 libobjc1 libgcc1 gcc-3.4 lib64g2c0 gobjc-3.4 gcc-3.4-nof libgcc2 libstdc++6-dev libstdc++6-doc lib32g2c0 protoize libgnat-3.4 lib64stdc++6 libstdc++6-dbg lib32gcc1 lib64gnat-3.4 lib64objc1 cpp-3.4 gcc-3.4-hppa64 gcc-3.4-soft-float cpp-3.4-doc gcc-3.4-doc libg2c0-dev gpc-2.1-3.4-doc lib64gcc1 libg2c0 lib32stdc++6 libstdc++6-pic gnat-3.4-doc g++-3.4 gpc-2.1-3.4 g77-3.4 Architecture: all i386 powerpc source Version: 3.4.5-1 Distribution: unstable Urgency: low Maintainer: Debian GCC Maintainers <debian-gcc@lists.debian.org> Changed-By: Matthias Klose <[EMAIL PROTECTED]> Description: cpp-3.4 - The GNU C preprocessor cpp-3.4-doc - Documentation for the GNU C preprocessor (cpp) g++-3.4 - The GNU C++ compiler g77-3.4 - The GNU Fortran 77 compiler g77-3.4-doc - Documentation for the GNU Fortran compiler (g77) gcc-3.4 - The GNU C compiler gcc-3.4-base - The GNU Compiler Collection (base package) gcc-3.4-doc - Documentation for the GNU compilers (gcc, gobjc, g++) gnat-3.4 - The GNU Ada compiler gnat-3.4-doc - Documentation for the GNU Ada compiler (gnat) gobjc-3.4 - The GNU Objective-C compiler gpc-2.1-3.4 - The GNU Pascal compiler gpc-2.1-3.4-doc - Documentation for the GNU Pascal compiler (gpc) lib64g2c0 - Runtime library for GNU Fortran 77 applications (64bit) libg2c0 - Runtime library for GNU Fortran 77 applications libg2c0-dev - GNU Fortran 77 library development libgnat-3.4 - Runtime library for GNU Ada applications libstdc++6-dbg - The GNU Standard C++ Library v3 (debugging files) libstdc++6-dev - The GNU Standard C++ Library v3 (development files) libstdc++6-doc - The GNU Standard C++ Library v3 (documentation files) libstdc++6-pic - The GNU Standard C++ Library v3 (shared library subset kit) Closes: 341147 341222 Changes: gcc-3.4 (3.4.5-1) unstable; urgency=low . * GCC 3.4.5 release. * Remove java-gui-branch patch, java is not built anymore from the 3.4 sources. * On amd64, install 32bit libraries into /emul/ia32-linux/usr/lib. Closes: #341147. * Add Ada support for GNU/kFreeBSD (Aurelien Jarno). Closes: #341222. * Fix installation of biarch libstdc++ headers on amd64. Files: 0d57e867c66241592bf15ab6bca313dd 1748830 devel optional gobjc-3.4_3.4.5-1_i386.deb 0d7060449e725616eb897395d8933303 163692 devel optional gcc-3.4-base_3.4.5-1_i386.deb 15cb5d08c7f17e18703222b21aa5ec4e 54922 libs optional libg2c0_3.4.5-1_powerpc.deb 1670f0bc19011c055cbe3d3ceb995d36 852410 libdevel extra libstdc++6-pic_3.4.5-1_powerpc.deb 170dc46a61da1ac9e64a36bc8b8a8bd4 54644 libs optional lib64g2c0_3.4.5-1_i386.deb 1c2f44059126b296e97606294a3aa962 1589462 devel optional gcc-3.4_3.4.5-1_powerpc.deb 1d633b1a9b433f60834bcd4101e07dd1 7133284 devel optional gnat-3.4_3.4.5-1_i386.deb 1d83f437a939dff26a98f1cc60181a86 1709136 interpreters optional cpp-3.4_3.4.5-1_i386.deb 2b88c40f381f24b825f2ea242bfe3ad9 1479132 doc optional gcc-3.4-doc_3.4.5-1_all.deb 2f3ca916997ed64bdf5bee5236539df6 1267908 libdevel optional libstdc++6-dev_3.4.5-1_i386.deb 36a1d9c988b69c57b293bb2aebb4ec89 1536756 devel optional gcc-3.4_3.4.5-1_i386.deb 370f9e55a28c700c8ae14746d99e8df6 2300184 devel optional gpc-2.1-3.4_3.4.5-1_i386.deb 444fc69342b507b35d3f19469b1a01d7 1846302 devel optional g77-3.4_3.4.5-1_i386.deb 5f43dc32ba96ef1bfc8800c1e53c27e0 754048 libdevel extra libstdc++6-pic_3.4.5-1_i386.deb 6414b42ed80d3ab998e3e53b67288b5d 1395500 libdevel optional libstdc++6-dev_3.4.5-1_powerpc.deb 660b9b416ba75f906f5ace999a1ec428 341276 devel optional gcc-3.4_3.4.5-1.diff.gz 7181110063486cf46da1e8747f98c9f1 64866 libs optional lib64g2c0_3.4.5-1_powerpc.deb 7d2568abfa435ab8ba3e8125fc618595 8920040 devel optional gnat-3.4_3.4.5-1_powerpc.deb 7d71eb34f5860e8fde898f6b12c1a76e 899800 doc optional gnat-3.4-doc_3.4.5-1_all.deb 8a092917ef71a5a4d20ea1a8d1fb2521 30833292 devel optional gcc-3.4_3.4.5.orig.tar.gz 96179ee25954b08ba3449452fbc3901a 2250104 devel optional g++-3.4_3.4.5-1_powerpc.deb 96a60654ff0d37bb7a2820c9d66deb97 141524 libdevel optional libg2c0-dev_3.4.5-1_i386.deb 9a2b40e07453a768f8b047b0fd51f5dd 1947502 devel optional g++-3.4_3.4.5-1_i386.deb 9abc20c7b8589142eebd24575874e554 896632 doc optional gpc-2.1-3.4-doc_3.4.5-1_all.deb a1898802bd6eb41c2c2b48f709752ad9 182530 doc optional cpp-3.4-doc_3.4.5-1_all.deb a3f66808707873ef4b33e3e87255355a 50014 libs optional libg2c0_3.4.5-1_i386.deb a9119f72152f6eed7c4b745d100189b8 725826 libs optional libgnat-3.4_3.4.5-1_i386.deb aa9a540d2904c7223311e5a73d825967 167326 libdevel optional libg2c0-dev_3.4.5-1_powerpc.deb b2bc8247511854c5ba6f86ac58d71aa1 2145924 devel optional g77-3.4_3.4.5-1_powerpc.deb b2f6931508be5ab48512f7baa809483e 631256 doc optional g77-3.4-doc_3.4.5-1_all.deb b32ab073578c7ea2100c747a28a2ba6b 2042210 devel optional gobjc-3.4_3.4.5-1_powerpc.deb c78ff705eb6752dfbcd6e958b6dd3372 8952868 libdevel extra libstdc++6-dbg_3.4.5-1_i386.deb c9035dfe758175f7bd52b3650d4240ad 163594 devel optional gcc-3.4-base_3.4.5-1_powerpc.deb d6a572c26251f1fe2dac2434ebb4ed94 2632566 devel optional gpc-2.1-3.4_3.4.5-1_powerpc.deb e19857203f135590c77a3d4f4fa186ab 8524380 doc optional libstdc++6-doc_3.4.5-1_all.deb eaa2a87221d0f4d19b8ddf27bd76454e 9329748 libdevel extra libstdc++6-dbg_3.4.5-1_powerpc.deb f22bc398333347e59212d476033e4e7c 1996662 interpreters optional cpp-3.4_3.4.5-1_powerpc.deb 29e29f6e6de813a6bc7c04a1300025f9 2393 devel optional gcc-3.4_3.4.5-1.dsc -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.1 (GNU/Linux) iD8DBQFDj0jbStlRaw+TLJwRAgKlAJ9kHbOHONMJOz9ASweD7MJlrrOBXgCfcTSx jceY656EJXVTuaNnL8qNHUU= =OiFb -----END PGP SIGNATURE----- -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]