1. 23 Nov, 2021 1 commit
  2. 10 Oct, 2021 1 commit
  3. 28 Sep, 2021 1 commit
  4. 25 Sep, 2021 1 commit
    • Pino Toscano's avatar
      Hide most of non-public symbols by default (#984) · da1c8d36
      Pino Toscano authored
      * Export YAML::detail::node::m_amount
      
      The internal header node/detail/node.h is included by public headers;
      YAML::detail::node is implemented in the header itself, and thus it gets
      inlined... except for its static m_amount class member, which is
      instantiated in the library only. Right now all the symbols of yaml-cpp
      are exported (nothing is hidden), so the linker will find node::m_amount
      in the yaml-cpp library.
      
      As solution/workaround, explicitly export YAML::detail::node::m_amount.
      
      * CMake: use GenerateExportHeader
      
      Make use of the GenerateExportHeader CMake module to generate the dll.h
      header with export macros.
      
      While the produced dll.h is different, the result should be the same,
      i.e. nothing changes for yaml-cpp or its users.
      
      * CMake: hide all the symbols by default
      
      Hide all the symbols that are not explicitly exported with YAML_CPP_API.
      This way the ABI will be way smaller, and only actually exposing the
      public classes/functions.
      da1c8d36
  5. 10 Jul, 2021 1 commit
  6. 08 Jul, 2020 1 commit
  7. 24 May, 2020 1 commit
  8. 29 Apr, 2020 2 commits
    • deflinhec's avatar
      Make debug postfix optional (#856) · 513ee81f
      deflinhec authored
      Library debug postfix might not be suitable for cross platform project, and usually require extra work of link against prebuilt yaml-cpp.
      
      Generally, Xcode project output library to these directories:
          Debug
          Release
          Debug-iphoneos
          Release-iphoneos
          Debug-iphonesimulator
          Release-iphonesimulator
      
      Another Xcode project usually configured its build setting as follow, and expects library name to be same between Release and Debug
          LIBRARY_SEARCH_PATHS=$(CONFIGURATION)$(EFFECT_PLATFORM_NAME)
          OTHER_LDFLAGS= $(inherited) -lyaml-cpp
      513ee81f
    • Ian Taylor's avatar
      Fix clang format (#854) · 9f2781b5
      Ian Taylor authored
      Fix invocation of clang-format in CMakeLists and apply clang-format.
      9f2781b5
  9. 29 Nov, 2019 1 commit
  10. 31 Oct, 2019 1 commit
  11. 13 Oct, 2019 1 commit
  12. 04 Oct, 2019 1 commit
  13. 27 Sep, 2019 3 commits
    • Andy Maloney's avatar
    • Isabella Muerte's avatar
      Fix `DEBUG_POSTFIX` property (#746) · 9d7e556e
      Isabella Muerte authored
      The generator expressions here are actually unnecessary, now that I think about it.
      
      This should fix #745
      9d7e556e
    • Isabella Muerte's avatar
      Refactor CMake to use more modern paradigms (#741) · 5e9cb012
      Isabella Muerte authored
      Remove 2.6-isms
      Remove 2.8-isms
      Bump CMake minimum version to 3.4
      
      Disable some options when used as a subdirectory
      
      Use `CONFIGURE_DEPENDS` with `file(GLOB)` when possible
      
      Backport CMake 3.15's MSVC_RUNTIME_LIBRARY setting.
      Set all compile options as generator expressions.
      Set all find-package files to be installed to the correct file.
      
      Remove `export(PACKAGE)`, as this has been deprecated.
      Remove fat binary support
      Remove manual setting of iPhone settings. These should be set by parent
      projects.
      Remove use of ExternalProject for a local use
      Conditionally remove format target unless clang-format is found
      5e9cb012
  14. 25 Sep, 2019 1 commit
  15. 15 Sep, 2019 1 commit
  16. 10 Sep, 2019 3 commits
  17. 13 Mar, 2019 1 commit
    • Ted Lyngmo's avatar
      Apply formatting/style tweaks to comply with compile time diagnostics for g++ and clang++ (#686) · 0d5c5715
      Ted Lyngmo authored
      * Add compilation flags: -Wshadow -Weffc++ -pedantic -pedantic-errors
      * Delete implicit copy & move constructors & assignment operators
        in classes with pointer data members.
      * An exception to the above: Add default copy & move constructors &
        assignment operators for the Binary class.
      * Convert boolean RegEx operators to binary operators.
      * Initialize all members in all classes in ctors.
      * Let default ctor delegate to the converting ctor in
        Binary and RegEx
      * Don't change any tests except regex_test (as a result of the change
        to binary operators).
      
      Note: https://bugzilla.redhat.com/show_bug.cgi?id=1544675 makes
      -Weffc++ report a false positive in "include/yaml-cpp/node/impl.h".
      0d5c5715
  18. 27 Feb, 2019 1 commit
  19. 06 Jan, 2019 1 commit
  20. 19 Nov, 2018 1 commit
    • Joel Frederico's avatar
      Don't stomp on build flags (#635) · 2443da52
      Joel Frederico authored
      Let CMake handle the default optimizations for various configurations. We don't need to override them. In fact, overriding them makes it impossible for users to override them themselves.
      2443da52
  21. 18 Nov, 2018 1 commit
  22. 03 Sep, 2018 1 commit
    • Azamat H. Hackimov's avatar
      Improvements to CMake buildsystem · 5e79f5ee
      Azamat H. Hackimov authored
      Roll-forward of c90c08cc "Revert "Improvements to CMake buildsystem (#563)""
      
      NEW:
      
      * Replace CMAKE_SOURCE_DIR with CMAKE_CURRENT_SOURCE_DIR
      
      Fixes #612 when yaml-cpp is used as a git submodule.
      
      ORIGINAL:
      
      * Move enable_testing() into proper place
      
      * Added CMake's checks for C++11 standards
      
      Raised minimal version of CMake to 3.1, since on old systems there no
      decent compilers that supports c++11.
      
      Closes #377.
      
      * Externalize googletest project
      
      Externalize gtest to avoid installation, fixes #539.
      
      * Remove defined cmake_policies
      
      CMP0012 - OLD marked as deprecated for >=cmake-3.1 and will be removed
      CMP0015 - does not affect to build process
      CMP0042 - already NEW for >=cmake-3.1
      
      Fixes #505
      
      * Fix compiling in Windows MSVC
      5e79f5ee
  23. 09 Aug, 2018 2 commits
    • Jesse Beder's avatar
      Revert "Improvements to CMake buildsystem (#563)" · c90c08cc
      Jesse Beder authored
      This reverts commit 3e33bb31.
      
      The original commit broke the build (#612) when yaml-cpp is used as a git submodule.
      c90c08cc
    • Azamat H. Hackimov's avatar
      Improvements to CMake buildsystem (#563) · 3e33bb31
      Azamat H. Hackimov authored
      * Move enable_testing() into proper place
      
      * Added CMake's checks for C++11 standards
      
      Raised minimal version of CMake to 3.1, since on old systems there no
      decent compilers that supports c++11.
      
      Closes #377.
      
      * Externalize googletest project
      
      Externalize gtest to avoid installation, fixes #539.
      
      * Remove defined cmake_policies
      
      CMP0012 - OLD marked as deprecated for >=cmake-3.1 and will be removed
      CMP0015 - does not affect to build process
      CMP0042 - already NEW for >=cmake-3.1
      
      Fixes #505
      
      * Fix compiling in Windows MSVC
      3e33bb31
  24. 05 May, 2018 1 commit
  25. 06 Mar, 2018 1 commit
    • Jesse Beder's avatar
      Bump CMake version to 0.6.2. · 562aefc1
      Jesse Beder authored
      It was incorrectly left at 0.6.0 when 0.6.1 was released, so this needs to be done to make it consistent between the tagged version and the CMake version.
      562aefc1
  26. 28 Jan, 2018 1 commit
  27. 14 Nov, 2017 1 commit
    • Matthew Woehlke's avatar
      Separate tests and tools · 75280437
      Matthew Woehlke authored
      Don't build tests if the confusingly named YAML_CPP_BUILD_TOOLS is ON.
      Instead, add a new option that controls only if the tests are built.
      (Also, default tests to OFF.)
      75280437
  28. 10 Nov, 2017 2 commits
    • Matthew Woehlke's avatar
      Avoid absolute install destinations · dc9c750e
      Matthew Woehlke authored
      Remove use of CMAKE_INSTALL_PREFIX when specifying install destinations.
      It is preferred that install destinations are specified as relative
      paths, not absolute paths. This is also needed to create relocatable
      installs, and thus should fix #526.
      dc9c750e
    • Matthew Woehlke's avatar
      Fix Windows library install location · d96826f1
      Matthew Woehlke authored
      Don't install LIBRARIES on Windows to `bin`; they belong in `lib`. (This
      appears to have been done in a mistaken attempt to install the DLL's to
      `bin`, which do need to be there, but RUNTIME DESTINATION already takes
      care of this.)
      d96826f1
  29. 03 Dec, 2016 1 commit
  30. 11 Nov, 2016 1 commit
  31. 02 Oct, 2016 1 commit
  32. 28 Mar, 2016 1 commit
    • Paul Novotny's avatar
      Include cmake files in install · 500db60f
      Paul Novotny authored
      This adds yaml-cpp-config.cmake, yaml-cpp-config-version.cmake, and
      yaml-cpp-targets.cmake to the cmake install. As a result, cmake's
      find_package can easily find yaml-cpp for software that depends on
      yaml-cpp.
      
      Add code to install cmake files to $CMAKE_INSTALL_PREFIX/CMake on
      Windows, which is the de-facto standard.
      
      Closes jbeder/yaml-cpp#336 jbeder/yaml-cpp#127
      500db60f
  33. 31 Jan, 2016 1 commit