D8256: Add _XOPEN_SOURCE to C definitions
A. Wilcox
noreply at phabricator.kde.org
Thu Oct 12 02:28:10 UTC 2017
awilcox created this revision.
awilcox added a reviewer: alexmerry.
Restricted Application added projects: Frameworks, Build System.
Restricted Application added subscribers: Build System, Frameworks.
REVISION SUMMARY
(This was reported on the KDE bug tracker as Bug 373175 <https://bugs.kde.org/show_bug.cgi?id=373175>. The summary of that bug follows.)
When building on non-glibc Unix platforms, such as Solaris, NetBSD, and Linux/musl or Linux/uclibc, multiple components of KF5 fail to build. This is because -std=iso9899:1990 is specified (for strict C90 compliance) but _XOPEN_SOURCE is not defined, so none of the POSIX interfaces are exported. I have seen this reported in at least:
- kinit
- kscreenlocker
- plasma-workspace
The attached patch resolves this issue on all our build boxes; additionally, applying it to my glibc builder did not change the already working result.
TEST PLAN
The entire Adélie Linux distribution's set of KDE packages has been built against extra-cmake-modules-5.38.0 with this patch applied. The Plasma 5 desktop and KDE software build, test, and run correctly (where applicable).
REPOSITORY
R240 Extra CMake Modules
REVISION DETAIL
https://phabricator.kde.org/D8256
AFFECTED FILES
kde-modules/KDECompilerSettings.cmake
To: awilcox, alexmerry
Cc: #frameworks, #build_system
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-buildsystem/attachments/20171012/8312585c/attachment.html>
More information about the Kde-buildsystem
mailing list