annotate tests/src/libirccd/dynlib-plugin/CMakeLists.txt @ 757:97b356010785

Irccd: create (command|jsapi)::registry Make two list of constructor functions to initialize all command and all Javascript modules to avoid duplicating efforts in case of change. While here, update test fixtures to load all of them for simplicity.
author David Demelier <markand@malikania.fr>
date Mon, 06 Aug 2018 21:27:00 +0200
parents 8d93e415c3b4
children 8c44bbcbbab9
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
500
458e34f16c1f Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff changeset
1 #
458e34f16c1f Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff changeset
2 # CMakeLists.txt -- CMake build system for irccd
458e34f16c1f Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff changeset
3 #
628
27587ff92a64 Misc: update copyrights
David Demelier <markand@malikania.fr>
parents: 611
diff changeset
4 # Copyright (c) 2013-2018 David Demelier <markand@malikania.fr>
500
458e34f16c1f Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff changeset
5 #
458e34f16c1f Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff changeset
6 # Permission to use, copy, modify, and/or distribute this software for any
458e34f16c1f Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff changeset
7 # purpose with or without fee is hereby granted, provided that the above
458e34f16c1f Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff changeset
8 # copyright notice and this permission notice appear in all copies.
458e34f16c1f Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff changeset
9 #
458e34f16c1f Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff changeset
10 # THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
458e34f16c1f Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff changeset
11 # WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
458e34f16c1f Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff changeset
12 # MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
458e34f16c1f Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff changeset
13 # ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
458e34f16c1f Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff changeset
14 # WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
458e34f16c1f Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff changeset
15 # ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
458e34f16c1f Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff changeset
16 # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
458e34f16c1f Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff changeset
17 #
458e34f16c1f Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff changeset
18
515
9c18bfff72ef CMake: add QUIET to find_package for Boost, closes #722
David Demelier <markand@malikania.fr>
parents: 500
diff changeset
19 find_package(Boost REQUIRED QUIET)
500
458e34f16c1f Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff changeset
20
458e34f16c1f Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff changeset
21 add_library(test-plugin MODULE test_plugin.cpp)
458e34f16c1f Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff changeset
22 target_link_libraries(test-plugin libirccd Boost::boost)
458e34f16c1f Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff changeset
23 set_target_properties(
458e34f16c1f Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff changeset
24 test-plugin
458e34f16c1f Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff changeset
25 PROPERTIES
458e34f16c1f Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff changeset
26 PREFIX ""
458e34f16c1f Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff changeset
27 RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
458e34f16c1f Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff changeset
28 )
458e34f16c1f Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff changeset
29
458e34f16c1f Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff changeset
30 foreach (c ${CMAKE_CONFIGURATION_TYPES})
458e34f16c1f Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff changeset
31 string(TOUPPER ${c} c)
458e34f16c1f Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff changeset
32 set_target_properties(
458e34f16c1f Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff changeset
33 test-plugin
458e34f16c1f Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff changeset
34 PROPERTIES
458e34f16c1f Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff changeset
35 RUNTIME_OUTPUT_DIRECTORY_${c} ${CMAKE_CURRENT_BINARY_DIR}
458e34f16c1f Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff changeset
36 )
458e34f16c1f Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff changeset
37 endforeach ()
458e34f16c1f Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff changeset
38
458e34f16c1f Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff changeset
39 irccd_define_test(
458e34f16c1f Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff changeset
40 NAME dynlib-plugin
458e34f16c1f Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff changeset
41 SOURCES main.cpp
458e34f16c1f Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff changeset
42 LIBRARIES libirccd libirccd-test
684
8d93e415c3b4 Irccd: load directly native plugin instead of wrapping it, closes #790 @1h
David Demelier <markand@malikania.fr>
parents: 628
diff changeset
43 DEPENDS test-plugin
500
458e34f16c1f Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff changeset
44 )