Review Request 119696: KDECompilerSettings: Be more portable across libc's.
Alex Merry
alex.merry at kde.org
Tue Aug 12 22:00:13 UTC 2014
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/119696/#review64410
-----------------------------------------------------------
Ship it!
This seems reasonable, and proper compile checks for the system libc is the right approach.
- Alex Merry
On Aug. 10, 2014, 7:06 p.m., Raphael Kubo da Costa wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://git.reviewboard.kde.org/r/119696/
> -----------------------------------------------------------
>
> (Updated Aug. 10, 2014, 7:06 p.m.)
>
>
> Review request for Extra Cmake Modules and Alex Merry.
>
>
> Repository: extra-cmake-modules
>
>
> Description
> -------
>
> Defining _XOPEN_SOURCE to 500 is too restrictive: it corresponds to
> _POSIX_C_SOURCE 199506L, and hides several symbols that standard
> libraries like libc++ expect to find, leading to errors like this on
> FreeBSD:
>
> In file included from /tmp/attica/src/accountbalance.cpp:21:
> In file included from /tmp/attica/src/accountbalance.h:25:
> In file included from /usr/local/include/qt5/QtCore/QString:1:
> In file included from /usr/local/include/qt5/QtCore/qstring.h:50:
> In file included from /usr/include/c++/v1/string:437:
> In file included from /usr/include/c++/v1/string:437:
> /usr/include/c++/v1/cstdio:143:9: error: no member named 'snprintf' in the global namespace
> using ::snprintf;
> ~~^
>
> This isn't a problem on Linux (actually, on systems using glibc) because
> defining _GNU_SOURCE enables a lot more features that are not made
> available on other libc implementations where it does not have any
> effect.
>
> Instead, stop defining _XOPEN_SOURCE at all and leave it up to the
> platform to show or hide as many symbols as necessary if no
> standards-related defines are set, and only set _GNU_SOURCE on systems
> where it is actually meaningful (ie. systems using glibc).
>
>
> Diffs
> -----
>
> kde-modules/KDECompilerSettings.cmake fdc930e48e489696e137c546fd7e00e0c4797243
>
> Diff: https://git.reviewboard.kde.org/r/119696/diff/
>
>
> Testing
> -------
>
> Attica builds on FreeBSD.
>
>
> Thanks,
>
> Raphael Kubo da Costa
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-buildsystem/attachments/20140812/98b8292a/attachment.html>
More information about the Kde-buildsystem
mailing list