[CMake] [ANNOUNCE] CMake 3.6.0-rc4 now ready for testing!

Chaos Zhang zcsd2012 at gmail.com
Fri Jul 1 03:04:03 EDT 2016


Thanks a lot for your hard working, thus we can benefit from cmake! :-)Best
regard,chao
Robert Maynard wrote
> I am proud to announce the fourth CMake 3.6 release candidate.Sources and
> binaries are available at:  https://cmake.org/download/Documentation is
> available at:  https://cmake.org/cmake/help/v3.6Release notes appear below
> and are also published at 
> https://cmake.org/cmake/help/v3.6/release/3.6.htmlSome of the more
> significant features of CMake 3.6 are:* The "Visual Studio 14 2015"
> generator learned to support the  Clang/C2 toolsets, e.g. with the "-T
> v140_clang_3_7" option. This  feature is experimental.* The "list()"
> command gained a "FILTER" sub-command to filter list  elements by regular
> expression.* A "CMAKE_TRY_COMPILE_TARGET_TYPE" variable was added to
> optionally  tell the "try_compile()" command to build a static library
> instead  of an executable.  This is useful for cross-compiling toolchains 
> that cannot link binaries without custom flags or scripts.* A "

> _CLANG_TIDY" target property and supporting  "CMAKE_

> _CLANG_TIDY" variable were introduced to tell the  Makefile Generators and
> the "Ninja" generator to run "clang-tidy"  along with the compiler for "C"
> and "CXX" languages.* The "ExternalProject" module leared the "GIT_SHALLOW
> 1" option to  perform a shallow clone of a Git repository.* The
> "ExternalProject" module learned to initialize Git submodules  recursively
> and also to initialize new submodules on updates.  Use  the
> "GIT_SUBMODULES" option to restrict which submodules are  initalized and
> updated.* The "InstallRequiredSystemLibraries" module learned a new 
> "CMAKE_INSTALL_UCRT_LIBRARIES" option to enable app-local deployment  of
> the Windows Universal CRT libraries with Visual Studio 2015.* The "Compile
> Features" functionality is now aware of features  supported by Intel C++
> compilers versions 12.1 through 16.0 on UNIX  platforms.Deprecated and
> Removed Features===============================* The "CMakeForceCompiler"
> module and its macros are now deprecated.  See module documentation for an
> explanation.* The "Visual Studio 7 .NET 2003" generator is now deprecated
> and  will be removed in a future version of CMake.* The "Visual Studio 7"
> generator (for VS .NET 2002) has been  removed. It had been deprecated
> since CMake 3.3.* The "Visual Studio 6" generator has been removed. It had
> been  deprecated since CMake 3.3.CMake 3.6 Release
> Notes***********************Changes made since CMake 3.5 include the
> following.New Features============Generators----------* The "Ninja"
> generator learned to produce phony targets of the form  "sub/dir/all" to
> drive the build of a subdirectory. This is  equivalent to "cd sub/dir;
> make all" with Makefile Generators.* The "Ninja" generator now includes
> system header files in build  dependencies to ensure correct re-builds
> when system packages are  updated.* The "Visual Studio 14 2015" generator
> learned to support the  Clang/C2 toolsets, e.g. with the "-T
> v140_clang_3_7" option. This  feature is experimental.Commands--------*
> The "add_custom_command()" and "add_custom_target()" commands  learned how
> to use the "CROSSCOMPILING_EMULATOR" executable target  property.* The
> "install()" command learned a new "EXCLUDE_FROM_ALL" option to  leave
> installation rules out of the default installation.* The "list()" command
> gained a "FILTER" sub-command to filter list  elements by regular
> expression.* The "string(TIMESTAMP)" and "file(TIMESTAMP)" commands gained 
> support for the "%s" placeholder.  This is the number of seconds  since
> the UNIX Epoch.Variables---------* A "CMAKE_DEPENDS_IN_PROJECT_ONLY"
> variable was introduced to tell  Makefile Generators to limit dependency
> scanning only to files in  the project source and build trees.* A new
> "CMAKE_HOST_SOLARIS" variable was introduced to indicate  when CMake is
> running on an Oracle Solaris host.* A "CMAKE_

> _STANDARD_INCLUDE_DIRECTORIES" variable was added  for use by toolchain
> files to specify system include directories to  be appended to all
> compiler command lines.* The "CMAKE_

> _STANDARD_LIBRARIES" variable is now documented.  It is intended for use
> by toolchain files to specify system  libraries to be added to all linker
> command lines.* A "CMAKE_NINJA_OUTPUT_PATH_PREFIX" variable was introduced
> to tell  the "Ninja" generator to configure the generated "build.ninja"
> file  for use as a "subninja".* A "CMAKE_TRY_COMPILE_PLATFORM_VARIABLES"
> variable was added for  use by toolchain files to specify
> platform-specific variables that  must be propagated by the
> "try_compile()" command into test  projects.* A
> "CMAKE_TRY_COMPILE_TARGET_TYPE" variable was added to optionally  tell the
> "try_compile()" command to build a static library instead  of an
> executable.  This is useful for cross-compiling toolchains  that cannot
> link binaries without custom flags or scripts.Properties----------* A
> "DEPLOYMENT_REMOTE_DIRECTORY" target property was introduced to  tell the
> "Visual Studio 9 2008" and "Visual Studio 8 2005"  generators to generate
> the "remote directory" for WinCE project  deployment and debugger
> settings.* A "

> _CLANG_TIDY" target property and supporting  "CMAKE_

> _CLANG_TIDY" variable were introduced to tell the  Makefile Generators and
> the "Ninja" generator to run "clang-tidy"  along with the compiler for "C"
> and "CXX" languages.* A "TIMEOUT_AFTER_MATCH" test property was introduced
> to optionally  tell CTest to enforce a secondary timeout after matching
> certain  output from a test.* A "VS_CONFIGURATION_TYPE" target property
> was introduced to  specify a custom project file type for Visual Studio
> Generators  supporting VS 2010 and above.* A "VS_STARTUP_PROJECT"
> directory property was introduced to  specify for Visual Studio Generators
> the default startup project for  generated solutions (".sln"
> files).Modules-------* The "CMakePushCheckState" module now
> pushes/pops/resets the  variable "CMAKE_EXTRA_INCLUDE_FILE" used in
> "CheckTypeSize".* The "ExternalProject" module leared the "GIT_SHALLOW 1"
> option to  perform a shallow clone of a Git repository.* The
> "ExternalProject" module learned to initialize Git submodules  recursively
> and also to initialize new submodules on updates.  Use  the
> "GIT_SUBMODULES" option to restrict which submodules are  initalized and
> updated.* The "ExternalProject" module leared the "DOWNLOAD_NO_EXTRACT 1" 
> argument to skip extracting the file that is downloaded (e.g., for 
> self-extracting shell installers or ".msi" files).* The "ExternalProject"
> module now uses "TLS_VERIFY" when fetching  from git repositories.* The
> "FindBLAS" and "FindLAPACK" modules learned to support  OpenBLAS.* The
> "FindCUDA" module learned to find the "cublas_device" library.* The
> "FindGTest" module "gtest_add_tests" function now causes CMake  to
> automatically re-run when test sources change so that they can be 
> re-scanned.* The "FindLTTngUST" module was introduced to find the
> LTTng-UST  library.* The "FindPkgConfig" module learned to optionally
> create imported  targets for the libraries it has found.* The
> "FindProtobuf" module learned to provide a "Protobuf_VERSION"  variable
> and check the version number requested in a  "find_package()" call.* The
> "InstallRequiredSystemLibraries" module learned a new 
> "CMAKE_INSTALL_UCRT_LIBRARIES" option to enable app-local deployment  of
> the Windows Universal CRT libraries with Visual Studio
> 2015.Platforms---------* The Clang compiler is now supported on CYGWIN.*
> Support was added for the Bruce C Compiler with compiler id 
> "Bruce".CTest-----* The "ctest_update()" command now looks at the 
> "CTEST_GIT_INIT_SUBMODULES" variable to determine whether submodules 
> should be updated or not before updating.* The "ctest_update()" command
> will now synchronize submodules on an  update. Updates which add
> submodules or change a submodule's URL  will now be pulled
> properly.CPack-----* The "CPackDeb" module learned how to handle "$ORIGIN"
> in  "CMAKE_INSTALL_RPATH" when "CPACK_DEBIAN_PACKAGE_SHLIBDEPS" is used 
> for dependency auto detection.* The "CPackDeb" module learned how to
> generate "DEBIAN/shlibs"  contorl file when package contains shared
> libraries.* The "CPackDeb" module learned how to generate
> "DEBIAN/postinst"  and "DEBIAN/postrm" files if the package installs
> libraries in  ldconfig- controlled locations (e.g. "/lib/", "/usr/lib/").*
> The "CPackDeb" module learned how to generate dependencies between  Debian
> packages if multi-component setup is used and  "CPACK_COMPONENT_

> _DEPENDS" variables are set. For backward  compatibility this feature is
> disabled by default. See  "CPACK_DEBIAN_ENABLE_COMPONENT_DEPENDS".* The
> "CPackDeb" module learned how to set custom package file names  including
> how to generate properly-named Debian packages:     

> _

> -

> _

> .deb  For backward compatibility this feature is disabled by default. See 
> "CPACK_DEBIAN_FILE_NAME" and "CPACK_DEBIAN_

> _FILE_NAME".* The "CPackDeb" module learned how to set the package release 
> number ("DebianRevisionNumber" in package file name when used in 
> combination with "DEB-DEFAULT" value set by  "CPACK_DEBIAN_FILE_NAME"). 
> See "CPACK_DEBIAN_PACKAGE_RELEASE".* The "CPackDeb" module learned how to
> set the package architecture  per-component.  See "CPACK_DEBIAN_

> _PACKAGE_ARCHITECTURE".* The "CPackDMG" module learned a new option to
> tell the CPack  "DragNDrop" generaor to skip the "/Applications" symlink.
> See the  "CPACK_DMG_DISABLE_APPLICATIONS_SYMLINK" variable.* The
> "CPackIFW" module gained a new "cpack_ifw_update_repository()"  command to
> update a QtIFW-specific repository from a remote  repository.* The
> "CPackRPM" module learned how to set RPM "dist" tag as part of  RPM
> "Release:" tag when enabled (mandatory on some Linux  distributions for
> e.g. on Fedora). See  "CPACK_RPM_PACKAGE_RELEASE_DIST".* The "CPackRPM"
> module learned how to set default values for owning  user/group and
> file/directory permissions of package content. See 
> "CPACK_RPM_DEFAULT_USER", "CPACK_RPM_DEFAULT_GROUP", 
> "CPACK_RPM_DEFAULT_FILE_PERMISSIONS",  "CPACK_RPM_DEFAULT_DIR_PERMISSIONS"
> and their per component  counterparts.* The "CPackRPM" module learned how
> to set user defined package file  names, how to specify that rpmbuild
> should decide on file name  format as well as handling of multiple rpm
> packages generated by a  single user defined spec file. See
> "CPACK_RPM_PACKAGE_NAME" and  "CPACK_RPM_

> _PACKAGE_NAME".* The "CPackRPM" module learned how to correctly handle
> symlinks  that are pointing outside generated packages.Other-----* The
> "Compile Features" functionality is now aware of features  supported by
> Intel C++ compilers versions 12.1 through 16.0 on UNIX 
> platforms.Deprecated and Removed Features===============================*
> The "CMakeForceCompiler" module and its macros are now deprecated.  See
> module documentation for an explanation.* The "find_library()",
> "find_path()", and "find_file()" commands no  longer search in
> installation prefixes derived from the "PATH"  environment variable on
> non-Windows platforms.  This behavior was  added in CMake 3.3 to support
> Windows hosts but has proven  problematic on UNIX hosts. Users that keep
> some "

> /bin"  directories in the "PATH" just for their tools do not necessarily 
> want any supporting "

> /lib" directories searched.  One may  set the "CMAKE_PREFIX_PATH"
> environment variable with a ;-list of  prefixes that are to be searched.*
> The "Visual Studio 7 .NET 2003" generator is now deprecated and  will be
> removed in a future version of CMake.* The "Visual Studio 7" generator
> (for VS .NET 2002) has been  removed. It had been deprecated since CMake
> 3.3.* The "Visual Studio 6" generator has been removed. It had been 
> deprecated since CMake 3.3.Other Changes=============* The precompiled OS
> X binary provided on "cmake.org" now requires  OS X 10.7 or newer.* On
> Linux and FreeBSD platforms, when building CMake itself from  source and
> not using a system-provided libcurl, OpenSSL is now used  by default if it
> is found on the system.  This enables SSL/TLS  support for commands
> supporting network communication via "https",  such as "file(DOWNLOAD)",
> "file(UPLOAD)", and "ctest_submit()".* The "cmake(1)" "--build"
> command-line tool now rejects multiple  "-- target" options with an error
> instead of silently ignoring all  but the last one.* "AUTOMOC" now
> diagnoses name collisions when multiple source files  in different
> directories use "#include 

> " with the same  name (because the generated "moc_foo.cpp" files would
> collide).* The "FindBISON" module "BISON_TARGET" macro now supports
> special  characters by passing the "VERBATIM" option to internal 
> "add_custom_command()" calls.  This may break clients that added  escaping
> manually to work around the bug.* The "FindFLEX" module "FLEX_TARGET"
> macro now supports special  characters by passing the "VERBATIM" option to
> internal  "add_custom_command()" calls.  This may break clients that added 
> escaping manually to work around the bug.* The "FindProtobuf" module input
> and output variables were all  renamed from "PROTOBUF_" to "Protobuf_" for
> consistency with other  find modules. Input variables of the old case will
> be honored if  provided, and output variables of the old case are always
> provided.* The "CPackRPM" module now supports upper cased component names
> in  per component CPackRPM specific variables. E.g. component named  "foo"
> now expects component specific variable to be 
> "CPACK_RPM_FOO_PACKAGE_NAME" while before it expected 
> "CPACK_RPM_foo_PACKAGE_NAME". Upper cased component name part in 
> variables is compatible with convention used for other CPack  variables.
> For back compatibility old format of variables is still  valid and
> preferred if both versions of variable are set, but the  preferred future
> use is upper cased component names in variables.  New variables that will
> be added to CPackRPM in later versions will  only support upper cased
> component variable
> format.----------------------------------------------------------------------------Changes
> made since CMake 3.6.0-rc3:Bartosz Kosiorek (1):      Help: Describe
> VERSION and SOVERSION meanings for Mach-O binariesBen Boeckel (1):     
> ninja, rc: ignore CMAKE_NINJA_FORCE_RESPONSE_FILE for RC filesBrad King
> (2):      Revert "try_compile: Honor CMAKE_

> _FLAGS_

>  changes"      CMake 3.6.0-rc4Gregor Jasny (1):      Help: Cross reference
> CXX_STANDARD and CXX_EXTENSIONS (#16162)Robert Maynard (5):      FindHDF5:
> correctly add lang to each component target name.      FindHDF5: Handle
> HDF5 builds with non-suffixed components      FindHDF5: When component
> targets not found fallback to compiler wrappers      FindHDF5: cache the
> correct path to the high level libraries      FindHDF5: create all the
> *_LIBRARIES when using hdf5-config.cmakeRolf Eike Beer (1):     
> GetPrerequisites: fix typo in comment-- Powered by www.kitware.comPlease
> keep messages on-topic and check the CMake FAQ at:
> http://www.cmake.org/Wiki/CMake_FAQKitware offers various services to
> support the CMake community. For more information on each offering, please
> visit:CMake Support: http://cmake.org/cmake/help/support.htmlCMake
> Consulting: http://cmake.org/cmake/help/consulting.htmlCMake Training
> Courses: http://cmake.org/cmake/help/training.htmlVisit other Kitware
> open-source projects at
> http://www.kitware.com/opensource/opensource.htmlFollow this link to
> subscribe/unsubscribe:http://public.kitware.com/mailman/listinfo/cmake





--
View this message in context: http://cmake.3232098.n2.nabble.com/ANNOUNCE-CMake-3-6-0-rc4-now-ready-for-testing-tp7593862p7593881.html
Sent from the CMake mailing list archive at Nabble.com.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://public.kitware.com/pipermail/cmake/attachments/20160701/d9941702/attachment-0001.html>


More information about the CMake mailing list