Releases: robotology/ycm-cmake-modules
Releases · robotology/ycm-cmake-modules
YCM 0.11.1
YCM 0.11.1 (2020-03-27) Release Notes
Changes made since YCM 0.11.0 include the following.
Modules
Generic Modules
InstallBasicPackageFiles
: A CMake version dependent inconsistency was fixed. (#314)
Find Modules
- The
FindESDCANAPI
module no longer usesNO_DEFAULT_PATH
. If theESDCANAPI
ntcan
library is installed via a custom vcpkg port instead of the official installers, its location will not be already listed in theESDCAN_LIB_DIRS
, and instead would be found with the usualCMAKE_PREFIX_PATH
introspection. (#320) - The
FindODE
now handles theCMAKE_CROSSCOMPILING
variable properly. - The
FindIPOPT
call to search forIPOPT_INCLUDE_DIRS
was fixed. (#325)
CMake Next
- Updated to CMake
v3.15.7
3rd Party
- The
FindEigen3
module is now downloaded from the Eigen Gitlab Repository (#303)
YCM 0.11.0
YCM 0.11.0 (2019-11-28) Release Notes
Changes made since YCM 0.10.0 include the following.
Important Changes
- CMake 3.12 or later is now required.
Build System
- Fixed issue for which the default generator was always used by the bootstrapped YCM (#290)
Modules
Generic Modules
InstallBasicPackageFiles
: The package is now exported to the user package registry, when theCMAKE_EXPORT_PACKAGE_REGISTRY
is enabled.InstallBasicPackageFiles
: Added the newNO_EXPORT
option, that can be used to install a set of CMake files when you don't have an export set or any targets to export.
Superbuild Modules
YCMEPHelper
: TheYCM_EP_INSTALL_DIR
variable can be used to change where the subprojects will be installed (default${PROJECT_BINARY_DIR}/install
). You should not change theYCM_EP_INSTALL_DIR
variable, unless you wish to build the superbuild only once, and discard the build directory. In this case you should change this variable to the final destination of the build since, for many projects, the build is not relocatable. Please also note that, if you change it to a folder that is not writable by current user, you will have to run the whole build as superuser
YCM 0.10.4
YCM 0.10.4 (2019-06-07) Release Notes
Changes made since YCM 0.10.3 include the following.
CMake Next
- The
UseSWIG
module works again with older CMake releases. Some features cannot be properly supported with CMake older than 3.12, and therefore are disabled on these versions
YCM 0.10.3
YCM 0.10.3 (2019-05-29) Release Notes
Changes made since YCM 0.10.2 include the following.
Build System
- Paths are no longer duplicated in
CMAKE_MODULE_PATH
whenYCMConfig.cmake
is included more than once.
Modules
Find Modules
- The
Findassimp
module now defines also theassimp_FOUND
variable.
CMake Next
- Updated to CMake
v3.13.5
+v3.14.4
+ commit
e13b18e2c70f42c23ed7e7fddb93557ce19b7359
. - The
FindSWIG
module now supports SWIG 4.
3rd Party
- Update Catch2 Git Repository to
v2.8.0
(updatedCatchAddTests
and
ParseAndAddCatchTests
modules). - The
ParseAndAddCatchTests
module is no longer imported from the
robotology-dependencies fork
YCM 0.10.2
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
: Fixedfind_package(Python)
for CMake < 3.7.
YCM 0.10.1
YCM 0.10.1 (2019-04-08) Release Notes
Changes made since YCM 0.10.0 include the following.
Modules
Generic Modules
YCMEPHelper
: FixedExternalProject
sha1sum.
CMake Next
- Updated to CMake v3.14.0 + commit
52fb35bd69ec2fa1a5307695cb22c3f125debf4f
. FindGLEW
: FixedCMAKE_FIND_LIBRARY_SUFFIXES
content.
YCM 0.10.0
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 theYCM_USE_CMAKE_<VERSION>
,YCM_USE_CMAKE_NEXT
, andYCM_USE_CMAKE_PROPOSED
variables.
Modules
Generic Modules
- The
InstallBasicPackageFiles
module learned to forward theARCH_INDEPENDENT
option towrite_basic_package_version_file
. - The
IncludeUrl
module no longer uses locks. - The
InstallBasicPackageFiles
module no longer looks for theConfig.cmake.in
in the root directory, only current source directory is supported. - The
YCMDefaultDirs
module default dirs now useCMAKE_CURRENT_BINARY_DIR
instead ofCMAKE_BINARY_DIR
. - The
YCMDefaultDirs
module is now deprecated. - The
InstallBasicPackageFiles
module no longer needsFIRST_TARGET
when used withEXPORT
. UsingFIRST_TARGET
is deprecated. InstallBasicPackageFiles
: theTARGETS
,TARGETS_PROPERTY
, andTARGETS_PROPERTIES
arguments are deprecated.- The
AddUninstallTarget
module must now be included in your mainCMakeLists.txt
. If included in a subdirectory it does nothing.
This allows you to use it safely in your mainCMakeLists.txt
and include your project usingadd_subdirectory
(for example when using it withFetchContent
). - The
AddUninstallTarget
module no longer tries to add theuninstall
target if the target it already exists, instead it does nothing. InstallBasicPackageFiles
: The list of targets is no longer used to decide whetherPRIVATE_DEPENDENCIES
should be enabled or not (only theBUILD_SHARED_LIBS
variable is used).
Dependencies forSTATIC
,OBJECT
, andINTERFACE
libraries should be passed asDEPENDENCIES
instead.InstallBasicPackageFiles
: TheNO_COMPATIBILITY_VARS
option is deprecated. The compatibility variables are no longer generated by default, and their generation is broken when usingEXPORT
. If required, it is possible to re-enable it using theENABLE_COMPATIBILITY_VARS
option (deprecated) or define them using eitherINCLUDE_FILE
orINCLUDE_CONTENT
(recommended).InstallBasicPackageFiles
: Fixed malformedfind_package()
when a package dependency had a required version, for CMake older than 3.9.- The
InstallBasicPackageFiles
module now considers a relativeEXPORT_DESTINATION
as relative toCMAKE_CURRENT_BINARY_DIR
instead ofCURRENT_BINARY_DIR
. InstallBasicPackageFiles
: Fixed export destination whenEXPORT_DESTINATION
is an absolute path.
Superbuild Helper Modules
- The
YCMEPHelper
module now supports theCMAKE_CACHE_DEFAULT_ARGS
argument. - The
YCMEPHelper
module supports theSOURCE_SUBDIR
argument. TheCONFIGURE_SOURCE_DIR
argument is now deprecated in favour ofSOURCE_SUBDIR
. - The
YCMEPHelper
module now passes the variableCMAKE_TOOLCHAIN_FILE
to the children projects. YCMEPHelper
: TheCMAKE_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 usingUSE_SYSTEM_<package>
set toOFF
, 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 acmake_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 theinstall
folder inside the superbuild binary directory), not toCMAKE_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 theACE::ACE
andACE::ACE_INLINE
imported targets. TheACE_ADDR_HAS_LOOPBACK_METHOD
andACE_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
andCMakePackageConfigHelpers
modules from CMake master, to support theARCH_INDEPENDENT
option inwrite_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 thegit
deleting clones fix. - The
FindGlew
module is now dowloaded from CMake master.
3rd Party
- Imported
FindGObject
module from qt-gstreamer Git Repository + some unmerged changes from robotology-dependencies fork. - Imported
CMakeRC
module from CMakeRC Git Repository. - Update Catch2 Git Repository to commit
4902cd721586822ded795afe0c418c553137306a
+ some unmerged changes from robotology-dependencies fork. - Imported
UseLATEX
module from UseLATEX Git Repository.
YCM 0.9.1
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 madefind_or_build_package
dismiss the first argument passed after the requested package name.
Find Modules
- The
FindGLFW3
module is now using theglfw
target exported from upstream if available. - The
FindESDCANAPI
module is now also compatible with 64 bit libraries.
CMake Next
- Updated to CMake v3.13.0 + commit Kitware/CMake@3804122.
3rd Party
- Fixed
gstconfig.h
detection on windows inFindGStreamer
module.
YCM 0.9.0
YCM 0.9.0 (2017-07-23) Release Notes
Changes made since YCM 0.8 include the following.
Modules
Generic Modules
InstallBasicPackageFiles
: AddedINCLUDE_CONTENT
argument, similar toINCLUDE_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
(updatedCatchAddTests
andParseAndAddCatchTests
modules). - Imported modified version of the
FindGraphviz
module from the qgv Git Repository (modified version found here).
YCM 0.8.2
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 getINTERFACE_INCLUDE_DIRECTORIES
forNO_COMPATIBILITY_VARS
.InstallBasicPackageFiles
: TheINCLUDE_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.