summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Merge topic 'nsis-protect-uninst-exec'Brad King2016-07-222-1/+7
|\ | | | | | | | | 11768733 NSIS: Quote uninstaller path when executing it in a shell
| * NSIS: Quote uninstaller path when executing it in a shellJustin Clift2016-07-212-1/+7
| | | | | | | | | | | | | | | | | | | | | | | | Protect our `$0` reference in the shell as `"$0"`. Otherwise it works with a space in the path only due to an insecure Windows feature. Prior to this fix, any installer using the option added by commit v2.8.9~234^2 (Added CPACK_NSIS_ENABLE_UNINSTALL_BEFORE_INSTALL, 2011-06-11) exposes a local privilege escalation vulnerability. Reported-by: Amir Szekely <kichik@gmail.com> Reported-by: Ug_0 Security
* | CMake Nightly Date StampKitware Robot2016-07-221-1/+1
| |
* | Merge topic 'makefile-response-files'Brad King2016-07-214-42/+82
|\ \ | | | | | | | | | | | | | | | c7a7c655 Makefile: Avoid link line object list lengths nearing system limits 34ba5c53 Makefile: Factor out response file checks into common helper
| * | Makefile: Avoid link line object list lengths nearing system limitsBrad King2016-07-201-0/+39
| | | | | | | | | | | | | | | | | | | | | Use response files for object file lists that approach the scale of the system `ARG_MAX` limit. Fixes #16206.
| * | Makefile: Factor out response file checks into common helperBrad King2016-07-204-42/+43
| | | | | | | | | | | | | | | | | | Factor CMAKE_<LANG>_USE_RESPONSE_FILE_FOR_{OBJECTS,LIBRARIES} lookup out into a common helper. Use a separate helper for each because more specific logic may be added to each later.
* | | Merge topic 'vs-alternate-RootNamespace'Brad King2016-07-211-1/+3
|\ \ \ | | | | | | | | | | | | | | | | 8aa97fba VS: Handle VS_GLOBAL_RootNamespace special case
| * | | VS: Handle VS_GLOBAL_RootNamespace special caseBenjamin Ballet2016-07-201-1/+3
| |/ / | | | | | | | | | | | | | | | | | | | | | Although we provide a `VS_GLOBAL_ROOTNAMESPACE` option to both set the `RootNamespace` value and reference it, some users may try to set `VS_GLOBAL_RootNamespace` to set `RootNamespace` as a variant of the `VS_GLOBAL_<variable>` property. In this case we still need to add the reference to `$(RootNamespace)`.
* | | Merge topic 'ninja-target-deps'Brad King2016-07-215-2/+97
|\ \ \ | | | | | | | | | | | | | | | | 1296a0ea Ninja: Fix inter-target order-only dependencies of custom commands
| * | | Ninja: Fix inter-target order-only dependencies of custom commandsBrad King2016-07-205-2/+97
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Custom command dependencies are followed for each target's source files and add their transitive closure to the corresponding target. This means that when a custom command in one target has a dependency on a custom command in another target, both will appear in the dependent target's sources. For the Makefile, VS IDE, and Xcode generators this is not a problem because each target gets its own independent build system that is evaluated in target dependency order. By the time the dependent target is built the custom command that belongs to one of its dependencies will already have been brought up to date. For the Ninja generator we need to generate a monolithic build system covering all targets so we can have only one copy of a custom command. This means that we need to reconcile the target-level ordering dependencies from its appearance in multiple targets to include only the least-dependent common set. This is done by computing the set intersection of the dependencies of all the targets containing a custom command. However, we previously included only the direct dependencies so any target-level dependency not directly added to all targets into which a custom command propagates was discarded. Fix this by computing the transitive closure of dependencies for each target and then intersecting those sets. That will get the common set of dependencies. Also add a test to cover a case in which the incorrectly dropped target ordering dependencies would fail.
* | | Merge topic 'bootstrap-msys2'Brad King2016-07-211-1/+1
|\ \ \ | | | | | | | | | | | | | | | | 7ec32a00 bootstrap: Add support for MSYS2
| * | | bootstrap: Add support for MSYS2Brad King2016-07-201-1/+1
| | | | | | | | | | | | | | | | | | | | Bootstrapping under MSYS2 is the same as under MSYS/MinGW except that `uname` reports `MSYS...` instead of `MINGW...`.
* | | | Merge topic 'update-kwsys'Brad King2016-07-215-72/+190
|\ \ \ \ | |/ / / | | | | | | | | | | | | | | | | | | | | e9849d35 bootstrap: Add check for ext/stdio_filebuf.h needed by KWSys 51d9e8ae Merge branch 'upstream-KWSys' into update-kwsys 9ef2b2b1 KWSys 2016-07-19 (9d1dbd95)
| * | | bootstrap: Add check for ext/stdio_filebuf.h needed by KWSysDāvis Mosāns2016-07-201-0/+11
| | | |
| * | | Merge branch 'upstream-KWSys' into update-kwsysBrad King2016-07-204-72/+179
| |\ \ \ | | |/ / | |/| | | | | | | | | | * upstream-KWSys: KWSys 2016-07-19 (9d1dbd95)
| | * | KWSys 2016-07-19 (9d1dbd95)KWSys Upstream2016-07-204-72/+179
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Code extracted from: http://public.kitware.com/KWSys.git at commit 9d1dbd95835638e4c0fcf74dc8020cd4cd3426c1 (master). Upstream Shortlog ----------------- Dāvis Mosāns (2): d2cdfc6d FStream: Use common base for basic_ifstream and basic_ofstream 9d1dbd95 FStream: Add MinGW support
* | | | CMake Nightly Date StampKitware Robot2016-07-211-1/+1
|/ / /
* | | Merge topic 'update-kwsys'Brad King2016-07-202-28/+19
|\ \ \ | | | | | | | | | | | | | | | | | | | | 788bb146 Merge branch 'upstream-KWSys' into update-kwsys eb7b5087 KWSys 2016-07-18 (19732229)
| * \ \ Merge branch 'upstream-KWSys' into update-kwsysBrad King2016-07-192-28/+19
| |\ \ \ | | |/ / | | | | | | | | | | | | * upstream-KWSys: KWSys 2016-07-18 (19732229)
| | * | KWSys 2016-07-18 (19732229)KWSys Upstream2016-07-192-28/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Code extracted from: http://public.kitware.com/KWSys.git at commit 19732229f798419307782ea7d252b78701911ea3 (master). Upstream Shortlog ----------------- Dāvis Mosāns (1): 19732229 SystemTools: User better GetEnv and HasEnv signatures
* | | | Merge topic 'compat-CPACK_INSTALL_CMAKE_PROJECTS-subdirectory'Brad King2016-07-201-1/+2
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | 57534990 CPack: Add compatibility for incorrect CPACK_INSTALL_CMAKE_PROJECTS value
| * | | | CPack: Add compatibility for incorrect CPACK_INSTALL_CMAKE_PROJECTS valueBrad King2016-07-191-1/+2
| | |_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since commit v3.6.0-rc1~339^2 (CPack: Fix CPACK_INSTALL_CMAKE_PROJECTS SubDirectory (4th) option, 2016-02-18) we now honor the "Directory" option of this variable. Prior to that commit the value was not used so projects may have used a placeholder value like `.` instead of `/`. Treat `.` the same as `/` to restore compatibility with such projects. Fixes #16205.
* | | | CMake Nightly Date StampKitware Robot2016-07-201-1/+1
| |/ / |/| |
* | | Merge topic 'use-better-KWSys-GetEnv'Brad King2016-07-1924-110/+134
|\ \ \ | | | | | | | | | | | | | | | | b1f87a50 Use better KWSys SystemTools::GetEnv and HasEnv signatures
| * | | Use better KWSys SystemTools::GetEnv and HasEnv signaturesDāvis Mosāns2016-07-1824-110/+134
| | | |
* | | | Merge topic 'update-kwsys'Brad King2016-07-192-71/+166
|\ \ \ \ | |/ / / | | | | | | | | | | | | | | | | 03407040 Merge branch 'upstream-KWSys' into update-kwsys bbb3216a KWSys 2016-07-15 (f396bf43)
| * | | Merge branch 'upstream-KWSys' into update-kwsysBrad King2016-07-182-71/+166
| |\ \ \ | | | |/ | | |/| | | | | | | | | * upstream-KWSys: KWSys 2016-07-15 (f396bf43)
| | * | KWSys 2016-07-15 (f396bf43)KWSys Upstream2016-07-182-71/+166
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Code extracted from: http://public.kitware.com/KWSys.git at commit f396bf43fc8a3e475e703acb99d629d123dbd003 (master). Upstream Shortlog ----------------- Brad King (2): e43689db SystemTools: Factor out environment storage class 2aa7dd82 SystemTools: Do not free buffer passed to putenv("A=") on Windows Dāvis Mosāns (4): 19c31914 SystemTools: Abstract environment storage character type 61301786 SystemTools: Tweak GetEnv/PutEnv implementation layout 85920d53 SystemTools: Teach GetEnv/PutEnv to use correct encoding on Windows f396bf43 SystemTools: Add HasEnv function
* | | | Merge topic 'FindBISON-report-file'Brad King2016-07-192-48/+92
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 33b562aa Help: Add notes for topic 'FindBISON-report-file' ab8d5d0f FindBISON: Refactor public and inner macro routines c42e63a9 FindBISON: Add REPORT_FILE option to pass --report-file=FILE ad2497aa FindBISON: Change usage of [VERBOSE <file>] to [VERBOSE [<file>]]
| * | | | Help: Add notes for topic 'FindBISON-report-file'Brad King2016-07-181-0/+5
| | | | |
| * | | | FindBISON: Refactor public and inner macro routinesEon Jeong2016-07-181-44/+42
| | | | |
| * | | | FindBISON: Add REPORT_FILE option to pass --report-file=FILEEon Jeong2016-07-181-8/+24
| | | | |
| * | | | FindBISON: Change usage of [VERBOSE <file>] to [VERBOSE [<file>]]Eon Jeong2016-07-181-23/+48
| |/ / /
* | | | CMake Nightly Date StampKitware Robot2016-07-191-1/+1
|/ / /
* | | Merge branch 'release'Brad King2016-07-180-0/+0
|\ \ \
| * \ \ Merge branch 'ninja-no-accidental-rsp' into releaseBrad King2016-07-151-1/+1
| |\ \ \
| * \ \ \ Merge branch 'vs14-debug-enum-older-toolsets' into releaseBrad King2016-07-131-1/+2
| |\ \ \ \
* | \ \ \ \ Merge topic 'vs-natvis'Brad King2016-07-182-0/+7
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | a6290cff VS: Add support for NATVIS files
| * | | | | | VS: Add support for NATVIS filesRobert Dailey2016-07-152-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add an explicit `<Natvis>` element in VS project files for `*.natvis` files. These enable custom debug visualizers for project-specific types. Fixes #16043.
* | | | | | | Merge topic 'ninja-no-accidental-rsp'Brad King2016-07-181-1/+1
|\ \ \ \ \ \ \ | | |_|_|/ / / | |/| | | | | | | | | | | | | | | | | | | 86dd2427 Ninja: Do not force response files when no sysconf(3) limit is used
| * | | | | | Ninja: Do not force response files when no sysconf(3) limit is usedBrad King2016-07-151-1/+1
| | |_|_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Commit v3.6.0-rc1~174^2~1 (cmGlobalNinjaGenerator: Clarify logic for forcing use of response files, 2016-04-06) started using negative command line length values to represent forced use of response files but forgot to update `calculateCommandLineLengthLimit()` accordingly. Teach it to return `0` instead of `-1` when no limit is computed from the system to avoid forcing response files. Reported-by: Raphael Kubo da Costa <rakuco@FreeBSD.org>
* | | | | | Merge topic 'ninja-portable-arg-max'Brad King2016-07-181-1/+1
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5ec17e61 Ninja: Generalize check for sysconf(3) call
| * | | | | | Ninja: Generalize check for sysconf(3) callRaphael Kubo da Costa2016-07-151-1/+1
| | |/ / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use `sysconf(_SC_ARG_MAX)` wherever `_SC_ARG_MAX` is available instead of hard-coding an incomplete list of operating systems that implement it. In particular, it is available on BSD platforms that were not previously listed.
* | | | | | Merge topic 'FindGIF-version'Brad King2016-07-181-11/+35
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 0a6c227d FindGIF: Detect version from GIF 4.1.6 and above
| * | | | | | FindGIF: Detect version from GIF 4.1.6 and aboveBen Campbell2016-07-151-11/+35
| |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | GIF 4.1.6 introduced version macros in the header file. Use them to get a full version. Fixes #16196.
* | | | | | CMake Nightly Date StampKitware Robot2016-07-181-1/+1
| | | | | |
* | | | | | CMake Nightly Date StampKitware Robot2016-07-171-1/+1
| | | | | |
* | | | | | CMake Nightly Date StampKitware Robot2016-07-161-1/+1
|/ / / / /
* | | | | Merge topic 'toolchain-flag-init'Brad King2016-07-1521-54/+219
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8a98cf64 Honor CMAKE_*_LINKER_FLAGS[_<CONFIG>]_INIT set in toolchain files 37d15c39 MSVC: Set all CMAKE_*_LINKER_FLAGS_INIT directly 55c884ed Embarcadero: Set all CMAKE_*_LINKER_FLAGS_INIT directly aec3c79a Strip CMAKE_*_LINKER_FLAGS[_<CONFIG>] initializer whitespace
| * | | | | Honor CMAKE_*_LINKER_FLAGS[_<CONFIG>]_INIT set in toolchain filesBrad King2016-07-1420-21/+195
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Document these variables. Change our convention for setting these variables from: set(CMAKE_EXE_LINKER_FLAGS_INIT "...") to string(APPEND CMAKE_EXE_LINKER_FLAGS_INIT " ...") so that any value previously set by a toolchain file will be used.