Commit Graph

32066 Commits

Author SHA1 Message Date
Kitware Robot 06ee543c00 CMake Nightly Date Stamp 2016-06-13 00:01:05 -04:00
Stephen Kelly 23f87e8157 cmake: Remove force from IssueMessage API
The force parameter is ugly and makes the method harder to reason about
(issues the message ... but maybe it doesn't ... but then again you can
force it).  It is a violation of

 https://en.wikipedia.org/wiki/Interface_segregation_principle

and is the kind of thing described in a recent blog here:

 http://code.joejag.com/2016/anti-if-the-missing-patterns.html

 "Any time you see this you actually have two methods bundled into one.
  That boolean represents an opportunity to name a concept in your code."
2016-06-12 22:09:27 +02:00
Stephen Kelly 54c65d5fb2 cmake: Extract DisplayMessage API. 2016-06-12 22:08:47 +02:00
Stephen Kelly ea5324cd4b cmMakefile: Port messages for compile features to cmake 2016-06-12 19:01:45 +02:00
Stephen Kelly df8c3130d6 cmGlobalGenerator: Don't use cmMakefile::IssueMessage after configure 2016-06-12 19:01:45 +02:00
Stephen Kelly 946d1e50dc cmMakefile: Avoid IssueMessage after configure is finished 2016-06-12 19:01:45 +02:00
Stephen Kelly 096c7754b3 cmLocalGenerator: Store Backtrace for the directory
Don't rely on cmMakefile to provide that.  Use it to issue messages.
2016-06-12 19:01:45 +02:00
Stephen Kelly 0a4af0735f cmake: Issue message independent of cmMakefile definition
The makefile is only used when called by the cmMessageCommand, so inline
the use of it there.  It otherwise creates an undesirable dependency on
cmMakefile for issuing messages in the cmake instance, a violation of
the Interface Segregation Principle.

 https://en.wikipedia.org/wiki/Interface_segregation_principle

This also makes it more explicit that the variable definitions only
affect the message() command.  If an AUTHOR_WARNING is issued for any
other reason, it is not affected.  To affect that, it is necessary to
set the cache variable instead of the regular variable.

This is an unfortunate interface quirk, but one which can't be fixed
easily now.
2016-06-12 18:38:33 +02:00
Kitware Robot acf0c0f444 CMake Nightly Date Stamp 2016-06-12 00:01:09 -04:00
Daniel Pfeifer 757b0ff5dd Add missing braces around statements in header files 2016-06-11 09:49:00 +02:00
Kitware Robot d6e99fa834 CMake Nightly Date Stamp 2016-06-11 00:01:07 -04:00
Daniel Pfeifer a16bf141bc Add missing braces around statements.
Apply fixits of clang-tidy's readability-braces-around-statements
checker.
2016-06-10 18:36:24 +02:00
Daniel Pfeifer bd9e551c1a PseudoMemcheck: revise style with clang-format.
Rename memtester.cxx.in to memtester.cxx, run clang-format, then restore
the original name.  Fix the @_retval@ placeholder that was broken by
clang-format.
2016-06-10 18:31:30 +02:00
Daniel Scharrer 896ad251de Teach find_library and find_package to search lib32 paths (#11260)
Add a ``FIND_LIBRARY_USE_LIB32_PATHS`` global property analogous to the
``FIND_LIBRARY_USE_LIB64_PATHS`` property.  This helps find commands on
multilib systems that use ``lib32`` directories and either do not have
``lib`` symlinks or point ``lib`` to ``lib64``.
2016-06-10 11:09:16 -04:00
Brad King 023e2a1eb7 Merge branch 'bash-completion' into release 2016-06-10 10:47:47 -04:00
Eric NOULARD 797c3c54e8 bash-completion: Add cpack --help-{manual,module,policy,property} 2016-06-10 10:46:33 -04:00
Eric NOULARD b08cae9b0e bash-completion: Add ctest --help-{manual,module,policy,property,variable} 2016-06-10 10:46:19 -04:00
Eric NOULARD 48cb388ead bash-completion: Fix cmake --help-policy lookup 2016-06-10 10:45:25 -04:00
Brad King c5d71b28ec Merge branch 'release' 2016-06-10 09:57:21 -04:00
Eric NOULARD f67afbdc4a bash-completion: Add cmake --help-manual 2016-06-10 09:54:29 -04:00
Tobias Hunger 63c0e92c93 cmState: Expose list of properties of values in the cache 2016-06-10 09:33:41 -04:00
Tobias Hunger 6eee24634b cmCacheEntry: Retrieve all properties of cache entries 2016-06-10 09:33:41 -04:00
Tobias Hunger 120899c698 cmPropertyList: Add a way to retrieve all properties 2016-06-10 09:33:02 -04:00
Tobias Hunger 7066218e79 cmake: Kill cmake::CacheManager and its getter
This member variable is never initialized and has apparently moved
to cmState.
2016-06-10 09:27:59 -04:00
Tobias Hunger f62ed322dc cmLocalGenerator: Add GetTargetDefines to get all defines for a target 2016-06-10 09:24:49 -04:00
Brad King 853b1bb4ba cmLocalGenerator: Constify AppendDefines and AddCompileDefinitions 2016-06-10 09:24:11 -04:00
Brad King 98aafb2ad6 Merge topic 'refactor-cmLocalGenerator-flags'
d9613b96 cmLocalGenerator: Move GetFrameworkFlags implementation to private helper
70d3bf85 cmLocalGenerator: Adopt GetFrameworkFlags method
de4ee088 cmCommonTargetGenerator: De-duplicate CMAKE_BUILD_TYPE lookup
2016-06-10 09:10:04 -04:00
Brad King ff4697fc94 Merge topic 'FindProtobuf-proto-in-subdirs'
d4b8e813 FindProtobuf: fix protobuf_generate_*() to handle proto files in subdirs.
2016-06-10 09:10:02 -04:00
Brad King fbf461dde2 Merge topic 'FindFreetype-dedup-arguments'
746a4245 FindFreetype: Factor out common find command arguments
2016-06-10 09:09:59 -04:00
Brad King 09e6c9eba7 Merge topic 'FindCUDA-android'
7229ae72 FindCUDA: Refactor Android(Tegra) support
e9bfe8da FindCUDA: Adjust vertical whitespace
2016-06-10 09:09:57 -04:00
Brad King b29f1514d0 Merge topic 'FindOpenSSL-BoringSSL'
e937b4c3 FindOpenSSL: Do not assume that the version regex finds something
2016-06-10 09:09:54 -04:00
Brad King 5d078868f0 Merge topic 'watcom-workaround'
ceebac93 Tests: Restore fix to Plugin test on Watcom compiler
2016-06-10 09:09:50 -04:00
Brad King 1bde72a390 Merge topic 'cmake-gui-osx-symlink-qt5-plugin'
f2840155 cmake-gui: Teach Qt5 where plugins are when launched through a symlink
2016-06-10 09:09:47 -04:00
Kitware Robot 1f9b35da10 CMake Nightly Date Stamp 2016-06-10 00:01:06 -04:00
Brad King cc7e9d1d90 Merge branch 'cmake-gui-osx-symlink-qt5-plugin' into release 2016-06-09 13:21:56 -04:00
Robert Maynard f28401554a cmake-gui: Teach Qt5 where plugins are when launched through a symlink
When we are on OSX and we are launching cmake-gui from a symlink, the
application will fail to launch as it can't find the qt.conf file which
tells it what the name of the plugin folder is. We need to add this path
BEFORE the application is constructed as that is what triggers the
searching for the platform plugins
2016-06-09 13:21:27 -04:00
Tobias Hunger d9613b962e cmLocalGenerator: Move GetFrameworkFlags implementation to private helper 2016-06-09 10:41:42 -04:00
Tobias Hunger 70d3bf8580 cmLocalGenerator: Adopt GetFrameworkFlags method
Move it from cmCommonTargetGenerator.
2016-06-09 10:39:57 -04:00
Vladimír Vondruš d4b8e81353 FindProtobuf: fix protobuf_generate_*() to handle proto files in subdirs. 2016-06-09 16:13:45 +02:00
Boris Fomitchev 7229ae728f FindCUDA: Refactor Android(Tegra) support
Reviewed-by: James Bigler <jamesbigler@gmail.com>
2016-06-09 09:25:55 -04:00
Boris Fomitchev e9bfe8da04 FindCUDA: Adjust vertical whitespace 2016-06-09 09:24:40 -04:00
Brad King 8f3bd1f454 Merge topic 'ninja-no-ranlib-windows'
ea598671 Run ranlib on archives only if the tool is available
2016-06-09 09:18:28 -04:00
Brad King c21397b2df Merge topic 'refactor-cmLocalGenerator-flags'
b0d3e693 cmLocalGenerator: Pass configuration to GetTargetFlags
2016-06-09 09:18:26 -04:00
Brad King 065bb0ffeb Merge topic 'small-cleanups'
9f25fc4d Prefer std::ostream& over derivatives as parameters
f9cc43ea cmake: remove unnused member Verbose
6e658085 cmake: Fix constness of methods
87ffd76d cmake: Make internal method file static
fa169fe8 Parser: Merge identical conditions
2016-06-09 09:18:23 -04:00
Brad King 01632c2552 Merge topic 'xmlwriter'
e9da5192 CPack/PackageMaker: port to cmXMLWriter
2016-06-09 09:18:21 -04:00
Brad King 5aa89a1ae0 Merge topic 'java-export-targets'
0bd91ad4 UseJava: Fix race condition creating java class list
89df91b9 Help: Add notes for topic 'java-export-targets'
95d84369 Tests: Add test for exported JARs
5341c0d8 UseJava: Add infrastructure to export targets
d91ec044 Tests/Java: Clean up style of Java test code
2016-06-09 09:18:17 -04:00
Daniel Pfeifer e9da5192e5 CPack/PackageMaker: port to cmXMLWriter 2016-06-09 09:16:34 -04:00
Matthew Woehlke 0bd91ad405 UseJava: Fix race condition creating java class list
Modify logic to unconditionally create an empty class list response file
to instead only create the empty file if no classes are being compiled.
Otherwise, the response file is created via a custom command that
generates the correct list.

This fixes a race condition on certain systems (e.g. HFS on OS X) where
the dependency for creating the "correct" list can have the "same" (due
to limited precision of the filesystem) timestamp as the empty file
created at configure time, resulting in an empty class list being
incorrectly used to invoke `jar` (resulting in `jar` being unhappy that
it was not given any input files). Although one would have some hope
that this doesn't affect "real" projects, it definitely does affect the
JavaExportImport unit test, causing the same to fail randomly when run
on an HFS partition.
2016-06-09 09:12:15 -04:00
Brad King ceebac93f6 Tests: Restore fix to Plugin test on Watcom compiler
The fix in commit v3.4.0-rc1~127^2 (Tests: Fix Plugin test on Watcom
compiler, 2015-09-03) was reverted accidentally by automated .c_str()
removal.  Restore it and add a comment explaining why.
2016-06-09 09:11:10 -04:00
Stuart Mentzer 746a424573 FindFreetype: Factor out common find command arguments 2016-06-09 08:55:24 -04:00