annotate cmake/export/CMakeLists.txt @ 832:1ddf628464a5

irccd: bring back CTCP VERSION support
author David Demelier <markand@malikania.fr>
date Mon, 11 Mar 2019 12:50:06 +0100
parents 06cc2f95f479
children a594bae8669d
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
710
a17de53db29b Misc: export libraries
David Demelier <markand@malikania.fr>
parents:
diff changeset
1 #
a17de53db29b Misc: export libraries
David Demelier <markand@malikania.fr>
parents:
diff changeset
2 # CMakeLists.txt -- CMake build system for irccd
a17de53db29b Misc: export libraries
David Demelier <markand@malikania.fr>
parents:
diff changeset
3 #
824
06cc2f95f479 misc: happy new year!
David Demelier <markand@malikania.fr>
parents: 809
diff changeset
4 # Copyright (c) 2013-2019 David Demelier <markand@malikania.fr>
710
a17de53db29b Misc: export libraries
David Demelier <markand@malikania.fr>
parents:
diff changeset
5 #
a17de53db29b Misc: export libraries
David Demelier <markand@malikania.fr>
parents:
diff changeset
6 # Permission to use, copy, modify, and/or distribute this software for any
a17de53db29b Misc: export libraries
David Demelier <markand@malikania.fr>
parents:
diff changeset
7 # purpose with or without fee is hereby granted, provided that the above
a17de53db29b Misc: export libraries
David Demelier <markand@malikania.fr>
parents:
diff changeset
8 # copyright notice and this permission notice appear in all copies.
a17de53db29b Misc: export libraries
David Demelier <markand@malikania.fr>
parents:
diff changeset
9 #
a17de53db29b Misc: export libraries
David Demelier <markand@malikania.fr>
parents:
diff changeset
10 # THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
a17de53db29b Misc: export libraries
David Demelier <markand@malikania.fr>
parents:
diff changeset
11 # WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
a17de53db29b Misc: export libraries
David Demelier <markand@malikania.fr>
parents:
diff changeset
12 # MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
a17de53db29b Misc: export libraries
David Demelier <markand@malikania.fr>
parents:
diff changeset
13 # ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
a17de53db29b Misc: export libraries
David Demelier <markand@malikania.fr>
parents:
diff changeset
14 # WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
a17de53db29b Misc: export libraries
David Demelier <markand@malikania.fr>
parents:
diff changeset
15 # ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
a17de53db29b Misc: export libraries
David Demelier <markand@malikania.fr>
parents:
diff changeset
16 # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
a17de53db29b Misc: export libraries
David Demelier <markand@malikania.fr>
parents:
diff changeset
17 #
a17de53db29b Misc: export libraries
David Demelier <markand@malikania.fr>
parents:
diff changeset
18
a17de53db29b Misc: export libraries
David Demelier <markand@malikania.fr>
parents:
diff changeset
19 include(CMakePackageConfigHelpers)
a17de53db29b Misc: export libraries
David Demelier <markand@malikania.fr>
parents:
diff changeset
20
711
fc66cc9706a7 CMake: export pkg-config files, closes #874 @1h
David Demelier <markand@malikania.fr>
parents: 710
diff changeset
21 # CMake export files.
710
a17de53db29b Misc: export libraries
David Demelier <markand@malikania.fr>
parents:
diff changeset
22 write_basic_package_version_file(
773
8c44bbcbbab9 Misc: style, cleanup and update
David Demelier <markand@malikania.fr>
parents: 711
diff changeset
23 ${CMAKE_CURRENT_BINARY_DIR}/irccd-config-version.cmake
8c44bbcbbab9 Misc: style, cleanup and update
David Demelier <markand@malikania.fr>
parents: 711
diff changeset
24 VERSION ${IRCCD_VERSION}
8c44bbcbbab9 Misc: style, cleanup and update
David Demelier <markand@malikania.fr>
parents: 711
diff changeset
25 COMPATIBILITY SameMajorVersion
710
a17de53db29b Misc: export libraries
David Demelier <markand@malikania.fr>
parents:
diff changeset
26 )
a17de53db29b Misc: export libraries
David Demelier <markand@malikania.fr>
parents:
diff changeset
27
a17de53db29b Misc: export libraries
David Demelier <markand@malikania.fr>
parents:
diff changeset
28 install(
773
8c44bbcbbab9 Misc: style, cleanup and update
David Demelier <markand@malikania.fr>
parents: 711
diff changeset
29 EXPORT irccd-targets
8c44bbcbbab9 Misc: style, cleanup and update
David Demelier <markand@malikania.fr>
parents: 711
diff changeset
30 FILE irccd-targets.cmake
8c44bbcbbab9 Misc: style, cleanup and update
David Demelier <markand@malikania.fr>
parents: 711
diff changeset
31 NAMESPACE irccd::
8c44bbcbbab9 Misc: style, cleanup and update
David Demelier <markand@malikania.fr>
parents: 711
diff changeset
32 DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/irccd
710
a17de53db29b Misc: export libraries
David Demelier <markand@malikania.fr>
parents:
diff changeset
33 )
a17de53db29b Misc: export libraries
David Demelier <markand@malikania.fr>
parents:
diff changeset
34
a17de53db29b Misc: export libraries
David Demelier <markand@malikania.fr>
parents:
diff changeset
35 install(
773
8c44bbcbbab9 Misc: style, cleanup and update
David Demelier <markand@malikania.fr>
parents: 711
diff changeset
36 FILES
8c44bbcbbab9 Misc: style, cleanup and update
David Demelier <markand@malikania.fr>
parents: 711
diff changeset
37 ${CMAKE_CURRENT_SOURCE_DIR}/irccd-config.cmake
8c44bbcbbab9 Misc: style, cleanup and update
David Demelier <markand@malikania.fr>
parents: 711
diff changeset
38 ${CMAKE_CURRENT_BINARY_DIR}/irccd-config-version.cmake
8c44bbcbbab9 Misc: style, cleanup and update
David Demelier <markand@malikania.fr>
parents: 711
diff changeset
39 DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/irccd
8c44bbcbbab9 Misc: style, cleanup and update
David Demelier <markand@malikania.fr>
parents: 711
diff changeset
40 COMPONENT Devel
710
a17de53db29b Misc: export libraries
David Demelier <markand@malikania.fr>
parents:
diff changeset
41 )
711
fc66cc9706a7 CMake: export pkg-config files, closes #874 @1h
David Demelier <markand@malikania.fr>
parents: 710
diff changeset
42
fc66cc9706a7 CMake: export pkg-config files, closes #874 @1h
David Demelier <markand@malikania.fr>
parents: 710
diff changeset
43 # pkg-config files.
fc66cc9706a7 CMake: export pkg-config files, closes #874 @1h
David Demelier <markand@malikania.fr>
parents: 710
diff changeset
44 if (IRCCD_WITH_PKGCONFIG)
773
8c44bbcbbab9 Misc: style, cleanup and update
David Demelier <markand@malikania.fr>
parents: 711
diff changeset
45 # Since javascript is optional, add it only if required.
8c44bbcbbab9 Misc: style, cleanup and update
David Demelier <markand@malikania.fr>
parents: 711
diff changeset
46 if (IRCCD_HAVE_JS)
8c44bbcbbab9 Misc: style, cleanup and update
David Demelier <markand@malikania.fr>
parents: 711
diff changeset
47 set(IRCCD_EXTRA_REQUIRES libirccd-js)
8c44bbcbbab9 Misc: style, cleanup and update
David Demelier <markand@malikania.fr>
parents: 711
diff changeset
48 endif ()
8c44bbcbbab9 Misc: style, cleanup and update
David Demelier <markand@malikania.fr>
parents: 711
diff changeset
49 if (IRCCD_HAVE_SSL)
8c44bbcbbab9 Misc: style, cleanup and update
David Demelier <markand@malikania.fr>
parents: 711
diff changeset
50 set(IRCCD_EXTRA_LIBS "-lssl -lcrypto")
8c44bbcbbab9 Misc: style, cleanup and update
David Demelier <markand@malikania.fr>
parents: 711
diff changeset
51 endif ()
711
fc66cc9706a7 CMake: export pkg-config files, closes #874 @1h
David Demelier <markand@malikania.fr>
parents: 710
diff changeset
52
809
8460b4a34191 misc: reorganize namespaces, closes #952 @4h
David Demelier <markand@malikania.fr>
parents: 773
diff changeset
53 foreach (pkg libirccd libirccd-daemon libirccd-ctl libirccd-js libirccd-test)
773
8c44bbcbbab9 Misc: style, cleanup and update
David Demelier <markand@malikania.fr>
parents: 711
diff changeset
54 configure_file(
8c44bbcbbab9 Misc: style, cleanup and update
David Demelier <markand@malikania.fr>
parents: 711
diff changeset
55 ${CMAKE_CURRENT_SOURCE_DIR}/${pkg}.pc
8c44bbcbbab9 Misc: style, cleanup and update
David Demelier <markand@malikania.fr>
parents: 711
diff changeset
56 ${CMAKE_CURRENT_BINARY_DIR}/${pkg}.pc
8c44bbcbbab9 Misc: style, cleanup and update
David Demelier <markand@malikania.fr>
parents: 711
diff changeset
57 @ONLY
8c44bbcbbab9 Misc: style, cleanup and update
David Demelier <markand@malikania.fr>
parents: 711
diff changeset
58 )
8c44bbcbbab9 Misc: style, cleanup and update
David Demelier <markand@malikania.fr>
parents: 711
diff changeset
59 install(
8c44bbcbbab9 Misc: style, cleanup and update
David Demelier <markand@malikania.fr>
parents: 711
diff changeset
60 FILES ${CMAKE_CURRENT_BINARY_DIR}/${pkg}.pc
8c44bbcbbab9 Misc: style, cleanup and update
David Demelier <markand@malikania.fr>
parents: 711
diff changeset
61 DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig
8c44bbcbbab9 Misc: style, cleanup and update
David Demelier <markand@malikania.fr>
parents: 711
diff changeset
62 )
8c44bbcbbab9 Misc: style, cleanup and update
David Demelier <markand@malikania.fr>
parents: 711
diff changeset
63 endforeach ()
711
fc66cc9706a7 CMake: export pkg-config files, closes #874 @1h
David Demelier <markand@malikania.fr>
parents: 710
diff changeset
64 endif ()