bug-gnu-emacs
[Top][All Lists]
Advanced

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

bug#14923: 24.3.50; Emacs compilation broken on FreeBSD SPARC/ARM platfo


From: Ashish SHUKLA
Subject: bug#14923: 24.3.50; Emacs compilation broken on FreeBSD SPARC/ARM platforms
Date: Sun, 21 Jul 2013 18:24:32 +0530
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3.50 (amd64-portbld-freebsd9.1)

Hi,

Following compiler error is observed on SPARC platform when compiling Emacs 
24.3:

#v+
cc -std=gnu99 -c -I/usr/local/include -Demacs  -I. 
-I/home/ashish/emacs-nox11/work/emacs-24.3/src -I../lib 
-I/home/ashish/emacs-nox11/work/emacs-24.3/src/../lib               -MMD -MF 
deps/sysdep.d -MP     -O2 -pipe -fno-strict-aliasing sysdep.c
In file included from lisp.h:25,
                 from sysdep.c:39:
../lib/stdalign.h:51:1: warning: "_Alignof" redefined
In file included from /usr/include/string.h:36,
                 from ./conf_post.h:189,
                 from ./config.h:1671,
                 from sysdep.c:20:
/usr/include/sys/cdefs.h:240:1: warning: this is the location of the previous 
definition
In file included from lisp.h:25,
                 from sysdep.c:39:
../lib/stdalign.h:82:1: warning: "_Alignas" redefined
In file included from /usr/include/string.h:36,
                 from ./conf_post.h:189,
                 from ./config.h:1671,
                 from sysdep.c:20:
/usr/include/sys/cdefs.h:239:1: warning: this is the location of the previous 
definition
In file included from sysdep.c:89:
frame.h:86: error: redefinition of 'struct frame'
sysdep.c: In function 'list_system_processes':
sysdep.c:2684: warning: comparison is always true due to limited range of data 
type
sysdep.c:2684: warning: comparison is always true due to limited range of data 
type
sysdep.c: In function 'system_process_attributes':
sysdep.c:3264: warning: comparison is always true due to limited range of data 
type
sysdep.c:3264: warning: comparison is always true due to limited range of data 
type
sysdep.c:3272: warning: comparison is always true due to limited range of data 
type
sysdep.c:3272: warning: comparison is always true due to limited range of data 
type
sysdep.c:3312: warning: comparison is always true due to limited range of data 
type
sysdep.c:3312: warning: comparison is always true due to limited range of data 
type
sysdep.c:3313: warning: comparison is always true due to limited range of data 
type
sysdep.c:3313: warning: comparison is always true due to limited range of data 
type
sysdep.c:3314: warning: comparison is always true due to limited range of data 
type
sysdep.c:3314: warning: comparison is always true due to limited range of data 
type
sysdep.c:3322: warning: comparison is always true due to limited range of data 
type
sysdep.c:3322: warning: comparison is always true due to limited range of data 
type
sysdep.c:3346: warning: comparison is always true due to limited range of data 
type
sysdep.c:3346: warning: comparison is always true due to limited range of data 
type
gmake[1]: *** [sysdep.o] Error 1
#v-

This happens because Emacs' and FreeBSD's system header files define a type
`struct frame` which causes conflict. The attached diff file fixes this issue
by renaming the FreeBSD's type before it gets defined.

Following is the output of `uname -a`:

#v+
FreeBSD magnus 9.1-STABLE FreeBSD 9.1-STABLE #4 r252102: Sun Jun 23 10:25:50 
EDT 2013     root@magnus:/usr/obj/usr/src/sys/GENERIC  sparc64
=v-


Thanks
-- 
Ashish SHUKLA

“Censorship is telling a man he can't have a steak just because a baby can't
chew it.” (patcito, identi.ca #62762642)

Sent from my Emacs

Attachment: patch-src_sysdep.c
Description: diff file

Attachment: signature.asc
Description: PGP signature


reply via email to

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