[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#93871: marked as done (Quik fails to build under glibc2.2)



Your message dated Wed, 22 Aug 2001 21:07:59 +0200 (CEST)
with message-id <Pine.NEB.4.33.0108222059480.21540-100000@mimas.fachschaften.tu-muenchen.de>
and subject line These bugs can be closed
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.)

Darren Benham
(administrator, Debian Bugs database)

--------------------------------------
Received: (at submit) by bugs.debian.org; 13 Apr 2001 18:54:47 +0000
>From puetzk@iastate.edu Fri Apr 13 13:54:47 2001
Return-path: <puetzk@iastate.edu>
Received: from lyon-185-248.stures.iastate.edu (puetz) [129.186.185.248] (mail)
	by master.debian.org with esmtp (Exim 3.12 1 (Debian))
	id 14o8iV-00019B-00; Fri, 13 Apr 2001 13:54:47 -0500
Received: from kevin by puetz with local (Exim 3.12 #1 (Debian))
	id 14o8iV-000113-00; Fri, 13 Apr 2001 13:54:47 -0500
From: Kevin Puetz <puetzk@iastate.edu>
To: Debian Bug Tracking System <submit@bugs.debian.org>
Subject: Quik fails to build under glibc2.2
X-Reportbug-Version: 1.14
X-Mailer: reportbug 1.14
Date: Fri, 13 Apr 2001 13:54:47 -0500
Message-Id: <E14o8iV-000113-00@puetz>
Delivered-To: submit@bugs.debian.org

Package: quik
Version: 2.0e-0.2
Severity: serious

Quik provides it's own setjmp implementation (based on the glibc2.1 conventions). It should therefore use it's own headers to describe this implementation.

The following patch makes it do this, though it still doesn't quite build for me (some problem with string.h). Others don't seem to be having trouble though (after the fixes in this patch), so maybe it's some local issue

diff -uNr quik-2.0/second/cfg.c quik-2.0-new/second/cfg.c
--- quik-2.0/second/cfg.c       Fri Mar 10 15:59:28 2000
+++ quik-2.0-new/second/cfg.c   Thu Feb 15 18:44:32 2001
@@ -17,7 +17,8 @@
    along with this program; if not, write to the Free Software
    Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.  */

-#include <setjmp.h>
+/* NOT glibc's <setjmp.h> - see note in ./setjmp.h */
+#include "setjmp.h"
 #include <stdarg.h>
 #include <string.h>
 #include "quik.h"
diff -uNr quik-2.0/second/setjmp.h quik-2.0-new/second/setjmp.h
--- quik-2.0/second/setjmp.h    Wed Dec 31 19:00:00 1969
+++ quik-2.0-new/second/setjmp.h        Thu Feb 15 18:47:51 2001
@@ -0,0 +1,110 @@
+/* glibc 2.1.3 defines setjmp(env) as __sigsetjmp((env),0)
+ * glibc 2.2's setjmp.h changes to #define setjmp _setjmp(env)
+ *
+ * quik uses glibc headers but not glibc, and _setjmp is a glibc internal
+ * function. IOW, quik doesn't like glibc updates.
+ *
+ * The following is setjmp.h copied from glibc 2.1.3:
+ */
+
+/* Copyright (C) 1991,92,93,94,95,96,97,98 Free Software Foundation, Inc.
+   This file is part of the GNU C Library.
+
+   The GNU C Library is free software; you can redistribute it and/or
+   modify it under the terms of the GNU Library General Public License as
+   published by the Free Software Foundation; either version 2 of the
+   License, or (at your option) any later version.
+
+   The GNU C Library is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   Library General Public License for more details.
+
+   You should have received a copy of the GNU Library General Public
+   License along with the GNU C Library; see the file COPYING.LIB.  If not,
+   write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+   Boston, MA 02111-1307, USA.  */
+
+/*
+ *     ISO C Standard: 4.6 NON-LOCAL JUMPS     <setjmp.h>
+ */
+
+#ifndef        _SETJMP_H
+#define        _SETJMP_H       1
+
+#include <features.h>
+
+__BEGIN_DECLS
+
+#include <bits/setjmp.h>               /* Get `__jmp_buf'.  */
+#include <bits/sigset.h>               /* Get `__sigset_t'.  */
+
+/* Calling environment, plus possibly a saved signal mask.  */
+typedef struct __jmp_buf_tag   /* C++ doesn't like tagless structs.  */
+  {
+    /* NOTE: The machine-dependent definitions of `__sigsetjmp'
+       assume that a `jmp_buf' begins with a `__jmp_buf'.
+       Do not move this member or add others before it.  */
+    __jmp_buf __jmpbuf;                /* Calling environment.  */
+    int __mask_was_saved;      /* Saved the signal mask?  */
+    __sigset_t __saved_mask;   /* Saved signal mask.  */
+  } jmp_buf[1];
+
+
+/* Store the calling environment in ENV, also saving the
+   signal mask if SAVEMASK is nonzero.  Return 0.
+   This is the internal name for `sigsetjmp'.  */
+extern int __sigsetjmp __P ((jmp_buf __env, int __savemask));
+
+#ifndef        __FAVOR_BSD
+/* Set ENV to the current position and return 0, not saving the signal mask.
+   This is just like `sigsetjmp (ENV, 0)'.
+   The ISO C standard says `setjmp' is a macro.  */
+# define setjmp(env)   __sigsetjmp ((env), 0)
+#else
+/* We are in 4.3 BSD-compatibility mode in which `setjmp'
+   saves the signal mask like `sigsetjmp (ENV, 1)'.  */
+# define setjmp(env)   __sigsetjmp ((env), 1)
+#endif /* Favor BSD.  */
+
+#if defined __USE_BSD || defined __USE_XOPEN
+/* Set ENV to the current position and return 0, not saving the signal mask.
+   This is the 4.3 BSD name for ISO `setjmp'.  */
+# define _setjmp(env)  __sigsetjmp ((env), 0)
+#endif
+
+
+/* Jump to the environment saved in ENV, making the
+   `setjmp' call there return VAL, or 1 if VAL is 0.  */
+extern void longjmp __P ((jmp_buf __env, int __val))
+     __attribute__ ((__noreturn__));
+#if defined __USE_BSD || defined __USE_XOPEN
+/* Same.  Usually `_longjmp' is used with `_setjmp', which does not save
+   the signal mask.  But it is how ENV was saved that determines whether
+   `longjmp' restores the mask; `_longjmp' is just an alias.  */
+extern void _longjmp __P ((jmp_buf __env, int __val))
+     __attribute__ ((__noreturn__));
+#endif
+
+
+#ifdef __USE_POSIX
+/* Use the same type for `jmp_buf' and `sigjmp_buf'.
+   The `__mask_was_saved' flag determines whether
+   or not `longjmp' will restore the signal mask.  */
+typedef jmp_buf sigjmp_buf;
+
+/* Store the calling environment in ENV, also saving the
+   signal mask if SAVEMASK is nonzero.  Return 0.  */
+# define sigsetjmp(env, savemask)      __sigsetjmp ((env), (savemask))
+
+/* Jump to the environment saved in ENV, making the
+   sigsetjmp call there return VAL, or 1 if VAL is 0.
+   Restore the signal mask if that sigsetjmp call saved it.
+   This is just an alias `longjmp'.  */
+extern void siglongjmp __P ((sigjmp_buf __env, int __val))
+     __attribute__ ((__noreturn__));
+#endif /* Use POSIX.  */
+
+__END_DECLS
+
+#endif /* setjmp.h  */


-- System Information
Debian Release: testing/unstable
Architecture: powerpc
Kernel: Linux puetz 2.4.4-pre1 #3 Thu Apr 12 17:49:19 CDT 2001 ppc


---------------------------------------
Received: (at 93871-done) by bugs.debian.org; 22 Aug 2001 19:08:14 +0000
>From bunk@fs.tum.de Wed Aug 22 14:08:14 2001
Return-path: <bunk@fs.tum.de>
Received: from hermes.fachschaften.tu-muenchen.de [129.187.176.19] 
	by master.debian.org with smtp (Exim 3.12 1 (Debian))
	id 15ZdMK-0002Vb-00; Wed, 22 Aug 2001 14:08:14 -0500
Received: (qmail 17460 invoked from network); 22 Aug 2001 19:08:03 -0000
Received: from mimas.fachschaften.tu-muenchen.de (HELO mimas) (129.187.176.26)
  by hermes.fachschaften.tu-muenchen.de with SMTP; 22 Aug 2001 19:08:03 -0000
Date: Wed, 22 Aug 2001 21:07:59 +0200 (CEST)
From: Adrian Bunk <bunk@fs.tum.de>
X-X-Sender:  <bunk@mimas.fachschaften.tu-muenchen.de>
To:  <51601-done@bugs.debian.org>,  <51738-done@bugs.debian.org>, 
     <51767-done@bugs.debian.org>,  <52610-done@bugs.debian.org>, 
     <56777-done@bugs.debian.org>,  <83516-done@bugs.debian.org>, 
     <67960-done@bugs.debian.org>,  <84921-done@bugs.debian.org>, 
     <86267-done@bugs.debian.org>,  <88776-done@bugs.debian.org>, 
     <93871-done@bugs.debian.org>,  <103550-done@bugs.debian.org>, 
     <107831-done@bugs.debian.org>,  <93870-done@bugs.debian.org>, 
     <104793-done@bugs.debian.org>,  <15792-done@bugs.debian.org>, 
     <21690-done@bugs.debian.org>,  <24890-done@bugs.debian.org>, 
     <26683-done@bugs.debian.org>,  <29471-done@bugs.debian.org>, 
     <32819-done@bugs.debian.org>,  <48971-done@bugs.debian.org>, 
     <56835-done@bugs.debian.org>,  <64367-done@bugs.debian.org>, 
     <91065-done@bugs.debian.org>,  <91179-done@bugs.debian.org>, 
     <91491-done@bugs.debian.org>,  <91654-done@bugs.debian.org>, 
     <94463-done@bugs.debian.org>,  <95532-done@bugs.debian.org>, 
     <94893-done@bugs.debian.org>,  <103340-done@bugs.debian.org>
Subject: These bugs can be closed
Message-ID: <Pine.NEB.4.33.0108222059480.21540-100000@mimas.fachschaften.tu-muenchen.de>
MIME-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
Delivered-To: 93871-done@bugs.debian.org


These bugs in packages maintained by Debian QA were already closed (and
fixed packages are already in unstable) but only marked as fixed.

cu
Adrian

-- 

Get my GPG key: finger bunk@debian.org | gpg --import

Fingerprint: B29C E71E FE19 6755 5C8A  84D4 99FC EA98 4F12 B400



Reply to: