Generate documentation using the FindSphinx.cmake module
Signed-off-by: Jeroen Koekkoek <jeroen@koekkoek.nl>
This commit is contained in:
parent
9cf4b97f1a
commit
b916f0bfb7
23 changed files with 151 additions and 3503 deletions
|
@ -206,9 +206,7 @@ if(BUILD_IDLC)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
option(BUILD_DOCS "Build documentation." OFF)
|
option(BUILD_DOCS "Build documentation." OFF)
|
||||||
if(BUILD_DOCS)
|
|
||||||
add_subdirectory(docs)
|
add_subdirectory(docs)
|
||||||
endif()
|
|
||||||
|
|
||||||
# Pull-in CPack and support for generating <Package>Config.cmake and packages.
|
# Pull-in CPack and support for generating <Package>Config.cmake and packages.
|
||||||
include(Packaging)
|
include(Packaging)
|
||||||
|
|
|
@ -30,9 +30,11 @@ macro(_Sphinx_find_executable _exe)
|
||||||
set(SPHINX_${_uc}_VERSION "${CMAKE_MATCH_1}")
|
set(SPHINX_${_uc}_VERSION "${CMAKE_MATCH_1}")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
if(NOT TARGET Sphinx::${_exe})
|
||||||
add_executable(Sphinx::${_exe} IMPORTED GLOBAL)
|
add_executable(Sphinx::${_exe} IMPORTED GLOBAL)
|
||||||
set_target_properties(Sphinx::${_exe} PROPERTIES
|
set_target_properties(Sphinx::${_exe} PROPERTIES
|
||||||
IMPORTED_LOCATION "${SPHINX_${_uc}_EXECUTABLE}")
|
IMPORTED_LOCATION "${SPHINX_${_uc}_EXECUTABLE}")
|
||||||
|
endif()
|
||||||
set(Sphinx_${_exe}_FOUND TRUE)
|
set(Sphinx_${_exe}_FOUND TRUE)
|
||||||
else()
|
else()
|
||||||
set(Sphinx_${_exe}_FOUND FALSE)
|
set(Sphinx_${_exe}_FOUND FALSE)
|
||||||
|
@ -120,7 +122,7 @@ endforeach()
|
||||||
|
|
||||||
find_package_handle_standard_args(
|
find_package_handle_standard_args(
|
||||||
Sphinx
|
Sphinx
|
||||||
VERSION_VAR SPHINX_VERSION
|
VERSION_VAR SPHINX_BUILD_VERSION
|
||||||
REQUIRED_VARS SPHINX_BUILD_EXECUTABLE SPHINX_BUILD_VERSION
|
REQUIRED_VARS SPHINX_BUILD_EXECUTABLE SPHINX_BUILD_VERSION
|
||||||
HANDLE_COMPONENTS)
|
HANDLE_COMPONENTS)
|
||||||
|
|
||||||
|
@ -160,6 +162,10 @@ function(_Sphinx_generate_confpy _target _cachedir)
|
||||||
set(SPHINX_LANGUAGE "en")
|
set(SPHINX_LANGUAGE "en")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
if(NOT DEFINED SPHINX_MASTER)
|
||||||
|
set(SPHINX_MASTER "index")
|
||||||
|
endif()
|
||||||
|
|
||||||
set(_known_exts autodoc doctest intersphinx todo coverage imgmath mathjax
|
set(_known_exts autodoc doctest intersphinx todo coverage imgmath mathjax
|
||||||
ifconfig viewcode githubpages)
|
ifconfig viewcode githubpages)
|
||||||
|
|
||||||
|
@ -197,6 +203,7 @@ function(_Sphinx_generate_confpy _target _cachedir)
|
||||||
-v "${SPHINX_VERSION}"
|
-v "${SPHINX_VERSION}"
|
||||||
-r "${SPHINX_RELEASE}"
|
-r "${SPHINX_RELEASE}"
|
||||||
-l "${SPHINX_LANGUAGE}"
|
-l "${SPHINX_LANGUAGE}"
|
||||||
|
--master "${SPHINX_MASTER}"
|
||||||
${_opts} ${_exts} "${_templatedir}"
|
${_opts} ${_exts} "${_templatedir}"
|
||||||
RESULT_VARIABLE _result
|
RESULT_VARIABLE _result
|
||||||
OUTPUT_QUIET)
|
OUTPUT_QUIET)
|
||||||
|
|
|
@ -8,42 +8,5 @@
|
||||||
# http://www.eclipse.org/org/documents/edl-v10.php.
|
# http://www.eclipse.org/org/documents/edl-v10.php.
|
||||||
#
|
#
|
||||||
# SPDX-License-Identifier: EPL-2.0 OR BSD-3-Clause
|
# SPDX-License-Identifier: EPL-2.0 OR BSD-3-Clause
|
||||||
|
|
||||||
# TODO depending on requirements we can add/remove options as needed,
|
|
||||||
# these are examples of generators we'll need as a minimum.
|
|
||||||
# Perhaps we should also consider options for building subset of all docs.
|
|
||||||
# When a certain doc is related to a target, no option is needed; you can simply check if the target exists
|
|
||||||
# (i.e. if a target 'ddsc' exists, build ddsc api docs). And possibly make the target definition dependent on an option.
|
|
||||||
|
|
||||||
find_program(SPHINX_EXECUTABLE NAMES sphinx-build DOC "Sphinx documentation builder")
|
|
||||||
if (NOT SPHINX_EXECUTABLE)
|
|
||||||
message(FATAL_ERROR "${CMAKE_PROJECT_NAME} documentation: unable to find sphinx-build executable")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
find_package(Doxygen)
|
|
||||||
if (NOT Doxygen_FOUND)
|
|
||||||
message(FATAL_ERROR "${CMAKE_PROJECT_NAME} documentation: unable to find Doxygen")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# Creating pdf from latex requires latexmk (which depends on perl, latexpdf et. al)
|
|
||||||
find_program(LATEXMK_EXECUTABLE NAMES latexmk DOC "LateX PDF Generator")
|
|
||||||
if (NOT LATEXMK_EXECUTABLE)
|
|
||||||
message(FATAL_ERROR "${CMAKE_PROJECT_NAME} documentation: unable to find latexmk")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if (SPHINX_EXECUTABLE AND Doxygen_FOUND AND LATEXMK_EXECUTABLE)
|
|
||||||
set(BUILD_DOCS ON PARENT_SCOPE) # for examples' docs
|
|
||||||
set(BUILD_DOCS ON)
|
|
||||||
message(STATUS "${CMAKE_PROJECT_NAME} documentation: Success (build)")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(BUILD_DOCS)
|
|
||||||
add_subdirectory(manual)
|
add_subdirectory(manual)
|
||||||
endif()
|
|
||||||
|
|
||||||
install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/html
|
|
||||||
DESTINATION ${CMAKE_INSTALL_DOCDIR}
|
|
||||||
COMPONENT dev)
|
|
||||||
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_PROJECT_NAME}.pdf
|
|
||||||
DESTINATION ${CMAKE_INSTALL_DOCDIR}
|
|
||||||
COMPONENT dev)
|
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
#
|
#
|
||||||
# Copyright(c) 2006 to 2018 ADLINK Technology Limited and others
|
# Copyright(c) 2006 to 2019 ADLINK Technology Limited and others
|
||||||
#
|
#
|
||||||
# This program and the accompanying materials are made available under the
|
# This program and the accompanying materials are made available under the
|
||||||
# terms of the Eclipse Public License v. 2.0 which is available at
|
# terms of the Eclipse Public License v. 2.0 which is available at
|
||||||
|
@ -8,115 +8,16 @@
|
||||||
# http://www.eclipse.org/org/documents/edl-v10.php.
|
# http://www.eclipse.org/org/documents/edl-v10.php.
|
||||||
#
|
#
|
||||||
# SPDX-License-Identifier: EPL-2.0 OR BSD-3-Clause
|
# SPDX-License-Identifier: EPL-2.0 OR BSD-3-Clause
|
||||||
|
if(BUILD_DOCS)
|
||||||
# TODO depending on requirements we can add/remove options as needed,
|
find_package(Sphinx REQUIRED breathe)
|
||||||
# these are examples of generators we'll need as a minimum.
|
sphinx_add_docs(
|
||||||
# Perhaps we should also consider options for building subset of all docs.
|
docs
|
||||||
# When a certain doc is related to a target, no option is needed; you can simply check if the target exists
|
BREATHE_PROJECTS ddsc_api_docs
|
||||||
# (i.e. if a target 'ddsc' exists, build ddsc api docs). And possibly make the target definition dependent on an option.
|
BUILDER html
|
||||||
|
SOURCE_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}")
|
||||||
# Generate ddsc API docs in XML format using Doxygen, if the ddsc target is defined.
|
install(
|
||||||
# The XML will serve as input for sphinx' breathe plugin
|
DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/docs/"
|
||||||
if (TARGET ${CMAKE_PROJECT_NAME}::ddsc)
|
DESTINATION "${CMAKE_INSTALL_DOCDIR}/manual"
|
||||||
# Process doxygen configuration file, for ddsc
|
COMPONENT dev)
|
||||||
set(doxy_conf_project "${CMAKE_PROJECT_NAME_FULL} C API Documentation")
|
|
||||||
set(doxy_conf_outputdir "ddsc_api")
|
|
||||||
set(doxy_conf_input "${PROJECT_SOURCE_DIR}/src/core/ddsc/include/dds/dds.h ${PROJECT_SOURCE_DIR}/src/core/ddsc/include/dds")
|
|
||||||
configure_file(Doxyfile.in Doxyfile @ONLY)
|
|
||||||
|
|
||||||
add_custom_target(ddsc_docs
|
|
||||||
${DOXYGEN_EXECUTABLE} Doxyfile
|
|
||||||
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
|
|
||||||
COMMENT "Running Doxygen for API docs generation"
|
|
||||||
VERBATIM)
|
|
||||||
|
|
||||||
# Remove generated files when cleaning the build tree
|
|
||||||
set_property(DIRECTORY APPEND PROPERTY ADDITIONAL_MAKE_CLEAN_FILES ${doxy_conf_outputdir})
|
|
||||||
|
|
||||||
# Add ddsc api docs to sphinx' breathe projects
|
|
||||||
set(sph_conf_breathe_projs "\"ddsc_api\": \"${doxy_conf_outputdir}/xml\"")
|
|
||||||
|
|
||||||
add_custom_command(TARGET ddsc_docs
|
|
||||||
POST_BUILD
|
|
||||||
WORKING_DIRECTORY "${doxy_conf_outputdir}"
|
|
||||||
COMMAND ${CMAKE_COMMAND} -E tar "zcf" "${CMAKE_PROJECT_NAME}_C_HTML.tar.gz" "ddsc")
|
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# Process sphinx configuration file
|
|
||||||
set(sph_conf_author "Eclipse Cyclone DDS project")
|
|
||||||
set(sph_conf_version "${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR}.${PROJECT_VERSION_PATCH}")
|
|
||||||
set(sph_conf_release "${PROJECT_VERSION}")
|
|
||||||
configure_file(conf.py.in conf.py @ONLY)
|
|
||||||
|
|
||||||
# Define a list of output formats (-b option for sphinx-build)
|
|
||||||
set(docs_builders "")
|
|
||||||
list(APPEND docs_builders html)
|
|
||||||
list(APPEND docs_builders latex)
|
|
||||||
|
|
||||||
# Define custom commands for running sphinx-build for different docs builders
|
|
||||||
set(docs_outputs "")
|
|
||||||
foreach(builder ${docs_builders})
|
|
||||||
set(docs_builder_output "docs_${builder}_output")
|
|
||||||
# Log stdout (not stderr) to a file instead of messing up build output
|
|
||||||
set(docs_builder_log "sphinx-build-${builder}.log")
|
|
||||||
|
|
||||||
add_custom_command(OUTPUT ${docs_builder_output}
|
|
||||||
COMMAND ${SPHINX_EXECUTABLE}
|
|
||||||
-b ${builder}
|
|
||||||
-d ${CMAKE_CURRENT_BINARY_DIR}/cache
|
|
||||||
-c ${CMAKE_CURRENT_BINARY_DIR}
|
|
||||||
${PROJECT_SOURCE_DIR}/docs/manual
|
|
||||||
${CMAKE_CURRENT_BINARY_DIR}/${builder} > ${docs_builder_log}
|
|
||||||
COMMENT "Running Sphinx for ${builder} output"
|
|
||||||
VERBATIM)
|
|
||||||
|
|
||||||
# FIXME: This is definitely in the wrong location
|
|
||||||
if(builder STREQUAL html)
|
|
||||||
add_custom_command(OUTPUT ${docs_builder_output}
|
|
||||||
COMMAND ${CMAKE_COMMAND}
|
|
||||||
-E tar "zcf"
|
|
||||||
"${CMAKE_PROJECT_NAME}HTML.tar.gz"
|
|
||||||
"html"
|
|
||||||
APPEND
|
|
||||||
VERBATIM)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# Create a pdf from the latex builder output, by appending a latexmk command
|
|
||||||
# TODO look into rinohtype as an alternative (don't bother with rst2pdf, it's no good)
|
|
||||||
if(builder STREQUAL latex)
|
|
||||||
add_custom_command(OUTPUT ${docs_builder_output}
|
|
||||||
COMMAND ${LATEXMK_EXECUTABLE}
|
|
||||||
-interaction=nonstopmode
|
|
||||||
-silent
|
|
||||||
-output-directory=${builder}
|
|
||||||
-pdf -dvi- -ps- -cd- ${builder}/${CMAKE_PROJECT_NAME}.tex
|
|
||||||
APPEND
|
|
||||||
VERBATIM)
|
|
||||||
|
|
||||||
# Move the pdf, so that install rules don't need to differentiate between built and downloaded docs
|
|
||||||
add_custom_command(OUTPUT ${docs_builder_output}
|
|
||||||
COMMAND ${CMAKE_COMMAND}
|
|
||||||
-E rename
|
|
||||||
"latex/${CMAKE_PROJECT_NAME}.pdf"
|
|
||||||
"${CMAKE_PROJECT_NAME}.pdf"
|
|
||||||
APPEND
|
|
||||||
VERBATIM)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# OUTPUT is a fake target / symbolic name, not an actual file
|
|
||||||
set_property(SOURCE ${docs_builder_output} PROPERTY SYMBOLIC 1)
|
|
||||||
# Remove generated files when cleaning the build tree
|
|
||||||
set_property(DIRECTORY APPEND PROPERTY ADDITIONAL_MAKE_CLEAN_FILES
|
|
||||||
${builder}
|
|
||||||
${docs_builder_log})
|
|
||||||
|
|
||||||
# Include this builder as a dependency of the general 'docs' target
|
|
||||||
list(APPEND docs_outputs ${docs_builder_output})
|
|
||||||
endforeach()
|
|
||||||
|
|
||||||
# Remove generated files when cleaning the build tree
|
|
||||||
set_property(DIRECTORY APPEND PROPERTY ADDITIONAL_MAKE_CLEAN_FILES
|
|
||||||
${CMAKE_PROJECT_NAME}HTML.tar.gz
|
|
||||||
${CMAKE_PROJECT_NAME}.pdf)
|
|
||||||
|
|
||||||
add_custom_target(docs ALL DEPENDS ddsc_docs ${docs_outputs})
|
|
||||||
|
|
File diff suppressed because it is too large
Load diff
Binary file not shown.
Before Width: | Height: | Size: 27 KiB |
|
@ -1,178 +0,0 @@
|
||||||
# -*- coding: utf-8 -*-
|
|
||||||
#
|
|
||||||
# This file is execfile()d with the current directory set to its
|
|
||||||
# containing dir.
|
|
||||||
#
|
|
||||||
# Note that not all possible configuration values are present in this
|
|
||||||
# autogenerated file.
|
|
||||||
#
|
|
||||||
# All configuration values have a default; values that are commented out
|
|
||||||
# serve to show the default.
|
|
||||||
|
|
||||||
# If extensions (or modules to document with autodoc) are in another directory,
|
|
||||||
# add these directories to sys.path here. If the directory is relative to the
|
|
||||||
# documentation root, use os.path.abspath to make it absolute, like shown here.
|
|
||||||
#
|
|
||||||
# import os
|
|
||||||
# import sys
|
|
||||||
# sys.path.insert(0, os.path.abspath('.'))
|
|
||||||
|
|
||||||
|
|
||||||
# -- General configuration ------------------------------------------------
|
|
||||||
|
|
||||||
# If your documentation needs a minimal Sphinx version, state it here.
|
|
||||||
#
|
|
||||||
# needs_sphinx = '1.0'
|
|
||||||
|
|
||||||
# Add any Sphinx extension module names here, as strings. They can be
|
|
||||||
# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
|
|
||||||
# ones.
|
|
||||||
extensions = ['sphinx.ext.autodoc',
|
|
||||||
'sphinx.ext.intersphinx',
|
|
||||||
'sphinx.ext.coverage',
|
|
||||||
'sphinx.ext.imgmath',
|
|
||||||
'sphinx.ext.ifconfig',
|
|
||||||
'breathe']
|
|
||||||
|
|
||||||
breathe_projects = { @sph_conf_breathe_projs@ }
|
|
||||||
|
|
||||||
# Add any paths that contain templates here, relative to this directory.
|
|
||||||
#templates_path = ['@CMAKE_CURRENT_SOuRCE_DIR@/_templates']
|
|
||||||
|
|
||||||
# The suffix(es) of source filenames.
|
|
||||||
# You can specify multiple suffix as a list of string:
|
|
||||||
#
|
|
||||||
# source_suffix = ['.rst', '.md']
|
|
||||||
source_suffix = '.rst'
|
|
||||||
|
|
||||||
# The master toctree document.
|
|
||||||
master_doc = 'index'
|
|
||||||
|
|
||||||
# General information about the project.
|
|
||||||
project = u'@CMAKE_PROJECT_NAME_FULL@'
|
|
||||||
copyright = u'@sph_conf_copyright@'
|
|
||||||
author = u'@sph_conf_author@'
|
|
||||||
|
|
||||||
|
|
||||||
# The version info for the project you're documenting, acts as replacement for
|
|
||||||
# |version| and |release|, also used in various other places throughout the
|
|
||||||
# built documents.
|
|
||||||
#
|
|
||||||
# The short X.Y.Z version.
|
|
||||||
version = u'@sph_conf_version@'
|
|
||||||
# The full version, including alpha/beta/rc tags.
|
|
||||||
release = u'@sph_conf_release@'
|
|
||||||
|
|
||||||
# The language for content autogenerated by Sphinx. Refer to documentation
|
|
||||||
# for a list of supported languages.
|
|
||||||
#
|
|
||||||
# This is also used if you do content translation via gettext catalogs.
|
|
||||||
# Usually you set "language" from the command line for these cases.
|
|
||||||
language = u'en'
|
|
||||||
|
|
||||||
# List of patterns, relative to source directory, that match files and
|
|
||||||
# directories to ignore when looking for source files.
|
|
||||||
# This patterns also effect to html_static_path and html_extra_path
|
|
||||||
exclude_patterns = []
|
|
||||||
|
|
||||||
# The name of the Pygments (syntax highlighting) style to use.
|
|
||||||
pygments_style = 'sphinx'
|
|
||||||
|
|
||||||
# If true, `todo` and `todoList` produce output, else they produce nothing.
|
|
||||||
todo_include_todos = False
|
|
||||||
|
|
||||||
|
|
||||||
# -- Options for HTML output ----------------------------------------------
|
|
||||||
|
|
||||||
# The theme to use for HTML and HTML Help pages. See the documentation for
|
|
||||||
# a list of builtin themes.
|
|
||||||
#
|
|
||||||
html_theme = 'alabaster'
|
|
||||||
|
|
||||||
# Theme options are theme-specific and customize the look and feel of a theme
|
|
||||||
# further. For a list of options available for each theme, see the
|
|
||||||
# documentation.
|
|
||||||
#
|
|
||||||
# html_theme_options = {}
|
|
||||||
|
|
||||||
# Add any paths that contain custom static files (such as style sheets) here,
|
|
||||||
# relative to this directory. They are copied after the builtin static files,
|
|
||||||
# so a file named "default.css" will overwrite the builtin "default.css".
|
|
||||||
html_static_path = ['@CMAKE_CURRENT_SOURCE_DIR@/_static']
|
|
||||||
|
|
||||||
# Custom sidebar templates, must be a dictionary that maps document names
|
|
||||||
# to template names.
|
|
||||||
#
|
|
||||||
# This is required for the alabaster theme
|
|
||||||
# refs: http://alabaster.readthedocs.io/en/latest/installation.html#sidebars
|
|
||||||
html_sidebars = {
|
|
||||||
'**': [
|
|
||||||
'about.html',
|
|
||||||
'navigation.html',
|
|
||||||
'relations.html', # needs 'show_related': True theme option to display
|
|
||||||
'searchbox.html',
|
|
||||||
'donate.html',
|
|
||||||
]
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
# -- Options for HTMLHelp output ------------------------------------------
|
|
||||||
|
|
||||||
# Output file base name for HTML help builder.
|
|
||||||
htmlhelp_basename = '@CMAKE_PROJECT_NAME_FULL@doc'
|
|
||||||
|
|
||||||
|
|
||||||
# -- Options for LaTeX output ---------------------------------------------
|
|
||||||
|
|
||||||
latex_elements = {
|
|
||||||
# The paper size ('letterpaper' or 'a4paper').
|
|
||||||
#
|
|
||||||
# 'papersize': 'letterpaper',
|
|
||||||
|
|
||||||
# The font size ('10pt', '11pt' or '12pt').
|
|
||||||
#
|
|
||||||
# 'pointsize': '10pt',
|
|
||||||
|
|
||||||
# Additional stuff for the LaTeX preamble.
|
|
||||||
#
|
|
||||||
# 'preamble': '',
|
|
||||||
|
|
||||||
# Latex figure (float) alignment
|
|
||||||
#
|
|
||||||
# 'figure_align': 'htbp',
|
|
||||||
'babel': '\\usepackage[english]{babel}'
|
|
||||||
}
|
|
||||||
|
|
||||||
# Grouping the document tree into LaTeX files. List of tuples
|
|
||||||
# (source start file, target name, title,
|
|
||||||
# author, documentclass [howto, manual, or own class]).
|
|
||||||
latex_documents = [
|
|
||||||
(master_doc, '@CMAKE_PROJECT_NAME@.tex', u'@CMAKE_PROJECT_NAME_FULL@',
|
|
||||||
u'@sph_conf_author@', 'manual'),
|
|
||||||
]
|
|
||||||
|
|
||||||
latex_logo = u'@sph_logo@'
|
|
||||||
|
|
||||||
# -- Options for manual page output ---------------------------------------
|
|
||||||
|
|
||||||
# One entry per manual page. List of tuples
|
|
||||||
# (source start file, name, description, authors, manual section).
|
|
||||||
#man_pages = [
|
|
||||||
# (master_doc, 'cyclonedds', u'Eclipse Cyclone DDS Documentation',
|
|
||||||
# [author], 1)
|
|
||||||
#]
|
|
||||||
|
|
||||||
|
|
||||||
# -- Options for Texinfo output -------------------------------------------
|
|
||||||
|
|
||||||
# Grouping the document tree into Texinfo files. List of tuples
|
|
||||||
# (source start file, target name, title, author,
|
|
||||||
# dir menu entry, description, category)
|
|
||||||
texinfo_documents = [
|
|
||||||
(master_doc, '@CMAKE_PROJECT_NAME_FULL@', u'@CMAKE_PROJECT_NAME_FULL@ Documentation',
|
|
||||||
author, '@CMAKE_PROJECT_NAME@', 'One line description of project.',
|
|
||||||
'Miscellaneous'),
|
|
||||||
]
|
|
||||||
|
|
||||||
# Example configuration for intersphinx: refer to the Python standard library.
|
|
||||||
#intersphinx_mapping = {'https://docs.python.org/': None}
|
|
|
@ -13,4 +13,4 @@ Eclipse Cyclone DDS C API Reference
|
||||||
===================================
|
===================================
|
||||||
|
|
||||||
.. doxygenindex::
|
.. doxygenindex::
|
||||||
:project: ddsc_api
|
:project: ddsc_api_docs
|
||||||
|
|
|
@ -16,90 +16,14 @@ add_subdirectory(roundtrip)
|
||||||
add_subdirectory(throughput)
|
add_subdirectory(throughput)
|
||||||
|
|
||||||
if (BUILD_DOCS)
|
if (BUILD_DOCS)
|
||||||
message(STATUS "${CMAKE_PROJECT_NAME} Examples documentation: Success (build)")
|
find_package(Sphinx REQUIRED)
|
||||||
set(EXAMPLES_HTML_ARCHIVE "${CMAKE_PROJECT_NAME}ExamplesHTML.tar.gz")
|
sphinx_add_docs(
|
||||||
# Process sphinx configuration file
|
examples_docs
|
||||||
set(sph_conf_author "Eclipse Cyclone DDS project")
|
BUILDER html
|
||||||
string(TIMESTAMP sph_conf_copyright "%Y")
|
SOURCE_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}")
|
||||||
set(sph_conf_version "${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR}.${PROJECT_VERSION_PATCH}")
|
|
||||||
set(sph_conf_release "${PROJECT_VERSION}")
|
|
||||||
configure_file(sphinx-conf.py.in conf.py @ONLY)
|
|
||||||
|
|
||||||
set(builder_output "examples_html_output")
|
|
||||||
set(builder_log "sphinx-examples-html.log")
|
|
||||||
add_custom_command(OUTPUT ${builder_output}
|
|
||||||
COMMAND ${SPHINX_EXECUTABLE}
|
|
||||||
-b html
|
|
||||||
-d ${CMAKE_CURRENT_BINARY_DIR}/cache
|
|
||||||
-c ${CMAKE_CURRENT_BINARY_DIR}
|
|
||||||
${CMAKE_CURRENT_SOURCE_DIR}
|
|
||||||
${CMAKE_CURRENT_BINARY_DIR} > ${builder_log}
|
|
||||||
COMMENT "Running Sphinx for examples html output"
|
|
||||||
VERBATIM)
|
|
||||||
|
|
||||||
# OUTPUT is a fake target / symbolic name, not an actual file
|
|
||||||
set_property(SOURCE ${builder_output} PROPERTY SYMBOLIC 1)
|
|
||||||
add_custom_target(examples_docs ALL DEPENDS ${builder_output})
|
|
||||||
|
|
||||||
# Archive the output html files, will become a jenkins artifact for use in other jobs
|
|
||||||
# TODO this hardcoded list and archiving should be replaced by ExternalData refs
|
|
||||||
set(html_outputs
|
|
||||||
"_static"
|
|
||||||
"search.html"
|
|
||||||
"searchindex.js"
|
|
||||||
"genindex.html"
|
|
||||||
"examples.html"
|
|
||||||
"helloworld/readme.html"
|
|
||||||
"roundtrip/readme.html"
|
|
||||||
"throughput/readme.html")
|
|
||||||
|
|
||||||
add_custom_command(OUTPUT ${builder_output}
|
|
||||||
COMMAND ${CMAKE_COMMAND}
|
|
||||||
-E tar "zcf"
|
|
||||||
"${EXAMPLES_HTML_ARCHIVE}"
|
|
||||||
${html_outputs}
|
|
||||||
APPEND
|
|
||||||
VERBATIM)
|
|
||||||
|
|
||||||
# Remove generated files when cleaning the build tree
|
|
||||||
set_property(DIRECTORY APPEND PROPERTY ADDITIONAL_MAKE_CLEAN_FILES
|
|
||||||
"cache"
|
|
||||||
"${builder_log}"
|
|
||||||
"objects.inv"
|
|
||||||
${html_outputs}
|
|
||||||
"_sources"
|
|
||||||
"${EXAMPLES_HTML_ARCHIVE}")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(CMAKE_SYSTEM_NAME MATCHES "Windows")
|
|
||||||
set(platform_exclude "examples/helloworld/Makefile")
|
|
||||||
elseif(CMAKE_SYSTEM_NAME MATCHES "Linux")
|
|
||||||
set(platform_exclude "examples/helloworld/vs|examples/helloworld/HelloWorld\.sln")
|
|
||||||
else()
|
|
||||||
set(platform_exclude "this_is_a_placeholder")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# Install example source-files
|
|
||||||
install(
|
install(
|
||||||
DIRECTORY "${PROJECT_SOURCE_DIR}/examples/"
|
DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/examples_docs/"
|
||||||
DESTINATION "${CMAKE_INSTALL_EXAMPLESDIR}"
|
DESTINATION "${CMAKE_INSTALL_EXAMPLESDIR}"
|
||||||
COMPONENT dev
|
COMPONENT dev
|
||||||
PATTERN "CMakeLists.export" EXCLUDE
|
PATTERN "_sources" EXCLUDE)
|
||||||
PATTERN "examples/CMakeLists.txt" EXCLUDE
|
endif()
|
||||||
REGEX ${platform_exclude} EXCLUDE
|
|
||||||
REGEX "\.rst|\.py" EXCLUDE)
|
|
||||||
|
|
||||||
# Install example html docs files
|
|
||||||
# TODO this should be replaced by install commands that use ExternalData refs (preferably in examples' CMakeLists.txt)
|
|
||||||
install(
|
|
||||||
DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/"
|
|
||||||
DESTINATION "${CMAKE_INSTALL_EXAMPLESDIR}"
|
|
||||||
COMPONENT dev
|
|
||||||
FILES_MATCHING
|
|
||||||
PATTERN "CMakeFiles" EXCLUDE
|
|
||||||
PATTERN "cache" EXCLUDE
|
|
||||||
PATTERN "_sources" EXCLUDE
|
|
||||||
PATTERN "*.html"
|
|
||||||
PATTERN "*.js"
|
|
||||||
PATTERN "_static/*")
|
|
||||||
|
|
||||||
|
|
|
@ -9,50 +9,25 @@
|
||||||
#
|
#
|
||||||
# SPDX-License-Identifier: EPL-2.0 OR BSD-3-Clause
|
# SPDX-License-Identifier: EPL-2.0 OR BSD-3-Clause
|
||||||
#
|
#
|
||||||
cmake_minimum_required(VERSION 3.5)
|
|
||||||
|
|
||||||
if (NOT TARGET CycloneDDS::ddsc)
|
|
||||||
# Find the CycloneDDS package. If it is not in a default location, try
|
|
||||||
# finding it relative to the example where it most likely resides.
|
|
||||||
find_package(CycloneDDS REQUIRED PATHS ../../)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# This is a convenience function, provided by the CycloneDDS package,
|
|
||||||
# that will supply a library target related the the given idl file.
|
|
||||||
# In short, it takes the idl file, generates the source files with
|
|
||||||
# the proper data types and compiles them into a library.
|
|
||||||
idlc_generate(HelloWorldData_lib "HelloWorldData.idl")
|
idlc_generate(HelloWorldData_lib "HelloWorldData.idl")
|
||||||
|
|
||||||
# Both executables have only one related source file.
|
|
||||||
add_executable(HelloworldPublisher publisher.c)
|
add_executable(HelloworldPublisher publisher.c)
|
||||||
add_executable(HelloworldSubscriber subscriber.c)
|
add_executable(HelloworldSubscriber subscriber.c)
|
||||||
|
|
||||||
# Both executables need to be linked to the idl data type library and
|
|
||||||
# the ddsc API library.
|
|
||||||
target_link_libraries(HelloworldPublisher HelloWorldData_lib CycloneDDS::ddsc)
|
target_link_libraries(HelloworldPublisher HelloWorldData_lib CycloneDDS::ddsc)
|
||||||
target_link_libraries(HelloworldSubscriber HelloWorldData_lib CycloneDDS::ddsc)
|
target_link_libraries(HelloworldSubscriber HelloWorldData_lib CycloneDDS::ddsc)
|
||||||
|
|
||||||
#
|
|
||||||
# The helloworld example is the only example to have a different CMakeLists.txt
|
|
||||||
# for building in source and install environments. This is because it has to
|
|
||||||
# do some specific installations to support the Getting Started Guide.
|
|
||||||
# The CMakelists.export will be used for the install environments.
|
|
||||||
#
|
|
||||||
|
|
||||||
install(
|
install(
|
||||||
TARGETS HelloworldSubscriber HelloworldPublisher
|
FILES
|
||||||
DESTINATION "${CMAKE_INSTALL_EXAMPLESDIR}/helloworld/bin"
|
"HelloWorldData.idl"
|
||||||
|
"publisher.c"
|
||||||
|
"subscriber.c"
|
||||||
|
DESTINATION "${CMAKE_INSTALL_EXAMPLESDIR}/helloworld"
|
||||||
COMPONENT dev)
|
COMPONENT dev)
|
||||||
|
|
||||||
install(
|
install(
|
||||||
FILES "CMakeLists.export"
|
FILES "CMakeLists.export"
|
||||||
|
RENAME "CMakeLists.txt"
|
||||||
DESTINATION "${CMAKE_INSTALL_EXAMPLESDIR}/helloworld"
|
DESTINATION "${CMAKE_INSTALL_EXAMPLESDIR}/helloworld"
|
||||||
COMPONENT dev
|
|
||||||
RENAME "CMakeLists.txt")
|
|
||||||
|
|
||||||
get_target_property(GENERATED_FILES HelloWorldData_lib INTERFACE_SOURCES)
|
|
||||||
install(
|
|
||||||
FILES ${GENERATED_FILES}
|
|
||||||
DESTINATION "${CMAKE_INSTALL_EXAMPLESDIR}/helloworld/generated"
|
|
||||||
COMPONENT dev)
|
COMPONENT dev)
|
||||||
|
|
||||||
|
|
|
@ -1,54 +0,0 @@
|
||||||
|
|
||||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
|
||||||
# Visual Studio 14
|
|
||||||
VisualStudioVersion = 14.0.25123.0
|
|
||||||
MinimumVisualStudioVersion = 10.0.40219.1
|
|
||||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "HelloWorldSubscriber", "vs\HelloWorldSubscriber.vcxproj", "{D8B2F285-EB03-4657-A0DC-603172553BEA}"
|
|
||||||
ProjectSection(ProjectDependencies) = postProject
|
|
||||||
{28A7A97B-3CEF-4FD7-8DC5-A7586D6DAE1D} = {28A7A97B-3CEF-4FD7-8DC5-A7586D6DAE1D}
|
|
||||||
EndProjectSection
|
|
||||||
EndProject
|
|
||||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "HelloWorldPublisher", "vs\HelloWorldPublisher.vcxproj", "{D8B2F285-EB03-4657-ACDC-603172553BEA}"
|
|
||||||
ProjectSection(ProjectDependencies) = postProject
|
|
||||||
{28A7A97B-3CEF-4FD7-8DC5-A7586D6DAE1D} = {28A7A97B-3CEF-4FD7-8DC5-A7586D6DAE1D}
|
|
||||||
EndProjectSection
|
|
||||||
EndProject
|
|
||||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "HelloWorldType", "vs\HelloWorldType.vcxproj", "{28A7A97B-3CEF-4FD7-8DC5-A7586D6DAE1D}"
|
|
||||||
EndProject
|
|
||||||
Global
|
|
||||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
|
||||||
Debug|x64 = Debug|x64
|
|
||||||
Debug|x86 = Debug|x86
|
|
||||||
Release|x64 = Release|x64
|
|
||||||
Release|x86 = Release|x86
|
|
||||||
EndGlobalSection
|
|
||||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
|
||||||
{D8B2F285-EB03-4657-A0DC-603172553BEA}.Debug|x64.ActiveCfg = Debug|x64
|
|
||||||
{D8B2F285-EB03-4657-A0DC-603172553BEA}.Debug|x64.Build.0 = Debug|x64
|
|
||||||
{D8B2F285-EB03-4657-A0DC-603172553BEA}.Debug|x86.ActiveCfg = Debug|Win32
|
|
||||||
{D8B2F285-EB03-4657-A0DC-603172553BEA}.Debug|x86.Build.0 = Debug|Win32
|
|
||||||
{D8B2F285-EB03-4657-A0DC-603172553BEA}.Release|x64.ActiveCfg = Release|x64
|
|
||||||
{D8B2F285-EB03-4657-A0DC-603172553BEA}.Release|x64.Build.0 = Release|x64
|
|
||||||
{D8B2F285-EB03-4657-A0DC-603172553BEA}.Release|x86.ActiveCfg = Release|Win32
|
|
||||||
{D8B2F285-EB03-4657-A0DC-603172553BEA}.Release|x86.Build.0 = Release|Win32
|
|
||||||
{D8B2F285-EB03-4657-ACDC-603172553BEA}.Debug|x64.ActiveCfg = Debug|x64
|
|
||||||
{D8B2F285-EB03-4657-ACDC-603172553BEA}.Debug|x64.Build.0 = Debug|x64
|
|
||||||
{D8B2F285-EB03-4657-ACDC-603172553BEA}.Debug|x86.ActiveCfg = Debug|Win32
|
|
||||||
{D8B2F285-EB03-4657-ACDC-603172553BEA}.Debug|x86.Build.0 = Debug|Win32
|
|
||||||
{D8B2F285-EB03-4657-ACDC-603172553BEA}.Release|x64.ActiveCfg = Release|x64
|
|
||||||
{D8B2F285-EB03-4657-ACDC-603172553BEA}.Release|x64.Build.0 = Release|x64
|
|
||||||
{D8B2F285-EB03-4657-ACDC-603172553BEA}.Release|x86.ActiveCfg = Release|Win32
|
|
||||||
{D8B2F285-EB03-4657-ACDC-603172553BEA}.Release|x86.Build.0 = Release|Win32
|
|
||||||
{28A7A97B-3CEF-4FD7-8DC5-A7586D6DAE1D}.Debug|x64.ActiveCfg = Debug|x64
|
|
||||||
{28A7A97B-3CEF-4FD7-8DC5-A7586D6DAE1D}.Debug|x64.Build.0 = Debug|x64
|
|
||||||
{28A7A97B-3CEF-4FD7-8DC5-A7586D6DAE1D}.Debug|x86.ActiveCfg = Debug|Win32
|
|
||||||
{28A7A97B-3CEF-4FD7-8DC5-A7586D6DAE1D}.Debug|x86.Build.0 = Debug|Win32
|
|
||||||
{28A7A97B-3CEF-4FD7-8DC5-A7586D6DAE1D}.Release|x64.ActiveCfg = Release|x64
|
|
||||||
{28A7A97B-3CEF-4FD7-8DC5-A7586D6DAE1D}.Release|x64.Build.0 = Release|x64
|
|
||||||
{28A7A97B-3CEF-4FD7-8DC5-A7586D6DAE1D}.Release|x86.ActiveCfg = Release|Win32
|
|
||||||
{28A7A97B-3CEF-4FD7-8DC5-A7586D6DAE1D}.Release|x86.Build.0 = Release|Win32
|
|
||||||
EndGlobalSection
|
|
||||||
GlobalSection(SolutionProperties) = preSolution
|
|
||||||
HideSolutionNode = FALSE
|
|
||||||
EndGlobalSection
|
|
||||||
EndGlobal
|
|
|
@ -1,54 +0,0 @@
|
||||||
publisher_NAME := HelloworldPublisher
|
|
||||||
publisher_SRCS := publisher.c generated/HelloWorldData.c
|
|
||||||
publisher_OBJS := ${publisher_SRCS:.c=.o}
|
|
||||||
|
|
||||||
subscriber_NAME := HelloworldSubscriber
|
|
||||||
subscriber_SRCS := subscriber.c generated/HelloWorldData.c
|
|
||||||
subscriber_OBJS := ${subscriber_SRCS:.c=.o}
|
|
||||||
|
|
||||||
# Make sure that the location where dds.h is installed is known to the
|
|
||||||
# compiler. If dds.h is not installed in a system default spot, then
|
|
||||||
# it can be introduced by adding it to the CFLAGS, like:
|
|
||||||
#CFLAGS += -I../../../../include
|
|
||||||
|
|
||||||
# Make sure that the location where libddsc.so is installed is known
|
|
||||||
# to the compiler. If the lib is not installed in a system default
|
|
||||||
# location, then it can be introduced by adding it to the LDFLAGS:
|
|
||||||
#LDFLAGS += -L../../../../lib
|
|
||||||
|
|
||||||
CFLAGS += -Igenerated
|
|
||||||
LDFLAGS += -lddsc
|
|
||||||
|
|
||||||
.PHONY: all clean distclean
|
|
||||||
|
|
||||||
all: $(publisher_NAME) $(subscriber_NAME)
|
|
||||||
|
|
||||||
$(publisher_NAME): $(publisher_OBJS)
|
|
||||||
gcc $(CFLAGS) $(publisher_OBJS) $(LDFLAGS) -o $(publisher_NAME)
|
|
||||||
|
|
||||||
$(subscriber_NAME): $(subscriber_OBJS)
|
|
||||||
gcc $(CFLAGS) $(subscriber_OBJS) $(LDFLAGS) -o $(subscriber_NAME)
|
|
||||||
|
|
||||||
clean:
|
|
||||||
@- $(RM) $(publisher_NAME)
|
|
||||||
@- $(RM) $(publisher_OBJS)
|
|
||||||
@- $(RM) $(subscriber_NAME)
|
|
||||||
@- $(RM) $(subscriber_OBJS)
|
|
||||||
|
|
||||||
distclean: clean
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# Make sure that the idlc jar file is available and java can find its
|
|
||||||
# location. In this example, it is assumed that the jar is located at
|
|
||||||
# a specific relative directory. Change the classpath variable if
|
|
||||||
# this is not the case on your system.
|
|
||||||
classpath:= ../../idlc/idlc-jar-with-dependencies.jar
|
|
||||||
ifneq ($(CLASSPATH),)
|
|
||||||
classpath:= $(CLASSPATH):$(classpath)
|
|
||||||
endif
|
|
||||||
export CLASSPATH:=$(classpath)
|
|
||||||
|
|
||||||
datatype:
|
|
||||||
java org.eclipse.cyclonedds.compilers.Idlc HelloWorldData.idl
|
|
||||||
|
|
|
@ -1,142 +0,0 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
|
||||||
<ItemGroup Label="ProjectConfigurations">
|
|
||||||
<ProjectConfiguration Include="Release|x64">
|
|
||||||
<Configuration>Release</Configuration>
|
|
||||||
<Platform>x64</Platform>
|
|
||||||
</ProjectConfiguration>
|
|
||||||
<ProjectConfiguration Include="Release|Win32">
|
|
||||||
<Configuration>Release</Configuration>
|
|
||||||
<Platform>Win32</Platform>
|
|
||||||
</ProjectConfiguration>
|
|
||||||
<ProjectConfiguration Include="Debug|x64">
|
|
||||||
<Configuration>Debug</Configuration>
|
|
||||||
<Platform>x64</Platform>
|
|
||||||
</ProjectConfiguration>
|
|
||||||
<ProjectConfiguration Include="Debug|Win32">
|
|
||||||
<Configuration>Debug</Configuration>
|
|
||||||
<Platform>Win32</Platform>
|
|
||||||
</ProjectConfiguration>
|
|
||||||
</ItemGroup>
|
|
||||||
<PropertyGroup Label="Globals">
|
|
||||||
<ProjectGuid>{D8B2F285-EB03-4657-ACDC-603172553BEA}</ProjectGuid>
|
|
||||||
<Keyword>Win32Proj</Keyword>
|
|
||||||
<ProjectName>HelloWorldPublisher</ProjectName>
|
|
||||||
<WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>
|
|
||||||
</PropertyGroup>
|
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
|
||||||
<ConfigurationType>Application</ConfigurationType>
|
|
||||||
<UseDebugLibraries>true</UseDebugLibraries>
|
|
||||||
<PlatformToolset>v140</PlatformToolset>
|
|
||||||
<DebuggerFlavor>WindowsLocalDebugger</DebuggerFlavor>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
|
||||||
<ConfigurationType>Application</ConfigurationType>
|
|
||||||
<UseDebugLibraries>false</UseDebugLibraries>
|
|
||||||
<PlatformToolset>v140</PlatformToolset>
|
|
||||||
<DebuggerFlavor>WindowsLocalDebugger</DebuggerFlavor>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
|
||||||
<ConfigurationType>Application</ConfigurationType>
|
|
||||||
<UseDebugLibraries>true</UseDebugLibraries>
|
|
||||||
<PlatformToolset>v140</PlatformToolset>
|
|
||||||
<DebuggerFlavor>WindowsLocalDebugger</DebuggerFlavor>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
|
||||||
<ConfigurationType>Application</ConfigurationType>
|
|
||||||
<UseDebugLibraries>false</UseDebugLibraries>
|
|
||||||
<PlatformToolset>v140</PlatformToolset>
|
|
||||||
<DebuggerFlavor>WindowsLocalDebugger</DebuggerFlavor>
|
|
||||||
</PropertyGroup>
|
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
|
||||||
<ImportGroup Label="ExtensionSettings">
|
|
||||||
</ImportGroup>
|
|
||||||
<ImportGroup Label="Shared">
|
|
||||||
</ImportGroup>
|
|
||||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
|
||||||
<Import Project="directories.props" />
|
|
||||||
</ImportGroup>
|
|
||||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
|
||||||
<Import Project="directories.props" />
|
|
||||||
</ImportGroup>
|
|
||||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
|
||||||
<Import Project="directories.props" />
|
|
||||||
</ImportGroup>
|
|
||||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
|
||||||
<Import Project="directories.props" />
|
|
||||||
</ImportGroup>
|
|
||||||
<PropertyGroup Label="UserMacros" />
|
|
||||||
<PropertyGroup>
|
|
||||||
<IntDir>$(Platform)\$(Configuration)\Publisher\</IntDir>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Platform)'=='Win32'">
|
|
||||||
<LinkIncremental>true</LinkIncremental>
|
|
||||||
</PropertyGroup>
|
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
|
||||||
<ClCompile>
|
|
||||||
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
|
||||||
<AdditionalIncludeDirectories>$(CycloneDDS_inc_dir);..\generated;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
|
||||||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
|
||||||
<WarningLevel>Level3</WarningLevel>
|
|
||||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
|
||||||
</ClCompile>
|
|
||||||
<Link>
|
|
||||||
<TargetMachine>MachineX86</TargetMachine>
|
|
||||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
|
||||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
|
||||||
<OptimizeReferences>true</OptimizeReferences>
|
|
||||||
<SubSystem>Console</SubSystem>
|
|
||||||
<AdditionalLibraryDirectories>$(CycloneDDS_lib_dir);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
|
||||||
<AdditionalDependencies>ddsc.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
|
||||||
</Link>
|
|
||||||
</ItemDefinitionGroup>
|
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
|
||||||
<ClCompile>
|
|
||||||
<AdditionalIncludeDirectories>$(CycloneDDS_inc_dir);..\generated;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
|
||||||
</ClCompile>
|
|
||||||
<Link>
|
|
||||||
<AdditionalDependencies>ddsc.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
|
||||||
<AdditionalLibraryDirectories>$(CycloneDDS_lib_dir);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
|
||||||
<SubSystem>Console</SubSystem>
|
|
||||||
</Link>
|
|
||||||
</ItemDefinitionGroup>
|
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
|
||||||
<ClCompile>
|
|
||||||
<AdditionalIncludeDirectories>$(CycloneDDS_inc_dir);..\generated;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
|
||||||
</ClCompile>
|
|
||||||
<Link>
|
|
||||||
<AdditionalDependencies>ddsc.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
|
||||||
<AdditionalLibraryDirectories>$(CycloneDDS_lib_dir);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
|
||||||
<SubSystem>Console</SubSystem>
|
|
||||||
</Link>
|
|
||||||
</ItemDefinitionGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<ClCompile Include="..\generated\HelloWorldData.c" />
|
|
||||||
<ClCompile Include="..\publisher.c" />
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<ClInclude Include="..\generated\HelloWorldData.h" />
|
|
||||||
</ItemGroup>
|
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
|
||||||
<ImportGroup Label="ExtensionTargets">
|
|
||||||
</ImportGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<Filter Include="Source Files">
|
|
||||||
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
|
|
||||||
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
|
|
||||||
</Filter>
|
|
||||||
<Filter Include="Header Files">
|
|
||||||
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
|
|
||||||
<Extensions>h;hh;hpp;hxx;hm;inl;inc;xsd</Extensions>
|
|
||||||
</Filter>
|
|
||||||
<Filter Include="Resource Files">
|
|
||||||
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
|
|
||||||
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav</Extensions>
|
|
||||||
</Filter>
|
|
||||||
</ItemGroup>
|
|
||||||
</Project>
|
|
|
@ -1,142 +0,0 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
|
||||||
<ItemGroup Label="ProjectConfigurations">
|
|
||||||
<ProjectConfiguration Include="Release|x64">
|
|
||||||
<Configuration>Release</Configuration>
|
|
||||||
<Platform>x64</Platform>
|
|
||||||
</ProjectConfiguration>
|
|
||||||
<ProjectConfiguration Include="Release|Win32">
|
|
||||||
<Configuration>Release</Configuration>
|
|
||||||
<Platform>Win32</Platform>
|
|
||||||
</ProjectConfiguration>
|
|
||||||
<ProjectConfiguration Include="Debug|x64">
|
|
||||||
<Configuration>Debug</Configuration>
|
|
||||||
<Platform>x64</Platform>
|
|
||||||
</ProjectConfiguration>
|
|
||||||
<ProjectConfiguration Include="Debug|Win32">
|
|
||||||
<Configuration>Debug</Configuration>
|
|
||||||
<Platform>Win32</Platform>
|
|
||||||
</ProjectConfiguration>
|
|
||||||
</ItemGroup>
|
|
||||||
<PropertyGroup Label="Globals">
|
|
||||||
<ProjectGuid>{D8B2F285-EB03-4657-A0DC-603172553BEA}</ProjectGuid>
|
|
||||||
<Keyword>Win32Proj</Keyword>
|
|
||||||
<ProjectName>HelloWorldSubscriber</ProjectName>
|
|
||||||
<WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>
|
|
||||||
</PropertyGroup>
|
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
|
||||||
<ConfigurationType>Application</ConfigurationType>
|
|
||||||
<UseDebugLibraries>true</UseDebugLibraries>
|
|
||||||
<PlatformToolset>v140</PlatformToolset>
|
|
||||||
<DebuggerFlavor>WindowsLocalDebugger</DebuggerFlavor>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
|
||||||
<ConfigurationType>Application</ConfigurationType>
|
|
||||||
<UseDebugLibraries>false</UseDebugLibraries>
|
|
||||||
<PlatformToolset>v140</PlatformToolset>
|
|
||||||
<DebuggerFlavor>WindowsLocalDebugger</DebuggerFlavor>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
|
||||||
<ConfigurationType>Application</ConfigurationType>
|
|
||||||
<UseDebugLibraries>true</UseDebugLibraries>
|
|
||||||
<PlatformToolset>v140</PlatformToolset>
|
|
||||||
<DebuggerFlavor>WindowsLocalDebugger</DebuggerFlavor>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
|
||||||
<ConfigurationType>Application</ConfigurationType>
|
|
||||||
<UseDebugLibraries>false</UseDebugLibraries>
|
|
||||||
<PlatformToolset>v140</PlatformToolset>
|
|
||||||
<DebuggerFlavor>WindowsLocalDebugger</DebuggerFlavor>
|
|
||||||
</PropertyGroup>
|
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
|
||||||
<ImportGroup Label="ExtensionSettings">
|
|
||||||
</ImportGroup>
|
|
||||||
<ImportGroup Label="Shared">
|
|
||||||
</ImportGroup>
|
|
||||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
|
||||||
<Import Project="directories.props" />
|
|
||||||
</ImportGroup>
|
|
||||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
|
||||||
<Import Project="directories.props" />
|
|
||||||
</ImportGroup>
|
|
||||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
|
||||||
<Import Project="directories.props" />
|
|
||||||
</ImportGroup>
|
|
||||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
|
||||||
<Import Project="directories.props" />
|
|
||||||
</ImportGroup>
|
|
||||||
<PropertyGroup Label="UserMacros" />
|
|
||||||
<PropertyGroup>
|
|
||||||
<IntDir>$(Platform)\$(Configuration)\Subscriber\</IntDir>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Platform)'=='Win32'">
|
|
||||||
<LinkIncremental>true</LinkIncremental>
|
|
||||||
</PropertyGroup>
|
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
|
||||||
<ClCompile>
|
|
||||||
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
|
||||||
<AdditionalIncludeDirectories>$(CycloneDDS_inc_dir);..\generated;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
|
||||||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
|
||||||
<WarningLevel>Level3</WarningLevel>
|
|
||||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
|
||||||
</ClCompile>
|
|
||||||
<Link>
|
|
||||||
<TargetMachine>MachineX86</TargetMachine>
|
|
||||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
|
||||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
|
||||||
<OptimizeReferences>true</OptimizeReferences>
|
|
||||||
<SubSystem>Console</SubSystem>
|
|
||||||
<AdditionalLibraryDirectories>$(CycloneDDS_lib_dir);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
|
||||||
<AdditionalDependencies>ddsc.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
|
||||||
</Link>
|
|
||||||
</ItemDefinitionGroup>
|
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
|
||||||
<ClCompile>
|
|
||||||
<AdditionalIncludeDirectories>$(CycloneDDS_inc_dir);..\generated;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
|
||||||
</ClCompile>
|
|
||||||
<Link>
|
|
||||||
<AdditionalDependencies>ddsc.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
|
||||||
<AdditionalLibraryDirectories>$(CycloneDDS_lib_dir);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
|
||||||
<SubSystem>Console</SubSystem>
|
|
||||||
</Link>
|
|
||||||
</ItemDefinitionGroup>
|
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
|
||||||
<ClCompile>
|
|
||||||
<AdditionalIncludeDirectories>$(CycloneDDS_inc_dir);..\generated;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
|
||||||
</ClCompile>
|
|
||||||
<Link>
|
|
||||||
<AdditionalDependencies>ddsc.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
|
||||||
<AdditionalLibraryDirectories>$(CycloneDDS_lib_dir);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
|
||||||
<SubSystem>Console</SubSystem>
|
|
||||||
</Link>
|
|
||||||
</ItemDefinitionGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<ClCompile Include="..\generated\HelloWorldData.c" />
|
|
||||||
<ClCompile Include="..\subscriber.c" />
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<ClInclude Include="..\generated\HelloWorldData.h" />
|
|
||||||
</ItemGroup>
|
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
|
||||||
<ImportGroup Label="ExtensionTargets">
|
|
||||||
</ImportGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<Filter Include="Source Files">
|
|
||||||
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
|
|
||||||
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
|
|
||||||
</Filter>
|
|
||||||
<Filter Include="Header Files">
|
|
||||||
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
|
|
||||||
<Extensions>h;hh;hpp;hxx;hm;inl;inc;xsd</Extensions>
|
|
||||||
</Filter>
|
|
||||||
<Filter Include="Resource Files">
|
|
||||||
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
|
|
||||||
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav</Extensions>
|
|
||||||
</Filter>
|
|
||||||
</ItemGroup>
|
|
||||||
</Project>
|
|
|
@ -1,86 +0,0 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
|
||||||
<ItemGroup Label="ProjectConfigurations">
|
|
||||||
<ProjectConfiguration Include="Debug|Win32">
|
|
||||||
<Configuration>Debug</Configuration>
|
|
||||||
<Platform>Win32</Platform>
|
|
||||||
</ProjectConfiguration>
|
|
||||||
<ProjectConfiguration Include="Release|Win32">
|
|
||||||
<Configuration>Release</Configuration>
|
|
||||||
<Platform>Win32</Platform>
|
|
||||||
</ProjectConfiguration>
|
|
||||||
<ProjectConfiguration Include="Debug|x64">
|
|
||||||
<Configuration>Debug</Configuration>
|
|
||||||
<Platform>x64</Platform>
|
|
||||||
</ProjectConfiguration>
|
|
||||||
<ProjectConfiguration Include="Release|x64">
|
|
||||||
<Configuration>Release</Configuration>
|
|
||||||
<Platform>x64</Platform>
|
|
||||||
</ProjectConfiguration>
|
|
||||||
</ItemGroup>
|
|
||||||
<PropertyGroup Label="Globals">
|
|
||||||
<ProjectGuid>{28A7A97B-3CEF-4FD7-8DC5-A7586D6DAE1D}</ProjectGuid>
|
|
||||||
<RootNamespace>HelloWorldType</RootNamespace>
|
|
||||||
<WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>
|
|
||||||
</PropertyGroup>
|
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
|
||||||
<ConfigurationType>Application</ConfigurationType>
|
|
||||||
<UseDebugLibraries>true</UseDebugLibraries>
|
|
||||||
<PlatformToolset>v140</PlatformToolset>
|
|
||||||
<CharacterSet>MultiByte</CharacterSet>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
|
||||||
<ConfigurationType>Application</ConfigurationType>
|
|
||||||
<UseDebugLibraries>false</UseDebugLibraries>
|
|
||||||
<PlatformToolset>v140</PlatformToolset>
|
|
||||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
|
||||||
<CharacterSet>MultiByte</CharacterSet>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
|
||||||
<ConfigurationType>Application</ConfigurationType>
|
|
||||||
<UseDebugLibraries>true</UseDebugLibraries>
|
|
||||||
<PlatformToolset>v140</PlatformToolset>
|
|
||||||
<CharacterSet>MultiByte</CharacterSet>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
|
||||||
<ConfigurationType>Application</ConfigurationType>
|
|
||||||
<UseDebugLibraries>false</UseDebugLibraries>
|
|
||||||
<PlatformToolset>v140</PlatformToolset>
|
|
||||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
|
||||||
<CharacterSet>MultiByte</CharacterSet>
|
|
||||||
</PropertyGroup>
|
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
|
||||||
<ImportGroup Label="ExtensionSettings">
|
|
||||||
</ImportGroup>
|
|
||||||
<ImportGroup Label="Shared">
|
|
||||||
</ImportGroup>
|
|
||||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
|
||||||
<Import Project="directories.props" />
|
|
||||||
</ImportGroup>
|
|
||||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
|
||||||
<Import Project="directories.props" />
|
|
||||||
</ImportGroup>
|
|
||||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
|
||||||
<Import Project="directories.props" />
|
|
||||||
</ImportGroup>
|
|
||||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
|
||||||
<Import Project="directories.props" />
|
|
||||||
</ImportGroup>
|
|
||||||
<PropertyGroup Label="UserMacros" />
|
|
||||||
<PropertyGroup />
|
|
||||||
<ItemGroup>
|
|
||||||
<CustomBuild Include="..\HelloWorldData.idl">
|
|
||||||
<Command>java -classpath "$(CycloneDDS_idlc_dir)\idlc-jar-with-dependencies.jar" org.eclipse.cyclonedds.compilers.Idlc -d "$(SolutionDir)generated" "%(FullPath)"</Command>
|
|
||||||
<Message>Generating source files from IDL into "$(SolutionDir)generated"</Message>
|
|
||||||
<Outputs>HelloWorldData.h;HelloWorldData.c</Outputs>
|
|
||||||
</CustomBuild>
|
|
||||||
</ItemGroup>
|
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
|
||||||
<ImportGroup Label="ExtensionTargets">
|
|
||||||
</ImportGroup>
|
|
||||||
</Project>
|
|
|
@ -1,30 +0,0 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
|
||||||
<ImportGroup Label="PropertySheets" />
|
|
||||||
<PropertyGroup Label="UserMacros">
|
|
||||||
<CycloneDDS_lib_dir>C:/Program Files/ADLINK/Cyclone DDS/lib</CycloneDDS_lib_dir>
|
|
||||||
<CycloneDDS_inc_dir>C:/Program Files/ADLINK/Cyclone DDS/include</CycloneDDS_inc_dir>
|
|
||||||
<CycloneDDS_idlc_dir>C:/Program Files/ADLINK/Cyclone DDS/share/CycloneDDS/idlc</CycloneDDS_idlc_dir>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup />
|
|
||||||
<ItemGroup>
|
|
||||||
<BuildMacro Include="CycloneDDS_lib_dir">
|
|
||||||
<Value>$(CycloneDDS_lib_dir)</Value>
|
|
||||||
</BuildMacro>
|
|
||||||
<BuildMacro Include="CycloneDDS_inc_dir">
|
|
||||||
<Value>$(CycloneDDS_inc_dir)</Value>
|
|
||||||
</BuildMacro>
|
|
||||||
<BuildMacro Include="CycloneDDS_idlc_dir">
|
|
||||||
<Value>$(CycloneDDS_idlc_dir)</Value>
|
|
||||||
</BuildMacro>
|
|
||||||
</ItemGroup>
|
|
||||||
<PropertyGroup Label="Configuration">
|
|
||||||
<!-->
|
|
||||||
User macros are not expanded when starting the build applications in VS.
|
|
||||||
The path is extended with a possible Cyclone DLL location when they are not
|
|
||||||
installed in a system default location.
|
|
||||||
<-->
|
|
||||||
<LocalDebuggerEnvironment>PATH=../../../../../bin;%PATH%
|
|
||||||
$(LocalDebuggerEnvironment)</LocalDebuggerEnvironment>
|
|
||||||
</PropertyGroup>
|
|
||||||
</Project>
|
|
33
examples/roundtrip/CMakeLists.export
Normal file
33
examples/roundtrip/CMakeLists.export
Normal file
|
@ -0,0 +1,33 @@
|
||||||
|
#
|
||||||
|
# Copyright(c) 2006 to 2018 ADLINK Technology Limited and others
|
||||||
|
#
|
||||||
|
# This program and the accompanying materials are made available under the
|
||||||
|
# terms of the Eclipse Public License v. 2.0 which is available at
|
||||||
|
# http://www.eclipse.org/legal/epl-2.0, or the Eclipse Distribution License
|
||||||
|
# v. 1.0 which is available at
|
||||||
|
# http://www.eclipse.org/org/documents/edl-v10.php.
|
||||||
|
#
|
||||||
|
# SPDX-License-Identifier: EPL-2.0 OR BSD-3-Clause
|
||||||
|
#
|
||||||
|
cmake_minimum_required(VERSION 3.5)
|
||||||
|
|
||||||
|
if (NOT TARGET CycloneDDS::ddsc)
|
||||||
|
# Find the CycloneDDS package. If it is not in a default location, try
|
||||||
|
# finding it relative to the example where it most likely resides.
|
||||||
|
find_package(CycloneDDS REQUIRED PATHS "${CMAKE_SOURCE_DIR}/../../")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
# This is a convenience function, provided by the CycloneDDS package,
|
||||||
|
# that will supply a library target related the the given idl file.
|
||||||
|
# In short, it takes the idl file, generates the source files with
|
||||||
|
# the proper data types and compiles them into a library.
|
||||||
|
idlc_generate(RoundTrip_lib RoundTrip.idl)
|
||||||
|
|
||||||
|
# Both executables have only one related source file.
|
||||||
|
add_executable(RoundtripPing ping.c)
|
||||||
|
add_executable(RoundtripPong pong.c)
|
||||||
|
|
||||||
|
# Both executables need to be linked to the idl data type library and
|
||||||
|
# the ddsc API library.
|
||||||
|
target_link_libraries(RoundtripPing RoundTrip_lib CycloneDDS::ddsc)
|
||||||
|
target_link_libraries(RoundtripPong RoundTrip_lib CycloneDDS::ddsc)
|
|
@ -9,25 +9,24 @@
|
||||||
#
|
#
|
||||||
# SPDX-License-Identifier: EPL-2.0 OR BSD-3-Clause
|
# SPDX-License-Identifier: EPL-2.0 OR BSD-3-Clause
|
||||||
#
|
#
|
||||||
cmake_minimum_required(VERSION 3.5)
|
|
||||||
|
|
||||||
if (NOT TARGET CycloneDDS::ddsc)
|
|
||||||
# Find the CycloneDDS package. If it is not in a default location, try
|
|
||||||
# finding it relative to the example where it most likely resides.
|
|
||||||
find_package(CycloneDDS REQUIRED PATHS "${CMAKE_SOURCE_DIR}/../../")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# This is a convenience function, provided by the CycloneDDS package,
|
|
||||||
# that will supply a library target related the the given idl file.
|
|
||||||
# In short, it takes the idl file, generates the source files with
|
|
||||||
# the proper data types and compiles them into a library.
|
|
||||||
idlc_generate(RoundTrip_lib RoundTrip.idl)
|
idlc_generate(RoundTrip_lib RoundTrip.idl)
|
||||||
|
|
||||||
# Both executables have only one related source file.
|
|
||||||
add_executable(RoundtripPing ping.c)
|
add_executable(RoundtripPing ping.c)
|
||||||
add_executable(RoundtripPong pong.c)
|
add_executable(RoundtripPong pong.c)
|
||||||
|
|
||||||
# Both executables need to be linked to the idl data type library and
|
|
||||||
# the ddsc API library.
|
|
||||||
target_link_libraries(RoundtripPing RoundTrip_lib CycloneDDS::ddsc)
|
target_link_libraries(RoundtripPing RoundTrip_lib CycloneDDS::ddsc)
|
||||||
target_link_libraries(RoundtripPong RoundTrip_lib CycloneDDS::ddsc)
|
target_link_libraries(RoundtripPong RoundTrip_lib CycloneDDS::ddsc)
|
||||||
|
|
||||||
|
install(
|
||||||
|
FILES
|
||||||
|
"RoundTrip.idl"
|
||||||
|
"ping.c"
|
||||||
|
"pong.c"
|
||||||
|
DESTINATION "${CMAKE_INSTALL_EXAMPLESDIR}/roundtrip"
|
||||||
|
COMPONENT dev)
|
||||||
|
|
||||||
|
install(
|
||||||
|
FILES "CMakeLists.export"
|
||||||
|
RENAME "CMakeLists.txt"
|
||||||
|
DESTINATION "${CMAKE_INSTALL_EXAMPLESDIR}/roundtrip"
|
||||||
|
COMPONENT dev)
|
||||||
|
|
|
@ -1,86 +0,0 @@
|
||||||
# Add any Sphinx extension module names here, as strings. They can be
|
|
||||||
# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
|
|
||||||
# ones.
|
|
||||||
extensions = ['sphinx.ext.autodoc',
|
|
||||||
'sphinx.ext.intersphinx',
|
|
||||||
'sphinx.ext.coverage',
|
|
||||||
'sphinx.ext.imgmath',
|
|
||||||
'sphinx.ext.ifconfig',
|
|
||||||
'breathe']
|
|
||||||
|
|
||||||
# Add any paths that contain templates here, relative to this directory.
|
|
||||||
#templates_path = ['@CMAKE_CURRENT_SOuRCE_DIR@/_templates']
|
|
||||||
|
|
||||||
# The suffix(es) of source filenames.
|
|
||||||
# You can specify multiple suffix as a list of string:
|
|
||||||
#
|
|
||||||
# source_suffix = ['.rst', '.md']
|
|
||||||
source_suffix = '.rst'
|
|
||||||
|
|
||||||
# The master toctree document.
|
|
||||||
master_doc = 'examples'
|
|
||||||
|
|
||||||
# General information about the project.
|
|
||||||
project = u'@CMAKE_PROJECT_NAME@'
|
|
||||||
copyright = u'@sph_conf_copyright@'
|
|
||||||
author = u'@sph_conf_author@'
|
|
||||||
|
|
||||||
# The version info for the project you're documenting, acts as replacement for
|
|
||||||
# |version| and |release|, also used in various other places throughout the
|
|
||||||
# built documents.
|
|
||||||
#
|
|
||||||
# The short X.Y.Z version.
|
|
||||||
version = u'@sph_conf_version@'
|
|
||||||
# The full version, including alpha/beta/rc tags.
|
|
||||||
release = u'@sph_conf_release@'
|
|
||||||
|
|
||||||
# The language for content autogenerated by Sphinx. Refer to documentation
|
|
||||||
# for a list of supported languages.
|
|
||||||
#
|
|
||||||
# This is also used if you do content translation via gettext catalogs.
|
|
||||||
# Usually you set "language" from the command line for these cases.
|
|
||||||
language = None
|
|
||||||
|
|
||||||
# List of patterns, relative to source directory, that match files and
|
|
||||||
# directories to ignore when looking for source files.
|
|
||||||
# This patterns also effect to html_static_path and html_extra_path
|
|
||||||
exclude_patterns = []
|
|
||||||
|
|
||||||
# The name of the Pygments (syntax highlighting) style to use.
|
|
||||||
pygments_style = 'sphinx'
|
|
||||||
|
|
||||||
|
|
||||||
# -- Options for HTML output ----------------------------------------------
|
|
||||||
|
|
||||||
# The theme to use for HTML and HTML Help pages. See the documentation for
|
|
||||||
# a list of builtin themes.
|
|
||||||
#
|
|
||||||
html_theme = 'alabaster'
|
|
||||||
|
|
||||||
html_show_sourcelink = False
|
|
||||||
|
|
||||||
# Theme options are theme-specific and customize the look and feel of a theme
|
|
||||||
# further. For a list of options available for each theme, see the
|
|
||||||
# documentation.
|
|
||||||
#
|
|
||||||
html_theme_options = { 'show_powered_by': False }
|
|
||||||
|
|
||||||
# Add any paths that contain custom static files (such as style sheets) here,
|
|
||||||
# relative to this directory. They are copied after the builtin static files,
|
|
||||||
# so a file named "default.css" will overwrite the builtin "default.css".
|
|
||||||
html_static_path = ['@PROJECT_SOURCE_DIR@/docs/manual/_static']
|
|
||||||
|
|
||||||
# Custom sidebar templates, must be a dictionary that maps document names
|
|
||||||
# to template names.
|
|
||||||
#
|
|
||||||
# This is required for the alabaster theme
|
|
||||||
# refs: http://alabaster.readthedocs.io/en/latest/installation.html#sidebars
|
|
||||||
html_sidebars = {
|
|
||||||
'**': [
|
|
||||||
'about.html',
|
|
||||||
'navigation.html',
|
|
||||||
'relations.html', # needs 'show_related': True theme option to display
|
|
||||||
'searchbox.html',
|
|
||||||
'donate.html',
|
|
||||||
]
|
|
||||||
}
|
|
33
examples/throughput/CMakeLists.export
Normal file
33
examples/throughput/CMakeLists.export
Normal file
|
@ -0,0 +1,33 @@
|
||||||
|
#
|
||||||
|
# Copyright(c) 2006 to 2018 ADLINK Technology Limited and others
|
||||||
|
#
|
||||||
|
# This program and the accompanying materials are made available under the
|
||||||
|
# terms of the Eclipse Public License v. 2.0 which is available at
|
||||||
|
# http://www.eclipse.org/legal/epl-2.0, or the Eclipse Distribution License
|
||||||
|
# v. 1.0 which is available at
|
||||||
|
# http://www.eclipse.org/org/documents/edl-v10.php.
|
||||||
|
#
|
||||||
|
# SPDX-License-Identifier: EPL-2.0 OR BSD-3-Clause
|
||||||
|
#
|
||||||
|
cmake_minimum_required(VERSION 3.5)
|
||||||
|
|
||||||
|
if (NOT TARGET CycloneDDS::ddsc)
|
||||||
|
# Find the CycloneDDS package. If it is not in a default location, try
|
||||||
|
# finding it relative to the example where it most likely resides.
|
||||||
|
find_package(CycloneDDS REQUIRED PATHS "${CMAKE_SOURCE_DIR}/../../")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
# This is a convenience function, provided by the CycloneDDS package,
|
||||||
|
# that will supply a library target related the the given idl file.
|
||||||
|
# In short, it takes the idl file, generates the source files with
|
||||||
|
# the proper data types and compiles them into a library.
|
||||||
|
idlc_generate(Throughput_lib Throughput.idl)
|
||||||
|
|
||||||
|
# Both executables have only one related source file.
|
||||||
|
add_executable(ThroughputPublisher publisher.c)
|
||||||
|
add_executable(ThroughputSubscriber subscriber.c)
|
||||||
|
|
||||||
|
# Both executables need to be linked to the idl data type library and
|
||||||
|
# the ddsc API library.
|
||||||
|
target_link_libraries(ThroughputPublisher Throughput_lib CycloneDDS::ddsc)
|
||||||
|
target_link_libraries(ThroughputSubscriber Throughput_lib CycloneDDS::ddsc)
|
|
@ -9,25 +9,24 @@
|
||||||
#
|
#
|
||||||
# SPDX-License-Identifier: EPL-2.0 OR BSD-3-Clause
|
# SPDX-License-Identifier: EPL-2.0 OR BSD-3-Clause
|
||||||
#
|
#
|
||||||
cmake_minimum_required(VERSION 3.5)
|
|
||||||
|
|
||||||
if (NOT TARGET CycloneDDS::ddsc)
|
|
||||||
# Find the CycloneDDS package. If it is not in a default location, try
|
|
||||||
# finding it relative to the example where it most likely resides.
|
|
||||||
find_package(CycloneDDS REQUIRED PATHS "${CMAKE_SOURCE_DIR}/../../")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# This is a convenience function, provided by the CycloneDDS package,
|
|
||||||
# that will supply a library target related the the given idl file.
|
|
||||||
# In short, it takes the idl file, generates the source files with
|
|
||||||
# the proper data types and compiles them into a library.
|
|
||||||
idlc_generate(Throughput_lib Throughput.idl)
|
idlc_generate(Throughput_lib Throughput.idl)
|
||||||
|
|
||||||
# Both executables have only one related source file.
|
|
||||||
add_executable(ThroughputPublisher publisher.c)
|
add_executable(ThroughputPublisher publisher.c)
|
||||||
add_executable(ThroughputSubscriber subscriber.c)
|
add_executable(ThroughputSubscriber subscriber.c)
|
||||||
|
|
||||||
# Both executables need to be linked to the idl data type library and
|
|
||||||
# the ddsc API library.
|
|
||||||
target_link_libraries(ThroughputPublisher Throughput_lib CycloneDDS::ddsc)
|
target_link_libraries(ThroughputPublisher Throughput_lib CycloneDDS::ddsc)
|
||||||
target_link_libraries(ThroughputSubscriber Throughput_lib CycloneDDS::ddsc)
|
target_link_libraries(ThroughputSubscriber Throughput_lib CycloneDDS::ddsc)
|
||||||
|
|
||||||
|
install(
|
||||||
|
FILES
|
||||||
|
"Throughput.idl"
|
||||||
|
"publisher.c"
|
||||||
|
"subscriber.c"
|
||||||
|
DESTINATION "${CMAKE_INSTALL_EXAMPLESDIR}/throughput"
|
||||||
|
COMPONENT dev)
|
||||||
|
|
||||||
|
install(
|
||||||
|
FILES "CMakeLists.export"
|
||||||
|
RENAME "CMakeLists.txt"
|
||||||
|
DESTINATION "${CMAKE_INSTALL_EXAMPLESDIR}/throughput"
|
||||||
|
COMPONENT dev)
|
||||||
|
|
|
@ -83,3 +83,18 @@ install(
|
||||||
if(BUILD_IDLC)
|
if(BUILD_IDLC)
|
||||||
add_subdirectory(xtests)
|
add_subdirectory(xtests)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
if(BUILD_DOCS)
|
||||||
|
set(DOXYGEN_GENERATE_HTML NO)
|
||||||
|
set(DOXYGEN_GENERATE_XML YES)
|
||||||
|
set(DOXYGEN_EXCLUDE_PATTERNS "*/tests/*")
|
||||||
|
set(DOXYGEN_MACRO_EXPANSION YES)
|
||||||
|
set(DOXYGEN_PREDEFINED
|
||||||
|
"__restrict="
|
||||||
|
"__attribute__="
|
||||||
|
"__declspec(x)="
|
||||||
|
"DDS_EXPORT="
|
||||||
|
"DDS_DEPRECATED_EXPORT=")
|
||||||
|
find_package(Doxygen REQUIRED)
|
||||||
|
doxygen_add_docs(ddsc_api_docs "ddsc/include")
|
||||||
|
endif()
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue