Subject: Re: bug#507: compilation problem under Solaris

From: Glenn Morris <[email-masked]>
Date: Thu, 03 Jul 2008 16:00:05 -0400

tags 507 = help
stop

"Langella Raphael" wrote:

> Anyway, once corrected, cpp_undefs is correctly defined: cpp_undefs
> = -UProduits -Utmp -Uemacs -Usparc -Usun -Usolaris2 -Usparc -Usun
> -Usolaris2
>
> But compilation still fails. Instead of being replaced by "1 ", the
>"sparc" string is just deleted. See attached src/Makefile.

OK, I think I see what's going on. src/m/sparc.h does:

#ifndef sparc
#define sparc
#endif

And src/Makefile.c includes config.h which includes this file.

Thus there seems to be no way to fix this through use of -U etc on the
cpp line.

By far the easiest way for you to fix this is just to edit your src
and lib-src Makefile by hand.

In terms of fixing Emacs for the future:

1) #ifdef sparc is only used in two places in the C code, so we could
replace it with __sparc__ or somesuch. Does this seem OK to people?

2) replace this crazy cpp stuff with autoconf.