summaryrefslogtreecommitdiff
path: root/user/extra-cmake-modules/posix.patch
blob: 4ed301d5ee5aea7e98b86e1e5e3fcd2be8e983a9 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
From 82387db20e8a22475a242705795d451219167ceb Mon Sep 17 00:00:00 2001
From: "A. Wilcox" <AWilcox@Wilcox-Tech.com>
Date: Fri, 2 Dec 2016 01:27:14 -0600
Subject: [PATCH] KDECompilerSettings: Ensure POSIX correctness

This change ensures that _XOPEN_SOURCE is defined.  Since we use -std=
iso9899:1990, GCC and Clang won't enable this definition by default.
On non-glibc systems (where _GNU_SOURCE isn't defined), this causes most
POSIX interfaces to be missing, which cause various build failures.

Signed-off-by: A. Wilcox <AWilcox@Wilcox-Tech.com>
---
 kde-modules/KDECompilerSettings.cmake | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/kde-modules/KDECompilerSettings.cmake b/kde-modules/KDECompilerSettings.cmake
index dfa29f7..f50911c 100644
--- a/kde-modules/KDECompilerSettings.cmake
+++ b/kde-modules/KDECompilerSettings.cmake
@@ -140,6 +140,9 @@ if (UNIX)
     # implementation recognize it?
     _kde_add_platform_definitions(-D_LARGEFILE64_SOURCE)
 
+    # Non-glibc platforms need this since we specify -std=iso9899:1990
+    _kde_add_platform_definitions(-D_XOPEN_SOURCE=600)
+
     include(CheckCXXSourceCompiles)
 
     # By default (in glibc, at least), on 32bit platforms off_t is 32 bits,
-- 
2.10.0