annotate win32/CMakeLists.txt @ 267:c26567bba526

CMake: install MinGW DLLs automatically, closes #539
author David Demelier <markand@malikania.fr>
date Fri, 16 Sep 2016 13:44:20 +0200
parents 6635b9187d71
children 90909cf677b1
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
55
fe9854a09ee7 Misc: switch CRLF -> LF
David Demelier <markand@malikania.fr>
parents: 0
diff changeset
1 #
fe9854a09ee7 Misc: switch CRLF -> LF
David Demelier <markand@malikania.fr>
parents: 0
diff changeset
2 # CMakeLists.txt -- CMake build system for irccd
fe9854a09ee7 Misc: switch CRLF -> LF
David Demelier <markand@malikania.fr>
parents: 0
diff changeset
3 #
267
c26567bba526 CMake: install MinGW DLLs automatically, closes #539
David Demelier <markand@malikania.fr>
parents: 207
diff changeset
4 # Copyright (c) 2013-2016 David Demelier <markand@malikania.fr>
55
fe9854a09ee7 Misc: switch CRLF -> LF
David Demelier <markand@malikania.fr>
parents: 0
diff changeset
5 #
fe9854a09ee7 Misc: switch CRLF -> LF
David Demelier <markand@malikania.fr>
parents: 0
diff changeset
6 # Permission to use, copy, modify, and/or distribute this software for any
fe9854a09ee7 Misc: switch CRLF -> LF
David Demelier <markand@malikania.fr>
parents: 0
diff changeset
7 # purpose with or without fee is hereby granted, provided that the above
fe9854a09ee7 Misc: switch CRLF -> LF
David Demelier <markand@malikania.fr>
parents: 0
diff changeset
8 # copyright notice and this permission notice appear in all copies.
fe9854a09ee7 Misc: switch CRLF -> LF
David Demelier <markand@malikania.fr>
parents: 0
diff changeset
9 #
fe9854a09ee7 Misc: switch CRLF -> LF
David Demelier <markand@malikania.fr>
parents: 0
diff changeset
10 # THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
fe9854a09ee7 Misc: switch CRLF -> LF
David Demelier <markand@malikania.fr>
parents: 0
diff changeset
11 # WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
fe9854a09ee7 Misc: switch CRLF -> LF
David Demelier <markand@malikania.fr>
parents: 0
diff changeset
12 # MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
fe9854a09ee7 Misc: switch CRLF -> LF
David Demelier <markand@malikania.fr>
parents: 0
diff changeset
13 # ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
fe9854a09ee7 Misc: switch CRLF -> LF
David Demelier <markand@malikania.fr>
parents: 0
diff changeset
14 # WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
fe9854a09ee7 Misc: switch CRLF -> LF
David Demelier <markand@malikania.fr>
parents: 0
diff changeset
15 # ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
fe9854a09ee7 Misc: switch CRLF -> LF
David Demelier <markand@malikania.fr>
parents: 0
diff changeset
16 # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
fe9854a09ee7 Misc: switch CRLF -> LF
David Demelier <markand@malikania.fr>
parents: 0
diff changeset
17 #
fe9854a09ee7 Misc: switch CRLF -> LF
David Demelier <markand@malikania.fr>
parents: 0
diff changeset
18
fe9854a09ee7 Misc: switch CRLF -> LF
David Demelier <markand@malikania.fr>
parents: 0
diff changeset
19 #
267
c26567bba526 CMake: install MinGW DLLs automatically, closes #539
David Demelier <markand@malikania.fr>
parents: 207
diff changeset
20 # This file consists of installing required .dll files for Windows.
c26567bba526 CMake: install MinGW DLLs automatically, closes #539
David Demelier <markand@malikania.fr>
parents: 207
diff changeset
21 #
c26567bba526 CMake: install MinGW DLLs automatically, closes #539
David Demelier <markand@malikania.fr>
parents: 207
diff changeset
22 # It currently only supports MinGW.
c26567bba526 CMake: install MinGW DLLs automatically, closes #539
David Demelier <markand@malikania.fr>
parents: 207
diff changeset
23 #
c26567bba526 CMake: install MinGW DLLs automatically, closes #539
David Demelier <markand@malikania.fr>
parents: 207
diff changeset
24
c26567bba526 CMake: install MinGW DLLs automatically, closes #539
David Demelier <markand@malikania.fr>
parents: 207
diff changeset
25 project(win32)
c26567bba526 CMake: install MinGW DLLs automatically, closes #539
David Demelier <markand@malikania.fr>
parents: 207
diff changeset
26
c26567bba526 CMake: install MinGW DLLs automatically, closes #539
David Demelier <markand@malikania.fr>
parents: 207
diff changeset
27 #
c26567bba526 CMake: install MinGW DLLs automatically, closes #539
David Demelier <markand@malikania.fr>
parents: 207
diff changeset
28 # MinGW libraries.
c26567bba526 CMake: install MinGW DLLs automatically, closes #539
David Demelier <markand@malikania.fr>
parents: 207
diff changeset
29 # -------------------------------------------------------------------
55
fe9854a09ee7 Misc: switch CRLF -> LF
David Demelier <markand@malikania.fr>
parents: 0
diff changeset
30 #
267
c26567bba526 CMake: install MinGW DLLs automatically, closes #539
David Demelier <markand@malikania.fr>
parents: 207
diff changeset
31
c26567bba526 CMake: install MinGW DLLs automatically, closes #539
David Demelier <markand@malikania.fr>
parents: 207
diff changeset
32 if (MINGW)
c26567bba526 CMake: install MinGW DLLs automatically, closes #539
David Demelier <markand@malikania.fr>
parents: 207
diff changeset
33 if (IRCCD_64BITS)
c26567bba526 CMake: install MinGW DLLs automatically, closes #539
David Demelier <markand@malikania.fr>
parents: 207
diff changeset
34 find_program(LIBGCC_DLL libgcc_s_seh-1.dll)
c26567bba526 CMake: install MinGW DLLs automatically, closes #539
David Demelier <markand@malikania.fr>
parents: 207
diff changeset
35 else ()
c26567bba526 CMake: install MinGW DLLs automatically, closes #539
David Demelier <markand@malikania.fr>
parents: 207
diff changeset
36 find_program(LIBGCC_DLL libgcc_s_sjlj-1.dll)
c26567bba526 CMake: install MinGW DLLs automatically, closes #539
David Demelier <markand@malikania.fr>
parents: 207
diff changeset
37 endif ()
c26567bba526 CMake: install MinGW DLLs automatically, closes #539
David Demelier <markand@malikania.fr>
parents: 207
diff changeset
38
c26567bba526 CMake: install MinGW DLLs automatically, closes #539
David Demelier <markand@malikania.fr>
parents: 207
diff changeset
39 find_program(LIBWINPTHREAD_DLL libwinpthread-1.dll)
c26567bba526 CMake: install MinGW DLLs automatically, closes #539
David Demelier <markand@malikania.fr>
parents: 207
diff changeset
40 find_program(LIBSTDCPP_DLL libstdc++-6.dll)
c26567bba526 CMake: install MinGW DLLs automatically, closes #539
David Demelier <markand@malikania.fr>
parents: 207
diff changeset
41
c26567bba526 CMake: install MinGW DLLs automatically, closes #539
David Demelier <markand@malikania.fr>
parents: 207
diff changeset
42 set(WITH_LIBGCC_DLL "${LIBGCC_DLL}" CACHE STRING
c26567bba526 CMake: install MinGW DLLs automatically, closes #539
David Demelier <markand@malikania.fr>
parents: 207
diff changeset
43 "Path to libgcc dll")
c26567bba526 CMake: install MinGW DLLs automatically, closes #539
David Demelier <markand@malikania.fr>
parents: 207
diff changeset
44 set(WITH_LIBWINPTHREAD_DLL "${LIBWINPTHREAD_DLL}" CACHE STRING
c26567bba526 CMake: install MinGW DLLs automatically, closes #539
David Demelier <markand@malikania.fr>
parents: 207
diff changeset
45 "Path to libwinpthread dll")
c26567bba526 CMake: install MinGW DLLs automatically, closes #539
David Demelier <markand@malikania.fr>
parents: 207
diff changeset
46 set(WITH_LIBSTDCPP_DLL "${LIBSTDCPP_DLL}" CACHE STRING
c26567bba526 CMake: install MinGW DLLs automatically, closes #539
David Demelier <markand@malikania.fr>
parents: 207
diff changeset
47 "Path to libstdc++ dll")
c26567bba526 CMake: install MinGW DLLs automatically, closes #539
David Demelier <markand@malikania.fr>
parents: 207
diff changeset
48
c26567bba526 CMake: install MinGW DLLs automatically, closes #539
David Demelier <markand@malikania.fr>
parents: 207
diff changeset
49 if (EXISTS ${WITH_LIBGCC_DLL} AND
c26567bba526 CMake: install MinGW DLLs automatically, closes #539
David Demelier <markand@malikania.fr>
parents: 207
diff changeset
50 EXISTS ${WITH_LIBWINPTHREAD_DLL} AND
c26567bba526 CMake: install MinGW DLLs automatically, closes #539
David Demelier <markand@malikania.fr>
parents: 207
diff changeset
51 EXISTS ${WITH_LIBSTDCPP_DLL})
c26567bba526 CMake: install MinGW DLLs automatically, closes #539
David Demelier <markand@malikania.fr>
parents: 207
diff changeset
52 install(
c26567bba526 CMake: install MinGW DLLs automatically, closes #539
David Demelier <markand@malikania.fr>
parents: 207
diff changeset
53 PROGRAMS
c26567bba526 CMake: install MinGW DLLs automatically, closes #539
David Demelier <markand@malikania.fr>
parents: 207
diff changeset
54 ${WITH_LIBGCC_DLL}
c26567bba526 CMake: install MinGW DLLs automatically, closes #539
David Demelier <markand@malikania.fr>
parents: 207
diff changeset
55 ${WITH_LIBWINPTHREAD_DLL}
c26567bba526 CMake: install MinGW DLLs automatically, closes #539
David Demelier <markand@malikania.fr>
parents: 207
diff changeset
56 ${WITH_LIBSTDCPP_DLL}
c26567bba526 CMake: install MinGW DLLs automatically, closes #539
David Demelier <markand@malikania.fr>
parents: 207
diff changeset
57 COMPONENT libirccd
c26567bba526 CMake: install MinGW DLLs automatically, closes #539
David Demelier <markand@malikania.fr>
parents: 207
diff changeset
58 DESTINATION bin
c26567bba526 CMake: install MinGW DLLs automatically, closes #539
David Demelier <markand@malikania.fr>
parents: 207
diff changeset
59 )
c26567bba526 CMake: install MinGW DLLs automatically, closes #539
David Demelier <markand@malikania.fr>
parents: 207
diff changeset
60 endif ()
55
fe9854a09ee7 Misc: switch CRLF -> LF
David Demelier <markand@malikania.fr>
parents: 0
diff changeset
61 endif ()
fe9854a09ee7 Misc: switch CRLF -> LF
David Demelier <markand@malikania.fr>
parents: 0
diff changeset
62
267
c26567bba526 CMake: install MinGW DLLs automatically, closes #539
David Demelier <markand@malikania.fr>
parents: 207
diff changeset
63 #
c26567bba526 CMake: install MinGW DLLs automatically, closes #539
David Demelier <markand@malikania.fr>
parents: 207
diff changeset
64 # SSL libraries.
c26567bba526 CMake: install MinGW DLLs automatically, closes #539
David Demelier <markand@malikania.fr>
parents: 207
diff changeset
65 # -------------------------------------------------------------------
c26567bba526 CMake: install MinGW DLLs automatically, closes #539
David Demelier <markand@malikania.fr>
parents: 207
diff changeset
66 #
c26567bba526 CMake: install MinGW DLLs automatically, closes #539
David Demelier <markand@malikania.fr>
parents: 207
diff changeset
67
c26567bba526 CMake: install MinGW DLLs automatically, closes #539
David Demelier <markand@malikania.fr>
parents: 207
diff changeset
68 if (WITH_SSL)
c26567bba526 CMake: install MinGW DLLs automatically, closes #539
David Demelier <markand@malikania.fr>
parents: 207
diff changeset
69 find_program(SSL_EAY_DLL libeay32.dll)
c26567bba526 CMake: install MinGW DLLs automatically, closes #539
David Demelier <markand@malikania.fr>
parents: 207
diff changeset
70 find_program(SSL_LIB_DLL ssleay32.dll)
55
fe9854a09ee7 Misc: switch CRLF -> LF
David Demelier <markand@malikania.fr>
parents: 0
diff changeset
71
267
c26567bba526 CMake: install MinGW DLLs automatically, closes #539
David Demelier <markand@malikania.fr>
parents: 207
diff changeset
72 set(WITH_SSL_EAY_DLL "${SSL_EAY_DLL}" CACHE STRING
c26567bba526 CMake: install MinGW DLLs automatically, closes #539
David Demelier <markand@malikania.fr>
parents: 207
diff changeset
73 "Path to ssleay32.dll")
c26567bba526 CMake: install MinGW DLLs automatically, closes #539
David Demelier <markand@malikania.fr>
parents: 207
diff changeset
74 set(WITH_SSL_LIB_DLL "${SSL_LIB_DLL}" CACHE STRING
c26567bba526 CMake: install MinGW DLLs automatically, closes #539
David Demelier <markand@malikania.fr>
parents: 207
diff changeset
75 "Path to libeay32.dll")
55
fe9854a09ee7 Misc: switch CRLF -> LF
David Demelier <markand@malikania.fr>
parents: 0
diff changeset
76
267
c26567bba526 CMake: install MinGW DLLs automatically, closes #539
David Demelier <markand@malikania.fr>
parents: 207
diff changeset
77 if (EXISTS ${WITH_SSL_EAY_DLL} AND EXISTS ${WITH_SSL_LIB_DLL})
c26567bba526 CMake: install MinGW DLLs automatically, closes #539
David Demelier <markand@malikania.fr>
parents: 207
diff changeset
78 install(
c26567bba526 CMake: install MinGW DLLs automatically, closes #539
David Demelier <markand@malikania.fr>
parents: 207
diff changeset
79 PROGRAMS
c26567bba526 CMake: install MinGW DLLs automatically, closes #539
David Demelier <markand@malikania.fr>
parents: 207
diff changeset
80 ${WITH_SSL_EAY_DLL}
c26567bba526 CMake: install MinGW DLLs automatically, closes #539
David Demelier <markand@malikania.fr>
parents: 207
diff changeset
81 ${WITH_SSL_LIB_DLL}
c26567bba526 CMake: install MinGW DLLs automatically, closes #539
David Demelier <markand@malikania.fr>
parents: 207
diff changeset
82 COMPONENT libirccd
c26567bba526 CMake: install MinGW DLLs automatically, closes #539
David Demelier <markand@malikania.fr>
parents: 207
diff changeset
83 DESTINATION bin
c26567bba526 CMake: install MinGW DLLs automatically, closes #539
David Demelier <markand@malikania.fr>
parents: 207
diff changeset
84 )
c26567bba526 CMake: install MinGW DLLs automatically, closes #539
David Demelier <markand@malikania.fr>
parents: 207
diff changeset
85 endif ()
55
fe9854a09ee7 Misc: switch CRLF -> LF
David Demelier <markand@malikania.fr>
parents: 0
diff changeset
86 endif ()