Skip to content
Snippets Groups Projects
Select Git revision
  • master-libyaml-test-suite
  • branch/default default protected
  • release/0.2.5
  • master
  • run-test-suite-2
  • master-2
  • release/test
  • testing
  • run-test-suite
  • perlpunk/fix-tag-chars
  • dist
  • packaging
  • release/0.2.4
  • run-test-suite-code
  • release/0.2.3
  • perlpunk/anchor-chars
  • release-0.1.8
  • run-test-suite-list
  • canonical-code-style
  • issue/10
20 results

yamlConfig.cmake.in

  • Jean-Christophe Fillion-Robin's avatar
    c746bcb85752
    Improve CMake build system · c746bcb85752
    Jean-Christophe Fillion-Robin authored
    New build options
    -----------------
    
    * Add option BUILD_TESTING by default ON
    See https://cmake.org/cmake/help/v2.8.12/cmake.html#module:CTest
    
    * Simplify library type selection using standard option BUILD_SHARED_LIBS
    See https://cmake.org/cmake/help/v3.0/variable/BUILD_SHARED_LIBS.html
    
    yamlConfig.cmake
    ----------------
    
    * Generate and install yamlConfig.cmake, yamlConfigVersion.cmake and yamlTargets.cmake
    
    * Bump CMake version and explicitly associate include dirs with targets
    See https://cmake.org/cmake/help/v3.0/manual/cmake-buildsystem.7.html#include-directories-and-usage-requirements
    
    * Ensure building against libyaml using "find_package(yaml)" uses expected compile options: Set HAVE_CONFIG_H
    as private compile option, YAML_DECLARE_STATIC as public
    
    Testing
    -------
    
    * Build all examples from "tests" directory
    
    CMake Best practices
    --------------------
    
    * configure "config.h" based on version info found in CMakeLists.txt
    
    * Ensure buildsystem re-generation listing sources (best-practice)
    
    It is not recommended to use GLOB to collect a list of source files from
    the source tree. If no CMakeLists.txt file changes when a source is added
    or removed then the generated build system cannot know when to ask CMake
    to regenerate.
    
    See https://cmake.org/cmake/help/v3.8/command/file.html
    
    Compilation warnings
    --------------------
    
    * Set _CRT_SECURE_NO_WARNINGS if building using VisualStudio
    
    This will avoid warnings like this one:
    
    ```
    C:\projects\libyaml\tests\run-emitter.c(268): warning C4996: 'fopen':
    This function or variable may be unsafe. Consider using fopen_s instead.
    To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for
    details.
    ```
    
    Continuous Integration
    ----------------------
    
    * travis: Install CMake >= 3.x using scikit-ci-addons
    
    * Add comments to appveyor.yml and run-tests.sh
    c746bcb85752
    History
    Improve CMake build system
    Jean-Christophe Fillion-Robin authored
    New build options
    -----------------
    
    * Add option BUILD_TESTING by default ON
    See https://cmake.org/cmake/help/v2.8.12/cmake.html#module:CTest
    
    * Simplify library type selection using standard option BUILD_SHARED_LIBS
    See https://cmake.org/cmake/help/v3.0/variable/BUILD_SHARED_LIBS.html
    
    yamlConfig.cmake
    ----------------
    
    * Generate and install yamlConfig.cmake, yamlConfigVersion.cmake and yamlTargets.cmake
    
    * Bump CMake version and explicitly associate include dirs with targets
    See https://cmake.org/cmake/help/v3.0/manual/cmake-buildsystem.7.html#include-directories-and-usage-requirements
    
    * Ensure building against libyaml using "find_package(yaml)" uses expected compile options: Set HAVE_CONFIG_H
    as private compile option, YAML_DECLARE_STATIC as public
    
    Testing
    -------
    
    * Build all examples from "tests" directory
    
    CMake Best practices
    --------------------
    
    * configure "config.h" based on version info found in CMakeLists.txt
    
    * Ensure buildsystem re-generation listing sources (best-practice)
    
    It is not recommended to use GLOB to collect a list of source files from
    the source tree. If no CMakeLists.txt file changes when a source is added
    or removed then the generated build system cannot know when to ask CMake
    to regenerate.
    
    See https://cmake.org/cmake/help/v3.8/command/file.html
    
    Compilation warnings
    --------------------
    
    * Set _CRT_SECURE_NO_WARNINGS if building using VisualStudio
    
    This will avoid warnings like this one:
    
    ```
    C:\projects\libyaml\tests\run-emitter.c(268): warning C4996: 'fopen':
    This function or variable may be unsafe. Consider using fopen_s instead.
    To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for
    details.
    ```
    
    Continuous Integration
    ----------------------
    
    * travis: Install CMake >= 3.x using scikit-ci-addons
    
    * Add comments to appveyor.yml and run-tests.sh