emacs-devel
[Top][All Lists]
Advanced

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

Re: upstream glibc is making trouble again


From: Chip Coldwell
Subject: Re: upstream glibc is making trouble again
Date: Thu, 9 Aug 2007 15:58:31 -0400 (EDT)

On Thu, 9 Aug 2007, Chip Coldwell wrote:

> I'm having problems building emacs against glibc-2.6.90-4 (Fedora
> 8/rawhide GNU/Linux distribution).  Here's the relevant section of the
> build log:
> 
> gcc -c -D_BSD_SOURCE   -Demacs -DHAVE_CONFIG_H -DUSE_GTK  -I. 
> -I/builddir/build/BUILD/emacs-22.1/src -D_BSD_SOURCE -I/usr/include/gtk-2.0 
> -I/usr/lib64/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/cairo 
> -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 
> -I/usr/lib64/glib-2.0/include -I/usr/include/freetype2  -DMAIL_USE_LOCKF 
> -DSYSTEM_PURESIZE_EXTRA=16777216 -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 
> -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic 
> sound.c
> sound.c: In function 'wav_play':
> sound.c:618: warning: pointer targets in passing argument 2 of 'sd->write' 
> differ in signedness
> sound.c: In function 'au_play':
> sound.c:712: warning: pointer targets in passing argument 2 of 'sd->write' 
> differ in signedness
> sound.c: In function 'Fplay_sound_internal':
> sound.c:1453: warning: pointer targets in passing argument 2 of 
> '__builtin___strcpy_chk' differ in signedness
> sound.c:1453: warning: pointer targets in passing argument 2 of 
> '__strcpy_ichk' differ in signedness
> sound.c:1472:51: error: macro "open" requires 3 arguments, but only 1 given
> sound.c:1472: warning: statement with no effect
> make[2]: *** [sound.o] Error 1
> make[2]: Leaving directory `/builddir/build/BUILD/emacs-22.1/src'
> make[1]: *** [bootstrap-build] Error 2
> make[1]: Leaving directory `/builddir/build/BUILD/emacs-22.1'
> make: *** [bootstrap] Error 2
> 
> and a link to a discussion that seems relevant also:
> 
> https://www.redhat.com/archives/fedora-maintainers/2007-August/msg00013.html
> 
> Quoting:
> 
> It includes <fcntl.h>, which provides open, and POSIX allows functions
> to be defined as function-like macros.  Until recently glibc didn't
> define open as a function like macro, but in glibc 2.6.90 and later it
> does when -D_FORTIFY_SOURCE=2, to enforce correct use of
> open/open64/openat/openat64.
> 
> Any suggestions for a fix?

This seems to work

--- emacs-22.1/src/sound.c~     2007-03-06 07:14:14.000000000 -0500
+++ emacs-22.1/src/sound.c      2007-08-09 15:54:52.117018000 -0400
@@ -1469,7 +1469,7 @@ Internal use only, use `play-sound' inst
       error ("No usable sound device driver found");
 
   /* Open the device.  */
-  current_sound_device->open (current_sound_device);
+  (current_sound_device->open) (current_sound_device);
 
   /* Play the sound.  */
   current_sound->play (current_sound, current_sound_device);



Chip

-- 
Charles M. "Chip" Coldwell
Senior Software Engineer
Red Hat, Inc
978-392-2426





reply via email to

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