Mercurial > irccd
annotate cmake/IrccdSystem.cmake @ 312:a0180b5a150c
Tests: add test for plugin-config, #559
author | David Demelier <markand@malikania.fr> |
---|---|
date | Sat, 22 Oct 2016 15:56:01 +0200 |
parents | 6635b9187d71 |
children | e9adab218027 |
rev | line source |
---|---|
0 | 1 # |
2 # Config.cmake -- CMake build system for irccd | |
3 # | |
4 # Copyright (c) 2013-2016 David Demelier <markand@malikania.fr> | |
5 # | |
6 # Permission to use, copy, modify, and/or distribute this software for any | |
7 # purpose with or without fee is hereby granted, provided that the above | |
8 # copyright notice and this permission notice appear in all copies. | |
9 # | |
10 # THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES | |
11 # WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF | |
12 # MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR | |
13 # ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES | |
14 # WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN | |
15 # ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF | |
16 # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. | |
17 # | |
18 | |
19 include(CheckFunctionExists) | |
20 include(CheckIncludeFile) | |
21 include(CheckStructHasMember) | |
22 include(CheckSymbolExists) | |
23 include(CheckTypeSize) | |
24 | |
25 # --------------------------------------------------------- | |
26 # Global compile flags | |
27 # --------------------------------------------------------- | |
28 | |
29 # | |
30 # Recent versions of CMake has nice C++ feature detection for modern | |
31 # C++ but they are still a bit buggy so we use this | |
32 # instead. | |
33 # | |
34 if (CMAKE_CXX_COMPILER_ID MATCHES "GNU") | |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
160
diff
changeset
|
35 # |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
160
diff
changeset
|
36 # For GCC, we require at least GCC 5.1 |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
160
diff
changeset
|
37 # |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
160
diff
changeset
|
38 if (CMAKE_CXX_COMPILER_VERSION VERSION_LESS "5.1") |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
160
diff
changeset
|
39 message(FATAL_ERROR "You need at least GCC 5.1") |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
160
diff
changeset
|
40 endif () |
0 | 41 |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
160
diff
changeset
|
42 set(CMAKE_CXX_FLAGS "-Wall -Wextra -std=c++14 ${CMAKE_CXX_FLAGS}") |
0 | 43 elseif (CMAKE_CXX_COMPILER_ID MATCHES "Clang") |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
160
diff
changeset
|
44 # |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
160
diff
changeset
|
45 # LLVM/clang implemented C++14 starting from version 3.4 but the |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
160
diff
changeset
|
46 # switch -std=c++14 was not available. |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
160
diff
changeset
|
47 # |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
160
diff
changeset
|
48 if (CMAKE_CXX_COMPILER_VERSION VERSION_LESS "3.4") |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
160
diff
changeset
|
49 message(FATAL_ERROR "You need at least Clang 3.4") |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
160
diff
changeset
|
50 endif () |
0 | 51 |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
160
diff
changeset
|
52 if (CMAKE_CXX_COMPILER_VERSION VERSION_LESS "3.5") |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
160
diff
changeset
|
53 set(CMAKE_CXX_FLAGS "-Wall -Wextra -std=c++1y ${CMAKE_CXX_FLAGS}") |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
160
diff
changeset
|
54 else () |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
160
diff
changeset
|
55 set(CMAKE_CXX_FLAGS "-Wall -Wextra -std=c++14 ${CMAKE_CXX_FLAGS}") |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
160
diff
changeset
|
56 endif () |
138
ff26bd33a45d
CMake: improve VS2015 support, #425
David Demelier <markand@malikania.fr>
parents:
137
diff
changeset
|
57 elseif (MSVC14) |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
160
diff
changeset
|
58 set(CMAKE_C_FLAGS "/DWIN32_LEAN_AND_MEAN /DNOMINMAX /wd4267 /wd4800 /D_CRT_SECURE_NO_WARNINGS ${CMAKE_C_FLAGS}") |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
160
diff
changeset
|
59 set(CMAKE_CXX_FLAGS "/DWIN32_LEAN_AND_MEAN /DNOMINMAX /wd4267 /wd4800 /D_CRT_SECURE_NO_WARNINGS /EHsc ${CMAKE_CXX_FLAGS}") |
0 | 60 else () |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
160
diff
changeset
|
61 message(WARNING "Unsupported ${CMAKE_CXX_COMPILER_ID}, may not build correctly.") |
0 | 62 endif () |
63 | |
137
bc291b131f6a
Irccd: make compile on VS2015, #425
David Demelier <markand@malikania.fr>
parents:
101
diff
changeset
|
64 if (MINGW) |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
160
diff
changeset
|
65 set(CMAKE_CXX_FLAGS "-D_WIN32_WINNT=0x0600 ${CMAKE_CXX_FLAGS}") |
0 | 66 endif () |
67 | |
68 if (CMAKE_SIZEOF_VOID_P MATCHES "8") | |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
160
diff
changeset
|
69 set(IRCCD_64BITS TRUE) |
0 | 70 else () |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
160
diff
changeset
|
71 set(IRCCD_64BITS FALSE) |
0 | 72 endif () |
73 | |
101
113d909fdfe1
CMake: disallow absolute paths, #389
David Demelier <markand@malikania.fr>
parents:
95
diff
changeset
|
74 set(IRCCD_FAKEROOTDIR ${CMAKE_BINARY_DIR}/fakeroot) |
113d909fdfe1
CMake: disallow absolute paths, #389
David Demelier <markand@malikania.fr>
parents:
95
diff
changeset
|
75 |
113d909fdfe1
CMake: disallow absolute paths, #389
David Demelier <markand@malikania.fr>
parents:
95
diff
changeset
|
76 if (NOT EXISTS ${IRCCD_FAKEROOTDIR}) |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
160
diff
changeset
|
77 file(MAKE_DIRECTORY ${IRCCD_FAKEROOTDIR}) |
101
113d909fdfe1
CMake: disallow absolute paths, #389
David Demelier <markand@malikania.fr>
parents:
95
diff
changeset
|
78 endif () |
113d909fdfe1
CMake: disallow absolute paths, #389
David Demelier <markand@malikania.fr>
parents:
95
diff
changeset
|
79 |
0 | 80 # --------------------------------------------------------- |
81 # System identification | |
82 # --------------------------------------------------------- | |
83 | |
84 if (WIN32) | |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
160
diff
changeset
|
85 set(IRCCD_SYSTEM_WINDOWS TRUE) |
0 | 86 elseif (APPLE) |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
160
diff
changeset
|
87 set(IRCCD_SYSTEM_MAC TRUE) |
0 | 88 elseif (CMAKE_SYSTEM_NAME MATCHES "FreeBSD") |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
160
diff
changeset
|
89 set(IRCCD_SYSTEM_FREEBSD TRUE) |
0 | 90 elseif (CMAKE_SYSTEM_NAME MATCHES "NetBSD") |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
160
diff
changeset
|
91 set(IRCCD_SYSTEM_NETBSD TRUE) |
0 | 92 elseif (CMAKE_SYSTEM_NAME MATCHES "OpenBSD") |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
160
diff
changeset
|
93 set(IRCCD_SYSTEM_OPENBSD TRUE) |
0 | 94 elseif (CMAKE_SYSTEM_NAME MATCHES "Linux") |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
160
diff
changeset
|
95 set(IRCCD_SYSTEM_LINUX TRUE) |
0 | 96 endif () |
97 | |
98 # --------------------------------------------------------- | |
99 # Portability requirements | |
100 # --------------------------------------------------------- | |
101 | |
102 check_type_size(int8_t HAVE_INT8) | |
103 check_type_size(uint8_t HAVE_UINT8) | |
104 check_type_size(int16_t HAVE_INT16) | |
105 check_type_size(uint16_t HAVE_UINT16) | |
106 check_type_size(int32_t HAVE_INT32) | |
107 check_type_size(uint32_t HAVE_UINT32) | |
108 check_type_size(int64_t HAVE_INT64) | |
109 check_type_size(uint64_t HAVE_UINT64) | |
110 | |
111 if (NOT HAVE_STDINT_H) | |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
160
diff
changeset
|
112 message("irccd requires stdint.h or cstdint header") |
0 | 113 endif () |
114 | |
115 # | |
84
c67e734c9241
CMake: rename irccd-config.h to irccd/sysconfig.h, #452
David Demelier <markand@malikania.fr>
parents:
0
diff
changeset
|
116 # Where any of these function / feature is required, include the <irccd/sysconfig.h> file. |
0 | 117 # |
84
c67e734c9241
CMake: rename irccd-config.h to irccd/sysconfig.h, #452
David Demelier <markand@malikania.fr>
parents:
0
diff
changeset
|
118 # The following variables are defined in irccd/sysconfig.h |
0 | 119 # |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
160
diff
changeset
|
120 # HAVE_ACCESS True if has access(2) function (and sys/types.h and sys/stat.h), |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
160
diff
changeset
|
121 # HAVE_DAEMON True if daemon(3), |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
160
diff
changeset
|
122 # HAVE_GETPID True if has getpid(2) function (and sys/types.h and unistd.h and grp.h), |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
160
diff
changeset
|
123 # HAVE_POPEN True if has popen(3) function (in stdio.h) |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
160
diff
changeset
|
124 # HAVE_SETGID True if has setgid(2) function and getgrnam(3) (and sys/types.h and unistd.h and pwd.h), |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
160
diff
changeset
|
125 # HAVE_SETPROGNAME True if setprogname(3) is available from C library, |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
160
diff
changeset
|
126 # HAVE_SETUID True if has setuid(2) function and getpwnam(3) (and sys/types.h and unistd.h and pwd.h), |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
160
diff
changeset
|
127 # HAVE_STAT True if has stat(2) function (and sys/types.h and sys/stat.h), |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
160
diff
changeset
|
128 # HAVE_STAT_ST_DEV The struct stat has st_dev field, |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
160
diff
changeset
|
129 # HAVE_STAT_ST_INO The struct stat has st_ino field, |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
160
diff
changeset
|
130 # HAVE_STAT_ST_NLINK The struct stat has st_nlink field, |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
160
diff
changeset
|
131 # HAVE_STAT_ST_UID The struct stat has st_uid field, |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
160
diff
changeset
|
132 # HAVE_STAT_ST_GID The struct stat has st_gid field, |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
160
diff
changeset
|
133 # HAVE_STAT_ST_ATIME The struct stat has st_atime field, |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
160
diff
changeset
|
134 # HAVE_STAT_ST_MTIME The struct stat has st_mtime field, |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
160
diff
changeset
|
135 # HAVE_STAT_ST_CTIME The struct stat has st_ctime field, |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
160
diff
changeset
|
136 # HAVE_STAT_ST_SIZE The struct stat has st_size field, |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
160
diff
changeset
|
137 # HAVE_STAT_ST_BLKSIZE The struct stat has st_blksize field, |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
160
diff
changeset
|
138 # HAVE_STAT_ST_BLOCKS The struct stat has st_blocks field, |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
160
diff
changeset
|
139 # HAVE_SYSLOG True if syslog functions are available (and syslog.h), |
0 | 140 # |
141 | |
142 # Check for unistd.h | |
143 check_include_file(unistd.h HAVE_UNISTD_H) | |
144 | |
145 # Check for sys/types.h | |
146 check_include_file(sys/types.h HAVE_SYS_TYPES_H) | |
147 | |
148 # Check for daemon(3) function, include: | |
149 # | |
150 # #include <cstdlib> | |
151 check_function_exists(daemon HAVE_DAEMON) | |
152 | |
153 # Check of setprogname(3) function, include: | |
154 # | |
155 # #include <cstdlib> | |
156 check_function_exists(setprogname HAVE_SETPROGNAME) | |
157 | |
158 # access() POSIX function | |
159 # | |
160 # If HAVE_ACCESS is defined, include: | |
161 # | |
162 # #include <unistd.h> | |
163 check_function_exists(access HAVE_ACCESS) | |
164 | |
165 if (NOT HAVE_UNISTD_H) | |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
160
diff
changeset
|
166 set(HAVE_ACCESS FALSE) |
0 | 167 endif () |
168 | |
169 # getpid() function | |
170 # | |
171 # If HAVE_GETPID is defined, include: | |
172 # | |
173 # #include <sys/types.h> | |
174 # #include <unistd.h> | |
175 check_function_exists(getpid HAVE_GETPID) | |
176 | |
177 if (NOT HAVE_UNISTD_H OR NOT HAVE_SYS_TYPES_H) | |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
160
diff
changeset
|
178 set(HAVE_GETPID FALSE) |
0 | 179 endif () |
180 | |
181 # setgid() function (and getgrnam) | |
182 # | |
183 # If HAVE_SETGID is defined, include: | |
184 # | |
185 # #include <sys/types.h> | |
186 # #include <unistd.h> | |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
160
diff
changeset
|
187 # #include <grp.h> // only for getgrnam |
0 | 188 check_include_file(grp.h HAVE_GRP_H) |
189 check_function_exists(getgrnam HAVE_GETGRNAM) | |
190 check_function_exists(setgid HAVE_SETGID) | |
191 | |
192 if (NOT HAVE_UNISTD_H OR NOT HAVE_SYS_TYPES_H OR NOT HAVE_GETGRNAM OR NOT HAVE_GRP_H) | |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
160
diff
changeset
|
193 set(HAVE_SETGID FALSE) |
0 | 194 endif () |
195 | |
196 # popen() function | |
197 # | |
198 # If HAVE_POPEN is defined, include; | |
199 # | |
200 # #include <cstdio> | |
201 check_function_exists(popen HAVE_POPEN) | |
202 | |
203 # setuid() function (and getpwnam) | |
204 # | |
205 # If HAVE_SETUID is defined, include: | |
206 # | |
207 # #include <sys/types.h> | |
208 # #include <unistd.h> | |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
160
diff
changeset
|
209 # #include <pwd.h> // only for getpwnam |
0 | 210 check_include_file(pwd.h HAVE_PWD_H) |
211 check_function_exists(getpwnam HAVE_GETPWNAM) | |
212 check_function_exists(setuid HAVE_SETUID) | |
213 | |
214 if (NOT HAVE_UNISTD_H OR NOT HAVE_SYS_TYPES_H OR NOT HAVE_GETPWNAM OR NOT HAVE_PWD_H) | |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
160
diff
changeset
|
215 set(HAVE_SETUID FALSE) |
0 | 216 endif () |
217 | |
218 # stat(2) function | |
219 # | |
220 # If HAVE_STAT is defined, include: | |
221 # | |
222 # #include <sys/types.h> | |
223 # #include <sys/stat.h> | |
224 check_include_file(sys/stat.h HAVE_SYS_STAT_H) | |
225 check_function_exists(stat HAVE_STAT) | |
226 | |
227 # If the sys/stat.h is not found, we disable stat(2) | |
228 if (NOT HAVE_SYS_STAT_H OR NOT HAVE_SYS_TYPES_H) | |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
160
diff
changeset
|
229 set(HAVE_STAT FALSE) |
0 | 230 endif () |
231 | |
232 # syslog functions | |
233 # | |
234 # If HAVE_SYSLOG is defined, include: | |
235 # | |
236 # #include <syslog.h> | |
237 check_include_file(syslog.h HAVE_SYSLOG_H) | |
238 check_function_exists(openlog HAVE_OPENLOG) | |
239 check_function_exists(syslog HAVE_SYSLOG) | |
240 check_function_exists(closelog HAVE_CLOSELOG) | |
241 | |
242 if (NOT HAVE_SYSLOG_H OR NOT HAVE_OPENLOG OR NOT HAVE_CLOSELOG) | |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
160
diff
changeset
|
243 set(HAVE_SYSLOG FALSE) |
0 | 244 endif () |
245 | |
246 # Check for struct stat fields. | |
247 check_struct_has_member("struct stat" st_atime sys/stat.h HAVE_STAT_ST_ATIME) | |
248 check_struct_has_member("struct stat" st_blksize sys/stat.h HAVE_STAT_ST_BLKSIZE) | |
249 check_struct_has_member("struct stat" st_blocks sys/stat.h HAVE_STAT_ST_BLOCKS) | |
250 check_struct_has_member("struct stat" st_ctime sys/stat.h HAVE_STAT_ST_CTIME) | |
251 check_struct_has_member("struct stat" st_dev sys/stat.h HAVE_STAT_ST_DEV) | |
252 check_struct_has_member("struct stat" st_gid sys/stat.h HAVE_STAT_ST_GID) | |
253 check_struct_has_member("struct stat" st_ino sys/stat.h HAVE_STAT_ST_INO) | |
254 check_struct_has_member("struct stat" st_mode sys/stat.h HAVE_STAT_ST_MODE) | |
255 check_struct_has_member("struct stat" st_mtime sys/stat.h HAVE_STAT_ST_MTIME) | |
256 check_struct_has_member("struct stat" st_nlink sys/stat.h HAVE_STAT_ST_NLINK) | |
257 check_struct_has_member("struct stat" st_rdev sys/stat.h HAVE_STAT_ST_RDEV) | |
258 check_struct_has_member("struct stat" st_size sys/stat.h HAVE_STAT_ST_SIZE) | |
259 check_struct_has_member("struct stat" st_uid sys/stat.h HAVE_STAT_ST_UID) | |
260 | |
84
c67e734c9241
CMake: rename irccd-config.h to irccd/sysconfig.h, #452
David Demelier <markand@malikania.fr>
parents:
0
diff
changeset
|
261 # Configuration file. |
0 | 262 configure_file( |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
160
diff
changeset
|
263 ${CMAKE_CURRENT_LIST_DIR}/internal/sysconfig.hpp.in |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
160
diff
changeset
|
264 ${IRCCD_FAKEROOTDIR}/include/irccd/sysconfig.hpp |
0 | 265 ) |