Mercurial > irccd
annotate extern/libircclient/CMakeLists.txt @ 883:3b9603c1a1b5 stable-2
misc: close stable-2 branch
author | David Demelier <markand@malikania.fr> |
---|---|
date | Tue, 20 Aug 2019 09:31:07 +0200 |
parents | c6fbb6e0e06d |
children | 6ec510722582 |
rev | line source |
---|---|
0 | 1 # |
2 # CMakeLists.txt -- CMake build system for irccd | |
3 # | |
394 | 4 # Copyright (c) 2013-2017 David Demelier <markand@malikania.fr> |
0 | 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 # Libircclient bundled | |
20 project(extern-libircclient) | |
21 | |
22 set(FLAGS "ENABLE_THREADS") | |
23 | |
24 # Portability checks | |
25 include(CheckFunctionExists) | |
26 | |
27 check_function_exists(gethostbyname_r HAVE_GETHOSTBYNAME_R) | |
28 check_function_exists(localtime_r HAVE_LOCALTIME_R) | |
29 | |
30 if (HAVE_GETHOSTBYNAME_R) | |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
138
diff
changeset
|
31 list(APPEND FLAGS "HAVE_GETHOSTBYNAME_R") |
0 | 32 endif () |
33 if (HAVE_LOCALTIME_R) | |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
138
diff
changeset
|
34 list(APPEND FLAGS "HAVE_LOCALTIME_R") |
0 | 35 endif () |
36 | |
37 # SSL is optional | |
38 if (WITH_SSL) | |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
138
diff
changeset
|
39 list(APPEND INCLUDES ${OPENSSL_INCLUDE_DIR}) |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
138
diff
changeset
|
40 list(APPEND LIBRARIES ${OPENSSL_LIBRARIES}) |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
138
diff
changeset
|
41 list(APPEND FLAGS "ENABLE_SSL") |
0 | 42 endif () |
43 | |
44 # Enable or disable IPv6 | |
45 if (WITH_IPV6) | |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
138
diff
changeset
|
46 list(APPEND FLAGS "ENABLE_IPV6") |
0 | 47 endif () |
48 | |
76
7e9a1faeb6f6
CMake: temporarily disable CMake export as it requires Ph.D
David Demelier <markand@malikania.fr>
parents:
72
diff
changeset
|
49 if (WIN32) |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
138
diff
changeset
|
50 list(APPEND LIBRARIES ws2_32) |
76
7e9a1faeb6f6
CMake: temporarily disable CMake export as it requires Ph.D
David Demelier <markand@malikania.fr>
parents:
72
diff
changeset
|
51 endif () |
7e9a1faeb6f6
CMake: temporarily disable CMake export as it requires Ph.D
David Demelier <markand@malikania.fr>
parents:
72
diff
changeset
|
52 |
0 | 53 irccd_define_library( |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
138
diff
changeset
|
54 LOCAL |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
138
diff
changeset
|
55 TARGET extern-ircclient |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
138
diff
changeset
|
56 SOURCES src/libircclient.c |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
138
diff
changeset
|
57 FLAGS ${FLAGS} |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
138
diff
changeset
|
58 LIBRARIES ${LIBRARIES} |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
138
diff
changeset
|
59 PUBLIC_INCLUDES "${extern-libircclient_SOURCE_DIR}/include" |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
138
diff
changeset
|
60 LOCAL_INCLUDES ${INCLUDES} |
0 | 61 ) |
138
ff26bd33a45d
CMake: improve VS2015 support, #425
David Demelier <markand@malikania.fr>
parents:
76
diff
changeset
|
62 |
ff26bd33a45d
CMake: improve VS2015 support, #425
David Demelier <markand@malikania.fr>
parents:
76
diff
changeset
|
63 set_target_properties( |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
138
diff
changeset
|
64 extern-ircclient |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
138
diff
changeset
|
65 PROPERTIES |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
138
diff
changeset
|
66 PROJECT_LABEL libircclient |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
138
diff
changeset
|
67 FOLDER extern |
138
ff26bd33a45d
CMake: improve VS2015 support, #425
David Demelier <markand@malikania.fr>
parents:
76
diff
changeset
|
68 ) |