Commit Graph

21027 Commits

Author SHA1 Message Date
Stephen Kelly 58ba87f892 Convert: Replace Convert(FULL) with equivalent
This is more explicit than funnelling everything through the Convert
method.
2016-08-27 15:41:17 +02:00
Stephen Kelly e80314d7a8 Ninja: Replace ternary with if()
On principle of segregating the interface.
2016-08-27 15:26:38 +02:00
Stephen Kelly 563ac22a16 Convert: Replace trivial conversion with new method 2016-08-27 15:26:37 +02:00
Stephen Kelly 08be47cf93 Convert: Replace UNCHANGED conversions with new API call 2016-08-27 15:26:37 +02:00
Stephen Kelly 564d3a1dc8 Convert: Extract ConvertToRelativePath from Convert()
Convert() does some kind of relative conversion, followed by a
conversion to 'output format'.

Make it possible to do the former without the latter.
2016-08-27 15:26:37 +02:00
Stephen Kelly 95a659f180 Convert: Replace FULL conversions with equivalent 2016-08-27 15:26:37 +02:00
Stephen Kelly a8c7ccb183 VS: Replace FULL/UNCHANGED conversion with equivalent 2016-08-27 15:26:37 +02:00
Stephen Kelly 5ad25ef4b6 Convert: Remove NONE conversion
It is no longer used.
2016-08-27 15:26:37 +02:00
Stephen Kelly ac46384171 Convert: Replace uses of Convert(NONE)
These are equivalent to ConvertToOutputFormat.
2016-08-27 15:26:36 +02:00
Stephen Kelly 998d9ee967 VS: Replace variable with an if() 2016-08-27 15:21:24 +02:00
Stephen Kelly ee49f006cf Makefiles: Replace ternaries with if()s 2016-08-27 15:21:24 +02:00
Stephen Kelly 51f7dcb0a5 Makefiles: Inline MakeLauncher into only caller 2016-08-27 15:21:24 +02:00
Stephen Kelly ba4ba7c39d Makefiles: Simplify MakeLauncher return value
Bonus NRVO.
2016-08-27 15:21:24 +02:00
Stephen Kelly e804d410cd Makefiles: Invert logic in MakeLauncher
Make it easier to inline into the caller.
2016-08-27 15:21:23 +02:00
Stephen Kelly 2722c4dcc5 Makefiles: Remove useless use of Convert
Convert with NONE and UNCHANGED is a no-op.
2016-08-27 15:21:14 +02:00
Stephen Kelly 112c87b28a Makefiles: Replace method with Wacom specific API
The existing method uses RelativeRoot NONE and FULL values.  In
principle, those should be segregated interfaces.  Mixing
NONE and FULL into the RelativeRoot enum is a case of

 http://thedailywtf.com/articles/What_Is_Truth_0x3f_
2016-08-27 15:16:50 +02:00
Stephen Kelly cd351ef2c4 Makefiles: Deduplicate variable 2016-08-27 13:44:53 +02:00
Stephen Kelly fbd8394867 Convert: Remove obsolete GetRelativeRootPath 2016-08-27 13:44:53 +02:00
Stephen Kelly c341f4679a Makefiles: Change AppendCustomCommand API to strings
Avoid the RelativeRoot enum.  Supply the HOME_OUTPUT string at each
callsite to make the parameter non-defaulted.
2016-08-27 13:44:53 +02:00
Stephen Kelly 6960516b6b Makefiles: Change signature of AppendCustomCommand
The RelativeRoot parameter will become non-default.
2016-08-27 13:44:52 +02:00
Stephen Kelly e0fd2d0446 Makefiles: Port CreateCDCommand to string-based API 2016-08-27 13:44:52 +02:00
Stephen Kelly ad70a236f4 Convert: Remove ConvertToOutputForExisting overload
It is no longer used.
2016-08-27 13:44:52 +02:00
Stephen Kelly e3ca17e13b Makefiles: Use string overload of ConvertToOutputForExisting
The string is already determined so, no need to call the overload to
determine it again.
2016-08-27 13:44:52 +02:00
Stephen Kelly 0bbdbd95c9 Makefiles: Rename local variable
In this context, 'ret' means 'return', but I don't really know what that
means.  It is not consistent with types and other variables used in the
vicinity for these things.
2016-08-27 13:44:52 +02:00
Stephen Kelly 9440d5776b Convert: Remove unused overload 2016-08-27 13:44:51 +02:00
Kitware Robot 897346032b CMake Nightly Date Stamp 2016-08-27 00:01:05 -04:00
Fujii Hironori 1f4aeb1739 VS: Fix out-of-bounds write on empty Nsight Tegra version
In cmVisualStudio10TargetGenerator::cmVisualStudio10TargetGenerator,
wrote 0 to this->NsightTegraVersion[-1] if sscanf returns -1 which is
the case of GetNsightTegraVersion is empty.
2016-08-26 10:01:39 -04:00
Kevin Ottens 38995d19b8 CodeBlocks: List C++ includes first
When using the Clang Code Model in QtCreator, it turned out that having
the C system include dirs can make it report false positives for most
uses of the STL. This is due to the order the Clang Code Model looks at
the include directories and some C includes in /usr/include could be
incompatible with the used STL if found first.
2016-08-26 09:55:30 -04:00
Brad King da7111e1a3 Merge topic 'vs-resource-pri-dir'
f325ae18 VS: Use target-specific directory for `resources.pri`
2016-08-26 09:45:28 -04:00
Kitware Robot ff88df48e8 CMake Nightly Date Stamp 2016-08-26 00:01:04 -04:00
Brad King 98caa14cc8 Merge topic 'include-what-you-use'
38491644 CTest: fix include-what-you-use violations
2016-08-25 09:50:45 -04:00
Brad King a79abb82fe Merge topic 'extract-cmMessenger'
1462576b Parser: Port away from cmMakefile
421012a3 cmMessenger: Extract from cmake class
14a8d61f cmMakefile: Port nested error logic away from cmExecutionStatus
2af853de cmMakefile: Simplify IssueMessage implementation
33bb9cfa Parser: Issue messages through cmake, not cmSystemTools
db7de303 Parser: Store the Backtrace for use in issuing messages
2016-08-25 09:50:39 -04:00
Brad King ce8fadc717 Merge topic 'intel-fortran-mod-diff'
f699323a Fortran: Fix .mod file comparison for Intel 16 format
2016-08-25 09:50:35 -04:00
Brad King d8b70f62cb Merge topic 'update-kwsys'
7bc6dccc Merge branch 'upstream-KWSys' into update-kwsys
fcc53247 KWSys 2016-08-24 (8e643b9b)
2016-08-25 09:50:19 -04:00
Stephen Kelly 1462576bcb Parser: Port away from cmMakefile
It is an unneeded dependency.
2016-08-25 09:47:27 -04:00
Stephen Kelly 421012a330 cmMessenger: Extract from cmake class
This way messages can be issued independent of the cmake instance.

It is now possible to make DisplayMessage a virtual interface and
override it to handle messages in the cmake-gui or future IDE
interaction interfaces.
2016-08-25 09:47:27 -04:00
Stephen Kelly 14a8d61fd4 cmMakefile: Port nested error logic away from cmExecutionStatus
It is no longer needed.
2016-08-25 09:47:26 -04:00
Stephen Kelly 2af853deb5 cmMakefile: Simplify IssueMessage implementation
It is only called during configure time when the execution stack is
non-empty.
2016-08-25 09:47:26 -04:00
Stephen Kelly 33bb9cfa36 Parser: Issue messages through cmake, not cmSystemTools
Make these messages uniform with regard to other messages issued by
cmake.
2016-08-25 09:47:26 -04:00
Daniel Pfeifer 3849164454 CTest: fix include-what-you-use violations 2016-08-25 09:34:37 -04:00
Brad King f325ae186d VS: Use target-specific directory for `resources.pri`
Set the `ProjectPriFullPath` field to a value that is unique to each
target and not shared with others in order to avoid collisions.

Closes: #16106
2016-08-25 09:17:17 -04:00
Kitware Robot d6734eeb87 CMake Nightly Date Stamp 2016-08-25 00:01:04 -04:00
Stephen Kelly db7de303c2 Parser: Store the Backtrace for use in issuing messages 2016-08-24 19:19:37 +02:00
Brad King f699323ade Fortran: Fix .mod file comparison for Intel 16 format
The Intel 16 format starts with the 0x0A 0x00 sequence that we use to
skip past the timestamp.  This occurrence appears to be a version
number.  Skip the first byte to avoid matching the sequence early.

Ideally we should gain a better understanding of the format and avoid
depending on short sequences that are likely to appear early by
coincidence, but this approach will suffice for now.

Closes: #16263
2016-08-24 11:55:29 -04:00
Brad King 7bc6dccc0a Merge branch 'upstream-KWSys' into update-kwsys
* upstream-KWSys:
  KWSys 2016-08-24 (8e643b9b)
2016-08-24 10:55:19 -04:00
Brad King ccddb454b8 Merge topic 'extend-find-package-search-path'
828d6c13 find_package: Extend search path for combined Windows/UNIX convention
ff5c89de Help: Widen find_package search path table
2016-08-24 09:45:47 -04:00
Brad King 4a2a66e31c Merge topic 'include-what-you-use'
5cbb5488 fix a batch of include-what-you-use violations
2016-08-24 09:45:44 -04:00
Brad King 2986ca5ecc Merge topic 'version-cleanups'
aec06dd4 Version: Always define CMake_VERSION_IS_DIRTY to 0 or 1
ef13efab Version: Remove check for existence of CVS repository
2016-08-24 09:45:33 -04:00
Silvio Traversaro 828d6c137d find_package: Extend search path for combined Windows/UNIX convention
Find packages that install their cmake package configuration files in
`lib/cmake/<name>` when they are installed in the default Windows
CMAKE_INSTALL_PREFIX, `C:/Program Files/<name>`.

Closes: #16212
2016-08-24 09:40:25 -04:00
Kitware Robot 00a583ac68 CMake Nightly Date Stamp 2016-08-24 00:01:04 -04:00
Daniel Pfeifer 5cbb548807 fix a batch of include-what-you-use violations 2016-08-24 00:29:15 +02:00
Brad King aec06dd492 Version: Always define CMake_VERSION_IS_DIRTY to 0 or 1
In cmVersionConfig.h we must define this macro with a value because
clients expect it to have one.  Also ensure that all CMakeLists.txt
code paths have an initialized value.

Reported-by: Stephen Kelly <steveire@gmail.com>
2016-08-23 09:11:57 -04:00
Stephen Kelly ef13efab56 Version: Remove check for existence of CVS repository 2016-08-23 09:11:57 -04:00
Brad King 797f7ad87d Merge topic 'else-after-return'
7b6349da CMake: don't use else after return
50ad1e0a CTest: don't use else after return
7f97a6c9 CPack: don't use else after return
4988b914 CursesDialog: don't use else after return
2016-08-23 09:00:00 -04:00
Brad King 762131fe8d Merge topic 'include-what-you-use'
f29d1847 fix a batch of include-what-you-use violations
373b2e48 cmArchiveWrite: replace mode_t with int
2016-08-23 08:59:57 -04:00
Brad King d15a502f8e Merge topic 'minor-cleanups'
27591a54 Define WIN32_LEAN_AND_MEAN for CMake sources on Windows
481c9003 libarchive: Fix include order in xxhash.c
2016-08-23 08:59:54 -04:00
Daniel Pfeifer f29d184773 fix a batch of include-what-you-use violations 2016-08-23 08:56:59 -04:00
Kitware Robot 68b51a57e5 CMake Nightly Date Stamp 2016-08-23 00:01:05 -04:00
Kitware Robot 74ee03a262 CMake Nightly Date Stamp 2016-08-22 00:01:03 -04:00
Kitware Robot 020c3e409d CMake Nightly Date Stamp 2016-08-21 00:01:04 -04:00
Kitware Robot 8142698e7a CMake Nightly Date Stamp 2016-08-20 00:01:03 -04:00
Kitware Robot 03d0e6b9bb CMake Nightly Date Stamp 2016-08-19 00:01:05 -04:00
Daniel Pfeifer 7b6349da4d CMake: don't use else after return 2016-08-18 20:36:29 +02:00
Daniel Pfeifer 50ad1e0a14 CTest: don't use else after return 2016-08-18 20:04:21 +02:00
Daniel Pfeifer 7f97a6c94b CPack: don't use else after return 2016-08-18 19:47:32 +02:00
Daniel Pfeifer 4988b914e1 CursesDialog: don't use else after return 2016-08-18 19:39:54 +02:00
Kitware Robot 11e0ceaeab CMake Nightly Date Stamp 2016-08-18 00:01:04 -04:00
Daniel Pfeifer 373b2e483d cmArchiveWrite: replace mode_t with int
Rationale:

* mode_t is not defined on all platforms
* bitmasking (operator &) promotes the value to an int anyway
* libarchive uses int in the public api starting with version 4
2016-08-17 23:52:34 +02:00
Brad King 27591a541c Define WIN32_LEAN_AND_MEAN for CMake sources on Windows
This reduces APIs included by `windows.h`.  We can include the headers
for those APIs as needed.
2016-08-17 10:48:28 -04:00
Brad King 67a7dcef45 Merge topic 'readability-named-parameter'
e7b842e1 Make sure unnused parameters are /*named*/
2016-08-17 10:46:35 -04:00
Brad King 29593b79a2 Merge topic 'include-what-you-use'
a2af850b fix a batch of include-what-you-use violations
2016-08-17 10:46:32 -04:00
Brad King 5d1690725b Merge topic 'cmake-capabilities'
49ad7f9a cmake: Add `cmake -E capabilities` mode
1d408dc1 cmake: Constify cmake::GetRegisteredGenerators
2016-08-17 10:46:26 -04:00
Brad King 76ff725ae7 Merge topic 'cmake-developer-reference'
ea51b71a QtIFW: Developer Reference installation
c18dc6fb Added CMake_BUILD_DEVELOPER_REFERENCE option
2016-08-17 10:46:23 -04:00
Kitware Robot 65120d180b CMake Nightly Date Stamp 2016-08-17 00:01:04 -04:00
Daniel Pfeifer e7b842e189 Make sure unnused parameters are /*named*/ 2016-08-17 01:49:57 +02:00
Daniel Pfeifer a2af850ba6 fix a batch of include-what-you-use violations 2016-08-17 01:08:13 +02:00
Tobias Hunger 49ad7f9af8 cmake: Add `cmake -E capabilities` mode
Add `cmake -E capabilities` to report on generators, cmake version and
possibly other static capabilities of cmake.

Closes: #15462
2016-08-16 13:45:05 -04:00
Brad King 1d408dc10f cmake: Constify cmake::GetRegisteredGenerators 2016-08-16 13:40:06 -04:00
Brad King 447b142b6a Merge topic 'issue-tracker-urls'
2bdba83e issues: update references to the CMake issue tracker
2016-08-16 13:26:15 -04:00
Konstantin Podsvirov ea51b71a4f QtIFW: Developer Reference installation 2016-08-16 19:02:35 +03:00
Konstantin Podsvirov c18dc6fbe5 Added CMake_BUILD_DEVELOPER_REFERENCE option
By default is OFF and marked as advanced.

It's also add custom cmake-developer-reference (ALL) target

Generated output will be installed to ${CMAKE_DOC_DIR}/developer-reference.
2016-08-16 19:02:35 +03:00
Kitware Robot 6b07972fbd CMake Nightly Date Stamp 2016-08-16 00:01:09 -04:00
Ben Boeckel 2bdba83e4b issues: update references to the CMake issue tracker
References to specific comments are left as-is since comments were not
migrated.
2016-08-15 09:34:06 -04:00
Brad King 33d4aff50d Merge topic 'autogen-same-name'
61a607e8 Help: Document AUTORCC behavior for same .qrc name case
e4f508e4 Tests/QtAutogen: Test same moc/qrc source names in different directories
4e9b97d7 QtAutogen: Allow multiple qrc files with the same name
41c9e14a QtAutogen: Allow multiple moc files with the same name
3c3b37b0 QtAutogen: Use std:: instead of ::std::
0a5dd3c7 cmFilePathUuid: Add class to generate deterministic unique file names
2016-08-15 08:59:46 -04:00
Kitware Robot 272a2bf19d CMake Nightly Date Stamp 2016-08-15 00:01:03 -04:00
Kitware Robot 5726af681a CMake Nightly Date Stamp 2016-08-14 00:01:03 -04:00
Kitware Robot 77c171a37c CMake Nightly Date Stamp 2016-08-13 00:01:04 -04:00
Kitware Robot f99df80794 CMake Nightly Date Stamp 2016-08-12 00:01:04 -04:00
Brad King f203694bb8 Merge topic 'cmCryptoHash-raw-digest'
3a5f609c cmCryptoHash: New ByteHash methods that return a byte vector
f582dba6 cmCryptoHash: Return byte vector from internal Finalize method
74f0d4ab cmCryptoHash: New byte hash to string function
94c29976 cmCryptoHash: Documentation comments
2016-08-11 13:48:37 -04:00
Kitware Robot 3c4d2e84d2 CMake Nightly Date Stamp 2016-08-11 00:01:04 -04:00
Sebastian Holtermann 4e9b97d739 QtAutogen: Allow multiple qrc files with the same name
Use cmFilePathUuid for qrc files.
2016-08-10 13:21:33 -04:00
Sebastian Holtermann 41c9e14afb QtAutogen: Allow multiple moc files with the same name
Use cmFilePathUuid for moc files.

Closes: #12873
2016-08-10 13:21:33 -04:00
Sebastian Holtermann 3c3b37b0bb QtAutogen: Use std:: instead of ::std:: 2016-08-10 13:21:33 -04:00
Sebastian Holtermann 0a5dd3c700 cmFilePathUuid: Add class to generate deterministic unique file names
The class generates a semi-unique (checksum based) pathless file name
from a full source file path.
2016-08-10 13:21:33 -04:00
Sebastian Holtermann 3a5f609cbb cmCryptoHash: New ByteHash methods that return a byte vector 2016-08-10 13:21:32 -04:00
Sebastian Holtermann f582dba666 cmCryptoHash: Return byte vector from internal Finalize method
Some callers may want the raw byte vector instead of the hex character
string.  Convert the internal implementation to use this so that we
can later add public APIs to get it.
2016-08-10 13:21:32 -04:00
Sebastian Holtermann 74f0d4abcd cmCryptoHash: New byte hash to string function 2016-08-10 13:09:55 -04:00
Sebastian Holtermann 94c29976d0 cmCryptoHash: Documentation comments 2016-08-10 13:09:54 -04:00
Brad King 50ada755e3 Merge topic '15687-xcode-support-system-include'
93ac2a78 Xcode: Obey SYSTEM keyword for includes (#15687)
2016-08-10 11:16:01 -04:00
Brad King e01c576338 Merge topic 'ninja-directory-targets'
02789894 Ninja: Add `$subdir/{test,install,package}` targets
a88c99f1 Ninja: Simplify computation of GLOBAL_TARGET outputs
2016-08-10 11:15:55 -04:00