CMake 3.8.0-rc2 is now ready!

I am proud to announce the second CMake 3.8 release candidate.
https://cmake.org/download/

Documentation is available at:
https://cmake.org/cmake/help/v3.8

Release notes appear below and are also published at
https://cmake.org/cmake/help/v3.8/release/3.8.html

Some of the more significant changes in CMake 3.8 are:

  • CMake now supports “CSharp” (C#) as a first-class language. It is
    currently supported by the Visual Studio Generators for VS 2010
    and above.
  • CMake now supports “CUDA” as a first-class language. It is
    currently supported by the Makefile Generators and the
    “Ninja” generator on Linux, macOS, and Windows. Support for the
    Visual Studio IDE is under development but not included in this
    release.
  • The “Compile Features” functionality now offers meta-features that
    request compiler modes for specific language standard levels (e.g.
    “cxx_std_11”). See “CMAKE_C_KNOWN_FEATURES” and
    “CMAKE_CXX_KNOWN_FEATURES”.
  • The “Compile Features” functionality is now aware of C++ 17. No
    specific features are yet enumerated besides the “cxx_std_17” meta-
    feature.
  • The Visual Studio Generators for VS 2013 and above learned to
    support a “host=x64” option in the “CMAKE_GENERATOR_TOOLSET” value
    (e.g. via the “cmake(1)” “-T” option) to request use of a VS 64-bit
    toolchain on 64-bit hosts.
  • The Visual Studio Generators learned to treat files passed to
    “target_link_libraries()” whose names end in “.targets” as MSBuild
    “targets” files to be imported into generated project files.
  • The “try_compile()” command source file signature gained new
    options to specify the language standard to use in the generated
    test project.
  • The “try_compile()” command source file signature now honors
    language standard variables like “CMAKE_CXX_STANDARD”. See policy
    “CMP0067”.
  • A “BUILD_RPATH” target property and corresponding
    “CMAKE_BUILD_RPATH” variable were added to support custom “RPATH”
    locations to be added to binaries in the build tree.
  • The “COMPILE_FLAGS” source file property learned to support
    “generator expressions”.
  • A new generator expression “$<IF:cond,true-value,false-value>” was
    added. It resolves to the true-value if the condition is “1” and
    resolves to the false-value if the condition is “0”.
  • The “Compile Features” functionality is now aware of features
    supported by Intel C++ compilers versions 12.1 through 17.0 on UNIX
    and Windows platforms.
  • The Visual Studio Generators for VS 2010 and above now place per-
    source file flags after target-wide flags when they are classified
    as raw flags with no project file setting (“AdditionalOptions”).
    This behavior is more consistent with the ordering of flags produced
    by other generators, and allows flags on more-specific properties
    (per-source) to override those on more general ones (per-target).
  • The precompiled Windows binary MSI package provided on “cmake.org”
    now records the installation directory in the Windows Registry under
    the key “HKLM\Software\Kitware\CMake” with a value named
    “InstallDir”.

 

Questions or comments are always welcome!