YCM 0.2.0 (2016-11-17) Release Notes¶
Contents
Changes made since YCM 0.1 include the following.
Build System¶
Use the
INSTALL_PREFIXargument forCMakePackageConfigHelpers. This simplifies a lot the creation of theYCMConfig.cmakefile for the binary tree.Fixed warnings with CMake 3.2.
Added RunCMake unit tests.
Added
YCM_CMAKE_DOWNLOAD_URLvariable 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 newTARGETandREPLACE_TARGETSarguments, 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_TARGETorSTANDARD_FIND_MODULE_USE_IMPORTED_TARGET_<NAME>are specified, and theTARGETargument is given, the<NAME>_LIBRARIESvariable content is replaced with the corresponding imported target.StandardFindModule: Ensure that include directories exists.StandardFindModule: Fix INTERFACE_COMPILE_{DEFINITIONS,OPTIONS} properties.New module
GetAllCMakeProperties.StandardFindModuleFix QUIET argument.
Packaging Helper Modules¶
InstallBasicPackageFiles: Use the newINSTALL_PREFIXargument 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 theCMakeDependentOptionsmodule.fix
AddInstallRPATHSupportfor installation in system path
Superbuild Helper Modules¶
YCMEPHelpernow handles tests for sub-projects.YCMEPHelper: PassPKG_CONFIG_USE_CMAKE_PREFIX_PATHto subprojects.YCMEPHelper: Prepare forCMAKE_CACHE_DEFAULT_ARGS. The argument is accepted, but not yet passed toExternalProject_Add()YCMEPHelper: PassPKG_CONFIG_PATHto non CMake subprojects.ExternalProject: FixCMP0054warnings.YCMEPHelper: MoveCMAKE_PREFIX_PATHto 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
FindFreenectnew module from YARP Git Repository.Import
FindFTDInew module from YARP Git Repository.Import
FindLibusb1new module from YARP Git Repository.Import
FindOpenNInew module from YARP Git Repository.Import
FindReadlinenew module from YARP Git Repository.Import
FindStagenew module from YARP Git Repository.New module
FindLibdc1394.FindFFMPEG: Fix for recent ffmpeg version on debianImport
FindFusenew module from YARP Git Repository.Import
FindGLFW3new module from YARP Git Repository.Import
FindLibOVRnew 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
FindLibv4l2new module from iCub Git Repository.Import
FindLibv4lconvertnew module from iCub Git Repository.Create imported targets in
FindGooCanvas,FindGooCanvasMM,FindGtkDatabox, andFindGtkDataboxMMmodules.FindIPOPTsupports IPOPT from new binary releases of the iCub Git Repository.FindIPOPTsupports IPOPT from the coinor-libipopt-dev debian package.FindGLFW3improves detection on windows.Fixed
FindGLUTmodule 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
BuildGooCanvasMMBuildGtkDataboxBuildGtkDataboxMM.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).
CMakePackageConfigHelpersmodule imported from CMake 3.1.FindLuamodule imported from CMake 3.0.FindMatlabmodule imported from CMake 3.7.FindArmadillomodule removed (available in CMake 2.8.9).FindGLEWmodule imported with patch applied to improve detection on windows.ExternalProject: Handle CONFIGURE_SOURCE_DIR argument in order to support projects in a subdirectory.CMakeFindDependencyMacromodule imported from CMake 3.0.FindSWIGandUseSWIGmodules imported from CMake master.
3rd Party¶
Updated to Eigen Mercurial Repository commit 00094bd
FindOctaveimported from https://cmake.org/Wiki/CMakeUserFindOctaveFindQCustomPlotimported from OVITO Git Repository.
Variables¶
Update
YCM_USE_CMAKE_<VERSION>: variables and relative documentation.