1 set(_ParaViewClient_cmake_dir
"${CMAKE_CURRENT_LIST_DIR}")
2 set(_ParaViewClient_script_file
"${CMAKE_CURRENT_LIST_FILE}")
14 [APPLICATION_XMLS <xml>...]
17 [MAIN_WINDOW_CLASS <class>]
18 [MAIN_WINDOW_INCLUDE <include>]
19 [APPLICATION_CORE_CLASS <class>]
20 [APPLICATION_CORE_INCLUDE <include>]
22 [PLUGINS_TARGETS <target>...]
23 [REQUIRED_PLUGINS <plugin>...]
24 [OPTIONAL_PLUGINS <plugin>...]
26 [APPLICATION_NAME <name>]
27 [ORGANIZATION <organization>]
30 [DEFAULT_STYLE <style>]
32 [APPLICATION_ICON <icon>]
34 [BUNDLE_PLIST <plist>]
35 [SPLASH_IMAGE <image>]
37 [NAMESPACE <namespace>]
39 [FORCE_UNIX_LAYOUT <ON|OFF>]
40 [BUNDLE_DESTINATION <directory>]
41 [RUNTIME_DESTINATION <directory>]
42 [LIBRARY_DESTINATION <directory>]
44 [TRANSLATE_XML <ON|OFF>]
45 [TRANSLATIONS_DIRECTORY <directory>]
46 [TRANSLATION_TARGET <target>])
49 * `
NAME`: (Required) The name of the application. This is used as the target
52 * `SOURCES`: (Required) Source files
for the application.
53 * `APPLICATION_XMLS`: Server manager XML files.
55 * `MAIN_WINDOW_CLASS`: (Defaults to `QMainWindow`) The
name of the main
57 * `MAIN_WINDOW_INCLUDE`: (Defaults to `QMainWindow` or
58 `<MAIN_WINDOW_CLASS>.h`
if it is specified) The include file
for the main
61 of the application core
class.
62 * `APPLICATION_CORE_INCLUDE` (Defaults to `pqPVApplicationCore.h`) The include
63 file
for the application core
class.
64 * `PLUGINS_TARGETS`: The targets
for plugins. The associated functions
65 will be called upon startup.
66 * `REQUIRED_PLUGINS`: Plugins to load upon startup.
67 * `OPTIONAL_PLUGINS`: Plugins to load upon startup
if available.
68 * `APPLICATION_NAME`: (Defaults to `<
NAME>`) The displayed
name of the
70 * `ORGANIZATION`: (Defaults to `Anonymous`) The organization
for the
71 application. This is used
for the macOS GUI identifier.
72 * `TITLE`: The window title
for the application.
73 * `DEFAULT_STYLE`: The
default Qt style
for the application.
74 * `APPLICATION_ICON`: The path to the icon
for the Windows application.
75 * `BUNDLE_ICON`: The path to the icon
for the macOS bundle.
76 * `BUNDLE_PLIST`: The path to the `Info.plist.in`
template.
77 * `SPLASH_IMAGE`: The image to display upon startup.
78 * `NAMESPACE`: If provided, an alias target `<NAMESPACE>::<
NAME>` will be
80 * `EXPORT`: If provided, the target will be exported.
81 * `FORCE_UNIX_LAYOUT`: (Defaults to `OFF`) Forces a Unix-
style layout even
on 82 platforms
for which they are not the norm
for GUI applications (e.g.,
84 * `BUNDLE_DESTINATION`: (Defaults to `Applications`) Where to place the
86 * `RUNTIME_DESTINATION`: (Defaults to `${CMAKE_INSTALL_BINDIR}`) Where to
88 * `LIBRARY_DESTINATION`: (Defaults to `${CMAKE_INSTALL_LIBDIR}`) Where
89 libraries are placed. Sets up `RPATH` on ELF platforms (e.g., Linux and the
91 * `TRANSLATE_XML`: (Defaults to `OFF`) Produce a translations source file
92 from APPLICATION_XMLS files.
93 * `TRANSLATIONS_DIRECTORY`: (Defaults to `${CMAKE_CURRENT_BINARY_DIR}/Translations`)
94 The path of the directory where translation source files are stored.
95 * `TRANSLATION_TARGET` : The name of the target on which to add the ts file as
99 cmake_parse_arguments(_paraview_client
101 "NAME;APPLICATION_NAME;ORGANIZATION;TITLE;SPLASH_IMAGE;BUNDLE_DESTINATION;BUNDLE_ICON;BUNDLE_PLIST;APPLICATION_ICON;MAIN_WINDOW_CLASS;MAIN_WINDOW_INCLUDE;APPLICATION_CORE_CLASS;APPLICATION_CORE_INCLUDE;VERSION;FORCE_UNIX_LAYOUT;PLUGINS_TARGET;DEFAULT_STYLE;RUNTIME_DESTINATION;LIBRARY_DESTINATION;NAMESPACE;EXPORT;TRANSLATION_TARGET;TRANSLATE_XML;TRANSLATIONS_DIRECTORY" 102 "REQUIRED_PLUGINS;OPTIONAL_PLUGINS;APPLICATION_XMLS;SOURCES;QCH_FILES;QCH_FILE;PLUGINS_TARGETS" 105 if (_paraview_client_UNPARSED_ARGUMENTS)
107 "Unparsed arguments for paraview_client_add: " 108 "${_paraview_client_UNPARSED_ARGUMENTS}")
111 # TODO: Installation. 113 if (DEFINED _paraview_client_PLUGINS_TARGET)
114 if (DEFINED _paraview_client_PLUGINS_TARGETS)
116 "The `paraview_client_add(PLUGINS_TARGET)` argument is incompatible " 117 "with `PLUGINS_TARGETS`.")
120 "The `paraview_client_add(PLUGINS_TARGET)` argument is deprecated in " 121 "favor of `PLUGINS_TARGETS`.")
122 set(_paraview_client_PLUGINS_TARGETS
123 "${_paraview_client_PLUGINS_TARGET}")
127 if (NOT DEFINED _paraview_client_NAME)
129 "The `NAME` argument is required.")
132 if (NOT DEFINED _paraview_client_VERSION)
134 "The `VERSION` argument is required.")
137 if (NOT DEFINED _paraview_client_SOURCES)
139 "The `SOURCES` argument is required.")
142 if (NOT DEFINED _paraview_client_APPLICATION_NAME)
143 set(_paraview_client_APPLICATION_NAME
144 "${_paraview_client_NAME}")
147 if (NOT DEFINED _paraview_client_ORGANIZATION)
148 set(_paraview_client_ORGANIZATION
152 if (NOT DEFINED _paraview_client_FORCE_UNIX_LAYOUT)
153 set(_paraview_client_FORCE_UNIX_LAYOUT
157 if (NOT DEFINED _paraview_client_BUNDLE_DESTINATION)
158 set(_paraview_client_BUNDLE_DESTINATION
162 if (NOT DEFINED _paraview_client_RUNTIME_DESTINATION)
163 set(_paraview_client_RUNTIME_DESTINATION
164 "${CMAKE_INSTALL_BINDIR}")
167 if (NOT DEFINED _paraview_client_LIBRARY_DESTINATION)
168 set(_paraview_client_LIBRARY_DESTINATION
169 "${CMAKE_INSTALL_LIBDIR}")
172 if (DEFINED _paraview_client_QCH_FILE)
173 if (DEFINED _paraview_client_QCH_FILES)
175 "The `paraview_client_add(QCH_FILE)` argument is incompatible " 179 "The `paraview_client_add(QCH_FILE)` argument is deprecated in " 180 "favor of `QCH_FILES`.")
181 set(_paraview_client_QCH_FILES
182 "${_paraview_client_QCH_FILE}")
186 if (NOT DEFINED _paraview_client_MAIN_WINDOW_CLASS)
187 if (DEFINED _paraview_client_MAIN_WINDOW_INCLUDE)
189 "The `MAIN_WINDOW_INCLUDE` argument cannot be specified without " 190 "`MAIN_WINDOW_CLASS`.")
193 set(_paraview_client_MAIN_WINDOW_CLASS
195 set(_paraview_client_MAIN_WINDOW_INCLUDE
199 if (NOT DEFINED _paraview_client_MAIN_WINDOW_INCLUDE)
200 set(_paraview_client_MAIN_WINDOW_INCLUDE
201 "${_paraview_client_MAIN_WINDOW_CLASS}.h")
204 if (NOT DEFINED _paraview_client_APPLICATION_CORE_CLASS)
205 if (DEFINED _paraview_client_APPLICATION_CORE_INCLUDE)
207 "The `APPLICATION_CORE_INCLUDE` argument cannot be specified without " 208 "`APPLICATION_CORE_CLASS`.")
211 set(_paraview_client_APPLICATION_CORE_CLASS
212 "pqPVApplicationCore")
213 set(_paraview_client_APPLICATION_CORE_INCLUDE
214 "pqPVApplicationCore.h")
217 if (NOT DEFINED _paraview_client_APPLICATION_CORE_INCLUDE)
218 set(_paraview_client_APPLICATION_CORE_INCLUDE
219 "${_paraview_client_APPLICATION_CORE_CLASS}.h")
222 set(_paraview_client_extra_sources)
223 set(_paraview_client_bundle_args)
225 set(_paraview_client_executable_flags)
227 if (DEFINED _paraview_client_APPLICATION_ICON)
228 set(_paraview_client_appicon_file
229 "${CMAKE_CURRENT_BINARY_DIR}/${_paraview_client_NAME}_appicon.rc")
230 file(WRITE
"${_paraview_client_appicon_file}.tmp" 231 "// Icon with the lowest ID value placed first to ensure that the application 232 // icon remains consistent on all systems. 233 IDI_ICON1 ICON \"${_paraview_client_APPLICATION_ICON}\"\n")
235 "${_paraview_client_appicon_file}.tmp" 236 "${_paraview_client_appicon_file}" 239 list(APPEND _paraview_client_extra_sources
240 "${_paraview_client_appicon_file}")
243 list(APPEND _paraview_client_executable_flags
248 list(APPEND _paraview_client_bundle_args
249 BUNDLE DESTINATION
"${_paraview_client_BUNDLE_DESTINATION}")
250 list(APPEND _paraview_client_executable_flags
254 set(_paraview_client_resource_files
"")
255 set(_paraview_client_resource_init
"")
257 if (DEFINED _paraview_client_SPLASH_IMAGE)
258 set(_paraview_client_splash_base_name
259 "${_paraview_client_NAME}_splash")
260 set(_paraview_client_splash_image_name
261 "${_paraview_client_splash_base_name}.img")
262 set(_paraview_client_splash_resource
263 ":/${_paraview_client_NAME}/${_paraview_client_splash_base_name}")
265 set(_paraview_client_splash_resource_file
266 "${CMAKE_CURRENT_BINARY_DIR}/${_paraview_client_splash_base_name}.qrc")
269 OUTPUT
"${_paraview_client_splash_resource_file}" 270 PREFIX
"/${_paraview_client_NAME}" 271 ALIAS
"${_paraview_client_splash_base_name}" 272 FILE
"${_paraview_client_SPLASH_IMAGE}")
274 list(APPEND _paraview_client_resource_files
275 "${_paraview_client_splash_resource_file}")
276 string(APPEND _paraview_client_resource_init
277 " Q_INIT_RESOURCE(${_paraview_client_splash_base_name});\n")
281 if (DEFINED _paraview_client_APPLICATION_XMLS)
282 set(_paraview_client_application_base_name
283 "${_paraview_client_NAME}_configuration")
284 set(_paraview_client_application_resource_file
285 "${CMAKE_CURRENT_BINARY_DIR}/${_paraview_client_application_base_name}.qrc")
288 OUTPUT
"${_paraview_client_application_resource_file}" 289 PREFIX
"/${_paraview_client_NAME}/Configuration" 290 FILES
"${_paraview_client_APPLICATION_XMLS}")
292 list(APPEND _paraview_client_resource_files
293 "${_paraview_client_application_resource_file}")
294 string(APPEND _paraview_client_resource_init
295 " Q_INIT_RESOURCE(${_paraview_client_application_base_name});\n")
299 if (DEFINED _paraview_client_QCH_FILES)
300 set(_paraview_client_documentation_base_name
301 "${_paraview_client_NAME}_documentation")
302 set(_paraview_client_documentation_resource_file
303 "${CMAKE_CURRENT_BINARY_DIR}/${_paraview_client_documentation_base_name}.qrc")
306 OUTPUT
"${_paraview_client_documentation_resource_file}" 307 # This prefix is part of the API.
308 PREFIX
"/${_paraview_client_NAME}/Documentation" 309 FILES ${_paraview_client_QCH_FILES})
310 set_property(
SOURCE "${_paraview_client_documentation_resource_file}" 312 OBJECT_DEPENDS
"${_paraview_client_QCH_FILES}")
314 list(APPEND _paraview_client_resource_files
315 "${_paraview_client_documentation_resource_file}")
316 string(APPEND _paraview_client_resource_init
317 " Q_INIT_RESOURCE(${_paraview_client_documentation_base_name});\n")
321 include(
"${_ParaViewClient_cmake_dir}/paraview-find-package-helpers.cmake" OPTIONAL)
322 find_package(
"Qt${PARAVIEW_QT_MAJOR_VERSION}" REQUIRED QUIET COMPONENTS Core Widgets)
324 # CMake 3.13 started using Qt5's version variables to detect what version 325 # of Qt's tools to run for autorcc. However, they are looked up using the 326 # target's directory scope, but these are here in a local scope and unset 327 # when AutoGen gets around to asking about the variables at generate time. 329 # Fix for 3.13.0–3.13.3. Does not work if `paraview_client_add` is called 330 # from another function. 331 set(
"Qt${PARAVIEW_QT_MAJOR_VERSION}Core_VERSION_MAJOR" "${Qt${PARAVIEW_QT_MAJOR_VERSION}Core_VERSION_MAJOR}" PARENT_SCOPE)
332 set(
"Qt${PARAVIEW_QT_MAJOR_VERSION}Core_VERSION_MINOR" "${Qt${PARAVIEW_QT_MAJOR_VERSION}Core_VERSION_MINOR}" PARENT_SCOPE)
334 set_property(DIRECTORY
"${CMAKE_CURRENT_SOURCE_DIR}" 336 "Qt${PARAVIEW_QT_MAJOR_VERSION}Core_VERSION_MAJOR" "${Qt${PARAVIEW_QT_MAJOR_VERSION}Core_VERSION_MAJOR}")
337 set_property(DIRECTORY
"${CMAKE_CURRENT_SOURCE_DIR}" 339 "Qt${PARAVIEW_QT_MAJOR_VERSION}Core_VERSION_MINOR" "${Qt${PARAVIEW_QT_MAJOR_VERSION}Core_VERSION_MAJOR}")
341 set(_paraview_client_built_shared 0)
343 set(_paraview_client_built_shared 1)
346 set(_paraview_client_have_plugins 0)
347 set(_paraview_client_plugins_includes)
348 set(_paraview_client_plugins_calls)
349 if (_paraview_client_PLUGINS_TARGETS)
350 set(_paraview_client_have_plugins 1)
351 foreach (_paraview_client_plugin_target IN LISTS _paraview_client_PLUGINS_TARGETS)
352 string(REPLACE
"::" "_" _paraview_client_plugin_target_safe
"${_paraview_client_plugin_target}")
353 string(APPEND _paraview_client_plugins_includes
354 "#include \"${_paraview_client_plugin_target_safe}.h\"\n")
355 string(APPEND _paraview_client_plugins_calls
356 " ${_paraview_client_plugin_target_safe}_initialize();\n")
360 set(_paraview_client_source_files
361 "${CMAKE_CURRENT_BINARY_DIR}/${_paraview_client_NAME}_main.cxx" 362 "${CMAKE_CURRENT_BINARY_DIR}/pq${_paraview_client_NAME}Initializer.cxx" 363 "${CMAKE_CURRENT_BINARY_DIR}/pq${_paraview_client_NAME}Initializer.h")
365 "${_ParaViewClient_cmake_dir}/paraview_client_main.cxx.in" 366 "${CMAKE_CURRENT_BINARY_DIR}/${_paraview_client_NAME}_main.cxx" 369 "${_ParaViewClient_cmake_dir}/paraview_client_initializer.cxx.in" 370 "${CMAKE_CURRENT_BINARY_DIR}/pq${_paraview_client_NAME}Initializer.cxx" 373 "${_ParaViewClient_cmake_dir}/paraview_client_initializer.h.in" 374 "${CMAKE_CURRENT_BINARY_DIR}/pq${_paraview_client_NAME}Initializer.h" 378 set(CMAKE_BUILD_RPATH_USE_ORIGIN 1)
379 if (UNIX AND NOT APPLE)
380 file(RELATIVE_PATH _paraview_client_relpath
381 "/prefix/${_paraview_client_RUNTIME_DESTINATION}" 382 "/prefix/${_paraview_client_LIBRARY_DESTINATION}")
383 set(_paraview_client_origin_rpath
384 "$ORIGIN/${_paraview_client_relpath}")
386 list(APPEND CMAKE_INSTALL_RPATH
387 "${_paraview_client_origin_rpath}")
390 if (_paraview_client_resource_files)
391 source_group(
"resources" 393 ${_paraview_client_resource_files})
396 ## Translation Management 397 if (NOT DEFINED _paraview_client_TRANSLATIONS_DIRECTORY)
398 set(_paraview_client_TRANSLATIONS_DIRECTORY
399 "${CMAKE_CURRENT_BINARY_DIR}/Translations")
401 if (NOT DEFINED _paraview_client_TRANSLATE_XML)
402 set(_paraview_client_TRANSLATE_XML
"OFF")
404 if (_paraview_client_TRANSLATE_XML)
405 if (NOT DEFINED _paraview_client_TRANSLATION_TARGET)
406 message(FATAL_ERROR
"The `TRANSLATION_TARGET` argument is required.")
409 if (DEFINED _paraview_client_TRANSLATION_TARGET)
410 find_package(
"Qt${PARAVIEW_QT_MAJOR_VERSION}" QUIET COMPONENTS LinguistTools REQUIRED)
411 if (_paraview_client_TRANSLATE_XML)
412 set(xml_header
"${CMAKE_CURRENT_BINARY_DIR}/translationSources${_paraview_client_NAME}ClientXMLs.h")
414 TARGET
"${_paraview_client_TRANSLATION_TARGET}Header" 415 INPUT_FILES ${_paraview_client_APPLICATION_XMLS}
416 RESULT_FILE
"${xml_header}")
418 TARGET
"${_paraview_client_TRANSLATION_TARGET}XMLs" 419 FILES
"${xml_header}" 420 OUTPUT_TS
"${_paraview_client_TRANSLATIONS_DIRECTORY}/Clients_${_paraview_client_APPLICATION_NAME}-XMLs.ts")
421 add_dependencies(
"${_paraview_client_TRANSLATION_TARGET}XMLs" "${_paraview_client_TRANSLATION_TARGET}Header")
424 TARGET
"${_paraview_client_TRANSLATION_TARGET}" 425 FILES ${_paraview_client_SOURCES}
426 OUTPUT_TS
"${_paraview_client_TRANSLATIONS_DIRECTORY}/Clients_${_paraview_client_APPLICATION_NAME}.ts")
427 if (_paraview_client_TRANSLATE_XML)
428 add_dependencies(
"${_paraview_client_TRANSLATION_TARGET}" "${_paraview_client_TRANSLATION_TARGET}XMLs")
432 add_executable(
"${_paraview_client_NAME}" ${_paraview_client_executable_flags})
433 target_sources(
"${_paraview_client_NAME}" 435 ${_paraview_client_SOURCES}
436 ${_paraview_client_resource_files}
437 ${_paraview_client_source_files}
438 ${_paraview_client_extra_sources})
439 if (DEFINED _paraview_client_NAMESPACE)
440 add_executable(
"${_paraview_client_NAMESPACE}::${_paraview_client_NAME}" ALIAS
"${_paraview_client_NAME}")
442 target_include_directories(
"${_paraview_client_NAME}" 444 "${CMAKE_CURRENT_SOURCE_DIR}" 445 "${CMAKE_CURRENT_BINARY_DIR}" 447 "$<TARGET_PROPERTY:VTK::vtksys,INTERFACE_INCLUDE_DIRECTORIES>")
448 target_link_libraries(
"${_paraview_client_NAME}" 450 ParaView::pqApplicationComponents
451 "Qt${PARAVIEW_QT_MAJOR_VERSION}::Widgets" 453 if (PARAVIEW_USE_QTWEBENGINE)
454 find_package(
"Qt${PARAVIEW_QT_MAJOR_VERSION}" REQUIRED QUIET COMPONENTS WebEngineWidgets)
455 target_link_libraries(
"${_paraview_client_NAME}" 456 PRIVATE
"Qt${PARAVIEW_QT_MAJOR_VERSION}::WebEngineWidgets")
459 set(_paraview_client_export)
460 if (DEFINED _paraview_client_EXPORT)
461 list(APPEND _paraview_client_export
462 EXPORT "${_paraview_client_EXPORT}")
466 TARGETS
"${_paraview_client_NAME}" 467 ${_paraview_client_export}
469 ${_paraview_client_bundle_args}
470 RUNTIME DESTINATION
"${_paraview_client_RUNTIME_DESTINATION}")
472 if (DEFINED _paraview_client_PLUGINS_TARGETS)
473 target_link_libraries(
"${_paraview_client_NAME}" 475 ${_paraview_client_PLUGINS_TARGETS})
477 set(_paraview_client_binary_destination
478 "${_paraview_client_RUNTIME_DESTINATION}")
479 set(_paraview_client_conf_destination
480 "${_paraview_client_binary_destination}")
482 string(APPEND _paraview_client_binary_destination
483 "/${_paraview_client_NAME}.app/Contents/Resources")
484 set(_paraview_client_conf_destination
485 "${_paraview_client_BUNDLE_DESTINATION}/${_paraview_client_NAME}.app/Contents/Resources")
489 NAME "${_paraview_client_NAME}" 490 PLUGINS_TARGETS ${_paraview_client_PLUGINS_TARGETS}
491 BUILD_DESTINATION
"${_paraview_client_binary_destination}" 492 INSTALL_DESTINATION
"${_paraview_client_conf_destination}" 497 if (DEFINED _paraview_client_BUNDLE_ICON)
498 get_filename_component(_paraview_client_bundle_icon_file
"${_paraview_client_BUNDLE_ICON}" NAME)
499 set_property(TARGET
"${_paraview_client_NAME}" 501 MACOSX_BUNDLE_ICON_FILE
"${_paraview_client_bundle_icon_file}")
503 FILES
"${_paraview_client_BUNDLE_ICON}" 504 DESTINATION
"${_paraview_client_BUNDLE_DESTINATION}/${_paraview_client_NAME}.app/Contents/Resources" 507 if (DEFINED _paraview_client_BUNDLE_PLIST)
508 set_property(TARGET
"${_paraview_client_NAME}" 510 MACOSX_BUNDLE_INFO_PLIST
"${_paraview_client_BUNDLE_PLIST}")
512 string(TOLOWER
"${_paraview_client_ORGANIZATION}" _paraview_client_organization)
513 set_target_properties(
"${_paraview_client_NAME}" 515 MACOSX_BUNDLE_BUNDLE_NAME
"${_paraview_client_APPLICATION_NAME}" 516 MACOSX_BUNDLE_GUI_IDENTIFIER
"org.${_paraview_client_organization}.${_paraview_client_APPLICATION_NAME}" 517 MACOSX_BUNDLE_SHORT_VERSION_STRING
"${_paraview_client_VERSION}")
524 Passing CMake lists down to the help generation and proxy
documentation steps
525 requires escaping the `;` in them. These functions escape and unescape the
526 variable passed in. The
new value is placed in the same variable in the calling
531 string(REPLACE
"_" "_u" _escape_tmp
"${${variable}}")
532 string(REPLACE
";" "_s" _escape_tmp
"${_escape_tmp}")
539 string(REPLACE
"_s" ";" _escape_tmp
"${${variable}}")
540 string(REPLACE
"_u" "_" _escape_tmp
"${_escape_tmp}")
547 ## Documentation from XML files 549 Documentation can be generated from server manager XML files. The
557 [OUTPUT_DIR <directory>])
560 * `TARGET`: (Required) The name of the target to generate.
561 * `XMLS`: (Required) The list of XML files to process.
562 * `OUTPUT_DIR`: (Defaults to `${CMAKE_CURRENT_BINARY_DIR}`) Where to place
566 cmake_parse_arguments(_paraview_client_doc
572 if (_paraview_client_doc_UNPARSED_ARGUMENTS)
574 "Unparsed arguments for paraview_client_documentation: " 575 "${_paraview_client_doc_UNPARSED_ARGUMENTS}")
578 if (NOT DEFINED _paraview_client_doc_OUTPUT_DIR)
579 set(_paraview_client_doc_OUTPUT_DIR
"${CMAKE_CURRENT_BINARY_DIR}")
582 if (NOT DEFINED _paraview_client_doc_TARGET)
584 "The `TARGET` argument is required.")
587 if (NOT DEFINED _paraview_client_doc_XMLS)
589 "The `XMLS` argument is required.")
592 if (PARAVIEW_QT_MAJOR_VERSION EQUAL
"5")
593 include(
"${_ParaViewClient_cmake_dir}/paraview-find-package-helpers.cmake" OPTIONAL)
594 find_program(qt_xmlpatterns_executable
595 NAMES xmlpatterns-qt5 xmlpatterns
596 HINTS
"${Qt5_DIR}/../../../bin" 597 "${Qt5_DIR}/../../../libexec/qt5/bin" 598 DOC
"Path to xmlpatterns")
599 mark_as_advanced(qt_xmlpatterns_executable)
602 find_program(ParaViewClient_xsltproc_executable
604 DOC
"Path to xsltproc")
605 mark_as_advanced(ParaViewClient_xsltproc_executable)
607 if (NOT qt_xmlpatterns_executable AND
608 NOT ParaViewClient_xsltproc_executable)
610 "Cannot find the `xmlpatterns` or `xsltproc` executables.")
613 set(_paraview_client_doc_xmls)
614 foreach (_paraview_client_doc_xml IN LISTS _paraview_client_doc_XMLS)
615 get_filename_component(_paraview_client_doc_xml
"${_paraview_client_doc_xml}" ABSOLUTE)
616 list(APPEND _paraview_client_doc_xmls
617 "${_paraview_client_doc_xml}")
620 # Save xmls to a temporary file. 621 set (_paraview_client_doc_xmls_file
622 "${CMAKE_CURRENT_BINARY_DIR}/CMakeFiles/${_paraview_client_doc_TARGET}-xmls.txt")
624 OUTPUT
"${_paraview_client_doc_xmls_file}" 625 CONTENT
"${_paraview_client_doc_xmls}")
628 OUTPUT
"${_paraview_client_doc_OUTPUT_DIR}/${_paraview_client_doc_TARGET}.xslt" 629 ${_paraview_client_doc_outputs}
630 COMMAND
"${CMAKE_COMMAND}" 631 "-Dxmlpatterns=${qt_xmlpatterns_executable}" 632 "-Dxsltproc=${ParaViewClient_xsltproc_executable}" 633 "-Doutput_dir=${_paraview_client_doc_OUTPUT_DIR}" 634 "-Doutput_file=${_paraview_client_doc_OUTPUT_DIR}/${_paraview_client_doc_TARGET}.xslt" 635 "-Dxmls_file=${_paraview_client_doc_xmls_file}" 636 -D_paraview_generate_proxy_documentation_run=ON
637 -P
"${_ParaViewClient_script_file}" 638 DEPENDS ${_paraview_client_doc_xmls}
639 "${_paraview_client_doc_xmls_file}" 640 "${_ParaViewClient_script_file}" 641 "${_ParaViewClient_cmake_dir}/paraview_servermanager_convert_xml.xsl" 642 "${_ParaViewClient_cmake_dir}/paraview_servermanager_convert_categoryindex.xsl" 643 "${_ParaViewClient_cmake_dir}/paraview_servermanager_convert_html.xsl" 644 "${_ParaViewClient_cmake_dir}/paraview_servermanager_convert_wiki.xsl.in" 645 WORKING_DIRECTORY
"${_paraview_client_doc_OUTPUT_DIR}" 646 COMMENT
"Generating documentation for ${_paraview_client_doc_TARGET}")
647 add_custom_target(
"${_paraview_client_doc_TARGET}" 649 "${_paraview_client_doc_OUTPUT_DIR}/${_paraview_client_doc_TARGET}.xslt" 650 ${_paraview_client_doc_outputs})
653 # Generate proxy documentation. 654 if (_paraview_generate_proxy_documentation_run AND CMAKE_SCRIPT_MODE_FILE)
655 function (xslt reason xsl xml)
656 set(output
"${ARGV3}")
659 set(_xslt_output_args)
661 list(APPEND _xslt_output_args
662 --output
"${output}")
665 COMMAND
"${xsltproc}" 670 OUTPUT_VARIABLE _paraview_gpd_output
671 ERROR_VARIABLE _paraview_gpd_error
672 RESULT_VARIABLE _paraview_gpd_result)
673 string(REPLACE [[<?xml
version=
"1.0"?>]]
"" _paraview_gpd_output
"${_paraview_gpd_output}")
675 set(_xslt_output_args)
677 list(APPEND _xslt_output_args
681 COMMAND
"${xmlpatterns}" 685 OUTPUT_VARIABLE _paraview_gpd_output
686 ERROR_VARIABLE _paraview_gpd_error
687 RESULT_VARIABLE _paraview_gpd_result)
690 "No XSL transformer found.")
693 if (_paraview_gpd_result)
695 "Failed to ${reason}: ${_paraview_gpd_error}")
698 set(_paraview_gpd_output
699 "${_paraview_gpd_output}" 703 file(READ
"${xmls_file}" xmls)
705 set(_paraview_gpd_to_xml
"${CMAKE_CURRENT_LIST_DIR}/paraview_servermanager_convert_xml.xsl")
706 set(_paraview_gpd_to_catindex
"${CMAKE_CURRENT_LIST_DIR}/paraview_servermanager_convert_categoryindex.xsl")
707 set(_paraview_gpd_to_html
"${CMAKE_CURRENT_LIST_DIR}/paraview_servermanager_convert_html.xsl")
708 set(_paraview_gpd_to_wiki
"${CMAKE_CURRENT_LIST_DIR}/paraview_servermanager_convert_wiki.xsl.in")
710 set(_paraview_gpd_xslt
"<xml>\n")
711 file(MAKE_DIRECTORY
"${output_dir}")
712 foreach (_paraview_gpd_xml IN LISTS xmls)
713 xslt(
"convert servermanager XML" 714 "${_paraview_gpd_to_xml}" 715 "${_paraview_gpd_xml}")
717 string(APPEND _paraview_gpd_xslt
718 "${_paraview_gpd_output}")
720 string(APPEND _paraview_gpd_xslt
723 file(WRITE
"${output_file}.xslt" 724 "${_paraview_gpd_xslt}")
725 xslt(
"generate category index" 726 "${_paraview_gpd_to_catindex}" 727 "${output_file}.xslt" 730 # Generate HTML files. 731 xslt(
"generate HTML output" 732 "${_paraview_gpd_to_html}" 735 # Escape open/close brackets as HTML entities as they somehow interfere with the foreach loop below. 736 string(REPLACE
"[" "[" _paraview_gpd_output
"${_paraview_gpd_output}")
737 string(REPLACE
"]" "]" _paraview_gpd_output
"${_paraview_gpd_output}")
742 # Convert into a list of HTML documents. 743 # This version handles the output of xsltproc: 744 string(REPLACE
"</html><html>" "</html>\n;<html>" _paraview_gpd_output
"${_paraview_gpd_output}")
745 # This version handles the output of xmlpatterns: 746 # xxx(Remove when Qt5 is deprecated) 747 string(REPLACE
"</html>\n<html>" "</html>\n;<html>" _paraview_gpd_output
"${_paraview_gpd_output}")
749 foreach (_paraview_gpd_html_doc IN LISTS _paraview_gpd_output)
751 string(REGEX MATCH
"<meta name=\"filename\" contents=\"([^\"]*)\"" _
"${_paraview_gpd_html_doc}")
752 set(_paraview_gpd_filename
"${CMAKE_MATCH_1}")
753 if (NOT _paraview_gpd_filename)
755 "No filename for an HTML output?")
758 # Replace reStructured Text markup. 759 string(REGEX REPLACE
"\\*\\*([^*]+)\\*\\*" "<b>\\1</b>" _paraview_gpd_html_doc
"${_paraview_gpd_html_doc}")
760 string(REGEX REPLACE
"\\*([^*]+)\\*" "<em>\\1</em>" _paraview_gpd_html_doc
"${_paraview_gpd_html_doc}")
761 string(REGEX REPLACE
"\n\n- " "\n<ul><li>" _paraview_gpd_html_doc
"${_paraview_gpd_html_doc}")
762 string(REGEX REPLACE
"\n-" "\n<li>" _paraview_gpd_html_doc
"${_paraview_gpd_html_doc}")
763 string(REGEX REPLACE
"<li>(.*)\n\n([^-])" "<li>\\1</ul>\n\\2" _paraview_gpd_html_doc
"${_paraview_gpd_html_doc}")
764 string(REGEX REPLACE
"\n\n" "\n<p>\n" _paraview_gpd_html_doc
"${_paraview_gpd_html_doc}")
765 file(WRITE
"${output_dir}/${_paraview_gpd_filename}" 766 "${_paraview_gpd_html_doc}\n")
769 # Generate Wiki files. 770 string(REGEX MATCHALL
"proxy_group=\"[^\"]*\"" _paraview_gpd_groups
"${_paraview_gpd_xslt}")
771 string(REGEX REPLACE
"proxy_group=\"([^\"]*)\"" "\\1" _paraview_gpd_groups
"${_paraview_gpd_groups}")
772 list(APPEND _paraview_gpd_groups readers)
773 if (_paraview_gpd_groups)
774 list(REMOVE_DUPLICATES _paraview_gpd_groups)
777 foreach (_paraview_gpd_group IN LISTS _paraview_gpd_groups)
778 if (_paraview_gpd_group STREQUAL
"readers")
779 set(_paraview_gpd_query
"contains(translate($proxy_name, 'ABCDEFGHIJKLMNOPQRSTUVWXYZ', 'abcdefghijklmnopqrstuvwxyz'),'reader')")
780 set(_paraview_gpd_group_real
"sources")
782 set(_paraview_gpd_query
"not(contains(translate($proxy_name, 'ABCDEFGHIJKLMNOPQRSTUVWXYZ', 'abcdefghijklmnopqrstuvwxyz'),'reader'))")
783 set(_paraview_gpd_group_real
"${_paraview_gpd_group}")
786 set(_paraview_gpd_wiki_xsl
787 "${output_dir}/${_paraview_gpd_group}.xsl")
789 "${_paraview_gpd_to_wiki}" 790 "${_paraview_gpd_wiki_xsl}" 792 xslt(
"generate Wiki output" 793 "${_paraview_gpd_wiki_xsl}" 795 string(REGEX REPLACE
" +" " " _paraview_gpd_output
"${_paraview_gpd_output}")
796 string(REPLACE
"\n " "\n" _paraview_gpd_output
"${_paraview_gpd_output}")
797 file(WRITE
"${output_dir}/${_paraview_gpd_group}.wiki" 798 "${_paraview_gpd_output}")
803 ## Generating help documentation 814 [OUTPUT_DIR <directory>]
815 [SOURCE_DIR <directory>]
816 [PATTERNS <pattern>...]
817 [DEPENDS <depend>...]
819 [NAMESPACE <namespace>]
822 [TABLE_OF_CONTENTS <toc>]
823 [TABLE_OF_CONTENTS_FILE <tocfile>]
825 [RESOURCE_FILE <qrcfile>]
826 [RESOURCE_PREFIX <prefix>]
829 * `NAME`: (Required) The basename of the generated `.qch` file.
830 * `TARGET`: (Defaults to `<NAME>`) The
name of the generated
target.
831 * `OUTPUT_PATH`: (Required) This variable is
set to the output path of the
832 generated `.qch` file.
833 * `OUTPUT_DIR`: (Defaults to `${CMAKE_CURRENT_BINARY_DIR}`) Where to place
835 * `SOURCE_DIR`: Where to copy input files from.
836 * `PATTERNS`: (Defaults to `*.*`) If `SOURCE_DIR` is specified, files
837 matching these globs will be copied to `OUTPUT_DIR`.
838 * `DEPENDS`: A list of dependencies which are required before the help can be
839 generated. Note that file paths which are generated via
840 `add_custom_command` must be in the same directory as the
842 * `NAMESPACE`: (Defaults to `<NAME>.org`) The
namespace for the generated
844 * `FOLDER`: (Defaults to `<NAME>`) The folder
for the generated help.
845 * `TABLE_OF_CONTENTS` and `TABLE_OF_CONTENTS_FILE`: At most one may be
846 provided. This is used as the `<toc>` element in the generated help. If not
847 provided at all, a table of contents will be generated.
848 * `RESOURCE_FILE`: If provided, a Qt resource file providing the contents of
849 the generated help will be generated at
this path. It will be available as
850 `<RESOURCE_PREFIX>/<NAME>`.
851 * `RESOURCE_PREFIX`: The prefix to use
for the generated help
's Qt resource. 853 function (paraview_client_generate_help) 854 cmake_parse_arguments(_paraview_client_help 856 "NAME;TARGET;OUTPUT_DIR;SOURCE_DIR;NAMESPACE;FOLDER;TABLE_OF_CONTENTS;TABLE_OF_CONTENTS_FILE;RESOURCE_FILE;RESOURCE_PREFIX;OUTPUT_PATH" 860 if (_paraview_client_help_UNPARSED_ARGUMENTS) 862 "Unparsed arguments for paraview_client_generate_help: " 863 "${_paraview_client_help_UNPARSED_ARGUMENTS}") 866 if (NOT DEFINED _paraview_client_help_NAME) 868 "The `NAME` argument is required.") 871 if (NOT DEFINED _paraview_client_help_OUTPUT_PATH) 873 "The `OUTPUT_PATH` argument is required.") 876 if (NOT DEFINED _paraview_client_help_TARGET) 877 set(_paraview_client_help_TARGET 878 "${_paraview_client_help_NAME}") 881 if (NOT DEFINED _paraview_client_help_OUTPUT_DIR) 882 set(_paraview_client_help_OUTPUT_DIR 883 "${CMAKE_CURRENT_BINARY_DIR}/paraview_help") 886 if (NOT DEFINED _paraview_client_help_NAMESPACE) 887 set(_paraview_client_help_NAMESPACE 888 "${_paraview_client_help_NAME}.org") 891 if (NOT DEFINED _paraview_client_help_FOLDER) 892 set(_paraview_client_help_FOLDER 893 "${_paraview_client_help_NAME}") 896 if (DEFINED _paraview_client_help_TABLE_OF_CONTENTS_FILE) 897 file(READ "${_paraview_client_help_TABLE_OF_CONTENTS_FILE}" 898 _paraview_client_help_toc) 899 elseif (DEFINED _paraview_client_help_TABLE_OF_CONTENTS) 900 set(_paraview_client_help_toc 901 "${_paraview_client_help_TABLE_OF_CONTENTS}") 903 set(_paraview_client_help_toc) 905 string(REPLACE "\n" " " _paraview_client_help_toc "${_paraview_client_help_toc}") 907 if (NOT DEFINED _paraview_client_help_PATTERNS) 908 set(_paraview_client_help_PATTERNS 912 include("${_ParaViewClient_cmake_dir}/paraview-find-package-helpers.cmake" OPTIONAL) 913 set(_paraview_client_help_components 915 if (PARAVIEW_QT_MAJOR_VERSION GREATER "5") 916 list(APPEND _paraview_client_help_components 919 find_package("Qt${PARAVIEW_QT_MAJOR_VERSION}" QUIET REQUIRED COMPONENTS ${_paraview_client_help_components}) 921 set(_paraview_client_help_copy_sources) 922 set(_paraview_client_help_copied_sources) 923 if (DEFINED _paraview_client_help_SOURCE_DIR) 924 list(APPEND _paraview_client_help_copy_sources 925 COMMAND "${CMAKE_COMMAND}" -E copy_directory 926 "${_paraview_client_help_SOURCE_DIR}" 927 "${_paraview_client_help_OUTPUT_DIR}") 929 file(GLOB _paraview_client_help_copied_sources 930 ${_paraview_client_help_PATTERNS}) 933 file(MAKE_DIRECTORY "${_paraview_client_help_OUTPUT_DIR}") 935 set(_paraview_client_help_patterns "${_paraview_client_help_PATTERNS}") 936 _paraview_client_escape_cmake_list(_paraview_client_help_patterns) 938 set(_paraview_client_help_qhp 939 "${_paraview_client_help_OUTPUT_DIR}/${_paraview_client_help_NAME}.qhp") 940 set(_paraview_client_help_output 941 "${_paraview_client_help_OUTPUT_DIR}/${_paraview_client_help_NAME}.qch") 943 OUTPUT "${_paraview_client_help_output}" 944 DEPENDS "${_ParaViewClient_script_file}" 945 ${_paraview_client_help_copied_sources} 946 ${_paraview_client_help_DEPENDS} 947 ${_paraview_client_help_copy_sources} 948 COMMAND "${CMAKE_COMMAND}" 949 "-Doutput_dir=${_paraview_client_help_OUTPUT_DIR}" 950 "-Doutput_file=${_paraview_client_help_qhp}" 951 "-Dnamespace=${_paraview_client_help_NAMESPACE}" 952 "-Dfolder=${_paraview_client_help_FOLDER}" 953 "-Dname=${_paraview_client_help_NAME}" 954 "-Dtoc=${_paraview_client_help_toc}" 955 "-Dpatterns=${_paraview_client_help_patterns}" 956 -D_paraview_generate_help_run=ON 957 -P "${_ParaViewClient_script_file}" 959 COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} 960 "$<TARGET_FILE:Qt${PARAVIEW_QT_MAJOR_VERSION}::qhelpgenerator>" 961 "${_paraview_client_help_qhp}" 963 -o "${_paraview_client_help_output}" 964 COMMENT "Compiling Qt help for ${_paraview_client_help_NAME}" 965 WORKING_DIRECTORY "${_paraview_client_help_OUTPUT_DIR}") 966 add_custom_target("${_paraview_client_help_TARGET}" 968 "${_paraview_client_help_output}") 970 if (DEFINED _paraview_client_help_RESOURCE_FILE) 971 if (NOT DEFINED _paraview_client_help_RESOURCE_PREFIX) 973 "The `RESOURCE_PREFIX` argument is required if `RESOURCE_FILE` is given.") 976 paraview_client_qt_resource( 977 OUTPUT "${_paraview_client_help_RESOURCE_FILE}" 978 PREFIX "${_paraview_client_help_RESOURCE_PREFIX}" 979 FILE "${_paraview_client_help_output}") 980 set_property(SOURCE "${_paraview_client_help_RESOURCE_FILE}" 982 OBJECT_DEPENDS "${_paraview_client_help_output}") 985 set("${_paraview_client_help_OUTPUT_PATH}" 986 "${_paraview_client_help_output}" 990 # Handle the generation of the help file. 991 if (_paraview_generate_help_run AND CMAKE_SCRIPT_MODE_FILE) 992 _paraview_client_unescape_cmake_list(patterns) 994 set(_paraview_help_patterns) 995 foreach (_paraview_help_pattern IN LISTS patterns) 996 if (IS_ABSOLUTE "${_paraview_help_pattern}") 997 list(APPEND _paraview_help_patterns 998 "${_paraview_help_pattern}") 1000 list(APPEND _paraview_help_patterns 1001 "${output_dir}/${_paraview_help_pattern}") 1005 file(GLOB _paraview_help_files 1006 RELATIVE "${output_dir}" 1007 ${_paraview_help_patterns}) 1010 if (NOT _paraview_help_files) 1012 "No matching files given without a table of contents") 1014 set(_paraview_help_subsections "") 1015 list(GET _paraview_help_files 0 1016 _paraview_help_index) 1017 set(_paraview_help_subsections "") 1018 foreach (_paraview_help_file IN LISTS _paraview_help_files) 1019 if (NOT _paraview_help_file MATCHES "\\.html$") 1022 get_filename_component(_paraview_help_name "${_paraview_help_file}" NAME_WE) 1023 set(_paraview_help_title "${_paraview_help_name}") 1024 file(READ "${_paraview_help_file}" _paraview_help_contents) 1025 string(REGEX MATCH "<title>([^<]*)</title>" _ "${_paraview_help_contents}") 1027 set(_paraview_help_title "${CMAKE_MATCH_1}") 1029 string(APPEND _paraview_help_subsections 1030 " <section title=\"${_paraview_help_title}\" ref=\"${_paraview_help_file}\" />\n") 1032 string(TOLOWER "${_paraview_help_name}" _paraview_help_name_lower) 1033 if (_paraview_help_name_lower STREQUAL "index") 1034 set(_paraview_help_index 1035 "${_paraview_help_file}") 1039 "<toc>\n <section title=\"${name}\" ref=\"${_paraview_help_index}\">\n${_paraview_help_subsections} </section>\n</toc>") 1042 set(_paraview_help_file_entries "") 1043 foreach (_paraview_help_file IN LISTS _paraview_help_files) 1044 string(APPEND _paraview_help_file_entries 1045 " <file>${_paraview_help_file}</file>\n") 1048 file(WRITE "${output_file}" 1049 "<?xml version=\"1.0\" encoding=\"UTF-8\"?> 1050 <QtHelpProject version=\"1.0\"> 1051 <namespace>${namespace}</namespace> 1052 <virtualFolder>${folder}</virtualFolder> 1056 <!-- TODO: how to handle keywords? --> 1059 ${_paraview_help_file_entries} 1062 </QtHelpProject>\n") 1068 Compiling Qt resources into a client can be a little tedious. To help with 1069 this, some functions are provided to make it easier to embed content into the 1077 paraview_client_qt_resource( 1084 Outputs a Qt resource to the file given to the `OUTPUT` argument. Its resource 1085 name is `<PREFIX>/<ALIAS>`. The contents are copied from the contents of the 1086 file specified by the `FILE` argument. If not given the name of the file is 1087 used as the `ALIAS`. 1089 function (paraview_client_qt_resource) 1090 cmake_parse_arguments(_paraview_client_resource 1092 "OUTPUT;PREFIX;ALIAS;FILE" 1096 if (_paraview_client_resource_UNPARSED_ARGUMENTS) 1098 "Unparsed arguments for paraview_client_qt_resource: " 1099 "${_paraview_client_resource_UNPARSED_ARGUMENTS}") 1102 if (NOT DEFINED _paraview_client_resource_OUTPUT) 1104 "The `OUTPUT` argument is required.") 1107 if (NOT DEFINED _paraview_client_resource_PREFIX) 1109 "The `PREFIX` argument is required.") 1112 if (NOT DEFINED _paraview_client_resource_FILE) 1114 "The `FILE` argument is required.") 1117 if (NOT DEFINED _paraview_client_resource_ALIAS) 1118 get_filename_component(_paraview_client_resource_ALIAS 1119 "${_paraview_client_resource_FILE}" 1123 get_filename_component(_paraview_client_resource_file_path 1124 "${_paraview_client_resource_FILE}" 1126 get_filename_component(_paraview_client_resource_file_path 1127 "${_paraview_client_resource_file_path}" 1131 "${_paraview_client_resource_file_path}" 1132 _paraview_client_resource_file_path) 1135 # We cannot use file(GENERATE) because automoc doesn't like when generated
1136 # sources are in the source list.
1137 file(WRITE
"${_paraview_client_resource_OUTPUT}.tmp" 1139 <qresource prefix=\"/${_paraview_client_resource_PREFIX}\"> 1140 <file alias=\"${_paraview_client_resource_ALIAS}\">${_paraview_client_resource_file_path}</file> 1144 "${_paraview_client_resource_OUTPUT}.tmp" 1145 "${_paraview_client_resource_OUTPUT}" 1159 Outputs a Qt resource to the file given to the `OUTPUT` argument. Its resource
1160 name is `<PREFIX>/<filename>`
for each of the files in the given list. If
1161 aliases other than the filenames are required, the
1165 cmake_parse_arguments(_paraview_client_resources
1171 if (_paraview_client_resources_UNPARSED_ARGUMENTS)
1173 "Unparsed arguments for paraview_client_qt_resources: " 1174 "${_paraview_client_resources_UNPARSED_ARGUMENTS}")
1177 if (NOT DEFINED _paraview_client_resources_OUTPUT)
1179 "The `OUTPUT` argument is required.")
1182 if (NOT DEFINED _paraview_client_resources_PREFIX)
1184 "The `PREFIX` argument is required.")
1187 if (NOT DEFINED _paraview_client_resources_FILES)
1189 "The `FILES` argument is required.")
1192 set(_paraview_client_resources_contents)
1194 string(APPEND _paraview_client_resources_contents
1195 "<RCC>\n <qresource prefix=\"${_paraview_client_resources_PREFIX}\">\n")
1196 foreach (_paraview_client_resources_file IN LISTS _paraview_client_resources_FILES)
1197 get_filename_component(_paraview_client_resources_alias
1198 "${_paraview_client_resources_file}" 1200 get_filename_component(_paraview_client_resources_file_path
1201 "${_paraview_client_resources_file}" 1203 get_filename_component(_paraview_client_resources_file_path
1204 "${_paraview_client_resources_file_path}" 1208 "${_paraview_client_resources_file_path}" 1209 _paraview_client_resources_file_path)
1211 string(APPEND _paraview_client_resources_contents
1212 " <file alias=\"${_paraview_client_resources_alias}\">${_paraview_client_resources_file_path}</file>\n")
1214 string(APPEND _paraview_client_resources_contents
1215 " </qresource>\n</RCC>\n")
1217 # We cannot use file(GENERATE) because automoc doesn
't like when generated 1218 # sources are in the source list. 1219 file(WRITE "${_paraview_client_resources_OUTPUT}.tmp" 1220 "${_paraview_client_resources_contents}") 1222 "${_paraview_client_resources_OUTPUT}.tmp" 1223 "${_paraview_client_resources_OUTPUT}"
boost::graph_traits< vtkGraph *>::vertex_descriptor target(boost::graph_traits< vtkGraph *>::edge_descriptor e, vtkGraph *)
function _paraview_client_unescape_cmake_list(variable)
function _paraview_client_escape_cmake_list(variable)
.md INTERNAL Quoting
function paraview_create_translation()
Generate a Qt translation source file from the given source files.
function paraview_client_qt_resources()
.md Many files
function paraview_generate_translation_header()
Generate a C++ header with input XML labels and UI strings that can be parsed by Qt Linguist tools...
function paraview_client_generate_help()
.md Generating help documentation
function paraview_plugin_write_conf()
.md Plugin configuration files
function paraview_client_documentation()
.md Documentation from XML files
#define BUILD_SHARED_LIBS
function paraview_client_add()
.md Building a client
pqPVApplicationCore is the application code used by ParaView-based applications that use more of Para...
function paraview_client_qt_resource()
.md Qt resources