summaryrefslogtreecommitdiff
path: root/Utilities
Commit message (Collapse)AuthorAgeFilesLines
* Utilities/Sphinx: Add option to build 'singlehtml' formatBrad King2014-04-241-1/+13
| | | | Add SPHINX_SINGLEHTML to enable the Sphinx 'singlehtml' builder.
* Utilities/Sphinx: Fix cmake domain document removal with python3Brad King2014-04-241-1/+4
| | | | | | In the domain clear_doc method, avoid removing entries from a dictionary while iterating over it. Instead accumulate a set of entries to remove at the end.
* Utilities/Sphinx: Port documentation generation to python3 (#14886)Uwe L. Korn2014-04-182-4/+4
|
* Utilities/Sphinx: Add option to build 'text' formatBrad King2014-02-041-1/+7
| | | | | | | Add SPHINX_TEXT to enable the Sphinx 'text' builder. Mark it as advanced and do not add install rules. This is intended for use by the release manager to build the release notes in text format suitable for email.
* Utilities/Release: Pass pre-built docs tarballBrad King2014-01-294-3/+85
| | | | | | | | Avoid requiring all build machines for the upstream packaging process to have Python and Sphinx installed. Instead create a way to build the documentation once on the host machine and copy it to each build machine as a tarball with content to include in the installation tree for packaging.
* Utilities/Release: Fix for spaces in host pathBrad King2014-01-291-2/+2
| | | | Quote paths in the generated shell scripts so they work with spaces.
* Utilities/Release: Generate docs on dash2win64 cygwinBrad King2014-01-291-0/+2
| | | | | Configure the build on dash2win64 cygwin to run Sphinx and generate our documentation.
* Utilities/Release: Fix newlines on dash2win64 cygwinBrad King2014-01-291-1/+1
| | | | | Tell Git not to perform newline conversion by configuring 'core.autocrlf' to 'false'. Cygwin wants newlines like UNIX.
* Help: Do not install Sphinx html build info filesBrad King2014-01-281-1/+4
| | | | | Exclude '.buildinfo' and 'objects.inv' from installation as part of the Sphinx-generated html documentation.
* Merge topic 'minor-cleanups'Brad King2014-01-062-2/+11
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | a55c70d cmTarget: Remove support for <CONFIG>_LOCATION property. c9f9b3c cmTarget: Test impliedByUse number-compatible properties. fbe1fa7 cmTarget: Don't repeat property origin debug information. 01c545c cmTarget: Fix debug report for interface-set compatibility types. c67e1a6 cmTarget: Fix reporting interface-set properties which are FALSE. 07b0f54 Qt Tests: Remove commented and unneeded line. 79db8ef cmTarget: Fix the property compatibility error message 43340a9 Help: Reformat Qt autogenerator documentation. d98ea6c Help: Mark some code blocks as containing cmake code. ea78935 GenerateExportHeader: Reformat docs. 272a20f cmTarget: Don't update IMPORTED target compilation properties 03d842a Run the add_compile_options command unit test. cd3d0b6 get_property: Fix testing ALIASED_TARGET target property (#14670) 6a62228 install: Ensure that install(TARGETS) works with no DESTINATION af3d3b8 export: Only generate and install configuration files if needed. 0de81bb Help: Workaround pygments reporting an error for genexes. ...
| * Help: Workaround pygments reporting an error for genexes.Stephen Kelly2014-01-041-0/+10
| | | | | | | | | | Without the workaround, CMake code snippets are not highlighted at all because pygments can not lex the generator expressions.
| * Help: Remove workaround for pre-CMake 2.8.4 code.Stephen Kelly2014-01-041-2/+1
| | | | | | | | | | | | The requirement was updated in commit 920ffbf5 (Require CMake 2.8.4 or greater to build CMake, 2013-10-11) and similar snippets were removed.
* | Fix wording of "the the" typos throughout textRuslan Baratov2014-01-031-1/+1
|/
* Help: Fix Sphinx extension with docutils < 0.11Alex Neundorf2013-12-231-1/+6
| | | | | | | In older versions of python docutils "error_reporting" was not in the "utils" subpackage, so try the older location if the new one failed. Alex
* libarchive: Use ARCHIVE_LITERAL_ULL to add ULL integer suffixBrad King2013-12-091-1/+1
| | | | | The macro maps to an implementation that works on older compilers when necessary.
* libarchive: Port upstream issue 320 second fixBrad King2013-12-091-20/+48
| | | | | | | Port upstream commit 6cf33c93 (Issue 320: Rewrite (again) to avoid the left shift that CLang dislikes so much, 2013-12-07) into CMake. Inspired-by: Tim Kientzle <kientzle@freebsd.org>
* libarchive: Port upstream issue 320 fixBrad King2013-11-251-11/+7
| | | | | | | Port upstream commit 533e8fda (Rework the sign-extension to avoid left-shift of an explicit negative number, 2013-06-29) into CMake. Inspired-by: Tim Kientzle <kientzle@freebsd.org>
* cmake-gui: Reference LGPLv2.1 when redistributing QtBrad King2013-11-214-0/+4
| | | | | | | | | Download http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt and place it as Licenses/LGPLv2.1.txt in our source tree. When building cmake-gui, use option CMake_GUI_DISTRIBUTE_WITH_Qt_LGPL to enable notification in the "About" dialog of how the distribution of Qt is licensed. Install the license file as ${CMAKE_ROOT}/Licenses/LGPLv2.1.txt so that the dialog can display a path to it.
* Merge topic 'configure_file-drop-IMMEDIATE'Brad King2013-11-143-5/+3
|\ | | | | | | | | 15610bb Drop use of configure_file IMMEDIATE option
| * Drop use of configure_file IMMEDIATE optionDaniele E. Domenichelli2013-11-133-5/+3
| | | | | | | | | | | | Since commit 7d47c693 (Drop compatibility with CMake < 2.4, 2013-10-08) we no longer need to use the configure_file IMMEDIATE option to support compatibility modes less than 2.0.
* | Help: Parse Copyright.txt instead of using current yearBrad King2013-11-132-2/+10
|/ | | | | | | Configure our Sphinx conf.py with a copyright line extracted from Copyright.txt instead of using the year in which the documentation is built. This will future-proof the reported copyright year range when building documentation for old versions.
* Help: Configure html faviconBrad King2013-11-052-0/+1
|
* Help: Configure html page navigation barsBrad King2013-11-053-0/+17
| | | | | Add a small CMake logo to the left side of the header and footer navigation bars. Set the html theme, title, and short title explicitly.
* Help: Configure |version| replacement correctlyBrad King2013-11-041-1/+1
| | | | | Fix our configuration of the Sphinx conf.py 'version' entry to refer to the correctly-spelled CMake_VERSION_(MAJOR|MINOR|PATCH) variables.
* Help: Configure copyright year automaticallyBrad King2013-11-042-3/+3
| | | | | Teach our Sphinx conf.py to compute the copyright end year automatically. Drop our hard-coded configuration for it.
* Merge topic 'doc-conf-auto-manuals'Brad King2013-10-302-15/+25
|\ | | | | | | | | f88332f Help: Glob manual/*.rst in Sphinx configuration
| * Help: Glob manual/*.rst in Sphinx configurationBrad King2013-10-302-15/+25
| | | | | | | | | | | | | | Add the man page description line as explicit markup at the top of each Help/manual/*.rst file and scan it from conf.py to automatically generate the man_pages Sphinx configuration value. This reduces the number of places that need to be changed when a new manual is added.
* | Configure Utilities/Sphinx for standalone build with CTestBrad King2013-10-291-0/+1
|/ | | | | | Include the CTestUseLaunchers module in the standalone build of Utilities/Sphinx so that it can be built under CTest with the CTEST_USE_LAUNCHERS option.
* cmRST: Teach cmake-module directive to scan bracket commentsBrad King2013-10-231-10/+27
| | | | | | | | | | | | | | | | When scanning CMake module files for .rst comments, recognize bracket comments starting in ".rst:" too. For example: #[[.rst: Include the bracket comment content terminated by the closing bracket. Exclude the line containing the bracket if it starts in "#". Teach the CMakeLib.testRST test to cover multiple bracket lengths and ending brackets on lines with and without "#". Update the cmake-developer.7 manual to document the bracket-comment syntax for .rst documentation.
* Help: Add cmake-developer.7 manualBrad King2013-10-221-0/+1
| | | | | Add the manual with just an introduction section. Leave section headers for Help and Modules to be filled in later.
* Help: Factor out cmake-generator-expressions manual pageBrad King2013-10-161-0/+1
| | | | | | | | | Generator expressions are supported in many places and are a distinct concept worthy of their own manual page. The old builtin documentation was previously represented by preprocessor macros to generate it into each place that supports them. Factor out the duplicate content into a dedicated cmake-generator-expressions manual page and reference it from each original location.
* Build Help documentation during CMake build using SphinxBrad King2013-10-166-0/+446
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a Utilities/Sphinx directory to hold CMake build code to run the Sphinx (sphinx-doc.org) documentation generation tool. Create a CMakeLists.txt file there capable of building either as a subdirectory of the main CMake build, or as a standalone documentation build. Add cache options SPHINX_MAN and SPHINX_HTML to select output formats and SPHINX_EXECUTABLE to specify the sphinx-build executable. Add bootstrap options --sphix-man and --sphinx-html to select output formats and --sphinx-build=<sb> to specify the sphinx-build executable. Create a "conf.py.in" file to configure_file into "conf.py" to tell sphinx-build how to build our documents. Create a "cmake.py" Sphinx extension module defining: * The "cmake-module" directive used in Help/module/*.rst files to scan .rst markup from the corresponding Modules/*.cmake file. * A Sphinx domain called "cmake" defining documentation object types for CMake Help/<type> directories: command, generator, manual, module, policy, prop_*, and variable. Add a "role" for each type to perform cross-references. Teach the roles to treat "<XYZ>" as placeholders instead of explicit targets if not preceded by a space. Add cmake domain directives to define command and variable objects explicitly in .rst file content. This will allow modules to define their own commands and variables and have them indexed and linkable. * A Sphinx document transform that converts Help/<type>/*.rst documents into cmake domain objects of the corresponding <type> and adds index entries for them. This will automatically index all CMake documentation objects and provide cross-reference targets for them with no special markup in the .rst files.
* Drop documentation generation during buildBrad King2013-10-151-120/+0
| | | | | | Drop the 'documentation' build target. We will no longer use the executables to generate their own documentation. New infrastructure will be introduced later to generate documentation.
* Drop xmllint documentation testsBrad King2013-10-1539-16016/+0
| | | | | Drop these tests since we will drop docbook output along with other documentation formatters.
* Move cmake.m4 from Utilities to AuxiliaryBrad King2013-10-152-54/+0
| | | | | The latter fits more consistently with other third party integration files.
* cmTarget: Deprecate the LOCATION target property with a policy.Stephen Kelly2013-10-111-6/+3
| | | | | | | | | | | | The final location and name of a build-target is not determined until generate-time. However, reading the LOCATION property from a target is currently allowed at configure time. Apart from creating possibly-erroneous results, this has an impact on the implementation of cmake itself, and prevents some major cleanups from being made. Disallow reading LOCATION from build-targets with a policy. Port some existing uses of it in CMake itself to use the TARGET_FILE generator expression.
* Merge topic 'haiku-updates'Brad King2013-10-094-9/+3
|\ | | | | | | | | | | | | | | 54ef2be Haiku: Include files cleanup in cmCTest 38d5555 Haiku: Remove outdated preprocessor checks 1dc61f8 Haiku: Remove use of B_COMMON_DIRECTORY 7ebc1cb Haiku: Several fixes to platform module
| * Haiku: Remove outdated preprocessor checksAdrien Destugues2013-10-084-9/+3
| | | | | | | | | | | | | | | | | | * Haiku does not define __BEOS__ anymore, so there is no need to guard these BeOS specific workaround for Haiku. * The workaround themselves are not needed for Haiku as it has much better POSIX compatibility than BeOS did. Applied-by: Rolf Eike Beer <eike@sf-mail.de>
* | Merge topic 'apple-clang-id'Brad King2013-10-092-1/+4
|\ \ | |/ |/| | | | | | | | | 1763c31 Set policy CMP0025 to NEW while building CMake itself aa53ee5 Add policy CMP0025 for Apple Clang compiler id compatibility ab65862 Clang: Add separate "AppleClang" compiler id
| * Set policy CMP0025 to NEW while building CMake itselfBrad King2013-10-071-0/+3
| | | | | | | | | | | | | | | | | | | | CMake is aware of the policy's NEW behavior and the AppleClang compiler id. Set the policy to NEW explicitly to avoid the warning and get the NEW behavior. Also teach the RunCMake test infrastructure to build tests with -DCMAKE_POLICY_DEFAULT_CMP0025=NEW to avoid the policy warning in test output that must match specific regular expressions.
| * Clang: Add separate "AppleClang" compiler idBrad King2013-10-071-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Apple distributes their own Clang build with their own version numbers that differ from upstream Clang. Use the __apple_build_version__ symbol to identify the Apple Clang compiler and report the Apple Build Version as the fourth version component in CMAKE_<LANG>_COMPILER_VERSION. Add Compiler/AppleClang-<lang> and Platform/Darwin-AppleClang-<lang> modules that simply include the upstream equivalents. Fix comparisons of CMAKE_<LANG>_COMPILER_ID to Clang in CMake's own source and tests to account for AppleClang.
* | curl, bzip2: Suppress warnings by setting initial valueSean McBride2013-10-082-2/+2
| | | | | | | | Silence clang -Wsometimes-uninitialized warnings.
* | curl: Fix typo in header include guardSean McBride2013-10-081-1/+1
|/ | | | From clang's -Wheader-guard.
* Clean up install rules of CMake itself (#14371)Brad King2013-08-266-8/+9
| | | | | | | | | | | Ensure CMAKE_DATA_DIR, CMAKE_DOC_DIR, and CMAKE_MAN_DIR are always relative paths in CMake code, and set defaults accordingly. Use the install() command instead of install_files() and install_targets(). This is more modern and also avoids stripping of the first character from user-specified destinations. While at it, fix the default destinations reported in the bootstrap help.
* cmake-gui: Fix build rules for Qt5 on WindowsBrad King2013-08-071-5/+5
| | | | | Set policy CMP0020 to NEW to get WinMain from Qt. Fix the documentation custom command PATH for cmake-gui to find the Qt5 DLLs.
* libarchive: Backport to CMake 2.8.2Brad King2013-07-313-223/+12
| | | | | | | Avoid requiring CMake 2.8.6 for CMakePushCheckState or CMake 2.8.8 for CMakeExpandImportedTargets. Drop the custom versions of CMake modules CheckCSource(Compiles|Runs) because we do not use the SAFESEH option anyway.
* libarchive: Remove build options not used by CMakeBrad King2013-07-311-122/+0
| | | | | Drop options POSIX_REGEX_LIB and ENABLE_SAFESEH that we do not want for the CMake build of libarchive.
* libarchive: Avoid struct init with variableBrad King2013-07-311-1/+3
| | | | | Compilers such as Borland and MIPSpro do not like struct initialization with variables. Initialize using assignment instead.
* libarchive: Silence API deprecation warningsBrad King2013-07-311-5/+2
| | | | CMake uses old libarchive APIs for now.
* libarchive: Include cm_zlib.h to get zlib used by CMakeBrad King2013-07-312-2/+2
| | | | | | Follow up change from commit ffa6faa4 (libarchive: Include cm_zlib.h to get zlib used by CMake, 2011-12-20) for new includes of zlib.h in updated libarchive.