YCM 0.2.0 (2016-11-17) Release Notes¶
Contents
Changes made since YCM 0.1 include the following.
Build System¶
Use the
INSTALL_PREFIX
argument forCMakePackageConfigHelpers
. This simplifies a lot the creation of theYCMConfig.cmake
file for the binary tree.Fixed warnings with CMake 3.2.
Added RunCMake unit tests.
Added
YCM_CMAKE_DOWNLOAD_URL
variable and use github as default download url.Try to download the files up to 3 times in order to avoid common network issues.
YCMBootstrap
: Fix env variables list truncated to first element in Windows (#100).
Modules¶
Generic Modules¶
StandardFindModule
: Add QUIET argument.New module
GitInfo
.IncludeUrl
: Several bug fixes and improvement.New module
ReplaceImportedTargets
.StandardFindModule
: handle the newTARGET
andREPLACE_TARGETS
arguments, to create automatically the specified imported target and to replace the known targets paths with the relative target name (in pkg-config mode only). If any of theSTANDARD_FIND_MODULE_USE_IMPORTED_TARGET
orSTANDARD_FIND_MODULE_USE_IMPORTED_TARGET_<NAME>
are specified, and theTARGET
argument is given, the<NAME>_LIBRARIES
variable content is replaced with the corresponding imported target.StandardFindModule
: Ensure that include directories exists.StandardFindModule
: Fix INTERFACE_COMPILE_{DEFINITIONS,OPTIONS} properties.New module
GetAllCMakeProperties
.StandardFindModule
Fix QUIET argument.
Packaging Helper Modules¶
InstallBasicPackageFiles
: Use the newINSTALL_PREFIX
argument forCMakePackageConfigHelpers
.New module
AddInstallRPATHSupport
: Add RPATH support when building executables or shared libraries.AddInstallRPATHSupport
: Accept multiple conditions for the DEPENDS argument. This makes the DEPENDS argument similar to theCMakeDependentOptions
module.fix
AddInstallRPATHSupport
for installation in system path
Superbuild Helper Modules¶
YCMEPHelper
now handles tests for sub-projects.YCMEPHelper
: PassPKG_CONFIG_USE_CMAKE_PREFIX_PATH
to subprojects.YCMEPHelper
: Prepare forCMAKE_CACHE_DEFAULT_ARGS
. The argument is accepted, but not yet passed toExternalProject_Add()
YCMEPHelper
: PassPKG_CONFIG_PATH
to non CMake subprojects.ExternalProject
: FixCMP0054
warnings.YCMEPHelper
: MoveCMAKE_PREFIX_PATH
to command line arguments. This fixes pkg-config not able to detect packages built by YCM.YCMEPHelper
: Fix .dot files generation for modules containing the-
character in the name.YCMEPHelper
: Do not force CMake cache default arguments that are not set in the main project.FindOrBuildPackage
: Extract version argument from ARGN.YCMEPHelper
: variables in commands are no longer replaced. Instead of passing variables that are internal to YCMEPHelper, the user should use<SOURCE_DIR>
,<BINARY_DIR>
,<INSTALL_DIR>
, and<TMP_DIR>
that are automatically replaced by ExternalProject.YCMEPHelper
: Handle and use CONFIGURE_SOURCE_DIR argument in order to support projects in a subdirectory.YCMEPHelper
: Propagate CMAKE_SKIP_INSTALL_RPATH flag to all sub-projects.
Find Package Modules¶
New module
FindqpOASES
.Import
FindFreenect
new module from YARP Git Repository.Import
FindFTDI
new module from YARP Git Repository.Import
FindLibusb1
new module from YARP Git Repository.Import
FindOpenNI
new module from YARP Git Repository.Import
FindReadline
new module from YARP Git Repository.Import
FindStage
new module from YARP Git Repository.New module
FindLibdc1394
.FindFFMPEG
: Fix for recent ffmpeg version on debianImport
FindFuse
new module from YARP Git Repository.Import
FindGLFW3
new module from YARP Git Repository.Import
FindLibOVR
new module from YARP Git Repository.FindODE
: Use double precision by default when available.FindESDCANAPI
: Fixed find library procedure.FindIPOPT
: Improvements and restored required IPOPT_LINK_FLAGS variable.Import
FindLibv4l2
new module from iCub Git Repository.Import
FindLibv4lconvert
new module from iCub Git Repository.Create imported targets in
FindGooCanvas
,FindGooCanvasMM
,FindGtkDatabox
, andFindGtkDataboxMM
modules.FindIPOPT
supports IPOPT from new binary releases of the iCub Git Repository.FindIPOPT
supports IPOPT from the coinor-libipopt-dev debian package.FindGLFW3
improves detection on windows.Fixed
FindGLUT
module on Window 64 bit.Fixed stray ; character in
FindODE
.New module
FindLibedit
.New module
FindNVIDIACg
.
Build Package Modules¶
New module
BuildqpOASES
.BuildGooCanvas
: Change command variable style.New modules
BuildGooCanvasMM
BuildGtkDatabox
BuildGtkDataboxMM
.BuildYARP
: Build and use GooCanvasMM and GtkDataboxMM as dependencies.BuildICUB
: Do not build canBus devices.
CMake Proposed Modules¶
ExternalProject
: Init only selected git submodules.ExternalProject
: Handle CONFIGURE_SOURCE_DIR argument. This argument can be used when the the main CMakeLists.txt file is not in the source directory, but in a subdirectory.
CMake Next¶
Updated to CMake v3.7.0 + commit ab4a9a98266fb29008cecc9649a91fc844c541f5).
CMakePackageConfigHelpers
module imported from CMake 3.1.FindLua
module imported from CMake 3.0.FindMatlab
module imported from CMake 3.7.FindArmadillo
module removed (available in CMake 2.8.9).FindGLEW
module imported with patch applied to improve detection on windows.ExternalProject
: Handle CONFIGURE_SOURCE_DIR argument in order to support projects in a subdirectory.CMakeFindDependencyMacro
module imported from CMake 3.0.FindSWIG
andUseSWIG
modules imported from CMake master.
3rd Party¶
Updated to Eigen Mercurial Repository commit 00094bd
FindOctave
imported from https://cmake.org/Wiki/CMakeUserFindOctaveFindQCustomPlot
imported from OVITO Git Repository.
Variables¶
Update
YCM_USE_CMAKE_<VERSION>
: variables and relative documentation.