Review Request 121216: typedef error for pid_t in 64-bit builds with mingw-w64, and a clarity issue.
Stephen Leibowitz
LibreStephen at gmail.com
Sun Nov 23 08:00:26 GMT 2014
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/121216/
-----------------------------------------------------------
Review request for Calligra and Jarosław Staniek.
Repository: calligra
Description
-------
The Calligra 2.7.90 build log using mingw-w64 gives this error message:
conflicting declaration in winquirks/unistd.h 'typedef int pid_t'
The declaration in the mingw file can be found here:
https://openmodelica.org/svn/OpenModelicaExternal/trunk/tools/windows/OMDev/tools/mingw64/x86_64-w64-mingw32/include/sys/types.h
For a 64-bit target, the Mingw-w64 declaration in types.h (after the preprocessor) is:
typedef __int64 pid_t;
There has been at least one other effort to solve this for a KDE project:
http://marc.info/?l=kde-commits&m=137940711130212&w=2
Here are two links documenting the __MINGW64__ predefined macro:
http://sourceforge.net/p/predef/wiki/Compilers/
http://www.mail-archive.com/mingw-w64-public@lists.sourceforge.net/msg00638.html
Note that “typedef int pid_t;” appears in:
3rdparty\google-breakpad\src\third_party\glog\src\windows\port.h
**********************************
winquirks/unistd.h has a preprocessor section that can be made clearer and more in sync with the style in the rest of the Calligra code. This is accomplished by using a nested #if. It is shown in the diff after the pid_t change.
Diffs
-----
winquirks/unistd.h 82a9ab4
Diff: https://git.reviewboard.kde.org/r/121216/diff/
Testing
-------
Thanks,
Stephen Leibowitz
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/calligra-devel/attachments/20141123/15a6daa6/attachment.htm>
More information about the calligra-devel
mailing list