Skip to content

Releases: robotology/ycm-cmake-modules

YCM 0.10.2

26 Apr 06:53
Compare
Choose a tag to compare

YCM 0.10.2 (2019-04-26) Release Notes

Changes made since YCM 0.10.1 include the following.

Modules

Generic Modules

  • InstallBasicPackageFiles: Fixed regular expressions for CMake < 3.9.
  • YCMEPHelper: Fixed CMake prefix path of subprojects.

CMake Next

  • Updated to CMake v3.14.3 + commit d170a3177fdc57c96034f8a2ecf5d0f9aff70af4.
  • FetchContent: Fixed missing template file.
  • Fixed a few version checks that prevented from downloading future CMake modules or using them in YCM-dependent projects.
  • FindDoxygen imported from CMake 3.9 was not compatible with Doxygen 1.8.15. Now imported from CMake 3.13 to fix this.
  • FindPython: Fixed find_package(Python) for CMake < 3.7.

YCM 0.10.1

08 Apr 05:32
Compare
Choose a tag to compare

YCM 0.10.1 (2019-04-08) Release Notes

Changes made since YCM 0.10.0 include the following.

Modules

Generic Modules

  • YCMEPHelper: Fixed ExternalProject sha1sum.

CMake Next

  • Updated to CMake v3.14.0 + commit 52fb35bd69ec2fa1a5307695cb22c3f125debf4f.
  • FindGLEW: Fixed CMAKE_FIND_LIBRARY_SUFFIXES content.

YCM 0.10.0

01 Apr 09:07
Compare
Choose a tag to compare

YCM 0.10.0 (2019-04-01) Release Notes

Changes made since YCM 0.9 include the following.

Build System

  • YCM can now be included safely in another project using FetchContent.

Variables

  • The following varibales are no longer cached, since they should be set from the project maintainer, and not by the user:
    • YCM_USE_CMAKE_<VERSION>
    • YCM_USE_CMAKE_NEXT
    • YCM_USE_CMAKE_PROPOSED
    • YCM_USE_3RDPARTY
    • YCM_USE_DEPRECATED
  • The YCM_USE_CMAKE can now be used to disable simultaneously all the YCM_USE_CMAKE_<VERSION>, YCM_USE_CMAKE_NEXT, and YCM_USE_CMAKE_PROPOSED variables.

Modules

Generic Modules

  • The InstallBasicPackageFiles module learned to forward the ARCH_INDEPENDENT option to write_basic_package_version_file.
  • The IncludeUrl module no longer uses locks.
  • The InstallBasicPackageFiles module no longer looks for the Config.cmake.in in the root directory, only current source directory is supported.
  • The YCMDefaultDirs module default dirs now use CMAKE_CURRENT_BINARY_DIR instead of CMAKE_BINARY_DIR.
  • The YCMDefaultDirs module is now deprecated.
  • The InstallBasicPackageFiles module no longer needs FIRST_TARGET when used with EXPORT. Using FIRST_TARGET is deprecated.
  • InstallBasicPackageFiles: the TARGETS, TARGETS_PROPERTY, and TARGETS_PROPERTIES arguments are deprecated.
  • The AddUninstallTarget module must now be included in your main CMakeLists.txt. If included in a subdirectory it does nothing.
    This allows you to use it safely in your main CMakeLists.txt and include your project using add_subdirectory (for example when using it with FetchContent).
  • The AddUninstallTarget module no longer tries to add the uninstall target if the target it already exists, instead it does nothing.
  • InstallBasicPackageFiles: The list of targets is no longer used to decide whether PRIVATE_DEPENDENCIES should be enabled or not (only the BUILD_SHARED_LIBS variable is used).
    Dependencies for STATIC, OBJECT, and INTERFACE libraries should be passed as DEPENDENCIES instead.
  • InstallBasicPackageFiles: The NO_COMPATIBILITY_VARS option is deprecated. The compatibility variables are no longer generated by default, and their generation is broken when using EXPORT. If required, it is possible to re-enable it using the ENABLE_COMPATIBILITY_VARS option (deprecated) or define them using either INCLUDE_FILE or INCLUDE_CONTENT (recommended).
  • InstallBasicPackageFiles: Fixed malformed find_package() when a package dependency had a required version, for CMake older than 3.9.
  • The InstallBasicPackageFiles module now considers a relative EXPORT_DESTINATION as relative to CMAKE_CURRENT_BINARY_DIR instead of CURRENT_BINARY_DIR.
  • InstallBasicPackageFiles: Fixed export destination when EXPORT_DESTINATION is an absolute path.

Superbuild Helper Modules

  • The YCMEPHelper module now supports the CMAKE_CACHE_DEFAULT_ARGS argument.
  • The YCMEPHelper module supports the SOURCE_SUBDIR argument. The CONFIGURE_SOURCE_DIR argument is now deprecated in favour of SOURCE_SUBDIR.
  • The YCMEPHelper module now passes the variable CMAKE_TOOLCHAIN_FILE to the children projects.
  • YCMEPHelper: The CMAKE_PREFIX_PATH list passed to the subproject now has the first element the installation directory of the superbuild. This is to ensure that if a package is available in the system but it is disabled using USE_SYSTEM_<package> set to OFF, the version installed by the superbuild is the one found by the other packages in the superbuild.
  • The YCMEPHelper module now adds subproject to the main install target, if they provide a cmake_install.cmake file in their build directory. This file is automatically provided by CMake for projects installing at least one file. This feature should be considered experimental and might be modified or removed in the future. Please note that non-relocatable file will contain the path for the project installation (i.e. the path to the install folder inside the superbuild binary directory), not to CMAKE_INSTALL_PREFIX.

Find Modules

  • The FindLibOVR module now works properly with VS2015.
  • The FindPortAudio module should now detect the library installed by vcpkg.
  • The FindPortAudio module now handles debug and release libraries.
  • Import FindI2C module from YARP Git Repository.
  • The FindACE module now creates the ACE::ACE and ACE::ACE_INLINE imported targets. The ACE_ADDR_HAS_LOOPBACK_METHOD and ACE_COMPILES_WITHOUT_INLINE_<CONFIG> are now deprecated.
  • The FindQt3 module is deprecated in favour of one from CMake.
  • Added Findassimp module to locate the Open Asset Importer Library (assimp).
  • Added FindGLM module to locate the OpenGL Mathematics (GLM) library.

CMake Next

  • Updated to CMake v3.14.0 + commit e67e4dbaadf3583d665fb5409b425e1a238d9748.
  • Imported FindDoxygen module from CMake 3.9.
  • Imported WriteBasicConfigVersionFile and CMakePackageConfigHelpers modules from CMake master, to support the ARCH_INDEPENDENT option in write_basic_package_version_file.
  • Imported FetchContent module from CMake 3.11.
  • Imported FindOpenGL module from CMake 3.10.
  • The ExternalProject module was updated from CMake next. All the customizations were removed, with the exception of the git deleting clones fix.
  • The FindGlew module is now dowloaded from CMake master.

3rd Party

YCM 0.9.1

28 Nov 11:26
Compare
Choose a tag to compare

YCM 0.9.1 (2018-11-28) Release Notes

Changes made since YCM 0.9.0 include the following.

Modules

Generic Modules

  • FindOrBuildPackage: Fixed a typo that made find_or_build_package dismiss the first argument passed after the requested package name.

Find Modules

  • The FindGLFW3 module is now using the glfw target exported from upstream if available.
  • The FindESDCANAPI module is now also compatible with 64 bit libraries.

CMake Next

3rd Party

  • Fixed gstconfig.h detection on windows in FindGStreamer module.

YCM 0.9.0

23 Jul 09:39
Compare
Choose a tag to compare

YCM 0.9.0 (2017-07-23) Release Notes

Changes made since YCM 0.8 include the following.

Modules

Generic Modules

  • InstallBasicPackageFiles: Added INCLUDE_CONTENT argument, similar to INCLUDE_FILE but that passes the content from the command instead of an external file.
  • InstallBasicPackageFiles: The @INCLUDED_FILE_CONTENT@ variable in the template config file is deprecated in favour of @INCLUDED_CONTENT@.

3rd Party

  • Update Catch2 Git Repository to commit 76790604f523f7fb63741aca5fc7fc1cbc140763 (updated CatchAddTests and ParseAndAddCatchTests modules).
  • Imported modified version of the FindGraphviz module from the qgv Git Repository (modified version found here).

YCM 0.8.2

12 Jul 16:29
Compare
Choose a tag to compare

YCM 0.8.2 (2018-07-12) Release Notes

Changes made since YCM 0.8.1 include the following.

Modules

Generic Modules

  • InstallBasicPackageFiles: Generator expressions are used to get INTERFACE_INCLUDE_DIRECTORIES for NO_COMPATIBILITY_VARS.
  • InstallBasicPackageFiles: The INCLUDE_FILE arguments now configures the file using @ONLY.
  • GitInfo: Ensure that git commands are not executed outside a git repository or if the git executable is not available.

YCM 0.8.1

14 Jun 16:54
Compare
Choose a tag to compare

YCM 0.8.1 (2018-06-14) Release Notes

Changes made since YCM 0.8.0 include the following.

Modules

Generic Modules

  • InstallBasicPackageFiles: Fixed targets list when using EXPORT and FIRST_TARGET options.

Find Package Modules

  • FindACE: Fixed deprecation warning when the module is included twice.

YCM 0.8.0

11 Jun 09:39
Compare
Choose a tag to compare

YCM 0.8.0 (2018-06-11) Release Notes

Changes made since YCM 0.6 include the following.

Build System

  • CMake 3.5 or newer is now required.

Modules

Generic Modules

  • GitInfo: Fixed for clones using git-worktree
  • InstallBasicPackageFiles: Added INCLUDE_FILE argument to support appending user content to the generated PackageConfig.cmake file.
  • InstallBasicPackageFiles: Added EXPORT arguments to use export(EXPORT) instead of export(TARGETS) (default = ) if TARGETS-related arguments are not passed.
  • InstallBasicPackageFiles: Added FIRST_TARGET argument to specify a target to check when using EXPORT (default = )
  • InstallBasicPackageFiles: Added COMPONENT argument, forwarded to the install commands.
  • InstallBasicPackageFiles: Added INSTALL_DESTINATION and EXPORT_DESTINATION arguments, to install and generate the files in a path different from the default. The DESTINATION argument is now deprecated in favour of INSTALL_DESTINATION.
  • InstallBasicPackageFiles: Added PRIVATE_DEPENDENCIES argument to support dependencies that should be located only if the targets are built STATIC (i.e. libraries linked as PRIVATE).
  • InstallBasicPackageFiles: Fixed support for CMake < 3.9.

Find Modules

  • The FindFFMPEG was replaced by the 3rd party one.

CMake Next

  • Updated to CMake v3.11.2 + commit Kitware/CMake@f248f8a.
  • Imported modules FindPython.cmake, FindPython/Support.cmake, FindPython2.cmake, and Find3Python.cmake from CMake master (3.12).

3rd Party

YCM 0.6.0

21 Dec 12:03
Compare
Choose a tag to compare

YCM 0.6.0 (2017-12-21) Release Notes

Changes made since YCM 0.4 include the following.

Modules

Generic Modules

  • GetAllCMakeProperties: Add CMake policy stack PUSH and POP
  • AddInstallRPATHSupport: Added a new variable INSTALL_NAME_DIR to specify the absolute installation path of the libraries.
  • InstallBasicPackagesFiles: Add TARGETS_PROPERTIES argument to support multiple target properties.
  • InstallBasicPackagesFiles: Add TARGETS argument to allow passing the targets without using a property
  • InstallBasicPackagesFiles: Add DEPENDENCIES argument. Dependencies added to this list will be searched using find_dependency. The dependencies will replace the @PACKAGE_DEPENDENCIES@ string in the template file.
  • InstallBasicPackagesFiles: Fixed namespace in exported targets.
  • InstallBasicPackagesFiles: Keep internal files in current directory.
  • InstallBasicPackagesFiles: Add CONFIG_TEMPLATE argument. Also allow the config file in current source directory and improve UPPERCASE_FILENAMES and LOWERCASE_FILENAME handling.
  • InstallBasicPackagesFiles: Allow to use @PACKAGE_VERSION@ in template files. This argument is replaced with the value of the VERSION argument.
  • InstallBasicPackagesFiles: Add NO_COMPATIBILITY_VARS arguments. If set, the generation of the compatibility variables <VARS_PREFIX>_LIBRARIES and <VARS_PREFIX>_INCLUDE_DIRS is disabled. Also improve the generation of the <VARS_PREFIX>_INCLUDE_DIRS variable.

Superbuild Helper Modules

  • YCMEPHelper: Updated GITLAB_ROBOTOLOGY style to the new git address.
  • YCMEPHelper: Added option FOLDER (if not set, the COMPONENT value is used).
  • YCMEPHelper: Fixed ycm_write_dot_file command not generating valid dot files for projects containing the dash character in the project name.
  • YCMEPHelper: Styles are no longer defined in YCMEPHelper.cmake but in separate style files. This should simplify adding a new style.
  • YCMEPHelper: Improved graphs generated by ycm_write_dot_file. It is now possible to change colours for each component by setting the YCM_<COMPONENT>_COLOR, YCM_<COMPONENT>_BGCOLOR, and YCM_<COMPONENT>_NODECOLOR variables.

Find Package Modules

  • FindACE: Remove ACE_HAS_STRING_HASH check

CMake Next

  • Updated to CMake v3.10 + commit Kitware/CMake@51ccfaa.
  • Imported BasicConfigVersion-SameMinorVersion.cmake.in from master and modified WriteBasicConfigVersionFile, in order to support SameMinorVersion compatibility in write_basic_package_version_file and in install_basic_packages_files.

3rd Party

YCM 0.4.0

15 Jun 17:03
Compare
Choose a tag to compare

YCM 0.4.0 (2017-06-15) Release Notes

Changes made since YCM 0.2 include the following.

Build System

  • CMake 3.0 or newer is now required.

Modules

Find Package Modules

  • New module FindOpenNI2
  • New module FindZFP
  • FindACE: preserve the state of CMAKE_TRY_COMPILE_CONFIGURATION
  • FindGLFW3: improve detection on win32
  • FindLibOVR: Update FindLibOVR for MSVC 2015
  • FindLibOVR: Fix FindLibOVR debug output
  • FindLibOVR: Fix library version
  • FindIPOPT: Add workaround for robotology/icub-main#418