summaryrefslogtreecommitdiffstats
path: root/Utilities
Commit message (Collapse)AuthorAgeFilesLines
* 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-081-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-081-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.
* libarchive: Update README-CMake.txt for new snapshotBrad King2013-07-311-4/+4
|
* Merge branch 'libarchive-upstream' into update-libarchiveBrad King2013-07-31153-4135/+18543
| | | | | | | | | | | Conflicts: Utilities/cmlibarchive/CMakeLists.txt Utilities/cmlibarchive/libarchive/archive.h Utilities/cmlibarchive/libarchive/archive_entry.h Utilities/cmlibarchive/libarchive/archive_read_disk_posix.c Utilities/cmlibarchive/libarchive/archive_read_support_format_iso9660.c Utilities/cmlibarchive/libarchive/archive_windows.h Utilities/cmlibarchive/libarchive/archive_write_set_format_iso9660.c
* cmcurl: Fix resource leak reported by cppcheckÖmer Fadıl USTA2013-07-153-0/+6
| | | | | | Add missing fclose calls. Reviewed-by: Igor Murzov <e-mail@date.by>
* libarchive: Fix free() order to avoid accessing freed memoryÖmer Fadıl USTA2013-07-151-1/+1
| | | | | | | | | The archive_string_conv type sc variable already freed via free(sc) on the other hand in second line we are tyring to free its subset via free(sc->from_charset) this will cause a problem because we couldn't reach sc after first release. Reviewed-by: Igor Murzov <e-mail@date.by>
* Merge topic 'curl-bug-1192'Brad King2013-07-017-58/+9
|\ | | | | | | | | e643e02 cmcurl: Backport curl bug 1192 fix (#14250)
| * cmcurl: Backport curl bug 1192 fix (#14250)Brad King2013-06-277-58/+9
| | | | | | | | | | | | | | | | | | | | LLVM headers define strlcat as a macro rather than as a function. See upstream Curl issue: http://curl.haxx.se/bug/view.cgi?id=1192 It was addressed by removing use of strlcat altogether. Port the upstream fix to CMake's curl.
* | Fix spelling and typos (product names)Andreas Mohr2013-05-071-1/+1
| | | | | | | | API, Borland, MinGW, UNIX, Mac OS X.
* | Fix spelling and typos (non-binary)Andreas Mohr2013-05-075-5/+5
| |
* | Fix spelling and typos (affecting binary data / module messages)Andreas Mohr2013-05-072-4/+4
|/
* Merge branch 'upstream-kwiml' into update-KWIMLBrad King2013-01-081-1/+3
|
* Merge branch 'upstream-kwiml' into update-KWIMLBrad King2012-12-211-0/+8
|
* libarchive: fixed undefined left shift with signed intsSean McBride2012-11-301-4/+32
| | | | | | | | caught by clang's -fsanitize=shift. A small unsigned int was promoted, according to C's regular promotion rules, to a signed int, it was then left shifted. This sometimes pushed a 1 into the sign bit, which is undefined behaviour. Fixed by using unsigned temporaries.
* Merge topic 'import-KWSys-subtree'Brad King2012-11-071-8/+6
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 68579cd Merge branch 'upstream-kwsys' into import-KWSys-subtree cd83da9 KWSys 2012-11-05 (df32fa6f) 3517106 CTestCustom: Suppress LNK4089 warning about PSAPI 5c63fa3 Merge branch 'ctest-SUBMIT_INDEX-cdash' into import-KWSys-subtree 17fb60b Merge branch 'upstream-kwsys' into import-KWSys-subtree 7ae44db KWSys 2012-10-16 (b7a97ac3) 97c9887 pre-commit: Update KWSys rejection message for new workflow 3db0b51 KWSys: Submit dashboard builds to PublicDashboard 4b8d363 Merge branch 'upstream-kwsys' into import-KWSys-subtree a61f633 Merge branch 'master' into import-KWSys-subtree 8c55ea0 Merge branch 'upstream-kwsys' into import-KWSys-subtree 5d0de36 KWSys 2012-10-01 (bab53989) 7d3c295 KWSys 2012-05-02 (719638e2)
| * pre-commit: Update KWSys rejection message for new workflowBrad King2012-10-051-8/+6
| | | | | | | | | | KWSys is now kept in its own Git repository. We manually extract snapshots of KWSys versions to update the Source/kwsys directory.