Commit Graph

18686 Commits

Author SHA1 Message Date
Brad King cdb5b65752 cmCommonTargetGenerator: Adopt ModuleDefinitionFile member
De-duplicate the ModuleDefinitionFile and AddModuleDefinitionFlag
members from the Makefile and Ninja target generators.
2015-07-09 09:50:06 -04:00
Brad King beee793732 cmCommonTargetGenerator: Adopt GetFeature and friends
De-duplicate the GetFeature, GetFeatureAsBool, and AddFeatureFlags
members from the Makefile and Ninja target generators.
2015-07-09 09:50:06 -04:00
Brad King abfa5f2d1f cmCommonTargetGenerator: Adopt ConfigName member
De-duplicate the member from the Makefile and Ninja target generators.
2015-07-09 09:50:06 -04:00
Brad King 9d41f6d87b cmLocalCommonGenerator: Adopt ConfigName member
De-duplicate the member from the local Makefile and Ninja generators.
2015-07-09 09:50:06 -04:00
Brad King a4a2518dd4 cmLocalUnixMakefileGenerator3: Provide GetConfigName() accessor
Rename internal member from ConfigurationName to ConfigName to
match the ninja generator.
2015-07-09 09:50:05 -04:00
Brad King e7dcdd1011 cmCommonTargetGenerator: Adopt basic target generator members
De-duplicate the GeneratorTarget, Target, and Makefile members from the
local Makefile and Ninja generators.
2015-07-09 09:50:05 -04:00
Brad King 001f9b3617 Add common base classes to Makefile and Ninja generators
Provide a place to move functionality common to both.
2015-07-09 09:50:05 -04:00
Brad King ab4b662832 Merge topic 'cpack-ifw-framework-version'
ad5c76af CPackIFW: Load module to set CPACK_IFW_FRAMEWORK_VERSION
2015-07-09 09:17:23 -04:00
Brad King 5827d9a626 Merge topic 'eclipse-cygwin-paths'
a672b16a Eclipse: Fix paths in target links on cygwin
2015-07-09 09:17:22 -04:00
Brad King 6b4fccd1a6 Merge topic 'empty-LINK_LIBRARIES'
7aa9e80e set_property: Fix crash when setting LINK_LIBRARIES to nothing
2015-07-09 09:17:17 -04:00
Brad King 53f8ef66a5 Merge topic 'update-kwsys'
65de27b8 Merge branch 'upstream-kwsys' into update-kwsys
42272a82 KWSys 2015-07-07 (8504e845)
2015-07-09 09:17:14 -04:00
Kitware Robot aa550e04f3 CMake Nightly Date Stamp 2015-07-09 00:01:06 -04:00
Konstantin Podsvirov ad5c76af64 CPackIFW: Load module to set CPACK_IFW_FRAMEWORK_VERSION
This setting was added to support QtIFW 2.0 in commit v3.3.0-rc1~70^2~1
(CPackIFW: Add QtIFW 2.0 support, 2015-04-27).  We need to load the
CPackIFW module to initialize it if it is not set.
2015-07-08 16:02:03 -04:00
Markus Grech a672b16a3a Eclipse: Fix paths in target links on cygwin
Add a missing GetEclipsePath call to fix generation of incorrect paths
for target links in Eclipse CDT generator which caused Eclipse to be
unable to open files through such links.  Without this the generator
would generate invalid links for source files under "[Targets]", making
Eclipse unable to open them.  The old links looked like
"C:/cygdrive/c/...", while new links correctly are "C:/...".
2015-07-08 14:29:11 -04:00
Brad King 7aa9e80e35 set_property: Fix crash when setting LINK_LIBRARIES to nothing
We use a special dedicated structure to store the LINK_LIBRARIES target
property.  Do not try to construct a string from a NULL value.  Instead
leave the property structure empty when no value is given.

Reported-by: Ghyslain Leclerc <ghleclerc@gmail.com>
2015-07-08 13:23:16 -04:00
Brad King c66d232c9c Merge topic 'string-append'
2b18cdca string: add APPEND subcommand
2015-07-08 09:21:52 -04:00
Brad King 0d457c3199 Merge topic 'preserve-generator-on-failure'
3b60232e cmake: Preserve cached CMAKE_GENERATOR when an error occurs (#15640)
2015-07-08 09:19:14 -04:00
Brad King 66e0681ea0 Merge topic 'cmake-install-components'
9ce7a663 Utilities/Sphinx: Add CMake_OPTIONAL_COMPONENT macro
d7725a17 CMake: Add cmakexbuild component as REQUIRED to Tools group for IFW installer
ecca2685 CMake: optional show LGPLv2.1 license when install cmake-gui component
c14f20f7 CMake: Fix Web Site shortcut in IFW installer for Windows
c823f04e CMake: New option CMake_INSTALL_COMPONENTS
7383e4d7 CMake: Install COMPONENTs (sphinx-man)
2531b909 CMake: Install COMPONENTs (QtDialog)
938bbc43 CMake: Install COMPONENTs
2015-07-08 09:19:12 -04:00
Brad King 8c1460653e Merge topic 'add-apple-swift-language'
bf112531 Add rudimentary support for the Apple Swift language with Xcode
2015-07-08 09:19:10 -04:00
Brad King ad91d0edd5 Merge topic 'auto_export_dll_symbols'
8f86407c Windows: Optionally generate DLL module definition files automatically
069aa93b bindexplib: Add support for "/bigobj" format objects
61bbbdcf bindexplib: Fix treatment of some symbols
de70c922 bindexplib: Teach DumpFile to return errors
8ea69dfe bindexplib: Build source as part of CMakeLib
2963cb2a bindexplib: Wrap long lines
4ff09893 bindexplib: Drop code that CMake does not need
7de8276c bindexplib: Add copyright/license notice block
65086ad7 bindexplib: Import original implementation from CERN
2015-07-08 09:19:07 -04:00
Brad King 65de27b856 Merge branch 'upstream-kwsys' into update-kwsys 2015-07-08 08:58:51 -04:00
Kitware Robot b98574dab2 CMake Nightly Date Stamp 2015-07-08 00:01:05 -04:00
Brad King 3b60232ebc cmake: Preserve cached CMAKE_GENERATOR when an error occurs (#15640)
Since commit v2.4.0~4158 (When the initially configured generator is
invalid, allow the user to change the generator without deleting the cache
by hand, 2003-05-13) we remove CMAKE_GENERATOR from the cache if an error
occurs and CMAKE_MAKE_PROGRAM is not cached.  This worked at the time
because all generators initialized the CMAKE_MAKE_PROGRAM cache entry.
Since commit v3.0.0-rc1~260^2~4 (VS: Switch to internal CMAKE_MAKE_PROGRAM
lookup by generators, 2013-11-15) and commit v3.2.0-rc1~39^2 (Xcode:
Switch to internal CMAKE_MAKE_PROGRAM lookup by generator, 2015-01-28) the
VS and Xcode generators no longer store CMAKE_MAKE_PROGRAM in the cache.
Therefore any error during generation would wipe out CMAKE_GENERATOR from
the cache and cause the next configuration to choose a default generator.

Simply drop the behavior introduced by the original commit and always
preserve CMAKE_GENERATOR.  Since the time that behavior was introduced a
lot more state is now saved in CMakeCache.txt and CMakeFiles/ during the
initial configuration so it is not safe to change generators without
starting fresh anyway.
2015-07-07 14:12:38 -04:00
Brad King 86bbcdfeb8 Merge topic 'tar-portability'
edae4023 cmArchiveWrite: do not store sparse files when using standard tar formats
2015-07-07 09:53:52 -04:00
Brad King b33b5cd317 Merge topic 'refactor-cmListFileBacktrace'
d2475bb5 cmListFileBacktrace: Implement in terms of cmState::Snapshot.
238aac23 cmListFile: Remove FilePath member from cmListFileContext.
329098a9 cmMakefile: Set the FilePath on the frame from the cmState.
91158a33 cmMakefile: Create intermediate variables for snapshot frames.
821f91d6 cmMakefile: Create a scoped context for parsing listfiles.
30d44efa cmMakefile: Access the execution list file from the cmState.
6361f680 cmState: Store execution context.
94704d75 cmState: Add GetCallStackParent method.
a8e54460 cmState: Store snapshots for more different types.
dbafb015 cmMakefile: Split CallStack into two pieces.
27ff19a9 cmLinkedTree: Add operator* to the iterator.
2015-07-07 09:53:46 -04:00
Brad King 18fdf13192 Merge topic 'ctest-progress-ticks'
140b1864 CTest: hide progress ticks in verbose output
2015-07-07 09:53:44 -04:00
Brad King 43fafabd99 Merge topic 'fortran-module-preprocessor-defs'
0a203db5 Fortran: Fix passing of preprocessor definitions to dependency scanner
2015-07-07 09:53:42 -04:00
Daniel Pfeifer 2b18cdcaba string: add APPEND subcommand 2015-07-07 09:23:21 -04:00
Konstantin Podsvirov c14f20f7dd CMake: Fix Web Site shortcut in IFW installer for Windows 2015-07-07 09:16:44 -04:00
Konstantin Podsvirov c823f04e0c CMake: New option CMake_INSTALL_COMPONENTS
By default is OFF.
Now it's used with CPack IFW himself installer.
2015-07-07 09:16:40 -04:00
Konstantin Podsvirov 2531b90954 CMake: Install COMPONENTs (QtDialog)
Added "COMPONENT cmake-gui" for all install commands in lists file
2015-07-07 08:11:09 +03:00
Konstantin Podsvirov 938bbc4352 CMake: Install COMPONENTs
Added components:
- cmake
- ctest
- cpack
- cmake-gui
- ccmake
- data
- sphinx-html
- sphinx-singlehtml
- sphinx-qthelp

Other now Unspecified.
2015-07-07 08:11:09 +03:00
Kitware Robot fd23fc5711 CMake Nightly Date Stamp 2015-07-07 00:01:05 -04:00
Brad King bf11253163 Add rudimentary support for the Apple Swift language with Xcode
Allow the `Swift` language to be enabled with the Xcode generator for
Xcode >= 6.1.  Reject it on other generators and with older Xcode
versions.  Since Apple is the only vendor implementing the language
right now, the compiler id can be just `Apple`.
2015-07-06 16:15:49 -04:00
Roman Donchenko edae40239e cmArchiveWrite: do not store sparse files when using standard tar formats
Sparse files in tars are a GNU extension that libarchive will use if it
detects holes in the input file, even when using the standard pax/paxr
formats. Not all tar implementations can handle sparse files; in particular,
the internal implementation dpkg uses to extract packages can't. To
maximize archive portability, turn this feature off by clearing the
sparseness information from archive entries.
2015-07-06 15:01:08 -04:00
Daniel Pfeifer 140b186480 CTest: hide progress ticks in verbose output
The progress ticks and information about the length of the output are
useful when the actual output is not visible.  When the output is
printed, the progress ticks

* add no useful information,
* do not look pretty, and
* make the output hard to parse for tools.
2015-07-06 14:04:35 -04:00
Stephen Kelly d2475bb5c4 cmListFileBacktrace: Implement in terms of cmState::Snapshot.
Avoid copying many strings into each backtrace object.
2015-07-06 11:22:42 -04:00
Stephen Kelly 238aac2351 cmListFile: Remove FilePath member from cmListFileContext.
There is no need to store the FilePath for every function, as it is
known by other means.
2015-07-06 11:22:41 -04:00
Stephen Kelly 329098a9a0 cmMakefile: Set the FilePath on the frame from the cmState.
To verify unit tests pass and for future bisecting.
2015-07-06 11:22:41 -04:00
Stephen Kelly 91158a3369 cmMakefile: Create intermediate variables for snapshot frames. 2015-07-06 11:22:41 -04:00
Stephen Kelly 821f91d6ab cmMakefile: Create a scoped context for parsing listfiles.
Update the Syntax tests to check for updated/improved backtraces.
2015-07-06 11:22:41 -04:00
Bill Hoffman 8f86407cfd Windows: Optionally generate DLL module definition files automatically
Create target property WINDOWS_EXPORT_ALL_SYMBOLS to automatically
generate a module definition file from MS-compatible .obj files and give
it to the linker in order to export all symbols from the .dll part of a
SHARED library.
2015-07-06 11:11:02 -04:00
Bill Hoffman 069aa93b55 bindexplib: Add support for "/bigobj" format objects 2015-07-06 11:11:01 -04:00
Bill Hoffman 61bbbdcf9c bindexplib: Fix treatment of some symbols 2015-07-06 11:11:01 -04:00
Bill Hoffman de70c922d9 bindexplib: Teach DumpFile to return errors
This will allow callers to know if it worked.
2015-07-06 11:11:01 -04:00
Bill Hoffman 8ea69dfef1 bindexplib: Build source as part of CMakeLib 2015-07-06 11:11:01 -04:00
Bill Hoffman 2963cb2a55 bindexplib: Wrap long lines 2015-07-06 11:11:01 -04:00
Bill Hoffman 4ff0989323 bindexplib: Drop code that CMake does not need 2015-07-06 11:11:00 -04:00
Bill Hoffman 7de8276ca9 bindexplib: Add copyright/license notice block 2015-07-06 11:11:00 -04:00
Bill Hoffman 65086ad778 bindexplib: Import original implementation from CERN
Download the original implementation provided by root.cern.ch with the
following session:

$ wget https://raw.githubusercontent.com/gordonwatts/root-vc-port/f0ee59af/build/win/bindexplib/bindexplib.cxx
$ sha1sum bindexplib.cxx
fa6efafb2c58a0644bd0f6a56fe02ee0d55c7fcd  bindexplib.cxx
$ sed -i 's/ *$//;s/'$'\t''/        /' bindexplib.cxx
2015-07-06 11:10:58 -04:00