aboutsummaryrefslogtreecommitdiffstats
path: root/cmake/Findyaml-cpp.cmake
diff options
context:
space:
mode:
authorNikolai Kosjar <nikolai.kosjar@qt.io>2019-07-30 15:26:31 +0200
committerNikolai Kosjar <nikolai.kosjar@qt.io>2019-08-30 08:42:22 +0000
commit0ba729e527da37f7c5d7fbc59247971df3da7d8a (patch)
treef6397a18ab4a7850b656f7b6e7a68f3d8a4e49ae /cmake/Findyaml-cpp.cmake
parentd663b8e406c89585f123207d6e07832d1818e53b (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.cmake109
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()