summaryrefslogtreecommitdiffstats
path: root/bootstrap
Commit message (Collapse)AuthorAgeFilesLines
* clang-tidy: Use `= delete`Regina Pfeifer2019-01-291-1/+0
|
* cmMakefile: Impose maximum recursion limitKyle Edwards2019-01-231-0/+1
| | | | | | | | | In order to keep infinitely-recursive scripts from causing a stack overflow in the CMake executable, CMake now imposes a maximum recursion limit before issuing an error message. The limit can be adjusted at runtime with CMAKE_MAXIMUM_RECURSION_DEPTH. Fixes: #18694
* libuv: Update CMake-internal buildsystemBrad King2019-01-171-3/+5
|
* Add support for using C++17 string_view or a fallbackBrad King2018-12-111-0/+1
| | | | | | | | | | Define a `cm::string_view` type implemented via C++17 `std::string_view` when available. Provide a fallback implementation for C++11 and C++14 compilers. The fallback implementation was written by reading documentation of the standard spec. We have no dedicated tests for it, but it will be covered by tests of its clients later.
* add_subdirectory: Run subdirectory install rules in correct orderKyle Edwards2018-10-101-0/+1
| | | | | | | | | Before this change, install rules created by add_subdirectory() would be executed after all of the top-level install rules, even if they were declared before the top-level rules. This change adds a new policy, CMP0082, which interleaves the add_subdirectory() install rules with the other install rules so they are run in the correct order.
* bootstrap: Add missing libraries for kFreeBSDGregor Jasny2018-09-161-0/+3
| | | | Closes #18375
* cmLinkItem: Convert to a "sum type" over a string and target pointerBrad King2018-09-071-0/+1
| | | | | | | | | Avoid exposing the item name implicitly as std::string. When the item is a target, avoid storing a second copy of its name. Most link item construction is paired with calls to `FindTargetToLink` to get the possible target pointer. Rename these methods to `ResolveLinkItem` and refactor them to construct the entire item.
* Utilities/Sphinx: Add option to build and install Info manualOrivej Desh2018-06-121-0/+8
| | | | | Add option `SPHINX_INFO` to enable the Sphinx 'texinfo' builder and use the `makeinfo` tool to convert it to a `.info` file.
* bootstrap: Use ccache in script-generated makefileShane Parris2018-05-251-4/+6
|
* Merge topic 'bootstrap_system_libuv_option'Brad King2018-04-171-2/+4
|\ | | | | | | | | | | | | bbf64794ac bootstrap: Add option to enable/disable usage of system libuv Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1971
| * bootstrap: Add option to enable/disable usage of system libuvKirill Erofeev2018-04-171-2/+4
| |
* | string() Refactoring: creates an helper for REGEX REPLACEMarc Chevrier2018-04-161-0/+1
| |
* | Add cmGlobVerificationManager class, integrate with cmake and cmStateShane Parris2018-03-291-0/+1
| |
* | bootstrap: Add support for VAR=value options to specify tools and flagsJames Lee2018-03-221-0/+8
| |
* | bootstrap: Clarify error when building with invalid CXXFLAGSBen Chaney2018-03-141-1/+3
|/ | | | Mention the flags used when complaining that the compiler does not work.
* Merge topic 'bootstrap-try-clang'Brad King2018-02-051-2/+2
|\ | | | | | | | | | | | | 04167e39 bootstrap: Add Clang to known compiler candidates Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1749
| * bootstrap: Add Clang to known compiler candidatesAxel Huebl2018-02-051-2/+2
| | | | | | | | | | | | Add `clang` and `clang++` after the corresponding `gcc` and `g++` candidates. Otherwise it is not tried on platforms where we do not enumerate the toolchain pair candidates.
* | Merge topic 'libuv-raii'Brad King2017-12-011-0/+1
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | 3bcaa870 cmUVHandlePtr: Add uv_process_ptr dd700e9b cmUVHandlePtr: Add uv_timer_ptr 32cfa7b3 cmUVHandlePtr: Move to CMakeLib to make it available everywhere Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1541
| * | cmUVHandlePtr: Move to CMakeLib to make it available everywhereBrad King2017-11-301-0/+1
| | |
* | | Merge topic 'bootstrap-clang-5'Brad King2017-12-011-0/+1
|\ \ \ | |/ / |/| | | | | | | | | | | | | | 375eca78 bootstrap: Check support for unordered_map from compiler mode Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1542
| * | bootstrap: Check support for unordered_map from compiler modeAdam CiarciƄski2017-11-301-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Some versions of clang 5 (with libc++) have a problem with `unordered_map` under `-std=gnu++1z`: /usr/include/c++/__hash_table:1134:43: error: conflicting types for '__hash_table<_Tp, _Hash, _Equal, _Alloc>' Include `unordered_map` in our test source so that we reject this combination and fall back to an older C++ standard flag. Fixes: #17526
* | | AIX: Add -pthread flag to enable std::thread with GCCBrad King2017-11-281-1/+12
| | |
* | | bootstrap: Add infrastructure to detect threading flagsBrad King2017-11-281-18/+24
| | | | | | | | | | | | | | | In our loop to detect -std flags, add another layer to detect threading flags.
* | | Move file/dir permissions code to common file.Domen Vrankar2017-11-081-0/+1
|/ /
* | Use C++11 '= delete' instead of CM_EQ_DELETEBrad King2017-09-281-1/+0
| | | | | | | | | | We now require C++11 support including `= delete`. Drop use of the old compatibility macro.
* | Merge topic 'libuv-bootstrap'Brad King2017-09-181-1/+113
|\ \ | | | | | | | | | | | | | | | | | | | | | 714ce728 bootstrap: Make libuv available during bootstrap 6a2d967d bootstrap: Require compiler mode aware of C99 on Solaris Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1131
| * | bootstrap: Make libuv available during bootstrapBrad King2017-09-171-1/+109
| | | | | | | | | | | | | | | | | | | | | On UNIX, build only the parts of libuv we need for the filesystem, process, and poll abstractions using the POSIX poll() backend. This avoids many platform-specific conditions. On Windows, build all of libuv; there are no conditional alternatives anyway.
| * | bootstrap: Require compiler mode aware of C99 on SolarisBrad King2017-09-171-0/+4
| | | | | | | | | | | | | | | On Solaris some system headers included in C with `-D_XOPEN_SOURCE=600` require C99 support by the compiler.
* | | Drop now-unused definition of CM_OVERRIDEBrad King2017-09-151-1/+0
| | |
* | | Merge topic 'bootstrap-twice-in-source'Brad King2017-09-141-0/+6
|\ \ \ | |/ / |/| | | | | | | | | | | | | | a3deae71 bootstrap: Fix running multiple times in-source Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1258
| * | bootstrap: Fix running multiple times in-sourceBrad King2017-09-131-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since commit v3.9.0-rc1~281^2 (Use quotes for non-system includes, 2017-04-11) we include `cmConfigure.h` via `""` instead of `<>`. This breaks the `bootstrap` script when run more than once in an in-source build. In that case `cmConfigure.h` is generated next to the source files that include it, so `""`-style includes prevent the `Bootstrap.cmk/cmConfigure.h` file from being included during bootstrap. Fix this by teaching the bootstrap script to remove any `cmConfigure.h` that may have been generated by an earlier run in an in-source build. Fixes: #17082
* | | bootstrap: Require compiler mode aware of C++11Brad King2017-08-291-2/+6
| | | | | | | | | | | | | | | | | | | | | Some compilers have enough features enabled in their default modes to pass our simple C++11 unique_ptr check but do not enable enough to build CMake. Poison this case so that we choose one of the explicit `-std=` options for such compilers.
* | | server: always enable serverDaniel Pfeifer2017-08-261-11/+0
| | |
* | | Use C++11 nullptrDaniel Pfeifer2017-08-241-1/+0
| | |
* | | Merge topic 'bootstrap-target-commands'Brad King2017-08-211-0/+6
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | ef978c1d CursesDialog: use target_include_directories for cmForm 7814d750 bootstrap: make target_* commands available Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1158
| * | | bootstrap: make target_* commands availableDaniel Pfeifer2017-08-181-0/+6
| | | |
* | | | Merge topic 'bootstrap'Brad King2017-08-211-56/+12
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | d12837af bootstrap: Require a standard C compiler dc0befb6 bootstrap: Remove check that identifies GNU compiler 6fdcf02a bootstrap: remove dead branches Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1142
| * | | | bootstrap: Require a standard C compilerDaniel Pfeifer2017-08-161-21/+12
| | | | |
| * | | | bootstrap: Remove check that identifies GNU compilerDaniel Pfeifer2017-08-151-25/+0
| | | | | | | | | | | | | | | | | | | | Bootstrapping no longer depends on this information.
| * | | | bootstrap: remove dead branchesDaniel Pfeifer2017-08-151-10/+0
| |/ / / | | | | | | | | | | | | Remove code that uses cmake_cxx_compiler_is_gnu before it is set.
* | | | Merge topic 'bootstrap-grep-solaris'Brad King2017-08-211-10/+10
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | e488c7f9 bootstrap: Restore output redirection instead of "grep -q" Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1144
| * | | | bootstrap: Restore output redirection instead of "grep -q"Brad King2017-08-161-10/+10
| |/ / / | | | | | | | | | | | | | | | | This reverts commit 567bac890c (bootstrap: use "grep -q" instead of output redirection, 2017-06-07). On Solaris `grep -q` does not exist.
* | | | Require C++11 to build CMake itselfBrad King2017-08-161-32/+19
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | CMake can now compile as C++11 on all supported platforms. Check that std::unique_ptr is available and fail early if missing. This will allow us to use C++11 more broadly in CMake's implementation (previously it was restricted to the serve mode implementation). Co-Author: Daniel Pfeifer <daniel@pfeifer-mail.de>
* | | HP-UX: Drop support for building CMake on HP-UXBrad King2017-08-071-54/+5
| |/ |/| | | | | | | | | | | | | CMake will soon require both C++11 and libuv to build. Neither of these works on HP-UX, so unfortunately we need to drop support for the platform until someone can get them working. Issue: #17137
* | include_guard: implement new commandPavel Solodovnikov2017-06-221-0/+1
| |
* | bootstrap: remove leftover empty variable dereferenceRolf Eike Beer2017-06-081-1/+1
| | | | | | | | | | This was missed in 9c0d1e7531edbebc7943d5b981353b17631ed632 when the for loop that used this as loop variable was removed.
* | bootstrap: implement cmake_extract_standard_flags() without loopRolf Eike Beer2017-06-071-5/+2
| | | | | | | | Pass all files to sed at once, and don't even change the directory for this.
* | bootstrap: use "grep -q" instead of output redirectionRolf Eike Beer2017-06-071-10/+10
| |
* | bootstrap: implement cmake_toupper() using trRolf Eike Beer2017-06-071-1/+1
| |
* | bootstrap: don't use 'cat x | sed', let sed open the file insteadRolf Eike Beer2017-06-071-18/+15
|/