[CMake] CMake 2.8.10-rc1 ready for testing!

Robert Dailey rcdailey.lists at gmail.com
Tue Oct 2 15:36:31 EDT 2012


Could we get a list of all the new generator expressions? Is there
2.8.10 documentation online somewhere that might have them documented?

On Tue, Oct 2, 2012 at 1:51 PM, David Cole <david.cole at kitware.com> wrote:
> Time for the fall harvest edition of CMake...
>
> I am happy to announce that CMake 2.8.10 has entered the release
> candidate stage!
>
> You can find the source and binaries here:
>
>   http://www.cmake.org/files/v2.8/?C=M;O=D
>
> This email is also available as blog posts:
>
>   http://www.kitware.com/blog/home/post/391
>   http://cmake.blogspot.com/2012/10/cmake-2810-rc1-ready-for-testing.html
>
> Some of the notable changes in this release are:
>
>  - file(DOWNLOAD now handles "https" URLs -- the pre-built binaries
> available from Kitware link to OpenSSL
>  - support for the latest available versions of Visual Studio (11 /
> 2012) and Xcode (4.3, 4.4, 4.5, developer previews)
>  - uniform compiler "id" and version number variables available for
> nearly all known compilers and platforms
>  - new way to arrange exported targets that depend on other targets
> into "export sets"
>  - new generator expressions
>  - generator expressions available in more contexts, namely in the
> INCLUDE_DIRECTORIES and COMPILE_DEFINITIONS target properties
>  - new target properties for PDB_OUTPUT_DIRECTORY and PDB_NAME,
> implemented for Visual Studio 7 and up
>  - and, as always, various minor bug fixes
>
> The bug tracker change log page for this version is at:
>
>   http://public.kitware.com/Bug/changelog_page.php?version_id=100
>
> Following is the complete list of changes in this rc since the last
> release. Please try this version of CMake on your projects and report
> any issues to the list or the bug tracker.
>
> Thanks!
>
>
> -Dave
>
>
>
>
> Changes in CMake 2.8.10-rc1 (since 2.8.9)
> -----------------------------------------
> Scripted Changes (3):
>       Remove trailing whitespace from most CMake and C/C++ code
>       Convert CMake-language commands to lower case
>       Remove CMake-language block-end command arguments
>
> Alex Neundorf (27):
>       Eclipse: add support for the 4.2 Juno release (#13367)
>       Eclipse: improve (fix ?) version detection on OSX
>       Eclipse: fix #13358: don't create bad linked resources
>       Eclipse: fix #13358: don't create bad linked resources
>       remove non-working KDE4 test
>       Eclipse on OSX: fix handling of framework include dirs (#13464)
>       Eclipse on OSX: improve handling of framework include dirs (#13367)
>       -fix line length
>       fix #13474: also rescan dependencies if the depender does not exist
>       -fix line length
>       -fix Java dependency scanning, broken in previous commit
>       error out if CTEST_USE_LAUNCHERS is TRUE but RULE_LAUNCH_* are not set
>       fix #13494: rerun automoc also if include dirs or moc options change
>       CMakeDetermineFortranCompiler: add support for cross-compiling (#13379)
>       Automoc: fix #13493, use target properties for include dirs
>       Automoc: do not use DEFINITIONS, but only COMPILE_DEFINITIONS
>       Automoc: also the makefile-COMPILE_DEFINITIONS
>       cmGlobalGenerator.h: some minor coding style fixes
>       Modules/readme.txt: fix typo
>       find_package: add support for a <package>_NOT_FOUND_MESSAGE variable
>       exports: store pointers to all installations of each export set
>       exports: accept a missing target if it is exported exactly once
>       exports: first try at error handling if a target is missing
>       exports: fix build with MSVC6
>       exports: move the handling of missing targets into subclasses
>       exports: define a CMAKE_FIND_PACKAGE_NAME var set by find_package()
>       exports: add a test for exporting dependent targets
>
> Andreas Mohr (1):
>       FindCURL: Find older MSVC prebuilts
>
> Andy Piper (1):
>       Do not include directories which are part of the package install prefix.
>
> Benjamin Eikel (21):
>       Initial version of find module
>       FindSDL: Add version support for FindSDL_net
>       FindSDL: Version support for FindSDL_image
>       FindSDL: Use prefix SDL_NET, because it matches the file name.
>       FindSDL: Use SDL_IMAGE prefix for varibales
>       FindSDL: Add "cmake_minimum_required" to "try_compile" project
>       FindSDL: Format the documentation
>       FindSDL: Version support for FindSDL_sound
>       FindSDL: Use same capitalization for FPHSA as file name
>       FindSDL: Pass SDL_SOUND_LIBRARY to FIND_PACKAGE_HANDLE_STANDARD_ARGS
>       FindSDL: Use SDL_MIXER prefix for variables
>       FindSDL: Add version support for FindSDL_mixer
>       FindSDL: Update documentation
>       FindSDL: Use SDL_TTF prefix for variables
>       FindSDL: Add version support for FindSDL_ttf
>       FindSDL: Update documentation
>       FindSDL: Format documentation
>       FindSDL: Add version support
>       FindSDL: Add my copyright tag to all FindSDL_* modules
>       FindSDL: Remove from find_... calls PATHS that are set by default
>       FindSDL: Stay compatible with old input variables
>
> Bill Hoffman (8):
>       Use OUTPUT_NORMAL instead of OUTPUT_MERGE for cmake -E chdir.
>       curl: Use find_package(OpenSSL)
>       curl: Make OpenSSL DLLs available to CMake on Windows
>       file(DOWNLOAD): Generalize EXPECTED_MD5 to EXPECTED_HASH
>       file(DOWNLOAD): Add options for SSL
>       Utilities/Release: Enable CMAKE_USE_OPENSSL in nightly binaries
>       Add SSL_VERIFYPEER and CAINFO file options to ExternalProject_Add.
>       Revert "Ninja: don't expand any rsp files"
>
> Brad King (83):
>       find_library: Add test covering lib->lib64 cases
>       find_library: Refactor lib->lib64 conversion
>       find_library: Simplify lib->lib<arch> expansion
>       find_library: Fix mixed lib->lib64 (non-)conversion cases (#13419)
>       CMakeDetermine(C|CXX)Compiler: Consider Clang compilers
>       Factor common code out of CMakeDetermine(ASM|C|CXX|Fortran)Compiler
>       Prefer generic system compilers by default for C, C++, and Fortran
>       Xcode: Fix object library references in multi-project trees (#13452)
>       Xcode: Run xcode-select to find Xcode version file (#13463)
>       Watcom: Simplify compiler version detection (#11866)
>       Remove trailing TAB from NSIS.template.in
>       Fix WarnUnusedUnusedViaUnset test pass/fail regex
>       CMakeVersion.bash: Update sed expression for lower-case 'set'
>       GetPrerequisites: Mark file_cmd as advanced cache entry
>       Add boolean generator expressions
>       Add $<CONFIG:...> boolean query generator expression
>       Recognize Clang ASM support (#13473)
>       Xcode: Set ASM source language in project file (#13472)
>       Tests/Assembler: Do not use assembler in universal binaries
>       Add FindHg module to find Mercurial
>       ExternalProject: Add Mercurial (hg) repository support
>       Qt4Macros: Fix recently broken resource file parsing
>       Tests/ObjectLibrary: Do not enable CXX in subdirectories
>       VS11: Rename 'Immersive' to 'WindowsAppContainer' (#12930)
>       VS: Disable precompiled headers unless enabled by project (#12930)
>       VS11: Generate flag tables from MSBuild V110 tool files
>       Detect Compaq compiler version with its id
>       Detect PathScale compiler version with its id
>       Detect TI compiler version with its id
>       Detect Comeau compiler version with its id
>       Detect SDCC compiler version with its id
>       Detect Cray compiler version with its id
>       Detect Analog VisualDSP++ compiler version with its id
>       Re-order C/C++/Fortran compiler determination logic
>       CMakeDetermineCompilerId: Prepare to detect IDE compiler id
>       Xcode: Detect the compiler id and tool location
>       VS10: Define CMAKE_VS_PLATFORM_TOOLSET variable
>       VS: Detect the compiler id and tool location
>       Cleanly enable a language in multiple subdirectories
>       Test variables CMAKE_(C|CXX|Fortran)_COMPILER(|_ID|_VERSION)
>       Document CMAKE_<LANG>_COMPILER_(ID|VERSION) values
>       Make platform information files specific to the CMake version
>       Move CMAKE_<LANG>_COMPILER_WORKS to compiler information files
>       Store ABI detection results in compiler information files
>       VS: Remove support for "free" version 2003 tools
>       VS: Simplify MSVC version reporting
>       Modernize MSVC compiler information files
>       VS: Fix MSVC_IDE definition recently broken by refactoring
>       add_library: Document POSITION_INDEPENDENT_CODE default (#13479)
>       magrathea: Tell cmELF about DT_RUNPATH (#13497)
>       Utilities/Release: Link AIX binary with large maxdata
>       Utilities/xml: Add .gitattributes to disable whitespace checks
>       Utilities/xml: Add docbook-4.5 DTD (#13508)
>       docbook: Fix formatter naming convention to avoid shadow
>       docbook: Fix Sun CC warning on ptr_fun(isalnum)
>       curl: Honor OPENSSL_NO_SSL2
>       if: Compare up to 8 components in VERSION tests
>       ExternalProject: Generalize URL_MD5 option to URL_HASH
>       Rename SSL terminology to TLS
>       file(DOWNLOAD): Make TLS options behave as documented
>       OS X: Add platform-specific Clang compiler info files (#13536)
>       VS11: Detect VS 2012 Express for default generator (#13348)
>       VS11: Add VS 2012 Express support (#13348)
>       file(DOWNLOAD): Add HTTP User-Agent string
>       ExternalProject: Add DOWNLOAD_NAME option
>       file(DOWNLOAD): Change EXPECTED_HASH to take ALGO=value
>       VS8: Remove '.NET' from generator description (#10158)
>       Clang: Split Compiler/Clang* modules out from GNU (#13550)
>       Clang: All versions know about -fPIE (#13550)
>       Xcode: Remove unused code reading CMAKE_OSX_SYSROOT_DEFAULT
>       OS X: Always generate -isysroot if any SDK is in use
>       OS X: Improve default CMAKE_OSX_SYSROOT selection
>       bootstrap: Suppress CMAKE_OSX_SYSROOT if CFLAGS have -isysroot
>       Tests/Assembler: Use CMAKE_OSX_SYSROOT to generate .s file
>       OS X: Allow CMAKE_OSX_SYSROOT to be a logical SDK name
>       OS X: Simplify selection of CMAKE_OSX_ARCHITECTURES
>       OS X: If CMAKE_OSX_SYSROOT is already set do not compute default
>       OS X: Further improve default CMAKE_OSX_SYSROOT selection
>       OS X: Teach deployment target sanity check about SDK names
>       OS X: Ignore MACOSX_DEPLOYMENT_TARGET during Xcode compiler id
>       Verify that PDB_(NAME|OUTPUT_DIRECTORY) are honored in test
>       Document that PDB_(NAME|OUTPUT_DIRECTORY) are ignored for VS 6
>       Run PDBDirectoryAndName test on MSVC and Intel
>
> Clinton Stimpson (8):
>       fphsa: clarify message about minimum required version found.
>       DeployQt4:  Include DESTDIR for some cpack generators.
>       Add -DNDEBUG to RelWithDebInfo flags where where Release flags had it.
>       Fix regex for qt minor version.
>       FindQt4: Give precedence to QTDIR environment variable, if set.
>       FindQt4: Give precedence to QTDIR environment variable, if set.
>       Fix errors detecting Qt4 on Windows 8.
>       cmake-gui: Fix error status when interrupted.
>
> Daniel Pfeifer (8):
>       Simplify CMake.HTML documentation test command line
>       docbook: Remove table of contents
>       docbook: Factor out code to write valid DocBook IDs
>       docbook: Fix the DocBook section output
>       docbook: Cleanup formatter and generated DocBook
>       docbook: Add support for <abstract> at section level 1
>       docbook: Add CMake.DocBook test to validate xml (#13508)
>       docbook: Remove redundant docs that cause invalid DocBook
>
> David Cole (9):
>       Begin post-2.8.9 development
>       Release: Temporarily exclude ExternalProject test on cygwin
>       Add ability to run as a ctest -S script also
>       CMake: Clarify the documentation for if(f1 IS_NEWER_THAN f2)
>       Convert the CPACK_CYGWIN_PATCH_NUMBER variable to a cache variable
>       InstallRequiredSystemLibraries: Use correct file names (#13315)
>       ProcessorCount: Mark find_program vars as advanced (#13236)
>       FindQt4: Avoid "finding" non-existent library in a .framework
>       FindMPI: Set correct variables for calls to FPHSA
>
> Eric NOULARD (2):
>       Enhance DESTDIR documentation. Fixes #0012374.
>       Handles %attr(nnn,-,-) /path/to/file in CPACK_RPM_USER_FILELIST properly.
>
> James Bigler (3):
>       Replace -g3 with -g for CUDA 4.1 and 4.2 in addition to CUDA < 3.0.
>       Added CUDA_SOURCE_PROPERTY_FORMAT. Allows setting per file
> format (OBJ or PTX)
>       FindCUDA: Added CUDA_HOST_COMPILER variable.
>
> Marcin Wojdyr (1):
>       Remove CMake multiline block-end command arguments
>
> Nils Gladitz (1):
>       ctest_update: Tell svn not to prompt interactively (#13024)
>
> Patrick Gansterer (4):
>       VS: Cleanup AddPlatformDefinitions() of Visual Studio generators
>       Add additional architectures to CMakePlatformId.h.in
>       Add WindowsCE platform information files
>       VS: Remove duplicated implementations of CreateLocalGenerator()
>
> Peter Kuemmel (1):
>       Ninja: don't expand any rsp files
>
> Peter Kümmel (15):
>       Ninja: cmcldeps needs a compiler
>       Ninja: don't crash on returned 0 pointer
>       Ninja: prepare msvc pdb cleanup
>       Ninja:split out setting of msvc TARGET_PDB
>       Ninja: remove GetTargetPDB because it is used only once
>       Ninja: also detect /showInclude prefix for icl
>       Find mingw's windres also when Unix Makefiles are used
>       Ninja: don't suppress warning about compiler options
>       Ninja: suppress cmcldeps only for source file signature try_compiles
>       Ninja: filter target specific compile flags with language specific regex
>       Ninja: OBJECT_DEPENDS should set an implicit dependency
>       Ninja: don't confuse ninja's rsp files with nmake's
>       Ninja: move -LIBPATH behind -link option
>       Ninja: move <OBJECTS> in front of the first linker option
>       Ninja: add option to enforce usage of response files
>
> Philip Lowman (3):
>       FindOpenSceneGraph: CMake variable OSG_DIR influences detection now too
>       FindGTK2: Add GTK2_CAIROMMCONFIG_INCLUDE_DIR for cairommconfig.h
>       CMakeDetermineVSServicePack: Visual Studio 2012 added
>
> Rolf Eike Beer (25):
>       remove lib64 Unix paths if the respective lib path is also given
>       FindOpenSSL: find cross-compiled OpenSSL from MinGW (#13431)
>       FindOpenSSL: use SelectLibraryConfigurations
>       FindOpenSSL: let CMake handle environment variable HINTS
>       FindOpenSSL: cleanup path hints
>       FindOpenSSL: remove leftover comment
>       SelectLibraryConfiguration: generate correct output when input
> vars are lists
>       Fix typo direcotry -> directory (and similar) [#13444]
>       FindSelfPackers: fix typo (#13456)
>       CheckTypeSize: show in documentation how to get struct member
> size (#10579)
>       CheckTypeSize: add a test for size of struct members
>       FindX11: remove duplicates from X11 include path list (#13316)
>       FindX11: avoid calling list(REMOVE_DUPLICATES) on an empty list
>       list command: error on too many arguments
>       CMake.List test: explicitely test with lists containing only an
> empty string
>       use the find_* functions ENV parameter
>       use PATH_SUFFIXES to simplify find_* calls
>       do not escape spaces in regular expressions
>       read less from version headers into variables
>       FindFLEX: fix version extraction on Apple
>       FindGettext: remove code duplicating FPHSA checks
>       include FPHSA from current directory in all modules
>       FindOpenSceneGraph: simplify by using more features of FPHSA
>       FindSDL: add SDLMAIN_LIBRARY only once (#13262)
>       add documentation for all MSVCxxx version variables (#12567)
>
> Sergei Nikulov (1):
>       fix for discovering ft2build.h using FREETYPE_DIR environment var (#13502)
>
> Stephen Kelly (60):
>       Add new qt4_use_modules function.
>       Add missing whitespace to docs.
>       Fix some typos in the docs.
>       Remove incorrect doc string for link type enum
>       Remove duplicate 'of' from docs.
>       Fix unfortunate documentation error for PIC feature.
>       Don't duplicate -D defines sent to the compiler.
>       Fix CompileDefinitions test on Visual Studio.
>       Fix the test setting COMPILE_DEFINITIONS target property
>       Rename files from main.cpp to more meaningful names.
>       Fix casing of 'Qt' in docs, comments and user-visible strings.
>       Read entire Qt4 qrc file when parsing for depends info.
>       Add a return-after-error if an old Qt is found.
>       Use CMake platform variables instead of Qt ones.
>       Move variable setting down to where it relates to.
>       Remove an if which is always true.
>       Use add_subdirectory instead of the obsolete subdirs.
>       Replace two include_directories with a setting.
>       Compile with both Qt4 and Qt5.
>       Build with Qt5 if it is found.
>       cmGeneratorExpression: Re-write for multi-stage evaluation
>       cmGeneratorExpression: Port users to two-stage processing
>       Fix the regular expression validator for target names.
>       Handle colons as a special case in the generator expression parser.
>       Enable deprecated API when using Qt 5.
>       Add more forwarding API to cmGeneratorTarget.
>       Store cmGeneratorTargets with the makefile.
>       Move GenerateTargetManifest to cmGeneratorTarget.
>       Move GetLinkInformation to cmGeneratorTarget
>       Make cmLocalGenerator::AddArchitectureFlags take a cmGeneratorTarget.
>       Move GetCreateRuleVariable to cmGeneratorTarget.
>       Port cmLocalGenerator::GetTargetFlags to cmGeneratorTarget.
>       Move GetIncludeDirectories to cmGeneratorTarget.
>       Append the COMPILE_DEFINITIONS from the Makefile to all targets.
>       Add a wrapper for accessing config-specific compile-definitions.
>       Add convenience for getting a cmGeneratorTarget to use.
>       Fix compiler warning with initialization order.
>       Revert "Move GenerateTargetManifest to cmGeneratorTarget."
>       Use the cmGeneratorTarget for the include directories API.
>       Fix indentation in the code blocks generator.
>       Port remaining code to GetCompileDefinitions().
>       Add include guard for cmGeneratorExpression.
>       Don't prepend a path before generator expressions in include_directories.
>       Convert paths in INCLUDE_DIRECTORIES property to Unix slashes.
>       Add an AppendDefines std::string overload.
>       Return a std::string from GetCompileDefinitions.
>       Refactor GetCompileDefinitions a bit.
>       Extend the generator expression language with more logic.
>       Add a generator expression for target properties.
>       Add API to check that dependent target properties form a DAG.
>       Add a self-reference check for target properties.
>       Early return if there is no target.
>       Process generator expressions in the INCLUDE_DIRECTORIES property.
>       Process generator expressions in the COMPILE_DEFINITIONS target property.
>       Fix the layout of the generator expression documentation.
>       Fix punctuation in some variables documentation.
>       Document that generator expressions can be used in target properties.
>       Remove unused parameter marker and the unused parameter.
>       Fix minor typos.
>       Remove period at the end of the check message.
>
> Tom Schutter (2):
>       cmake-mode.el: Use more readable regex and case-fold-search
>       cmake-mode.el: add local keybindings
>
> Xavier Besseron (7):
>       cmCTestSVN: Add the new SVNInfo structure
>       cmCTestSVN: Extend Revision struct with SVN repo information
>       cmCTestSVN: Add the Repositories list and the RootInfo pointer
>       cmCTestSVN: Create the SVNInfo for the root repository
>       cmCTestSVN: Use the SVNInfo structure
>       cmCTestSVN: Add a LoadExternal() function and an ExternalParser class
>       cmCTestSVN: Load and process information from externals
>
> Yuchen Deng (1):
>       Add PDB_OUTPUT_DIRECTORY and PDB_NAME target properties (#10830)
>
> Yury G. Kudryashov (7):
>       exports: Move cmTargetExport to a dedicated header file
>       exports: Remove cmTargetExport constructor
>       exports: Rename cmGlobalGenerator::AddTargetToExport{s,}
>       exports: Create class cmExportSet
>       exports: Add cmExportSetMap class
>       exports: Hold an ExportSet pointer in cm*Export*Generator
>       exports: cmGlobalGenerator::ExportSets destructor will clear it
>
> Zack Galbreath (2):
>       Clean up documentation formatting so that it is rendered properly in HTML.
>       cmparseMSBuildXML: Include DisplayName in the output
> --
>
> Powered by www.kitware.com
>
> Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html
>
> Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ
>
> Follow this link to subscribe/unsubscribe:
> http://www.cmake.org/mailman/listinfo/cmake


More information about the CMake mailing list