guile-devel
[Top][All Lists]
Advanced

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

Re: Pkgsrc patches: patch-aj


From: Greg Troxel
Subject: Re: Pkgsrc patches: patch-aj
Date: Wed, 27 Feb 2008 07:20:10 -0500
User-agent: Gnus/5.110007 (No Gnus v0.7) Emacs/22.1 (berkeley-unix)

Neil Jerram <address@hidden> writes:

I have looked at this in more detail, to understand more precisely what
pkgsrc changed, in order to make sure I'm not suggesting that we throw
out a fix to an actual problem.

>> $NetBSD: patch-aj,v 1.3 2007/07/20 00:09:23 gdt Exp $
>>
>> --- libguile/_scm.h.orig     2007-05-09 16:22:03.000000000 -0400
>> +++ libguile/_scm.h
>> @@ -119,7 +119,9 @@
>>  # define SCM_SYSCALL(line) line;
>>  #endif /* ndef SCM_SYSCALL */
>>  
>> -#if !defined (MSDOS) && !defined (__MINGW32__)
>> +#include <errno.h>
>
> The include isn't needed here, because errno.h was already included
> earlier on in the same file.

Agreed, so I will remove the include from patch-aj (which dates from 1.6).

>> +
>> +#if !defined (MSDOS) && !defined (__MINGW32__) && !defined(errno)
>>  # ifdef ARM_ULIB
>>      extern volatile int errno;
>>  # else
>
> I think we can just delete these extra errno declarations.  They've
> been there forever - or at least since rev 1.1 of _scm.h in CVS (1996)
> - and I suspect they've just been left in from a time (pre-CVS) before
> the #include <errno.h> was added.
>
> Can you confirm that ripping this stanza out works for you, then we'll
> go ahead with that for 1.8.5.

Now it has finally become clear to me (sorry for being dense): pkgsrc
was only ifdef'ing out these redundant errno declarations in an attempt
to avoid some platform that didn't need them blowing up.

I did a build with the following patch instead:

$NetBSD$

--- libguile/_scm.h.orig        2008-02-06 08:09:18.000000000 -0500
+++ libguile/_scm.h
@@ -95,14 +95,6 @@
 # define SCM_SYSCALL(line) line;
 #endif /* ndef SCM_SYSCALL */
 
-#if !defined (MSDOS) && !defined (__MINGW32__)
-# ifdef ARM_ULIB
-    extern volatile int errno;
-# else
-    extern int errno;
-# endif /* def ARM_ULIB */
-#endif /* ndef MSDOS && ndef __MINGW32__*/
-
 
 
 #ifndef min

and then 1.8.4 builds and 'make check's ok on NetBSD-current i386.

I have put the above patch into pkgsrc, and I think it should be applied
in guile.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]