diff plugins/CMakeLists.txt @ 257:60b94daf4d24

CMake: update irccd_define_plugin, closes #534 Also add a native debugging plugin.
author David Demelier <markand@malikania.fr>
date Tue, 13 Sep 2016 12:57:17 +0200
parents f04acabfbbe5
children c6fbb6e0e06d
line wrap: on
line diff
--- a/plugins/CMakeLists.txt	Mon Sep 12 17:54:27 2016 +0200
+++ b/plugins/CMakeLists.txt	Tue Sep 13 12:57:17 2016 +0200
@@ -18,68 +18,30 @@
 
 project(plugins)
 
-add_custom_target(
-    all-plugins ALL
-    COMMENT "Irccd plugins"
-)
-
-set_target_properties(
-    all-plugins
-    PROPERTIES
-        FOLDER meta
+set(
+    IRCCD_PLUGINS
+    ask
+    auth
+    hangman
+    history
+    logger
+    plugin
+    roulette
+    CACHE INTERNAL ""
 )
 
 foreach (plugin ${IRCCD_PLUGINS})
-    string(TOUPPER ${plugin} optname)
-
-    if (WITH_PLUGIN_${optname})
-        # 1. Configure the plugin and install it.
-        irccd_define_plugin(${plugin}/${plugin}.js)
-
-        # 2. Build documentation.
-        if (WITH_HTML)
-            set(basedocdir ${IRCCD_FAKEROOTDIR}/${WITH_DOCDIR})
-            file(RELATIVE_PATH baseurl ${basedocdir}/plugin ${basedocdir})
-
-            pandoc(
-                OUTPUT ${basedocdir}/plugin/${plugin}.html
-                SOURCES ${plugin}/${plugin}.md
-                TEMPLATE ${resources_SOURCE_DIR}/template.html
-                DEPENDS
-                    ${resources_SOURCE_DIR}/template.html
-                    docs-resources
-                ARGS -Vguide
-                VARIABLE baseurl:${baseurl}
-                FROM markdown TO html5
-                STANTALONE MAKE_DIRECTORY TOC
-            )
+    irccd_define_plugin(
+        NAME ${plugin}
+        TYPE JS
+        SCRIPT ${plugins_SOURCE_DIR}/${plugin}/${plugin}.js
+        DOCS ${plugins_SOURCE_DIR}/${plugin}/${plugin}.md
+    )
+endforeach ()
 
-            list(APPEND outputs ${basedocdir}/plugin/${plugin}.html)
-            install(
-                FILES ${basedocdir}/plugin/${plugin}.html
-                COMPONENT ${plugin}
-                DESTINATION ${WITH_DOCDIR}/plugin
-            )
-            string(TOUPPER ${plugin} CMP)
-            setg(CPACK_COMPONENT_${CMP}_DESCRIPTION "Install ${plugin}.")
-            setg(CPACK_COMPONENT_${CMP}_GROUP "Plugins")
-        endif ()
-
-        add_custom_target(
-            plugin-${plugin}
-            SOURCES
-                ${outputs}
-                ${plugin}/${plugin}.js
-                ${plugin}/${plugin}.md
-        )
-
-        set_target_properties(
-            plugin-${plugin}
-            PROPERTIES
-                PROJECT_LABEL ${plugin}
-                FOLDER plugins
-        )
-
-        add_dependencies(all-plugins plugin-${plugin})
-    endif ()
-endforeach ()
+# Debug plugins.
+irccd_define_plugin(
+    NAME debugnative
+    TYPE NATIVE
+    SOURCES ${plugins_SOURCE_DIR}/debugnative/main.cpp
+)