diff options
author | Nikolai Kosjar <nikolai.kosjar@qt.io> | 2019-07-30 15:26:31 +0200 |
---|---|---|
committer | Nikolai Kosjar <nikolai.kosjar@qt.io> | 2019-08-30 08:42:22 +0000 |
commit | 0ba729e527da37f7c5d7fbc59247971df3da7d8a (patch) | |
tree | f6397a18ab4a7850b656f7b6e7a68f3d8a4e49ae /cmake/Findyaml-cpp.cmake | |
parent | d663b8e406c89585f123207d6e07832d1818e53b (diff) |
Import YAML-Parser yaml-cpp
Version: tags/yaml-cpp-0.6.2
License: MIT
yaml-cpp requires c++11 and since yaml-cpp 0.6 there is no dependency on
boost anymore.
A YAML parser is needed for the ClangTools plugin to parse exported
diagnostics from clang-tidy/clazy:
$ clang-tidy -export-fixes=/tmp/tidy.yaml source.cpp
The imported source is stripped of unneeded files as documented with
src/libs/3rdparty/yaml-cpp/patches/0001-yaml-cpp-Strip-unneeded-sources.patch
(generated with "git format-patch -D")
Change-Id: Ib0a521b5aff4b1cd058eb480bfb99fde4b320dc7
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Diffstat (limited to 'cmake/Findyaml-cpp.cmake')
-rw-r--r-- | cmake/Findyaml-cpp.cmake | 109 |
1 files changed, 109 insertions, 0 deletions
diff --git a/cmake/Findyaml-cpp.cmake b/cmake/Findyaml-cpp.cmake new file mode 100644 index 0000000000..4a5fdbb649 --- /dev/null +++ b/cmake/Findyaml-cpp.cmake @@ -0,0 +1,109 @@ +#.rst: +# Findyaml-cpp +# ----------------- +# +# Try to find a yaml-cpp config/package. +# If that fails, build and use our copy of it. +# + +find_package(yaml-cpp 0.5 QUIET NO_MODULE) + +if (NOT yaml-cpp_FOUND) + set(yaml-cpp_FOUND 1) + set_package_properties(yaml-cpp PROPERTIES DESCRIPTION "using internal src/libs/3rdparty/yaml-cpp") + set(YAML_SOURCE_DIR ${PROJECT_SOURCE_DIR}/src/libs/3rdparty/yaml-cpp) + add_qtc_library(yaml-cpp + DEFINES YAML_CPP_DLL yaml_cpp_EXPORTS + INCLUDES ${YAML_SOURCE_DIR}/include + PUBLIC_INCLUDES ${YAML_SOURCE_DIR}/include + SOURCES + ${YAML_SOURCE_DIR}/include/yaml-cpp + ${YAML_SOURCE_DIR}/include/yaml-cpp/anchor.h + ${YAML_SOURCE_DIR}/include/yaml-cpp/binary.h + ${YAML_SOURCE_DIR}/include/yaml-cpp/dll.h + ${YAML_SOURCE_DIR}/include/yaml-cpp/emitfromevents.h + ${YAML_SOURCE_DIR}/include/yaml-cpp/emitter.h + ${YAML_SOURCE_DIR}/include/yaml-cpp/emitterdef.h + ${YAML_SOURCE_DIR}/include/yaml-cpp/emittermanip.h + ${YAML_SOURCE_DIR}/include/yaml-cpp/emitterstyle.h + ${YAML_SOURCE_DIR}/include/yaml-cpp/eventhandler.h + ${YAML_SOURCE_DIR}/include/yaml-cpp/exceptions.h + ${YAML_SOURCE_DIR}/include/yaml-cpp/mark.h + ${YAML_SOURCE_DIR}/include/yaml-cpp/node + ${YAML_SOURCE_DIR}/include/yaml-cpp/node/convert.h + ${YAML_SOURCE_DIR}/include/yaml-cpp/node/detail + ${YAML_SOURCE_DIR}/include/yaml-cpp/node/detail/bool_type.h + ${YAML_SOURCE_DIR}/include/yaml-cpp/node/detail/impl.h + ${YAML_SOURCE_DIR}/include/yaml-cpp/node/detail/iterator.h + ${YAML_SOURCE_DIR}/include/yaml-cpp/node/detail/iterator_fwd.h + ${YAML_SOURCE_DIR}/include/yaml-cpp/node/detail/memory.h + ${YAML_SOURCE_DIR}/include/yaml-cpp/node/detail/node.h + ${YAML_SOURCE_DIR}/include/yaml-cpp/node/detail/node_data.h + ${YAML_SOURCE_DIR}/include/yaml-cpp/node/detail/node_iterator.h + ${YAML_SOURCE_DIR}/include/yaml-cpp/node/detail/node_ref.h + ${YAML_SOURCE_DIR}/include/yaml-cpp/node/emit.h + ${YAML_SOURCE_DIR}/include/yaml-cpp/node/impl.h + ${YAML_SOURCE_DIR}/include/yaml-cpp/node/iterator.h + ${YAML_SOURCE_DIR}/include/yaml-cpp/node/node.h + ${YAML_SOURCE_DIR}/include/yaml-cpp/node/parse.h + ${YAML_SOURCE_DIR}/include/yaml-cpp/node/ptr.h + ${YAML_SOURCE_DIR}/include/yaml-cpp/node/type.h + ${YAML_SOURCE_DIR}/include/yaml-cpp/noncopyable.h + ${YAML_SOURCE_DIR}/include/yaml-cpp/null.h + ${YAML_SOURCE_DIR}/include/yaml-cpp/ostream_wrapper.h + ${YAML_SOURCE_DIR}/include/yaml-cpp/parser.h + ${YAML_SOURCE_DIR}/include/yaml-cpp/stlemitter.h + ${YAML_SOURCE_DIR}/include/yaml-cpp/traits.h + ${YAML_SOURCE_DIR}/include/yaml-cpp/yaml.h + ${YAML_SOURCE_DIR}/src/binary.cpp + ${YAML_SOURCE_DIR}/src/collectionstack.h + ${YAML_SOURCE_DIR}/src/convert.cpp + ${YAML_SOURCE_DIR}/src/directives.cpp + ${YAML_SOURCE_DIR}/src/directives.h + ${YAML_SOURCE_DIR}/src/emit.cpp + ${YAML_SOURCE_DIR}/src/emitfromevents.cpp + ${YAML_SOURCE_DIR}/src/emitter.cpp + ${YAML_SOURCE_DIR}/src/emitterstate.cpp + ${YAML_SOURCE_DIR}/src/emitterstate.h + ${YAML_SOURCE_DIR}/src/emitterutils.cpp + ${YAML_SOURCE_DIR}/src/emitterutils.h + ${YAML_SOURCE_DIR}/src/exceptions.cpp + ${YAML_SOURCE_DIR}/src/exp.cpp + ${YAML_SOURCE_DIR}/src/exp.h + ${YAML_SOURCE_DIR}/src/indentation.h + ${YAML_SOURCE_DIR}/src/memory.cpp + ${YAML_SOURCE_DIR}/src/node.cpp + ${YAML_SOURCE_DIR}/src/node_data.cpp + ${YAML_SOURCE_DIR}/src/nodebuilder.cpp + ${YAML_SOURCE_DIR}/src/nodebuilder.h + ${YAML_SOURCE_DIR}/src/nodeevents.cpp + ${YAML_SOURCE_DIR}/src/nodeevents.h + ${YAML_SOURCE_DIR}/src/null.cpp + ${YAML_SOURCE_DIR}/src/ostream_wrapper.cpp + ${YAML_SOURCE_DIR}/src/parse.cpp + ${YAML_SOURCE_DIR}/src/parser.cpp + ${YAML_SOURCE_DIR}/src/ptr_vector.h + ${YAML_SOURCE_DIR}/src/regex_yaml.cpp + ${YAML_SOURCE_DIR}/src/regex_yaml.h + ${YAML_SOURCE_DIR}/src/regeximpl.h + ${YAML_SOURCE_DIR}/src/scanner.cpp + ${YAML_SOURCE_DIR}/src/scanner.h + ${YAML_SOURCE_DIR}/src/scanscalar.cpp + ${YAML_SOURCE_DIR}/src/scanscalar.h + ${YAML_SOURCE_DIR}/src/scantag.cpp + ${YAML_SOURCE_DIR}/src/scantag.h + ${YAML_SOURCE_DIR}/src/scantoken.cpp + ${YAML_SOURCE_DIR}/src/setting.h + ${YAML_SOURCE_DIR}/src/simplekey.cpp + ${YAML_SOURCE_DIR}/src/singledocparser.cpp + ${YAML_SOURCE_DIR}/src/singledocparser.h + ${YAML_SOURCE_DIR}/src/stream.cpp + ${YAML_SOURCE_DIR}/src/stream.h + ${YAML_SOURCE_DIR}/src/streamcharsource.h + ${YAML_SOURCE_DIR}/src/stringsource.h + ${YAML_SOURCE_DIR}/src/tag.cpp + ${YAML_SOURCE_DIR}/src/tag.h + ${YAML_SOURCE_DIR}/src/token.h + ) + unset(YAML_SOURCE_DIR) +endif() |