Subject: bug#16825: closed (Re: bug#16825: 24.3: conflicting types for `rpl_readlink' on powerpc-apple-darwin)

From: [email-masked] (GNU bug Tracking System)
Date: Tue, 25 Feb 2014 19:55:04 +0000

Your bug report

#16825: 24.3: conflicting types for `rpl_readlink' on powerpc-apple-darwin

which was filed against the emacs package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
16825: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=16825
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: bug#16825: 24.3: conflicting types for `rpl_readlink' on powerpc-apple-darwin
From: Paul Eggert <[email-masked]>
To: Glenn Morris <[email-masked]>, [email-masked]
Cc: [email-masked], [email-masked]
Date: Tue, 25 Feb 2014 11:54:23 -0800
List-Id: <debbugs-submit.debbugs.gnu.org>

On 02/25/2014 11:43 AM, Glenn Morris wrote:
> I think this is
>
> http://debbugs.gnu.org/14585

Yes, thanks, that sounds right, so let's continue the conversation about 
this problem at <[email-masked]>. I'll mark16825 as done, since 
its bug is fixed now.

Peter Dyballa, can you please try the following suggestion for 
Bug#14585?  It's taken from <http://bugs.gnu.org/16825#29>.  Thanks.

---

Please try changing this line in src/Makefile:

LD_SWITCH_SYSTEM_TEMACS= ... 690 ...

so that the 690 is something larger.  This is a hexadecimal number that 
is a multiple of (decimal) 56.  Please try 6C8, 700, etc., until you 
find a number that works, and let us know.  After editing src/Makefile, 
remove src/temacs and then type 'make'.

I don't use Mac OS X, by the way; I'm merely deriving this suggestion 
from David Reitter's email 
<http://lists.gnu.org/archive/html/emacs-devel/2013-05/msg00462.html>.

Subject: 24.3: conflicting types for `rpl_readlink' on powerpc-apple-darwin
From: Klaus Zeitler <[email-masked]>
To: <[email-masked]>
Date: Thu, 20 Feb 2014 15:58:03 +0100
List-Id: <debbugs-submit.debbugs.gnu.org>

Building emacs 24.3 on powerpc-apple-darwin gives me the
following error:

--- snip ---

gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I/Volumes/UFS_exp2/exptools/expmake/build/gnuemacs2src/emacs-24.3/lib -I../src -I/Volumes/UFS_exp2/exptools/expmake/build/gnuemacs2src/emacs-24.3/src   -I/opt/exp/gnu/include   -g3 -O2 -MT careadlinkat.o -MD -MP -MF .deps/careadlinkat.Tpo -c -o careadlinkat.o careadlinkat.c
In file included from unistd.h:43,
                 from careadlinkat.h:24,
                 from careadlinkat.c:23:
/usr/include/unistd.h:240: error: conflicting types for `rpl_readlink'
unistd.h:1559: error: previous declaration of `rpl_readlink'

--- snip ---

Looking at the 2 definitions of readlink I see in /usr/include/unistd.h:

int	 readlink(const char *, char *, int);

and in emacs-24.3/lib/unistd.h

_GL_FUNCDECL_RPL (readlink, ssize_t,
                  (const char *file, char *buf, size_t bufsize)
                  _GL_ARG_NONNULL ((1, 2)));

So it seems the 3rd parameter is different. Also I wonder why we include
2 different unistd.h files in the first place.

Attached is the complete configure/compile log.

-- 
 -------------------------------------------------------------------
|  Klaus Zeitler              Alcatel-Lucent                        |
|  Lorenzstrasse 10           D-70435 Stuttgart, Germany            |
|  Department:                MS/E Building: 004  Office: 1/62      |
|  Telefon:                   +49 711 821 43898                     |
|  Email:                     [email-masked]      |
|                                                                   |
| Alcatel-Lucent Deutschland AG                                     |
| Sitz der Gesellschaft: Stuttgart · Amtsgericht Stuttgart HRB 4026 |
| Vorsitzender des Aufsichtsrates: Michael Oppenhoff                |
| Vorstand: Wilhelm Dresselhaus (Chairman) · Hans-Jörg Daub ·       |
|           Andreas Gehe                                            |
 -------------------------------------------------------------------
---
You can only be young once. But you can always be immature. -- Dave Barry