summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* CMake Nightly Date StampKitware Robot2013-08-091-1/+1
|
* Merge topic 'cmake-syntax'Brad King2013-08-0850-247/+651
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | b93982f Merge branch 'dev/fix-variable-watch-crash' into cmake-syntax c50f7ed cmListFileLexer: Modify flex output to avoid Borland warning bf73264 Warn about unquoted arguments that look like long brackets 58e5241 Warn about arguments not separated by whitespace e75b69f cmListFileCache: Convert CMake language parser to class e945949 Add RunCMake.Syntax test cases for command invocation styles 0546484 cmListFileArgument: Generalize 'Quoted' bool to 'Delimeter' enum 28685ad cmListFileLexer: Split normal and legacy unquoted arguments 1eafa3e cmListFileLexer: Fix line number after backslash in string f3155cd Add RunCMake.Syntax test to cover argument parsing
| * Merge branch 'dev/fix-variable-watch-crash' into cmake-syntaxBrad King2013-08-087-86/+156
| |\ | | | | | | | | | | | | Resolve conflict in Source/cmVariableWatchCommand.cxx by integrating the changes from both sides.
| * | cmListFileLexer: Modify flex output to avoid Borland warningBrad King2013-08-082-24/+25
| | | | | | | | | | | | | | | | | | Remove the "yyscanner = NULL" assignment from the end of the yylex_destroy function because Borland warns that the value is never used.
| * | Warn about unquoted arguments that look like long bracketsBrad King2013-08-085-0/+59
| | | | | | | | | | | | | | | | | | | | | | | | | | | In the future CMake will introduce Lua-style long bracket syntax. Warn about unquoted arguments that in the future will be treated as opening long brackets. Teach the RunCMake.Syntax test to cover such cases and ensure that the warning appears.
| * | Warn about arguments not separated by whitespaceBrad King2013-08-085-65/+119
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Teach the lexer to return tokens for whitespace. Teach the parser to tolerate the space tokens where whitespace is allowed. Also teach the parser to diagnose and warn about cases of quoted arguments followed immediately by another argument. This was accidentally allowed previously, so we only warn. Update the RunCMake.Syntax test case StringNoSpace expected stderr to include the warnings.
| * | cmListFileCache: Convert CMake language parser to classBrad King2013-08-081-69/+97
| | | | | | | | | | | | | | | Refactor the parser implementation into a class to make it easier to extend.
| * | Add RunCMake.Syntax test cases for command invocation stylesBrad King2013-08-0816-0/+74
| | | | | | | | | | | | | | | Cover commands with whitespace present in allowed combinations. Also cover command error cases such as two on one line.
| * | cmListFileArgument: Generalize 'Quoted' bool to 'Delimeter' enumBrad King2013-08-087-26/+38
| | | | | | | | | | | | | | | | | | Replace the boolean value that indicates whether an argument is unquoted or quoted with a generalized enumeration of possible argument types. For now "Quoted" and "Unquoted" remain the only types.
| * | cmListFileLexer: Split normal and legacy unquoted argumentsBrad King2013-08-082-78/+103
| | | | | | | | | | | | | | | Match legacy arguments separately. Add macros to simplify and clarify matching rules.
| * | cmListFileLexer: Fix line number after backslash in stringBrad King2013-08-086-148/+246
| | | | | | | | | | | | | | | | | | If a line inside a string ends in a backslash count the following newline character as a line increment. Add a test covering this case to verify that subsequent line numbers are correct.
| * | Add RunCMake.Syntax test to cover argument parsingBrad King2013-08-0819-0/+53
| | | | | | | | | | | | | | | | | | | | | Test basic unquoted and quoted argument parsing cases including failure on an unterminated string and an unterminated command invocation. Also cover arguments not separated by any spaces, which is accidentally allowed by the current parser.
* | | Merge topic 'dev/fix-variable-watch-crash'Brad King2013-08-087-86/+156
|\ \ \ | | |/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 6aa0c21 variable_watch: Add test for watching a variable multiple times b86e37c variable_watch: Check newValue for NULL f9bb20f variable_watch: Don't share memory for callbacks 05dad99 variable_watch: Fix a typo in the error message 00ce12a variable_watch: Prevent making extra entries in the watch map 34b397e variable_watch: Allow specifying the data to match in RemoveWatch e43e207 variable_watch: Match client_data when finding duplicates 0d6acb1 variable_watch: Add a deleter for the client data fc7c3b4 variable_watch: Store client data as pointers
| * | variable_watch: Add test for watching a variable multiple timesBen Boeckel2013-08-083-0/+14
| | |
| * | variable_watch: Check newValue for NULLBen Boeckel2013-08-081-1/+1
| | | | | | | | | | | | | | | On read access, newValue can be NULL since there is no new value, so use the empty string instead.
| * | variable_watch: Don't share memory for callbacksBen Boeckel2013-08-082-67/+87
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The command itself is owned by the cmMakefile class, but the cmVariableWatch which holds a pointer to the cmVariableWatchCommand via the client_data for the callback outlives the cmMakefile class in the Qt GUI. This means that when the cmMakefile is destroyed, the variable watch is still in effect, but with a stale pointer. To fix this, each callback is now a separate entity completely and doesn't rely on the command which spawned it at all. An example CMakeLists.txt which demonstrates the issue (only displayed in cmake-gui, so no tests can be written for it): set(var 0) variable_watch(var)
| * | variable_watch: Fix a typo in the error messageBen Boeckel2013-08-081-1/+1
| | | | | | | | | | | | There was no space between "callback" and the quoted command name.
| * | variable_watch: Prevent making extra entries in the watch mapBen Boeckel2013-08-081-0/+4
| | | | | | | | | | | | | | | | | | | | | When removing a watch on a variable, using the operator [] on the internal map will create an empty watch if the variable doesn't have any existing watches. Rather than creating this empty structure in the map, return if there isn't a watch on the variable already.
| * | variable_watch: Allow specifying the data to match in RemoveWatchBen Boeckel2013-08-082-3/+8
| | | | | | | | | | | | | | | Now that watches are dependent on their client_data when adding, it also makes sense to allow matching the data for removal.
| * | variable_watch: Match client_data when finding duplicatesBen Boeckel2013-08-082-6/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | If a callback has the same data as another call, we don't want to delete the old callback. This is because if the client_data is the same, it might get deleted causing the new client_data to be bogus. Now, AddWatch will return true if it will use the watch, false otherwise. Callers should check the return value to know whether client_data was adopted by the watch or not.
| * | variable_watch: Add a deleter for the client dataBen Boeckel2013-08-082-3/+14
| | | | | | | | | | | | | | | | | | The client data is arbitrary and the callback may be called an unspecified number of times, so the cmVariableWatch must be the one to delete the client data in the end (if it is needed at all).
| * | variable_watch: Store client data as pointersBen Boeckel2013-08-082-7/+22
| | | | | | | | | | | | | | | The STL containers create extra copies which makes keeping track of the owner of the client data much messier.
* | | Merge topic 'parallel-memcheck'Brad King2013-08-088-56/+103
|\ \ \ | | | | | | | | | | | | | | | | 6f9aaad CTest: create one output file per memcheck (#14303)
| * | | CTest: create one output file per memcheck (#14303)Rolf Eike Beer2013-08-078-56/+103
| | | | | | | | | | | | | | | | | | | | | | | | The output file used for memory checker runs must be unique for every test run in parallel, so simply make them unique for every test run. Simply use the test index to avoid collisions.
* | | | Merge topic 'borland-no-CTestLimitDashJ'Brad King2013-08-081-3/+5
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | cd345aa Skip CTestLimitDashJ test on Borland
| * | | | Skip CTestLimitDashJ test on BorlandBrad King2013-08-071-3/+5
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | The Borland-built CTest binary has trouble running many instances of itself in parallel, making the test unreliable. No particular recent change appears to be the culprit and the failure is not reliably reproducible. Just silence the failure for now by skipping the test.
* | | | Merge topic 'wince800'Brad King2013-08-083-13/+86
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | 0416a0e VS11: Add support for Windows CE SDKs 8fcf0ab Add support for new Windows CE compiler
| * | | | VS11: Add support for Windows CE SDKsPatrick Gansterer2013-08-072-12/+81
| | | | | | | | | | | | | | | | | | | | Allow additional generator platforms for the installed WinCE SDKs.
| * | | | Add support for new Windows CE compilerPatrick Gansterer2013-08-071-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | The new compiler versions do not need corelibc.lib as a default link library and a architecture detection workaround.
* | | | | Merge topic 'update-kwsys'Brad King2013-08-0810-145/+648
|\ \ \ \ \ | |/ / / / | | | | | | | | | | | | | | | | | | | | 09b147b Merge branch 'upstream-kwsys' into update-kwsys ce6eac8 KWSys 2013-08-06 (deec6b8a)
| * | | | Merge branch 'upstream-kwsys' into update-kwsysBrad King2013-08-0710-145/+648
| |\ \ \ \
| | * | | | KWSys 2013-08-06 (deec6b8a)KWSys Robot2013-08-0710-145/+648
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Extract upstream KWSys using the following shell commands. $ git archive --prefix=upstream-kwsys/ deec6b8a | tar x $ git shortlog --no-merges --abbrev=8 --format='%h %s' beef6819..deec6b8a Brad King (1): e39f85e0 SystemTools: Activate EnableMSVCDebugHook under CTest Burlen Loring (1): 1d882d4c SystemInformation : Better stack trace Patrick Gansterer (2): 89e42c36 SystemTools: Remove duplicate code for parsing Windows registry keys deec6b8a SystemTools: Add a function to get subkeys of a Windows registry key Sean McBride (1): 4c4f8a9e Supress clang warnings about dynamic exception specifications Change-Id: I37367dc5db58818d5954735e00c6d523a1dd1411
* | | | | | Merge topic 'fix-lexer-include-order'Brad King2013-08-082-4/+4
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | ae6a5ea Include cmMakefile.h before cm*Lexer.h to get stdint.h first
| * | | | | | Include cmMakefile.h before cm*Lexer.h to get stdint.h firstBrad King2013-08-072-4/+4
| | |_|/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Some generated cm*Lexer.h headers define preprocessor macros normally provided by <stdint.h>. The latter is included indrectly by cmMakefile.h since commit 2268c41a (Optimize custom command full-path dependency lookup, 2013-08-06). Adjust the order to avoid redefinition warnings.
* | | | | | Merge topic 'cmake-gui-qt5-win'Brad King2013-08-082-5/+23
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8120e13 cmake-gui: Fix build rules for Qt5 on Windows
| * | | | | | cmake-gui: Fix build rules for Qt5 on WindowsBrad King2013-08-072-5/+23
| |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | Set policy CMP0020 to NEW to get WinMain from Qt. Fix the documentation custom command PATH for cmake-gui to find the Qt5 DLLs.
* | | | | | CMake Nightly Date StampKitware Robot2013-08-081-1/+1
|/ / / / /
* | | | | Merge topic 'optimize-custom-command-dependencies'Brad King2013-08-074-15/+76
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2268c41 Optimize custom command full-path dependency lookup eccb39d VS 6,7: Refactor local generators to avoid GetSourceFileWithOutput
| * | | | | Optimize custom command full-path dependency lookupNicolas Despres2013-08-062-1/+65
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In the common case of custom command dependencies specified via full path optimize the implementation of GetSourceFileWithOutput using a (hash) map. This is significantly faster than the existing linear search. In the non-full-path case fall back to the existing linear suffix search.
| * | | | | VS 6,7: Refactor local generators to avoid GetSourceFileWithOutputBrad King2013-08-062-14/+11
| | |_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | Use the cmSourceFile returned by AddCustomCommandToOutput instead of throwing out the return value and looking it up with GetSourceFileWithOutput.
* | | | | Merge topic 'osx-no-command-line-tools'Brad King2013-08-073-0/+29
|\ \ \ \ \ | |_|/ / / |/| | | | | | | | | | | | | | 03ab170 OS X: Enable command-line build without tools in PATH
| * | | | OS X: Enable command-line build without tools in PATHBrad King2013-08-063-0/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Teach modules CMakeDetermineCompiler and CMakeUnixFindMake to ask Xcode where to find the compiler or make tools, using 'xcrun --find', if none is found in the PATH. Teach module Platform/Darwin to add the path to the SDK to CMAKE_SYSTEM_PREFIX_PATH so that find_* command look there. Also add the SDK /usr/include directory to the implicit include list in CMAKE_${lang}_IMPLICIT_INCLUDE_DIRECTORIES to suppress explicit -I options for it.
* | | | | CMake Nightly Date StampKitware Robot2013-08-071-1/+1
| | | | |
* | | | | Merge topic 'wince-entrypoint'Brad King2013-08-064-16/+19
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 34969cf Fix setting of the entry point symbol for Windows CE (#14088) 5e0252c Improve const-correctness in cmVisualStudioGeneratorOptions
| * | | | | Fix setting of the entry point symbol for Windows CE (#14088)Patrick Gansterer2013-08-052-10/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Set the EntryPointSymbol only when it has not been set before and use the correct symbol depending on the usage of Unicode.
| * | | | | Improve const-correctness in cmVisualStudioGeneratorOptionsPatrick Gansterer2013-08-052-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | Add const qualifier to IsDebug(), UsingSBCS() and UsingUnicode().
* | | | | | Merge topic 'peheader'Brad King2013-08-062-7/+29
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | bd827f9 WIN: Use COFF file header header for architecture detection (#14083)
| * | | | | | WIN: Use COFF file header header for architecture detection (#14083)Patrick Gansterer2013-08-052-7/+29
| |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | Read the machine field from the COFF file header to get the exact target architecture for ARM and SHx on the Windows platform.
* | | | | | Merge topic 'vs-masm'Brad King2013-08-063-12/+50
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 28e770c VS10: Add support for assembler code (#11536)
| * | | | | | VS10: Add support for assembler code (#11536)Patrick Gansterer2013-08-053-12/+50
| |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | Use the masm BuildCustomizations, which are part of the Visual Studio installation to allow compilation of asm files.