GNU bug report logs - #7178
24.0.50; Emacs 24 doesn't build on Solaris 10

Previous Next

Package: emacs;

Reported by: Rainer Orth <ro <at> CeBiTec.Uni-Bielefeld.DE>

Date: Fri, 8 Oct 2010 20:18:02 UTC

Severity: important

Found in version 24.0.50

Done: Chong Yidong <cyd <at> stupidchicken.com>

Bug is archived. No further changes may be made.

Full log


Message #8 received at 7178 <at> debbugs.gnu.org (full text, mbox):

From: Dan Nicolaescu <dann <at> gnu.org>
To: Rainer Orth <ro <at> CeBiTec.Uni-Bielefeld.DE>
Cc: 7178 <at> debbugs.gnu.org
Subject: Re: bug#7178: 24.0.50; Emacs 24 doesn't build on Solaris 10
Date: Sun, 10 Oct 2010 10:07:48 -0400
Rainer Orth <ro <at> CeBiTec.Uni-Bielefeld.DE> writes:

> When I tried to build Emacs bazaar trunk on Solaris 10 to check if
> bug#7163 still occurs on trunk, I ran into two issues:
>
> * lisp/Makefile.in (compile-clean) uses $() which the Solaris 10 /bin/sh
>   doesn't understand.  This can easily be avoided by using `` instead.
>
> * src/sysdep.c doesn't compile: 
>
> "/usr/include/term.h", line 1034: syntax error before or at: bool
>
>   <term.h> uses bool without providing bool.  <stdbool.h> cannot be
>   included since it only works in C99 mode.  The documented solution
>   (e.g. on the curs_terminfo(3CURSES) manpage) is to include <curses.h>
>   before term.h.  The patch below hardcodes this, but this is most
>   likely not the appropriate solution.  Some kind of autoconf magic is
>   probably needed to check if <term.h> can be compiled on its own.

> === modified file 'src/sysdep.c'
> --- src/sysdep.c	2010-08-22 15:14:37 +0000
> +++ src/sysdep.c	2010-09-08 20:34:07 +0000
> @@ -97,6 +97,7 @@
>  /* Include this last.  If it is ncurses header file, it adds a lot of
>     defines that interfere with stuff in other headers.  Someone responsible
>     for ncurses messed up bigtime.  See bug#6812.  */
> +#include <curses.h>
>  #include <term.h>
>  #endif

The only reason to include <term.h> in sysdep.c is to get a prototype
for `tputs' (used in `reset_sys_modes') .
cm.c also uses tputs, but it adds an extern declaration for it.

Given that including <term.h> seems to cause problems, maybe a good
workaround would be to move `reset_sys_modes' to cm.c.




This bug report was last modified 14 years and 229 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.