Commit Graph

12527 Commits

Author SHA1 Message Date
David Cole 1ec3801a3a Merge topic 'target-link-libraries-interfaces'
b1f12f8 target_link_libraries: Simplify argument processing state tests
5fc95df target_link_libraries: Add missing space in documentation
9143822 target_link_libraries: Add LINK_(PUBLIC|PRIVATE) options
cf64218 target_link_libraries: Trim trailing whitespace
2011-11-23 08:16:10 -05:00
KWSys Robot 57a85237ac KWSys Nightly Date Stamp 2011-11-23 00:05:08 -05:00
Brad King b1f12f8042 target_link_libraries: Simplify argument processing state tests
Remove extra parens in test for not handling LINK_INTERFACE_LIBRARIES.
Remove redundant test for equality with ProcessingPrivateInterface
subsumed by test for inequality with ProcessingPublicInterface.
2011-11-22 17:21:36 -05:00
Brad King 5fc95dff46 target_link_libraries: Add missing space in documentation
Change "thelink" to "the link".
2011-11-22 17:19:04 -05:00
Stephen Kelly 914382224d target_link_libraries: Add LINK_(PUBLIC|PRIVATE) options
Makes it possible to specify the link dependencies and link
interfaces in one command without repetition.
2011-11-22 16:52:35 -05:00
Stephen Kelly cf64218eeb target_link_libraries: Trim trailing whitespace 2011-11-22 16:52:27 -05:00
David Cole d9df0cca66 Merge topic 'crypto-hash'
0599c5f sha2: Zero entire SHA_CTX structure during cleanup
0a6705c sha2: Suppress -Wcast-align warning from Clang
24b1feb sha2: Cast safe conversions to smaller integer types
1ec3fa0 Merge branch 'update-KWIML' into crypto-hash
6495b59 cmCryptoHash: Add virtual destructor
8302608 Fix CMake.File hash test for CRLF checkouts
9fb1a9c sha2: Wrap long lines in third-party declarations
b0853b5 Disable file() and string() hash commands during bootstrap
9da8340 sha2: Suppress Borland warnings in third-party code
23b3df7 sha2: Use KWIML fixed-size integer constant macros
2e9c26c Add string(MD5) and string(SHA*) commands to compute hashes
293a7f4 cmCryptoHash: Provide factory "New" method
46ab056 sha2: Use "static const" instead of "const static" declarations
38771d3 Add file(SHA*) commands to compute cryptographic hashes
73efd4a sha2: Build as part of CMakeLib
c1856a3 sha2: Use KWIML fixed-size integer types and endian-ness
fcc3ce5 Merge branch 'import-sha2' into crypto-hash
042f796 Add file(MD5) command to compute cryptographic hash
ed7cef5 Factor Compute(File|String)MD5 into cmCryptoHash helper
8251b20 Import sha2 implementation 1.1 from Aaron D. Gifford
9912c41 Import sha2 implementation 1.0 from Aaron D. Gifford
2011-11-22 16:24:21 -05:00
David Cole 7b1b13c8f0 Merge topic 'EclipseImprovedSourceProject'
982b766 Eclipse: use new variable CMAKE_ECLIPSE_GENERATE_SOURCE_PROJECT
1110e45 Eclipse: create links to subprojects also in the source-project (#12579)
2011-11-22 16:23:56 -05:00
David Cole f0419b439a Merge topic 'fix-11792-improve-ctest-site-handling'
92af1da CTest: Disallow problem chars in build and site names (#11792)
2011-11-22 16:23:48 -05:00
David Cole 636740c478 Merge topic 'fix-12445-add-call-for-batch-files-vs10'
46c7054 VS: Use "call " keyword with .cmd and .bat file custom commands (#12445)
2011-11-22 16:23:23 -05:00
Alex Neundorf bde4edb6ab automoc: add special handling for including basename_p.moc, with test
Alex
2011-11-22 22:01:13 +01:00
Brad King 5c03438661 install(EXPORT): Improve target import failure message format 2011-11-22 15:55:04 -05:00
Alex Neundorf a2be068c75 install(EXPORT): Enforce existence of imported target files
Typical <package>Config.cmake files for find_package() rely only on the
files generated by install(EXPORT).  They might be wrong, for whatever
reasons, like people manually deleted files, projects were packaged
wrong by distributions, whatever.  To protect against this, add checks
that the file locations we are importing actually exist on disk.

Alex
2011-11-22 15:55:00 -05:00
Alex Neundorf 74ab0f6aa4 automoc: move some code from the big parsing loop into separate functions
Alex
2011-11-22 21:35:08 +01:00
KWSys Robot 3bbe46daa2 KWSys Nightly Date Stamp 2011-11-22 00:05:06 -05:00
KWSys Robot ad9bffdc3c KWSys Nightly Date Stamp 2011-11-21 00:05:04 -05:00
KWSys Robot 6580434f16 KWSys Nightly Date Stamp 2011-11-20 00:05:04 -05:00
Alex Neundorf b0d01c306b cmake-gui: add completion for the names when adding cache entries
Up to 100 completion strings for the names of added variables
are saved in the settings, so it will remember the variables
you are usually adding.
It also ensures that CMAKE_INSTALL_PREFIX is always there, since
this is maybe the one which is set most often.

Alex
2011-11-19 22:21:41 +01:00
Alex Neundorf 08c59af4de Remove trailing whitespace
Alex
2011-11-19 22:19:48 +01:00
Alex Neundorf 982b766f29 Eclipse: use new variable CMAKE_ECLIPSE_GENERATE_SOURCE_PROJECT
Previously ECLIPSE_CDT4_GENERATE_SOURCE_PROJECT was used, but the
new name CMAKE_ECLIPSE_GENERATE_SOURCE_PROJECT is more in line with
the general naming conventions in cmake, and, more importantly IMO,
in cmake-gui it now appears right next to the other eclipse-related
variables, which all start with CMAKE_ECLIPSE_.

A warning is printed if the old variable is TRUE and the new one isn't,
so users should notice that they have to enable the new one.

Alex
2011-11-19 11:18:51 +01:00
Alex Neundorf 1110e455c2 Eclipse: create links to subprojects also in the source-project (#12579)
Alex
2011-11-19 11:01:03 +01:00
KWSys Robot fa878d27bf KWSys Nightly Date Stamp 2011-11-19 00:05:04 -05:00
David Cole 92af1dad06 CTest: Disallow problem chars in build and site names (#11792)
Also, use "(empty)" rather than actually sending an empty string
if build or site name is not set properly.
2011-11-18 17:13:07 -05:00
David Cole 46c70540ed VS: Use "call " keyword with .cmd and .bat file custom commands (#12445)
Similar fix to commit d093abef for the Makefile generators. Prevents
premature exit from sequence of commands. Even when no errors occur,
the previous construct without "call " was exiting the sequence before
executing the full set of commands...
2011-11-18 10:15:58 -05:00
KWSys Robot 8e1bbee4d9 KWSys Nightly Date Stamp 2011-11-18 00:05:04 -05:00
Brad King 0599c5f546 sha2: Zero entire SHA_CTX structure during cleanup
Convert lines of the form

  MEMSET_BZERO(context, sizeof(context));

to the correct form

  MEMSET_BZERO(context, sizeof(*context));

as suggested by Clang.
2011-11-17 11:18:08 -05:00
Brad King 0a6705cbda sha2: Suppress -Wcast-align warning from Clang
The code does contain a cast that increases alignment but only for
pointers into structures known to be sufficiently aligned.
2011-11-17 11:12:00 -05:00
Brad King 24b1feb5ca sha2: Cast safe conversions to smaller integer types
Add a cast to lines converting "uint64_t" to "unsigned int" that are
known safe due to use of modulus with a small integer.  This avoids
compiler warnings such as

  conversion from 'cm_sha2_uint64_t' to 'unsigned int',
  possible loss of data

from MSVC.
2011-11-17 11:07:43 -05:00
Brad King 1ec3fa00c9 Merge branch 'update-KWIML' into crypto-hash 2011-11-17 10:19:36 -05:00
KWSys Robot 21469b65dd KWSys Nightly Date Stamp 2011-11-17 00:05:11 -05:00
Alex Neundorf 72bb058e92 Automoc: modified handling of included .moc files
-enable the KDE4-compatiblity mode only when using Qt4
-always (except in the KDE4 compat mode) error out if a cpp-file
 contains "Q_OBJECT", but does not include filename.moc

Alex
2011-11-16 22:35:06 +01:00
Brad King 6495b595c4 cmCryptoHash: Add virtual destructor
Instances of this class are always subclasses.  Use a virtual destructor
to ensure the subclasses cleanup correctly.
2011-11-16 11:32:01 -05:00
Brad King 9fb1a9cf1d sha2: Wrap long lines in third-party declarations 2011-11-16 11:05:13 -05:00
Brad King b0853b5fae Disable file() and string() hash commands during bootstrap
We do not compile support for the cryptographic hashes during bootstrap.
Disable the APIs that use them.
2011-11-16 11:03:30 -05:00
Brad King 9da8340a6d sha2: Suppress Borland warnings in third-party code
The sha2 implementation performs cleanup on local variables.  Suppress
the warning instead of fixing it to minimize modification.
2011-11-16 10:54:56 -05:00
Brad King 23b3df76a0 sha2: Use KWIML fixed-size integer constant macros
Define SHA_UINT32_C and SHA_UINT64_C using the KWIML versions.
Use them in place of hard-coded UL and ULL constant suffixes.
2011-11-16 10:48:10 -05:00
Brad King 2e9c26cf96 Add string(MD5) and string(SHA*) commands to compute hashes
Provide a CMake-language binding to these cryptographic hashes.  Add a
string() command API for MD5, SHA1, SHA224, SHA256, SHA384, and SHA512.
2011-11-16 10:29:35 -05:00
Brad King 293a7f4e2a cmCryptoHash: Provide factory "New" method
Construct a cmCryptoHash subclass instance based on the name of the
desired hash algorithm.
2011-11-16 10:15:44 -05:00
Brad King 46ab0561fc sha2: Use "static const" instead of "const static" declarations
Fix old-style declarations in the original code.
2011-11-16 10:15:44 -05:00
Brad King 38771d3bdf Add file(SHA*) commands to compute cryptographic hashes
Add a file() command API for SHA1, SHA224, SHA256, SHA384, and SHA512.
2011-11-16 10:15:44 -05:00
Brad King 73efd4a504 sha2: Build as part of CMakeLib
Mangle sha2 symbols to avoid conflict with system libs.
2011-11-16 10:15:44 -05:00
Brad King c1856a33d4 sha2: Use KWIML fixed-size integer types and endian-ness
These are more portable than those named in the original sha2 code.
2011-11-16 10:15:44 -05:00
Brad King fcc3ce5b0d Merge branch 'import-sha2' into crypto-hash 2011-11-16 10:15:13 -05:00
Brad King 042f7965c3 Add file(MD5) command to compute cryptographic hash
Provide a CMake-language binding to the md5sum function previously
available only by "cmake -E md5sum".
2011-11-16 10:15:01 -05:00
Brad King ed7cef5634 Factor Compute(File|String)MD5 into cmCryptoHash helper
Define an abstract API around the backend hash algorithm.  Expose
ifstream errors to HashFile callers.  Always try opening the file.
Succeed only if the end of file is reached without error.
2011-11-16 10:14:53 -05:00
KWSys Robot cbf453eeb6 KWSys Nightly Date Stamp 2011-11-16 03:25:07 -05:00
David Cole 7efd93cd72 Merge topic 'vs-version-ivar'
c92ffec Enumerate VS11 version explicitly in local generators
1be4b6f Order VS local generator Version ivar values consistently
2011-11-15 14:39:25 -05:00
David Cole 1e055d374e Merge topic 'automoc_qt5'
bafe5cc Fix style.
74b9392 Update comments and method names to not be Qt4 specific.
812dab0 Don't assume the existence of QT_MAJOR_VERSION.
2011-11-15 14:39:00 -05:00
David Cole f1197ff0da Merge topic 'fix-11213-vs10-mfc-support'
537020f Tests: Nudge MFC test to pass on VS 6 dashboards (#11213)
51f442e VS11: Update InstallRequiredSystemLibraries.cmake for VS11 (#11213)
d85ab7a Tests: Add environment logging to the MFC test (#11213)
011694c VS10: Use expected values for UseOfMfc (#11213)
a2e6d24 Tests: Fix MFC test to work with VS 10 and later (#11213)
2011-11-15 14:38:56 -05:00
Brad King c92ffece80 Enumerate VS11 version explicitly in local generators
Since the parent commit the local generator Version ivar may be
compared for ordering.  Convert comparisons:

  "==VS10" becomes ">=VS10"
  "!=VS10" becomes "< VS10"

to support an explicit enumeration value for VS11 with no change
in behavior.
2011-11-14 09:50:47 -05:00
Brad King 1be4b6f463 Order VS local generator Version ivar values consistently
Move the Version member to the top cmLocalVisualStudioGenerator class
and set it consistently for instances created by all the global
generator versions.  Use an enumeration type with values scaled by a
factor of 10 so we can handle VS 7.1 without out-of-order numbers.

VS 7.1 support for SuppressStartupBanner was broken by commit 25116a3c
(Fix CMAKE_VERBOSE_MAKEFILE for VS10 vcxproj files, 2011-10-11) because
it assumed comparison of VS version numbers works.  Now it does.
2011-11-14 09:47:31 -05:00
KWSys Robot 590c37e207 KWSys Nightly Date Stamp 2011-11-14 00:05:04 -05:00
Brad King 5d6cb1308d KWSys: Fix wrong spelling of __INTEL_COMPILER
Author: Hans Johnson <hans-johnson@uiowa.edu>
Change-Id: I31a29a8b53e5262b76530b8ea80a1a66cff7b3f7
2011-11-13 12:35:04 -05:00
Brad King 2f8f7ec56a KWSys: Remove trailing whitespace in SystemTools.cxx 2011-11-13 12:25:05 -05:00
KWSys Robot 9aa10f8045 KWSys Nightly Date Stamp 2011-11-13 11:32:56 -05:00
KWSys Robot b90b6969f6 KWSys Nightly Date Stamp 2011-11-11 00:10:05 -05:00
Alex Neundorf e44ebd5f9b automoc: another runtime optimization
before doing the full regexp, try a simple strstr(), if this
already fails, no need to do the regexp matching.

Alex
2011-11-10 22:54:44 +01:00
Alex Neundorf 1423177828 automoc: minor optimization
Handing th std::string instead the char* to the find()
reduces the time from 17 to 15 seconds (for a 1000 times loop of a
relatively small file), which is around 10 percent.

Alex
2011-11-10 22:41:48 +01:00
Alex Neundorf f98e6151dc automoc: improved diagnostics
Error/warning messages now look like:
AUTOMOC: (error|warning): <filename>: the actual text...

Alex
2011-11-10 22:12:03 +01:00
Alex Neundorf 81c43b4fb6 automoc: handle the case when the developer includes the wrong mocfile
There are multiple/many places in KDE where the developer includes
moc_foo.cpp, and expects moc to run on foo.cpp, instead of foo.h.
He should use foo.moc, but right now this is handled by automoc4,
so we must stay compatible. So support this too, but warn about
it.

Alex
2011-11-10 22:12:03 +01:00
Alex Neundorf 7242822897 automoc: rework the checking for the matching header, to give better warnings
Alex
2011-11-10 22:12:03 +01:00
Alex Neundorf d08bc32bc2 automoc: stricter checking for what file is included
foo.cpp must include foo.moc to have itself processed by moc

Alex
2011-11-10 22:11:32 +01:00
Stephen Kelly b8c8cab242 Merge remote-tracking branch 'origin/master' into automoc_qt5 2011-11-10 15:46:13 +01:00
KWSys Robot 131d0ae4fc KWSys Nightly Date Stamp 2011-11-10 00:10:58 -05:00
Stephen Kelly bafe5cc6e9 Fix style. 2011-11-10 00:57:21 +01:00
Stephen Kelly 74b9392eb9 Update comments and method names to not be Qt4 specific. 2011-11-09 23:26:09 +01:00
Stephen Kelly 812dab067e Don't assume the existence of QT_MAJOR_VERSION.
Also handle Qt5SrcTools_MAJOR_VERSION.
2011-11-09 23:20:20 +01:00
KWSys Robot 5675ec5e49 KWSys Nightly Date Stamp 2011-11-09 00:10:28 -05:00
David Cole 6478502efc Merge topic 'fix-typo'
6d51f5f Fix typo.
2011-11-08 14:43:44 -05:00
David Cole a5579b76f0 Merge topic 'FixAutomocFromCCMakeFromPATH'
83d02ee make automoc work when using ccmake via PATH (#12551)
2011-11-08 14:43:38 -05:00
David Cole 5a3a5ba052 Merge topic 'watcom-cmake-shortpath-issue-12548'
23381d8 Watcom: Use shortpath to CMake if full path has parens (#12548)
2011-11-08 14:43:31 -05:00
David Cole a985a9e0f7 Merge topic 'framework-with-space'
e74f374 Fix linking to OS X Frameworks named with spaces (#12550)
2011-11-08 14:43:18 -05:00
David Cole e4085569a9 Merge topic 'FixTargetsInVirtualFoldersForEclipseIndigo'
d31b1ac Eclipse: quote the build dir (to make it work with spaces)
0576331 Eclipse: make targets work from any directory
2011-11-08 14:43:10 -05:00
David Cole 7ee0f580eb Merge topic 'EclipseWarnIfBuildDirIsSubDirOfSrcDir'
4b93022 Eclipse: warn if CMAKE_BINARY_DIR is subdir of CMAKE_SOURCE_DIR
2011-11-08 14:43:02 -05:00
David Cole 3452dadf89 Merge topic 'AddMocOptionsToAutomoc'
2c648ab add documentation for the AUTOMOC_MOC_OPTIONS property
52719a1 automoc: fix #12541, support moc options
2011-11-08 14:42:51 -05:00
David Cole 6c2f30822b Merge topic 'DontCrashAutomocWithEmptyCompileDefs'
1ecc55a Automoc: fix the fix, need to use std::string, not just char* pointer
8c8305f don't crash in automoc with empty COMPILE_DEFINITIONS property
2011-11-08 14:42:46 -05:00
David Cole d8d4e801ac Merge topic 'fix-12549-one-more-SCC-setting'
b0f0b3e VS: Add VS_SCC_AUXPATH target property (#12549)
2011-11-08 14:42:41 -05:00
David Cole 67e3b64ab5 Merge topic 'automoc_qt5'
c208ab8 Also run moc automatically with Qt5.
2011-11-08 14:42:36 -05:00
KWSys Robot 7fe3484f20 KWSys Nightly Date Stamp 2011-11-08 00:11:46 -05:00
KWSys Robot 3de9669e1b KWSys Nightly Date Stamp 2011-11-07 00:10:07 -05:00
KWSys Robot fce8e81895 KWSys Nightly Date Stamp 2011-11-06 00:10:30 -04:00
KWSys Robot 0727f38f71 KWSys Nightly Date Stamp 2011-11-05 00:08:47 -04:00
Stephen Kelly 6d51f5fa3c Fix typo. 2011-11-04 19:54:18 +01:00
David Cole 011694c269 VS10: Use expected values for UseOfMfc (#11213)
Use expected values for the UseOfMfc xml element in
VS 10 .vcxproj files.

  CMAKE_MFC_FLAG=1 maps to "Static"
  CMAKE_MFC_FLAG=2 maps to "Dynamic"
  all other values map to "false"

Thanks to Randy Schott and McBen for their patches which
served as inspiration and motivation for getting this done.

See also http://public.kitware.com/Bug/view.php?id=11224
2011-11-04 13:29:41 -04:00
KWSys Robot ae09bab3d6 KWSys Nightly Date Stamp 2011-11-04 00:10:22 -04:00
Alex Neundorf 83d02ee52b make automoc work when using ccmake via PATH (#12551)
In ccmake, cmake::GetCMakeCommand() returns "/cmake" when ccmake
was started from the PATH, i.e. by simply running "ccmake"

Alex
2011-11-03 22:55:42 +01:00
Brad King 23381d83d8 Watcom: Use shortpath to CMake if full path has parens (#12548)
The Watcom WMake tool has trouble running commands in paths that have
parentheses.  We already convert most commands to a shortpath for Watcom
if the path contains a space, but the use of $(CMAKE_COMMAND) hides the
true path from that conversion.  Factor the shortpath conversion code
out into a new ConvertShellCommand method.  Teach it to convert paths
that contain parentheses as well as spaces.  Use the new method to
convert the value of $(CMAKE_COMMAND) and other helper variables.
2011-11-03 09:23:55 -04:00
KWSys Robot 22bf096474 KWSys Nightly Date Stamp 2011-11-03 00:10:09 -04:00
Brad King e74f3744ae Fix linking to OS X Frameworks named with spaces (#12550)
Teach cmComputeLinkInformation to generate the "-framework" option as a
separate link item preceding the actual framework name.  Then escape the
framework name to pass as an argument through a shell.  This fixes the
link line for frameworks with spaces in the name.

The build system generators that call cli.GetItems() and generate the
final list of items on the link line already handle escaping correctly
for items that are paths.  However, for raw link items like "-lfoo" they
just pass through to the command line verbatim.  This is incorrect.  The
generators should escape these items too.  Unfortunately we cannot fix
that without introducing a new CMake Policy because projects may already
be passing raw link flags with their own escapes to work around this
bug.  Therefore we punt on this bug for now and go with the above fix.
2011-11-02 08:58:41 -04:00
KWSys Robot d4afce1ddd KWSys Nightly Date Stamp 2011-11-02 00:09:52 -04:00
Alex Neundorf d31b1aca3f Eclipse: quote the build dir (to make it work with spaces)
When creating the targets for Eclipse, quote the directory
in which make should change. Otherwise it will fail if the
path contains with spaces.

Alex
2011-11-01 21:23:52 +01:00
Alex Neundorf 4b930220be Eclipse: warn if CMAKE_BINARY_DIR is subdir of CMAKE_SOURCE_DIR
Eclipse doesn't handle this case well. When doing out-of-source builds
we create a linked resource which points to CMAKE_SOURCE_DIR, so the
user can browse the source dir in Eclipse. This is not possible
when the build dir is a subdir of the source dir.

Alex
2011-11-01 21:13:35 +01:00
Alex Neundorf 2c648ab7e2 add documentation for the AUTOMOC_MOC_OPTIONS property
Alex
2011-11-01 19:54:04 +01:00
David Cole 55659c4ea9 Merge topic 'FixCMAKE_BUILD_TOOL_doc'
83b13a2 Fix old reference to CMAKE_MAKE_PROGRAM inside CMAKE_BUILD_TOOL doc.
2011-11-01 14:26:38 -04:00
David Cole 5531e5e162 Merge topic 'doc-link_directories-misconception'
30e4a52 Tell people that link_directories() is not what they are searching for
2011-11-01 14:26:27 -04:00
David Cole c2300e6265 Merge topic 'fix-12539-ctestconfig-from-build-dir'
76ecdd8 CTest: Look for CTestConfig.cmake in build dir first, then source dir
2011-11-01 14:26:21 -04:00
David Cole e0d97b6728 Merge topic 'fix-12383-clear-ctest-vecs'
499c104 CTest: Clear custom vectors before populating (#12383)
2011-11-01 14:26:16 -04:00
David Cole 9d87a9251e Merge topic 'ctest-memcheck-log-newline-issue-12538'
26b6794 Source/cmCTest.cxx: Add missing newline (#12538)
2011-11-01 14:25:54 -04:00
Robert Dailey b0f0b3e440 VS: Add VS_SCC_AUXPATH target property (#12549)
Maps to SccAuxPath tag in VCPROJ files.
2011-11-01 11:29:08 -04:00
Brad King 13d19468d0 KWSys: Address Intel compiler remarks
CommandLineArguments.cxx:
 remark #181: argument is incompatible with corresponding format
  string conversion

SystemInformation.cxx:
 remark #193: zero used for undefined preprocessing identifier "_WIN32"
 warning #177: variable "Regebx" was declared but never referenced

SystemTools.cxx(375):
 remark #444: destructor for base class "std::vector<char*>" is not virtual
  class kwsysDeletingCharVector : private kwsys_stl::vector<char*>

Author: Hans Johnson <hans-johnson@uiowa.edu>
Change-Id: Ibc899c3ba14990158ef7bbabace4b435b22495c3
2011-11-01 10:49:25 -04:00
Stephen Kelly c208ab8d5c Also run moc automatically with Qt5.
The method of running moc hasn't changed in Qt5.
2011-11-01 14:48:45 +01:00
Alex Neundorf 52719a1d66 automoc: fix #12541, support moc options
This commit adds a new target property AUTOMOC_MOC_OPTIONS, which
can be set to add extra options for the moc invocations done via automoc.
This is equivalent to the OPTIONS parameter in the qt4_wrap_cpp() macro.

Alex
2011-11-01 14:33:11 +01:00
Alex Neundorf 1ecc55aa7b Automoc: fix the fix, need to use std::string, not just char* pointer
We need to take a copy of the property values, since the returned
char* pointer is reused by the following GetProperty() calls

Alex
2011-11-01 13:59:14 +01:00
KWSys Robot 5e1c2f81a7 KWSys Nightly Date Stamp 2011-11-01 00:10:07 -04:00
Alex Neundorf 057633151a Eclipse: make targets work from any directory
Set the working directory for make targets which are associated
to virtual folders, otherwise Eclipse simply runs make from the
current working directory (where Eclipse has been started), and
where probably not the correct makefile is located.

Alex
2011-10-31 23:37:01 +01:00
Alex Neundorf 8c8305f286 don't crash in automoc with empty COMPILE_DEFINITIONS property
Reported by Laszlo Papp:
http://www.cmake.org/pipermail/cmake/2011-October/047089.html

Alex
2011-10-31 22:07:12 +01:00
KWSys Robot 07e88ae449 KWSys Nightly Date Stamp 2011-10-31 00:09:47 -04:00
Eric NOULARD 83b13a250c Fix old reference to CMAKE_MAKE_PROGRAM inside CMAKE_BUILD_TOOL doc. 2011-10-30 22:34:18 +01:00
KWSys Robot b1e9e55c6c KWSys Nightly Date Stamp 2011-10-30 00:10:04 -04:00
KWSys Robot ba5c6493d9 KWSys Nightly Date Stamp 2011-10-29 00:09:52 -04:00
KWSys Robot 6a6f21412d KWSys Nightly Date Stamp 2011-10-28 00:09:53 -04:00
Rolf Eike Beer 30e4a5204f Tell people that link_directories() is not what they are searching for
Judging from the questions I see on the #cmake IRC channel this is one
of the most common pitfalls for people coming from other build systems,
especially plain Makefiles.  Finally put this into the documentation to
stop people getting fooled into using this.

Text by Brad King.
2011-10-27 09:23:05 -04:00
KWSys Robot 9a6257a40b KWSys Nightly Date Stamp 2011-10-27 00:09:59 -04:00
Jean-Christophe Fillion-Robin 76ecdd8d16 CTest: Look for CTestConfig.cmake in build dir first, then source dir
Provide the ability to configure CTest with settings different from the ones
available in the source tree by checking first if CTestConfig.cmake
exists in the build tree.

The motivation is to allow build system checking out external project to
test and/or package them and submit the associated results to a different
dashboard than the one specified (or not) in the source of the external
project.

For example, the build system of Slicer can checkout, build, test
and package what I will  call "extensions". These extensions can be developed
by third parties who can test and submit to their own dashboard / project.
When checked out by Slicer build system, the default dashboard can now be
overwritten by adding a custom CTestConfig.cmake to the build directory.
And if not overwritten, it would avoid to create CTestConfig.cmake within
the source checkout of the extension.
2011-10-26 23:23:03 -04:00
David Cole 499c104572 CTest: Clear custom vectors before populating (#12383)
Important when calling ctest commands in a loop from a script.
Each time Populate gets called, it uses the current definition
of the variable. Without the clear, it was accumulating additional
identical values each time through the loop.
2011-10-26 00:19:46 -04:00
KWSys Robot 2b0f8c7de0 KWSys Nightly Date Stamp 2011-10-26 00:09:51 -04:00
David Cole bd216ef63a Merge topic 'some-documentation-fixes'
ceff6ec ccmake: Factor toggle key help instructions.
19da106 ccmake: Document '/' key.
fd63219 ccmake: Align 'g' and 'q' key instructions.
bfb0ed4 Usage: Add missing exepath argument in get_prerequisites documentation.
de51264 Usage: Print help, version and copyright options in usage information.
9ae0604 Usage: Document all options printing the version number.
3353d84 Usage: Document all options printing usage information.
1b612ca Usage: Document -j|--parallel option in help message.
6be15ed Doxygen: Remove dependency on VTK when building doxygen.
a92f14f Doxygen: Fix warnings.
faede37 Doxygen: Generate call graph and relationships.
dd13ecd Doxygen: Improve code documentation.
d0b3a7f Fix typo.
d3d7e45 Remove trailing white-spaces.
2011-10-25 15:34:26 -04:00
David Cole 4701843974 Merge topic 'SourceGroupsForEclipse'
66bd543 Eclipse: fix #12417, don't create wrong src pathentries
70de8bd Eclipse: detect number of CPUs, set CMAKE_ECLIPSE_MAKE_ARGUMENTS accordigly
117f2b8 Eclipse: add Build and Clean targets to targets
c3f30bd Eclipse: move code for generating links to targets into separate function
cef6bd9 Eclipse: move code for generating links to projects into separate function
b6d4de7 Eclipse: add virtual folder for each target
2011-10-25 15:34:23 -04:00
David Cole 61b49402d7 Merge topic 'AutomocFindQ_OBJECTAlwaysInHeader'
5e8e9ad automoc: always run moc on the cpp file if there is a foo.moc included
ea8ac9f Add copyright notices
56aa6ff automoc:run moc on the header if the source file contains include "foo.moc"
2011-10-25 15:34:19 -04:00
David Cole 5576655f36 Merge topic 'fix-12490-shorten-gcov-filenames'
2f309cb CTest: Add COVERAGE_EXTRA_FLAGS cache variable (#12490)
2011-10-25 15:34:16 -04:00
David Cole 1df94c5a03 Merge topic 'fix-12522-avoid-xcode-env-spew'
5a94d09 Xcode: Avoid spewing the environment on every script run (#12522)
2011-10-25 15:34:07 -04:00
David Cole 88b5578920 Merge topic 'fix-vs11-sln-header'
f0d66ab VS11: Fix comment generated at the top of *.sln files
2011-10-25 15:34:03 -04:00
David Cole 039d1b1fd9 Merge topic 'cmake-link-interface-libraries'
d9cbba7 Initialize LINK_INTERFACE_LIBRARIES target property with a variable
2011-10-25 15:33:48 -04:00
Bernhard Walle 26b6794fd5 Source/cmCTest.cxx: Add missing newline (#12538)
In the log entry, the newline is missing. The output without the newline
character is a bit strange, like

 SetCTestConfigurationFromCMakeVariable:MemoryCheckCommand:CTEST_MEMORYCHECK_COMMANDSetCTestConfiguration:MemoryCheckCommand:/usr/bin/valgrind

Instead of

 SetCTestConfigurationFromCMakeVariable:MemoryCheckCommand:CTEST_MEMORYCHECK_COMMAND
 SetCTestConfiguration:MemoryCheckCommand:/usr/bin/valgrind

This patch changes this to add a newline.

Signed-off-by: Bernhard Walle <walle@corscience.de>
2011-10-25 08:34:42 -04:00
KWSys Robot 676fb3b2ac KWSys Nightly Date Stamp 2011-10-25 00:09:56 -04:00
Stephen Kelly d9cbba7c2c Initialize LINK_INTERFACE_LIBRARIES target property with a variable
Define variable CMAKE_LINK_INTERFACE_LIBRARIES to initialize the
value of this property when a target is created.  This allows authors
to write

  set(CMAKE_LINK_INTERFACE_LIBRARIES "")

to disable transitive linking to implementation dependencies of shared
libraries on platforms where it is possible.
2011-10-24 16:09:29 -04:00
Brad King 89742d73cc KWSys: Fix Doxygen warnings
Author: Nicolas Despres <nicolas.despres@gmail.com>
2011-10-24 10:05:10 -04:00
KWSys Robot 27e405ddb1 KWSys Nightly Date Stamp 2011-10-24 00:09:58 -04:00
Nicolas Despres ceff6ec525 ccmake: Factor toggle key help instructions. 2011-10-23 22:18:14 +02:00
Nicolas Despres 19da10629d ccmake: Document '/' key. 2011-10-23 22:18:14 +02:00
Nicolas Despres fd63219557 ccmake: Align 'g' and 'q' key instructions.
They were miss-aligned with the 'enter' key instruction.

Before:
----
Press [enter] to edit option           CMake Version 2.8.3.20110107-g4b05a-dirty
Press [c] to configure
Press [h] for help         Press [q] to quit without generating
----

After:
----
Press [enter] to edit option           CMake Version 2.8.3.20110107-g4b05a-dirty
Press [c] to configure
Press [h] for help           Press [q] to quit without generating
----
2011-10-23 22:18:14 +02:00
Nicolas Despres de512644d8 Usage: Print help, version and copyright options in usage information.
There were missing for ctest, cpack and ccmake.
2011-10-23 22:18:14 +02:00
Nicolas Despres 9ae0604a62 Usage: Document all options printing the version number. 2011-10-23 22:18:14 +02:00
Nicolas Despres 3353d84c14 Usage: Document all options printing usage information. 2011-10-23 22:18:14 +02:00
Nicolas Despres 1b612caafe Usage: Document -j|--parallel option in help message. 2011-10-23 22:18:13 +02:00
Nicolas Despres a92f14f338 Doxygen: Fix warnings. 2011-10-23 22:18:08 +02:00
Nicolas Despres dd13ecd005 Doxygen: Improve code documentation. 2011-10-23 22:15:30 +02:00
Nicolas Despres d0b3a7fa48 Fix typo. 2011-10-23 22:15:30 +02:00
Nicolas Despres d3d7e45df2 Remove trailing white-spaces. 2011-10-23 22:15:20 +02:00
Alex Neundorf 66bd543b9b Eclipse: fix #12417, don't create wrong src pathentries
Actually the Eclipse generator now does not create any CDT_SOURCE
pathentries anymore, since I was not able to find out what they are
good for, not even by asking on the cdt-dev mailing list.

So, at least the warning from eclipse about bad pathentries are gone
this way, and I didn't see anything which was not working anymore.
Let's see whether we can find out what they are good for.

Alex
2011-10-23 14:58:52 +02:00
Alex Neundorf 117f2b8257 Eclipse: add Build and Clean targets to targets
With this commit the virtual folder for the targets now
have "Build" and "Clean" targets associated to them, so you can
build and clean per-target now in the project explorer.

Alex
2011-10-23 12:25:33 +02:00
Alex Neundorf c3f30bdd63 Eclipse: move code for generating links to targets into separate function
Alex
2011-10-23 12:22:20 +02:00
Alex Neundorf cef6bd94d7 Eclipse: move code for generating links to projects into separate function
Alex
2011-10-23 11:00:45 +02:00
KWSys Robot a390d6cc89 KWSys Nightly Date Stamp 2011-10-23 00:56:13 -04:00
Alex Neundorf 5e8e9ad68c automoc: always run moc on the cpp file if there is a foo.moc included
This makes automoc behaves as the documentation says.
If there is a #include "foo.moc" in the source file, moc
will be executed on foo.cpp.
Before it was also executed on foo.cpp, but only if foo.cpp
contained a Q_OBJECT macro, otherwise moc was executed on
foo.h. This was confusing, and this change also shouldn't break
anything, since the headers are moc'ed anyway if they contain
a Q_OBJECT macro.

Alex
2011-10-22 21:16:39 +02:00
Alex Neundorf ea8ac9f5dc Add copyright notices
Alex
2011-10-22 19:43:34 +02:00
Alex Neundorf 56aa6ffae7 automoc:run moc on the header if the source file contains include "foo.moc"
This fixes #12533.
Before automoc did not check the header if the source file contained a
statement, now it does.
Additionally, moc is now only run on explicitely listed headers which
contain a Q_OBJECT macro.

Alex
2011-10-22 19:38:39 +02:00
David Cole 2f309cba45 CTest: Add COVERAGE_EXTRA_FLAGS cache variable (#12490)
COVERAGE_EXTRA_FLAGS is a space separated value of extra flags
that will be passed to gcov when ctest's coverage handler invokes
gcov to do coverage analysis.

Map to CoverageExtraFlags in the CTest ini file. Use default value
of "-l" to match the coverage handler's earlier behavior from ctest
2.8.4 and earlier. The fix for related issue #11717 had added a " -p"
which was the cause of both #12415 and #12490. Here, we revert that
change to the default value, so -p is no longer there by default.
The people that care to add -p may do so in their own build trees
by appending " -p" to the new cache variable COVERAGE_EXTRA_FLAGS.
2011-10-22 11:01:58 -04:00
KWSys Robot af772893b8 KWSys Nightly Date Stamp 2011-10-22 00:10:10 -04:00
KWSys Robot b9e9ad57fa KWSys Nightly Date Stamp 2011-10-21 00:10:15 -04:00
Johan Bjork 5a94d099dd Xcode: Avoid spewing the environment on every script run (#12522)
This is the prefered way to get rid of the 'setenv XXX' output,
instead of stripping it in the cmakexbuild wrapper.
2011-10-20 19:14:28 -04:00
David Cole f0d66ab40a VS11: Fix comment generated at the top of *.sln files
With "Visual Studio 2011" the launcher does not recognize the version
of the *.sln files. With "Visual Studio 11" it does.
2011-10-20 18:48:26 -04:00
KWSys Robot 173fb485f0 KWSys Nightly Date Stamp 2011-10-20 00:08:06 -04:00
Alex Neundorf b6d4de7911 Eclipse: add virtual folder for each target
For each target a virtual folder is created, which contains
one virtual folder for each sourcegroup, which contain
links to the actual source files (#12294, #12223)

Alex
2011-10-19 22:02:14 +02:00
KWSys Robot 1b6c33f798 KWSys Nightly Date Stamp 2011-10-19 00:09:45 -04:00
David Cole 049d2bc77d Merge topic 'DetectEclipseVersion'
dcd2459 Eclipse: better message when Eclipse version could not be determined
b4b2fc3 Eclipse: don't create VirtualFolders if not supported
5b200e3 Detect whether the current Eclipse version supports VirtualFolders
4974ec9 Eclipse generator: detect Eclipse version
2011-10-18 15:04:22 -04:00
David Cole 1322c416dd Merge topic 'fix-12517-ctest-crash'
7041cd6 CTest: Fix crash when variables are not defined
2011-10-18 15:04:05 -04:00
David Cole 56b153d3e5 Merge topic 'vs10-nologo-issue-12504'
25116a3 Fix CMAKE_VERBOSE_MAKEFILE for VS10 vcxproj files (#12504)
2011-10-18 15:02:38 -04:00
KWSys Robot fa7a747b33 KWSys Nightly Date Stamp 2011-10-18 00:10:11 -04:00
KWSys Robot c6e7487499 KWSys Nightly Date Stamp 2011-10-17 00:09:44 -04:00
KWSys Robot 80621968ea KWSys Nightly Date Stamp 2011-10-16 00:10:00 -04:00
Alex Neundorf b4b2fc33f9 Eclipse: don't create VirtualFolders if not supported
Eclipse versions before 3.6 (Helios) did not support
VirtualFolders yet (#12479), so only create them if Eclipse
is new enough.

Alex
2011-10-15 21:03:14 +02:00
Alex Neundorf 5b200e3bed Detect whether the current Eclipse version supports VirtualFolders
VirtualFolders are supported since 3.6 (Helios).
Next patch will be to actually make use of the new flag
SupportsVirtualFolders.

Alex
2011-10-15 19:40:21 +02:00
KWSys Robot eb11e0b9ac KWSys Nightly Date Stamp 2011-10-15 00:10:02 -04:00
David Cole 7041cd6a88 CTest: Fix crash when variables are not defined
Avoiding dereference of NULL pointers is always good.
2011-10-14 07:46:01 -04:00
KWSys Robot 6eb2d79d72 KWSys Nightly Date Stamp 2011-10-14 00:10:10 -04:00
KWSys Robot 731d61d8d9 KWSys Nightly Date Stamp 2011-10-13 00:10:00 -04:00
KWSys Robot 83e4a45609 KWSys Nightly Date Stamp 2011-10-12 00:09:42 -04:00
Niels Dekker 25116a3cc2 Fix CMAKE_VERBOSE_MAKEFILE for VS10 vcxproj files (#12504) 2011-10-11 17:07:53 -04:00
David Cole 1226404545 Merge topic 'ninja-generator-prep'
32f8437 Fix line-too-long style violations
029ab31 Constify XCode generator getters to match cmGlobalGenerator
fec4b63 Fix configuration-dependent flag lookup in cmLocalGenerator::GetTargetFlags
557956f Introduce a cmGlobalGenerator::ResolveLanguageCompiler function
5b114c9 Introduce a cmLocalGenerator::ConvertToIncludeReference function
903d914 Make cmLocalGenerator::ConvertToLinkReference virtual
8a0eb78 Constify many getters of cmGlobalGenerator.
4532d36 Add const versions of some getters.
3db2973 Refactor TargetTypeNames.
2011-10-11 14:45:35 -04:00
David Cole c8e92de286 Merge topic 'DependencyScanningForASM'
e36a1be fix #12262: use the C dependency scanner also for ASM files
2011-10-11 14:45:27 -04:00
David Cole 296fde32dd Merge topic 'CodeBlocks-quoting'
240d39a Fix XML safety issue with adding preprocessor defines in CodeBlocks project.
2011-10-11 14:45:17 -04:00
David Cole 3ece15b8f9 Merge topic 'HandleCMAKE_CXX_COMPILER_ARG1InEclipse'
3df49dc fix #12392: handle CMAKE_CXX_COMPILER_ARG1 for Eclipse projects
2011-10-11 14:45:09 -04:00
David Cole 4daef775f5 Merge topic 'refactor-find-search-paths'
b0cd630 Refactor find_* command final path list computation
2011-10-11 14:45:00 -04:00
KWSys Robot fac6e2ef44 KWSys Nightly Date Stamp 2011-10-11 00:09:47 -04:00
Brad King 32f8437bbf Fix line-too-long style violations
Commit 8a0eb78f (Constify many getters of cmGlobalGenerator, 2011-03-26)
added const qualifiers to many cmGlobalGenerator methods but left the
resulting lines beyond our style's limit of 79 characters.
2011-10-10 09:46:27 -04:00
KWSys Robot d1f5a3bff9 KWSys Nightly Date Stamp 2011-10-10 00:09:36 -04:00
KWSys Robot d17ab57c53 KWSys Nightly Date Stamp 2011-10-09 00:09:32 -04:00
KWSys Robot 48171cefb5 KWSys Nightly Date Stamp 2011-10-08 00:10:17 -04:00
Brad King 029ab3102e Constify XCode generator getters to match cmGlobalGenerator
Commit 8a0eb78f (Constify many getters of cmGlobalGenerator, 2011-03-26)
added const qualifiers to many cmGlobalGenerator methods.  Fix the
signature of the virtual function overrides in cmGlobalXCodeGenerator to
match.
2011-10-07 08:22:05 -04:00
KWSys Robot 783da62f2e KWSys Nightly Date Stamp 2011-10-07 00:09:53 -04:00
KWSys Robot 61c69d3fbb KWSys Nightly Date Stamp 2011-10-06 00:05:17 -04:00
Alex Neundorf e36a1be466 fix #12262: use the C dependency scanner also for ASM files
Files for the ASM language are those assembler files which are processed
by the C/CXX compiler, and they may contain preprocessor directives, so
run the C dependency scanner also on them.

Alex
2011-10-05 21:51:35 +02:00
Clinton Stimpson 240d39a6a4 Fix XML safety issue with adding preprocessor defines in CodeBlocks project. 2011-10-05 10:02:32 -06:00
KWSys Robot ab97790c33 KWSys Nightly Date Stamp 2011-10-05 00:07:09 -04:00
KWSys Robot 80a0e2c344 KWSys Nightly Date Stamp 2011-10-04 00:09:40 -04:00
David Cole 68e43c2fad Merge topic 'fix_intel_vs_version'
8f1ee51 Also, check for 11.x as an intel fortran version.
0cd3606 Use version 11.0 for 12.x and 9.10 for 10.x intel versions to fix 12.1 vsIDE.
2011-10-03 11:54:15 -04:00
KWSys Robot a92b17e421 KWSys Nightly Date Stamp 2011-10-03 00:09:33 -04:00
Peter Collingbourne fec4b63714 Fix configuration-dependent flag lookup in cmLocalGenerator::GetTargetFlags
Specifically, perform configuration-dependent lookup of
STATIC_LIBRARY_FLAGS for static libraries, and use the correct prefix
for configuration-dependent lookup of LINK_FLAGS (i.e. "LINK_FLAGS_",
as opposed to the value of the LINK_FLAGS property).
2011-10-02 18:30:43 +01:00
Peter Collingbourne 557956f348 Introduce a cmGlobalGenerator::ResolveLanguageCompiler function
It is factored out of cmGlobalUnixMakefileGenerator3::EnableLanguage,
and may be used by other generators to resolve CMAKE_*_COMPILER
settings.
2011-10-02 18:30:43 +01:00
Peter Collingbourne 5b114c9bee Introduce a cmLocalGenerator::ConvertToIncludeReference function
This provides a mechanism for the local generator to override how
header search paths are generated.
2011-10-02 18:30:43 +01:00
Peter Collingbourne 903d914b28 Make cmLocalGenerator::ConvertToLinkReference virtual
This provides a mechanism for the local generator to override how
library search paths are generated.
2011-10-02 18:30:43 +01:00
Nicolas Despres 8a0eb78f3b Constify many getters of cmGlobalGenerator. 2011-10-02 18:30:42 +01:00
Nicolas Despres 4532d36cc9 Add const versions of some getters. 2011-10-02 18:30:42 +01:00
Nicolas Despres 3db2973bd2 Refactor TargetTypeNames.
Make it a static method instead of an array. It is safer for the
type checking and if we add a new target type we will be warned to add
a case to the switch.
2011-10-02 18:30:42 +01:00
KWSys Robot 18c0aa0db7 KWSys Nightly Date Stamp 2011-10-02 00:09:44 -04:00
Alex Neundorf 3df49dc7b1 fix #12392: handle CMAKE_CXX_COMPILER_ARG1 for Eclipse projects
CMAKE_CXX/C_COMPILER_ARG1 have to be used for finding the include
dirs and builtin macros, so Eclipse can do code completion

Alex
2011-10-01 19:09:24 +02:00
KWSys Robot 867b226898 KWSys Nightly Date Stamp 2011-10-01 00:09:52 -04:00
Bill Hoffman 8f1ee5181d Also, check for 11.x as an intel fortran version.
As Dave Cole pointed out the previous commit only checked for 10.x and 12.x.
11.0 was accounted for, but 11.1, 11.2 and 11.3 were not.  This patch
should make it work for those versions as well.  I did a web check and there
are 11.0, 11.1, 11.2 and 11.3 versions from Intel. I assume if 12.x uses
11.0 as the version in the .vfproj file, then all of the 11.x versions would
as well.
2011-09-30 17:11:34 -04:00
David Cole c4e08b5533 Merge topic 'ImproveFindPackageModeWithTryCompile'
f15945e Use makefile->IssueMessage() for better error messages
c886e31 Improve behaviour of --find-package mode with try_run/try_compile
31f43fd Remove trailing whitespace
2011-09-30 15:57:20 -04:00
David Cole 449aef3efb Merge topic 'vs11-generator'
3b5256e Teach our tests about special cases for VS 11
3d5632e Add Visual Studio 11 generator for x86 and x64 tools
2011-09-30 15:57:17 -04:00
Bill Hoffman 0cd3606afd Use version 11.0 for 12.x and 9.10 for 10.x intel versions to fix 12.1 vsIDE.
The intel compiler for 12.0 and 12.1 are known to expect the file version
to be 11.0 in the .vfproj file.  For 10.x it should be 9.10.  Prior to
this fix 12.0 and 10.1 were the only values checked. If those did not match
the actual version of intel was put in the vfproj file causing an error
about future version load attempt in the IDE.
2011-09-30 15:52:37 -04:00
KWSys Robot 72bac428cc KWSys Nightly Date Stamp 2011-09-30 00:09:34 -04:00
KWSys Robot 8a3bca50fa KWSys Nightly Date Stamp 2011-09-29 00:07:38 -04:00
KWSys Robot ef8cc9997c KWSys Nightly Date Stamp 2011-09-28 00:09:40 -04:00
Alex Neundorf f15945edad Use makefile->IssueMessage() for better error messages
Alex
2011-09-27 18:59:42 +02:00
KWSys Robot 77593178cf KWSys Nightly Date Stamp 2011-09-27 00:09:39 -04:00
Brad King 26f079044d Merge topic 'doc-set_target_properties-typo'
f8c77fa Fix typo in set_target_properties' documentation.
2011-09-26 11:24:39 -04:00
KWSys Robot 0bf12af36c KWSys Nightly Date Stamp 2011-09-26 00:09:04 -04:00
KWSys Robot 9584135674 KWSys Nightly Date Stamp 2011-09-25 00:09:58 -04:00
KWSys Robot e4bd3b0cf3 KWSys Nightly Date Stamp 2011-09-24 00:09:49 -04:00
Brad King b0cd630521 Refactor find_* command final path list computation
All find_* commands re-root the list of paths and then add trailing
slashes.  Factor this pair of calls out into a dedicated method.  The
new method would be the only caller to AddTrailingSlashes, so subsume
that method into it.
2011-09-23 14:36:27 -04:00
Brad King 3d5632ed59 Add Visual Studio 11 generator for x86 and x64 tools 2011-09-23 10:10:01 -04:00
Raphael Kubo da Costa f8c77fa97b Fix typo in set_target_properties' documentation.
our -> or
2011-09-23 08:16:08 -04:00
KWSys Robot 8c280435df KWSys Nightly Date Stamp 2011-09-23 00:09:39 -04:00
KWSys Robot 4a1aadbb00 KWSys Nightly Date Stamp 2011-09-22 00:09:30 -04:00
David Cole 682a989fdb Merge topic 'CPackDeb-fakeroot'
49da3bd CPackDeb fix #10325 automagically use fakeroot for DEB if fakeroot is found
2011-09-21 17:29:16 -04:00
KWSys Robot 41c6b3dd4d KWSys Nightly Date Stamp 2011-09-21 00:09:39 -04:00
David Cole 47dac7ec97 Merge topic 'file-download-http-error'
09817e9 Make file(DOWNLOAD) fail on http error
2011-09-20 14:42:26 -04:00
KWSys Robot 400c74f325 KWSys Nightly Date Stamp 2011-09-20 00:14:11 -04:00
Brad King 09817e91f9 Make file(DOWNLOAD) fail on http error
If a http server responds with a result code greater than 400 then the
data returned from the download probably do not match that expected.
Teach file(DOWNLOAD) to fail with an error in this case instead of
silently pretending that the download worked.  The file(UPLOAD) command
already does this.
2011-09-19 17:41:48 -04:00
KWSys Robot cfc6e01851 KWSys Nightly Date Stamp 2011-09-19 00:14:09 -04:00
KWSys Robot f1cd7d289e KWSys Nightly Date Stamp 2011-09-18 00:13:12 -04:00
KWSys Robot 962a54db5f KWSys Nightly Date Stamp 2011-09-17 00:14:04 -04:00
KWSys Robot 7fca32a0bb KWSys Nightly Date Stamp 2011-09-16 00:14:06 -04:00
Alex Neundorf c886e312bb Improve behaviour of --find-package mode with try_run/try_compile
Instead of failing with an error message which says things have not been
setup correctly, it now says that try_compile/try_run() are not
supported in find_package mode (#12426).

Alex
2011-09-15 16:28:35 +02:00
Alex Neundorf 31f43fdb5a Remove trailing whitespace
Alex
2011-09-15 16:20:33 +02:00
KWSys Robot ec0f23515f KWSys Nightly Date Stamp 2011-09-15 00:14:07 -04:00
KWSys Robot 2a3441b65f KWSys Nightly Date Stamp 2011-09-14 00:14:04 -04:00
David Cole 98d5623a7b Merge topic 'effective-platform-name'
64c9b31 Xcode: Add test to demonstrate iOS project in Xcode
59a2265 Xcode: Use EFFECTIVE_PLATFORM_NAME reference in ComputeOutputDir
2011-09-13 14:33:21 -04:00
KWSys Robot c7021203de KWSys Nightly Date Stamp 2011-09-13 00:13:05 -04:00
David Cole 59a2265576 Xcode: Use EFFECTIVE_PLATFORM_NAME reference in ComputeOutputDir
Caveats apply: only valid when not overriding default value for output
dir *and* there is a CMAKE_XCODE_EFFECTIVE_PLATFORMS value.

For now, CMAKE_XCODE_EFFECTIVE_PLATFORMS must be defined in each
project, or in the cache for a build.

Code relying on value of LOCATION and similar properties may not
work if it depends on file existence on disk since CMake will not
evaluate $(EFFECTIVE_PLATFORM_NAME). This feature is only enabled
for making it easier to build Xcode iOS projects where the developer
wants to be able to switch easily between simulator and device builds.
2011-09-12 15:21:00 -04:00
KWSys Robot 201173133c KWSys Nightly Date Stamp 2011-09-12 00:10:18 -04:00
KWSys Robot 39d5c49f21 KWSys Nightly Date Stamp 2011-09-11 00:14:12 -04:00
KWSys Robot e27a0e9870 KWSys Nightly Date Stamp 2011-09-10 00:14:05 -04:00
KWSys Robot 3ae6060f29 KWSys Nightly Date Stamp 2011-09-09 00:14:04 -04:00
KWSys Robot 3246dc2665 KWSys Nightly Date Stamp 2011-09-08 00:14:08 -04:00
David Cole 4e3d428cc3 Merge topic 'fix-12446-no-cmake-E-build'
96d106a CMake: Remove documentation for -E build (#12446)
2011-09-07 15:39:21 -04:00
David Cole fde0a4ddd1 Merge topic 'fix-12377-xcode-honor-g0'
cb22afc Xcode: Honor -g0 to disable debugging (#12377)
2011-09-07 15:39:15 -04:00
David Cole 1a5c99581e Merge topic 'fix-12284-cpack-symlinks'
7b8dcdd CPack: Do not recurse through directory symlinks (#12284)
d78bdb2 CMake: Write symlinks to directories as files in archives (#12284)
2011-09-07 15:39:03 -04:00
David Cole 05bc6bfb87 Merge topic 'fix-12260-fix-valgrind-output-parsing'
eb4af16 CTest: Fixed valgrind output parsing (#12260)
2011-09-07 15:38:32 -04:00
David Cole db4154661c Merge topic 'fix-12370-no-space-in-target-name'
e05e0f1 Xcode: No spaces in makefile target names (#12370)
2011-09-07 15:38:16 -04:00
David Cole f62540adcc Merge topic 'fix-errors-from-cppcheck-issue-12440'
d1751fb ccmake: Fix off-by-one memory access error
4868921 Fix file() command descriptor leak on error
f47393c CTest: Fix memory leaks on error
2011-09-07 15:37:48 -04:00
David Cole d9ad72542a Merge topic 'fortran-format'
90efed6 Xcode: Honor Fortran_FORMAT target and source file property
5c0c635 Fortran: Add support for free- and fixed-form flags
47a0c75 VS: Map Fortran free- and fixed-format flags to IDE options
d6e2a06 VS: Map per-source Fortran flags to IDE options
2011-09-07 15:37:27 -04:00
David Cole 103ab60dd7 Merge topic 'fix-zero-check-mistake'
57bc42a Xcode: Do not emit the ZERO_CHECK target more than once
2011-09-07 15:37:15 -04:00
David Cole 18897d63a5 Merge topic 'save-cache-at-end-of-generate'
0c28b48 CMake: Add SaveCache at the end of successful Generate calls
2011-09-07 15:37:07 -04:00
KWSys Robot 540b25d529 KWSys Nightly Date Stamp 2011-09-07 00:14:04 -04:00
Matt McCormick 96d106a78d CMake: Remove documentation for -E build (#12446)
The '-E build build_dir' command was created and documented, but then
morphed into '--build build_dir' instead, ... and then the -E documentation
was never removed. This commit fixes that oversight.
2011-09-06 17:42:32 -04:00
Johan Bjork cb22afc02c Xcode: Honor -g0 to disable debugging (#12377)
This commit changes ExtractFlag to remove all occurences
of a flag, and only save the last one. (i.e., the dominant
one according to GCC rules)
2011-09-06 15:04:58 -04:00
Johan Björk 7b8dcdd173 CPack: Do not recurse through directory symlinks (#12284)
...when building CPack archive-based packages (.tar.gz and similar)

Rather, put the symlinks-to-directories into the archive as files,
and expect/trust that the things the symlinks point to are also in
the archive.
2011-09-06 14:04:37 -04:00
Johan Björk d78bdb2783 CMake: Write symlinks to directories as files in archives (#12284)
Do not recurse through directory symlinks when adding files.

Recursing through directory symlinks will generate broken archives,
i.e., they will look something like this:
  foo -> bar/bar
  foo/Info <- Shouldn't be in archive.
  bar/bar
  bar/bar/Info
2011-09-06 13:58:00 -04:00
David Cole 527a40f06f KWSys: Add symlinks to directories as files (#12284)
This behaviour was previously broken; regardless of the
RecurseThroughSymLinks value, symlinks to directories were
NEVER added as files in the results.

When RecurseThroughSymLinks is ON, symlinks to directories
should be recursed as if they were the actual directories
to gather the files within.

However, when RecurseThroughSymLinks is OFF, symlinks to
directories should be returned as files in the result.

Inspired-by: Johan Björk <phb@spotify.com>
2011-09-06 13:20:02 -04:00
David Cole 98cb017a9d KWSys: Remove always-true dir_only parameter
Its presence confuses, and, since it is always true, is useless.
2011-09-06 13:10:05 -04:00
KWSys Robot 5b4528b1f4 KWSys Nightly Date Stamp 2011-09-06 00:15:02 -04:00
Eric NOULARD 49da3bdb2d CPackDeb fix #10325 automagically use fakeroot for DEB if fakeroot is found 2011-09-05 22:43:45 +02:00
Johannes Stallkamp eb4af16298 CTest: Fixed valgrind output parsing (#12260)
Previous code was missing some matches in the output. This commit
fixes the regular expressions used for output matching to detect
numbers reported with commas in them, too.
2011-09-05 14:31:08 -04:00
Johan Björk e05e0f1d2c Xcode: No spaces in makefile target names (#12370)
Don't use spaces for target names in the makefiles.
2011-09-05 12:20:19 -04:00
KWSys Robot 48ba9b2f19 KWSys Nightly Date Stamp 2011-09-05 00:13:12 -04:00
KWSys Robot 99d8ca624d KWSys Nightly Date Stamp 2011-09-04 00:15:04 -04:00
KWSys Robot 405bcd8def KWSys Nightly Date Stamp 2011-09-03 00:14:08 -04:00
Thomas Jarosch d1751fbf17 ccmake: Fix off-by-one memory access error
Credit goes to "cppcheck".

Signed-off-by: Thomas Jarosch <thomas.jarosch@intra2net.com>
2011-09-02 11:15:40 -04:00
Thomas Jarosch 4868921bc2 Fix file() command descriptor leak on error
Credit goes to "cppcheck".

Signed-off-by: Thomas Jarosch <thomas.jarosch@intra2net.com>
2011-09-02 11:15:26 -04:00
Thomas Jarosch f47393c66b CTest: Fix memory leaks on error
Credit goes to "cppcheck".

Signed-off-by: Thomas Jarosch <thomas.jarosch@intra2net.com>
2011-09-02 11:15:11 -04:00
KWSys Robot 83ce7c4d3c KWSys Nightly Date Stamp 2011-09-02 00:13:05 -04:00
David Cole 925af96eda Merge topic 'fix-xcode4-test-failures'
0cf4fa5 Xcode4: Requires more quoting of single quote char
2011-09-01 15:12:31 -04:00
David Cole 319df3245e Merge topic 'AutomocForQt'
7bf2c1a Create moc files in the current binary dir, not the top level.
2011-09-01 15:11:55 -04:00
Brad King 90efed6ee6 Xcode: Honor Fortran_FORMAT target and source file property
Convert the target property to the IFORT_LANG_SRCFMT build setting.
Convert the source property to the per-source COMPILER_FLAGS setting.
2011-09-01 10:54:12 -04:00
Johan Bjork 57bc42ae91 Xcode: Do not emit the ZERO_CHECK target more than once 2011-09-01 09:59:44 -04:00
David Cole 0c28b48d9b CMake: Add SaveCache at the end of successful Generate calls
Without this call, recent refactoring changes in the Visual
Studio generators yield no GUIDs saved in the cache. Putting
the SaveCache here *once* avoids scattering many calls to it
in specific generators.
2011-09-01 08:49:00 -04:00
Brad King 89f420abde KWSys: Fix std::string hash function for Borland
Borland ignores "const" qualifiers in template specializations.
2011-09-01 08:22:03 -04:00
Brad King 8e6352f8db KWSys: Add hash function for std::string
Added hashing fuction for std::string.  This adds default support for
std::strings to KWSys hashing containers.

Author: Bradley Lowekamp <blowekamp@mail.nih.gov>
Suggested-by: Arnaud Gelas <arnaud_gelas@hms.harvard.edu>
Change-Id: I7e7a0c356b73d19868a3df1db57b702ec7fffe9d
2011-09-01 08:10:20 -04:00
KWSys Robot 917ca9f142 KWSys Nightly Date Stamp 2011-09-01 00:14:06 -04:00
Brad King 5c0c635a09 Fortran: Add support for free- and fixed-form flags
Define a "Fortran_FORMAT" target and source file property.  Initialize
the target property from a "CMAKE_Fortran_FORMAT" variable.  Interpret
values "FIXED" and "FREE" to indicate the source file format.  Append
corresponding flags to the compiler command line.
2011-08-31 10:24:43 -04:00
Brad King 47a0c7542b VS: Map Fortran free- and fixed-format flags to IDE options
Add Intel Fortran flags "-free" and "-fixed" to the table so they appear
in the IDE correctly.
2011-08-31 09:57:26 -04:00
Brad King d6e2a063f0 VS: Map per-source Fortran flags to IDE options
Fix the VS generator per-source flag parsing to use the Fortran flag map
for Fortran sources.
2011-08-31 09:56:29 -04:00
KWSys Robot a486c837c8 KWSys Nightly Date Stamp 2011-08-31 00:12:35 -04:00
KWSys Robot 51beb446c2 KWSys Nightly Date Stamp 2011-08-30 00:14:06 -04:00
KWSys Robot b17a6dd55b KWSys Nightly Date Stamp 2011-08-29 00:14:06 -04:00
KWSys Robot 195ac0aac1 KWSys Nightly Date Stamp 2011-08-28 00:14:18 -04:00
KWSys Robot 0f78d92c0f KWSys Nightly Date Stamp 2011-08-27 00:15:02 -04:00
KWSys Robot 8508a6986a KWSys Nightly Date Stamp 2011-08-26 00:14:07 -04:00
David Cole 0cf4fa578a Xcode4: Requires more quoting of single quote char
Specifically in per-target and per-file compiler definition
string values.

The Preprocessor test now passes on Xcode 4 builds after
this commit.
2011-08-25 18:39:21 -04:00
David Cole 9d8b025b5f Merge topic 'fix-11690-preserve-xcode-objectids'
1834f23 Xcode: Save object id values in CMakeCache.txt (#11690)
2011-08-25 15:41:13 -04:00
David Cole 7b0cf28ccf Merge topic 'fix_nmake_var_plus'
281f51e Fix for bug #12413, nmake did not handle targets with + in the name.
2011-08-25 15:41:02 -04:00
David Cole 28cba226b3 Merge topic 'UsingCMakeLikePkgConfig2'
59238dc Fix --find-package mode on Cygwin, where enable_language(RC) is called
98472e4 Require the current cmake version in --find-package mode
a6ccf3c Use $(CXXFLAGS) and $(LDFLAGS) in the --find-package test Makefile
4386918 Fix line length
7d69310 Only enable the test when using GNU make
3011149 Make the test harder by always having a space in the include dirs
ab57ff6 Make the --find-package test harder
626fc71 Much improved test, should now be executed on all UNIXes
ec6982d Disable any STATUS output in --find-package mode
e552ae7 Dont check for -isysroot and -mmacosx-version on OSX in --find-package mode
e589589 Rename helper macros print_compile_flags() to set_compile_flags_var()
aecfc1f Fix test on OpenBSD with BSD make
6bb4ca3 The makefile for the test was kindof wrong
fd15b5e Only run the test if we are using a makefile generator under UNIX
9fc87c6 Add a test for the new --find-package mode
d3ae0ff Improve documentation for --find-package mode
bf07375 Add a cmake.m4 for using cmake in autoconf projects instead of pkgconfig
b0e3578 Use the file-utility to test for 64bit if there is no /usr/lib64
53edfb2 Better support for lib64 and Debian multiarch
b8fdaa1 Fix copyright notice in new CMakeFindPackageMode.cmake
7690edf Replace cmake::GetScriptMode() with GetWorkingMode()
e4f603b Implement find-package mode of cmake
a91d662 Add find-package mode, which does nothing yet
b976e70 Make clLocalGenerator::GetTargetFlags() public
2011-08-25 15:40:49 -04:00
David Cole 39f0fa725e Merge topic 'AutomocForQt'
920a046 QtAutomoc: Eliminate compiler warning
b00463f QtAutomoc test: Pass QT_QMAKE_EXECUTABLE
e78ce44 Fix automoc with VS builds: apply patch from Bill
71165e9 Silence warning in automoc: use long instead of int
1879bcc Fix build: use std::ios::out|ios::trunc instead of std::ios_base::out
678e124 Only enable the automoc test after checking that Qt4 works
71c29d1 Fix bootstrap test with automoc
afb3edc Fix warnings
add30e9 Fix build: non-void function must return a value
7e6d845 Automoc.cmake is not needed anymore
2963d0b Fix logic which decides when to execute automoc test
77a5c6e Add documentation for AUTOMOC, add initialization via CMAKE_AUTOMOC
bf8ef77 Add a test for automoc
d045fd4 Nicer progress message for the automoc target
50cd6ce Move automoc processing from add_executable/library to cmGlobalGenerator
cbaac2a Remove trailing whitespace
c27607b Refactor SetupAutomocTarget() so it can be run after creating the target
24d9b7d Remove trailing whitespace
58b7fe6 Use cout instead of printf()
72caf4d Add the generated automoc.cpp file to the cleaned files
ddb517d Color output when running moc
9303295 Initialize verbose based onb the env.var.
ace1215 Move code for parsing a cpp-file from the big loop to separate function
735a5bb Fix line lengths
83b730c Add AUTOMOC to the add_library() command
126c6ea Add the cmake module required currently for automoc
de91feb Remove the need to check for .h/.cxx during buildtime
d65689a Add actual automoc code from automoc
d1c0a5f Start implementing skeleton for automoc in cmake
a65011b Start work on automoc: add empty cmQtAutomoc class
2011-08-25 15:40:29 -04:00
David Cole 50b64fb012 Merge topic 'xcode4-remove-PREBINDING'
bda4148 Xcode: Remove PREBINDING attribute for Xcode 4 and above
2011-08-25 15:40:21 -04:00
David Cole 68b3795140 Merge topic 'fix-vs10-rebuild-issue'
eb02acb VS10: Avoid unnecessary rebuilds for custom commands
2011-08-25 15:40:12 -04:00
Stephen Kelly 7bf2c1aa3e Create moc files in the current binary dir, not the top level. 2011-08-25 21:39:51 +02:00
KWSys Robot e8d60d46d1 KWSys Nightly Date Stamp 2011-08-25 00:10:16 -04:00
David Cole 1834f232a7 Xcode: Save object id values in CMakeCache.txt (#11690)
For project and target objects, save their ids in CMakeCache.txt.

Hopefully, that will be enough to allow user settings to be saved
across multiple CMake generate operations. Other object types may
also need their ids saved: if so, more code than this commit
will be necessary...
2011-08-24 18:11:32 -04:00
Bill Hoffman 281f51e063 Fix for bug #12413, nmake did not handle targets with + in the name.
If you had a + in the name of a target with nmake, it created a variable
in the makefile that used + in its name, which is not allowed by nmake.
To make the implementation easier, + is now not allowed for any make
generators as part of a variable name.
2011-08-24 16:08:31 -04:00
KWSys Robot ee45a5dd5a KWSys Nightly Date Stamp 2011-08-24 00:14:07 -04:00
KWSys Robot fe46e7e486 KWSys Nightly Date Stamp 2011-08-23 00:14:21 -04:00
KWSys Robot 29b285c6a1 KWSys Nightly Date Stamp 2011-08-22 00:12:50 -04:00
KWSys Robot 3848b397ef KWSys Nightly Date Stamp 2011-08-21 00:12:36 -04:00
David Cole 7dcbb66315 KWSys: Remove translation path for "/tmp_mnt/" (#10595)
In SystemTools::ClassInitialize, remove call to AddTranslationPath
that was originally put in place to "work around an SGI problem."
This code precluded using CMake effectively in valid directories
under "/tmp_mnt/"
2011-08-20 12:30:09 -04:00
KWSys Robot 02e2f3e350 KWSys Nightly Date Stamp 2011-08-20 00:13:07 -04:00
David Cole 920a046015 QtAutomoc: Eliminate compiler warning 2011-08-19 14:18:11 -04:00
Johan Bjork bda4148a57 Xcode: Remove PREBINDING attribute for Xcode 4 and above
PREBINDING is obsolete in Xcode 4 and causes warnings if present.
Do not emit it for Xcode >= 4.0
2011-08-19 11:27:26 -04:00
KWSys Robot 8971c0d8d2 KWSys Nightly Date Stamp 2011-08-19 00:14:02 -04:00
David Cole eb02acb695 VS10: Avoid unnecessary rebuilds for custom commands
Thanks to James Bigler for pointing this out on the
cmake-developers mailing list...
2011-08-18 16:51:52 -04:00
Alex Neundorf e78ce44b35 Fix automoc with VS builds: apply patch from Bill
This patch moves the creation of VS GUIDs from the final pass
to AddHelperCommands() and should fix the failing automoc tests
with VS.

Alex
2011-08-18 19:35:41 +02:00
Alex Neundorf 71165e943e Silence warning in automoc: use long instead of int
Alex
2011-08-18 19:34:49 +02:00
Alex Neundorf 1879bcc09c Fix build: use std::ios::out|ios::trunc instead of std::ios_base::out
Alex
2011-08-18 18:53:14 +02:00
Alex Neundorf 43869188af Fix line length
Alex
2011-08-18 18:39:05 +02:00
KWSys Robot d7184e0e4d KWSys Nightly Date Stamp 2011-08-18 00:13:09 -04:00
Alex Neundorf 71c29d11b3 Fix bootstrap test with automoc
Alex
2011-08-17 17:08:50 +02:00
KWSys Robot 721133dc45 KWSys Nightly Date Stamp 2011-08-17 00:10:16 -04:00
Alex Neundorf afb3edc181 Fix warnings
Alex
2011-08-17 00:49:12 +02:00
Alex Neundorf add30e9008 Fix build: non-void function must return a value
Alex
2011-08-17 00:39:21 +02:00
David Cole 7b044105ce Merge topic 'add-vs9-midl-inc-dirs'
ac22e2a VS9: Add include_directories to midl command lines
2011-08-16 17:03:15 -04:00
David Cole 674be27a7f Merge topic 'WriteConfigVersionFile_2TemplateFiles'
c9761de Improve documentation for WriteBasicConfigVersionFile.cmake
208bb90 Set UNSUITABLE instead of not COMPATIBLE
bb03c2d Really fix copyright notice
d50a61a Fix copyright notice
4ba09bc Add some tests for write_basic_config_version_file()
02b1e4b Add example to documentation
d216a67 Provide macro write_basic_config_version_file()
2011-08-16 17:03:00 -04:00
David Cole 47a8d4f22c Merge topic 'fix-10941-correct-comments'
edcdfea Documentation: Fix comments in the source code (#10941)
2011-08-16 17:02:52 -04:00
David Cole b38bf726f4 Merge topic 'enable-parallel-xcode-builds'
312d68d Xcode: Rearrange CMakeReRun to enable parallel builds
2011-08-16 17:02:48 -04:00
David Cole 522c263d9d Merge topic 'fix-imported-target-depend-crash'
8ee9bbb Do not crash when an imported target depends on a missing target
2011-08-16 17:02:43 -04:00
David Cole e1d4a73be0 Merge topic 'fix-12259-quote-commas-for-xcode'
d87eb35 Xcode: Quote ',' in Xcode string values (#12259)
2011-08-16 17:02:38 -04:00
David Cole 0923610b6d Merge topic 'fix-11746-sort-failed-tests-output'
4575ed9 Fix line too long style violation
ba4886b CTest: print failed tests in index order (#11746)
2011-08-16 17:02:23 -04:00
David Cole a772f21a7d Merge topic 'intel_fortran_vs2010'
3c53fbb Fix custom commands in VS2010 Fortran projects using CFG_INTDIR and test.
2011-08-16 17:01:33 -04:00
David Cole 6d5819ca6c Merge topic 'fix-8707-add-vs-globals'
37d8602 Merge topic 'intel_fortran_vs2010' into fix-8707-add-vs-globals
6c72d25 Initial support for Intel Fortran VS2010.
2011-08-16 17:01:28 -04:00
Alex Neundorf 77a5c6e0d8 Add documentation for AUTOMOC, add initialization via CMAKE_AUTOMOC
Alex
2011-08-16 22:05:33 +02:00
KWSys Robot 2bfd55a7c6 KWSys Nightly Date Stamp 2011-08-16 00:14:06 -04:00
Alex Neundorf d045fd4ec5 Nicer progress message for the automoc target
Alex
2011-08-16 02:00:36 +02:00
Alex Neundorf 50cd6cef92 Move automoc processing from add_executable/library to cmGlobalGenerator
Now automoc is enabled by setting the AUTOMOC target property to true,
instead of using the AUTOMOC keyword in add_executable() or add_library()

Alex
2011-08-16 01:45:05 +02:00
Alex Neundorf cbaac2a587 Remove trailing whitespace
Alex
2011-08-16 01:44:13 +02:00
Alex Neundorf c27607baf8 Refactor SetupAutomocTarget() so it can be run after creating the target
This makes it easier to move it from InitialPass() to some other
location, e.g. FinalPass() or something else.

Alex
2011-08-16 01:27:30 +02:00
Alex Neundorf 24d9b7d745 Remove trailing whitespace
Alex
2011-08-16 01:26:02 +02:00
Alex Neundorf ec6982dc8c Disable any STATUS output in --find-package mode
Any STATUS output will be fed directly to the compiler, which
will not understand any status messages. Error messages
are fine, since they are errors and it is ok if the compiler
fails in such cases.

Alex
2011-08-16 00:40:59 +02:00
KWSys Robot 87fa807fd8 KWSys Nightly Date Stamp 2011-08-15 00:13:05 -04:00
Alex Neundorf 58b7fe6545 Use cout instead of printf()
Alex
2011-08-14 17:17:01 +02:00
Alex Neundorf 72caf4d178 Add the generated automoc.cpp file to the cleaned files
Alex
2011-08-14 17:06:34 +02:00
Alex Neundorf ddb517d014 Color output when running moc
Alex
2011-08-14 16:43:04 +02:00
Alex Neundorf 93032953af Initialize verbose based onb the env.var.
Alex
2011-08-14 15:58:09 +02:00
Alex Neundorf ace121534d Move code for parsing a cpp-file from the big loop to separate function
Alex
2011-08-14 15:58:09 +02:00
Alex Neundorf 735a5bb321 Fix line lengths
Alex
2011-08-14 15:58:09 +02:00
Alex Neundorf 83b730cd1a Add AUTOMOC to the add_library() command
Alex
2011-08-14 15:58:08 +02:00
Alex Neundorf 126c6ead77 Add the cmake module required currently for automoc
Alex
2011-08-14 15:58:00 +02:00
Alex Neundorf de91feb367 Remove the need to check for .h/.cxx during buildtime
Instead it now relies on cmake time to put that information
correctly into AutomocInfo.cmake

Alex
2011-08-14 15:53:50 +02:00
Alex Neundorf d65689a3bd Add actual automoc code from automoc
It already works :-)
Needs more refactoring, e.g. using the cmake facilities to turn a string
into a vector etc.
Also still missing is the part which creates the custom target.

Alex
2011-08-14 15:53:38 +02:00
Alex Neundorf d1c0a5fce6 Start implementing skeleton for automoc in cmake
Alex
2011-08-14 15:45:13 +02:00
KWSys Robot 0ee93a81cd KWSys Nightly Date Stamp 2011-08-14 00:12:36 -04:00
KWSys Robot 27c8b8b455 KWSys Nightly Date Stamp 2011-08-13 00:13:07 -04:00
David Cole ac22e2a879 VS9: Add include_directories to midl command lines
Makes VS 7, 8 and 9 generators consistent with the VS 10
generator. Adds the "AdditionalIncludeDirectories" attribute
at the vcproj level so that all idl files inherit the /I
command line args.
2011-08-12 17:12:08 -04:00
KWSys Robot 65ba6da576 KWSys Nightly Date Stamp 2011-08-12 00:14:04 -04:00
Alex Neundorf d3ae0fff7d Improve documentation for --find-package mode
Alex
2011-08-11 22:43:45 +02:00
KWSys Robot 975ef3ef1a KWSys Nightly Date Stamp 2011-08-11 00:14:04 -04:00
KWSys Robot 563e3f0e0a KWSys Nightly Date Stamp 2011-08-10 00:14:02 -04:00
Brad King c04613a55d KWSys: __int64 and long long may be same type in specialization
For the specialization of hash<>(), the types long long and __int64
may be the same type. While the CMakeLists indicate that if __int64 is
a alias for another type the it will not be enabled, on mingw they
both appear to be the same type and enabled.

This patch only enable specialization for long long OR __int64 to
avoid the potential conflict.

Author: Bradley Lowekamp <blowekamp@mail.nih.gov>
Change-Id: I813a9ac008b296fab5a369c48e6dd5460fd0c035
2011-08-09 18:04:04 -04:00
Alex Neundorf 7690edffd9 Replace cmake::GetScriptMode() with GetWorkingMode()
GetWorkingMode() returns a new enum WorkingMode, which is one of
NORMAL_MODE, SCRIPT_MODE and FIND_PACKAGE_MODE.

Alex
2011-08-09 16:32:45 +02:00
KWSys Robot 4675f5d204 KWSys Nightly Date Stamp 2011-08-09 00:13:06 -04:00
Brad King 867c3dcd24 KWSys: Fix using long long and __int64 with hash_(set|map)
Added hash function for types long long and __int64, conditional on
detection by FundamentalType.

Author: Bradley Lowekamp <blowekamp@mail.nih.gov>
Change-Id: Ie273f55cd4387ca3dbbe00b9d96ad4935e456c9e
2011-08-08 08:50:07 -04:00
KWSys Robot 0e28009184 KWSys Nightly Date Stamp 2011-08-08 00:13:08 -04:00
Alex Neundorf a65011baf1 Start work on automoc: add empty cmQtAutomoc class
Alex
2011-08-07 12:02:46 +02:00
KWSys Robot 2c14a176bb KWSys Nightly Date Stamp 2011-08-07 00:14:22 -04:00
KWSys Robot 955d5133ab KWSys Nightly Date Stamp 2011-08-06 00:14:05 -04:00
KWSys Robot ec4e4ce695 KWSys Nightly Date Stamp 2011-08-05 00:13:08 -04:00
David Cole edcdfeae93 Documentation: Fix comments in the source code (#10941)
Previously, the comments had all been copied and pasted
and not fixed up... Now they are fixed up.
2011-08-04 19:03:24 -04:00
Johan Björk 312d68d5b1 Xcode: Rearrange CMakeReRun to enable parallel builds
by isolating the CMakeReRun steps to a ZERO_CHECK target, as
in the Visual Studio generators. Also, honor the value of
CMAKE_SUPPRESS_REGENERATION.
2011-08-04 16:31:45 -04:00
Brad King 8ee9bbbd0c Do not crash when an imported target depends on a missing target
Commit e01cce28 (Allow add_dependencies() on imported targets,
2010-11-19) forgot to check if the dependee exists before using it.
2011-08-04 15:36:32 -04:00
Johan Björk d87eb350f6 Xcode: Quote ',' in Xcode string values (#12259) 2011-08-04 13:03:44 -04:00
Brad King 5f0eba49f2 KWSys: Avoid conversion warning in SystemTools::GetTime
Convert struct timeval members to double explicitly to avoid a GCC
warning with -Wconversion.
2011-08-04 08:30:05 -04:00
KWSys Robot f31def8c62 KWSys Nightly Date Stamp 2011-08-04 00:10:14 -04:00
Bill Hoffman 3c53fbb1f0 Fix custom commands in VS2010 Fortran projects using CFG_INTDIR and test.
For custom commands in VS2010 Fortran projects the INTDIR variable
is different than in the rest of the solution because Intel
fortran still uses the old VS project files even in VS2010. So,
we replace $(Configuration) directly in the project files. I have also
added a FortranOnly test that tests this feature and is run on any
generator that has Fortran abilities.
2011-08-03 17:24:43 -04:00
Brad King 74e1156bc2 KWSys: Simplify SystemTools::GetTime implementation (#12261)
We already use GetSystemTimeAsFileTime() and gettimeofday()
unconditionally on supported Windows and non-Windows platforms,
respectively.  Remove outdated portability complexity.
2011-08-03 14:50:04 -04:00
David Cole 4575ed9e2a Fix line too long style violation 2011-08-03 11:37:59 -04:00
David Cole ba4886b717 CTest: print failed tests in index order (#11746)
This deterministic ordering makes it easier for a developer
comparing the ctest output of two test runs to see what changed
from run to run.

Thanks to Fraser Hutchison for the patch.
2011-08-03 10:48:43 -04:00
KWSys Robot 14e54c4c44 KWSys Nightly Date Stamp 2011-08-03 00:14:04 -04:00
David Cole 80ef23d83f Merge topic 'CodeBlocksIncludeDirsAndDefines'
e2e8c0a Also put builtin include dirs into CodeBlocks project file
92c0dc5 Remove useless line of code
a5683f8 Patch by Campbell Barton: puts definitions into C::B project file
2011-08-02 15:11:58 -04:00
David Cole 11ca173731 Merge topic 'doc-WIN32-cygwin'
1f641de Documentation: WIN32 not defined on Cygwin (#12334)
2011-08-02 15:11:20 -04:00
David Cole e9a6d86d91 Merge topic 'ExcludeCMakesFilesFromCodeBlocksProject'
f32f6f0 Don't put files from CMAKE_ROOT into CodeBlocks projects (#12110)
2011-08-02 15:11:01 -04:00
David Cole ab24bdeecc Merge topic 'cpack-nsis-multi-installs'
e6d2bcf CPack/NSIS: Fix reinstall and multiple install issues when using components.
2011-08-02 15:10:47 -04:00
David Cole abc8586716 Merge topic 'fix-12299-add-vs10-scc-support'
05ddfbf VS10: Add SCC support
2011-08-02 15:10:31 -04:00
David Cole 86bae62bd1 Merge topic 'fix-8707-add-vs-globals'
df95772 Add support for Visual Studio project-specific globals (#8707)
2011-08-02 15:10:09 -04:00
David Cole 2444d6f55e Merge topic 'split-stdout-stderr'
a343bc1 RunSingleCommand: Avoid assignment in condition
642f100 RunSingleCommand: Add a OUTPUT_NORMAL flag.
856a9e4 RunSingleCommand: Replace verbose boolean with enum
4096066 RunSingleCommand: Fix indentation
2011-08-02 15:09:57 -04:00
David Cole 39faba7e30 Merge topic 'cmSystemTools-whitespace'
acd2f84 cmSystemTools: Remove trailing whitespace
2011-08-02 15:09:53 -04:00
David Cole c6051b7abd Merge topic 'library-multiarch-issue-12326'
317d077 multiarch: Treat lib/<arch> as implicit link dir (#12326)
2011-08-02 15:09:45 -04:00
David Cole 2c7b38afa6 Merge topic 'FeatureSummaryImprovements'
b62349c FeatureSummary.cmake: update documentation
f366cf8 FeatureSummary.cmake: cosmetics
f407bb5 FeatureSummary.cmake: only higher TYPEs can override previous TYPEs
02d47ab FeatureSummary.cmake: error out when a REQUIRED package is missing
91a1527 FeatureSummary.cmake: add INCLUDE_QUIET_PACKAGES keyword
0671a02 FeatureSummary.cmake: remove "comment" field
aae13f4 Extend FeatureSummary: add PURPOSE of package and TYPE
2011-08-02 15:09:41 -04:00
KWSys Robot d8c1b44790 KWSys Nightly Date Stamp 2011-08-02 00:13:05 -04:00
Alex Neundorf e2e8c0a412 Also put builtin include dirs into CodeBlocks project file
Refactor code from CMakeFindEclipseCDT4.cmake so it can be used
alkso for CodeBlocks, and move it into new file
CMakeExtraGeneratorDetermineCompilerMacrosAndIncludeDirs.cmake.

Alex
2011-08-02 01:46:39 +02:00
Alex Neundorf 92c0dc50fc Remove useless line of code
Alex
2011-08-02 01:05:24 +02:00
Alex Neundorf d216a67e4a Provide macro write_basic_config_version_file()
This macro can be used to generate basic version files which can be
installed along a Config.cmake file to provide versioning support.

This (3rd try) is implemented using a macro, which maps
the COMPATIBILITY mode to a filename and configure_file()s the
resulting file.

Alex
2011-08-01 22:59:18 +02:00
KWSys Robot cbaf944568 KWSys Nightly Date Stamp 2011-08-01 00:13:34 -04:00
KWSys Robot 4d9874440a KWSys Nightly Date Stamp 2011-07-31 00:14:04 -04:00
KWSys Robot 55022455d0 KWSys Nightly Date Stamp 2011-07-30 00:14:02 -04:00
Brad King 1f641de4b8 Documentation: WIN32 not defined on Cygwin (#12334)
Since commit 85c0a69a (Cygwin: Do not define 'WIN32', 2010-12-17) WIN32
is not defined on Cygwin.  Update documentation of the WIN32 variable
accordingly.
2011-07-29 18:40:56 -04:00
Alex Neundorf a5683f80bd Patch by Campbell Barton: puts definitions into C::B project file
This enables Codeblocks and QtCreator to do proper highlighting based
on defined macros.

Alex
2011-07-29 23:51:31 +02:00
Alex Neundorf f32f6f0652 Don't put files from CMAKE_ROOT into CodeBlocks projects (#12110)
This causes that all files in C::B are displayed in a tree starting at /

Alex
2011-07-29 23:24:21 +02:00
Clinton Stimpson e6d2bcfde2 CPack/NSIS: Fix reinstall and multiple install issues when using components.
Fix NSIS template to more thoroughly use CPACK_PACKAGE_INSTALL_REGISTRY_KEY.
This allows different versions of software to have a separate sections in the
registry to keep track of things (installed components, and uninstall stuff).

Change default of CPACK_PACKAGE_INSTALL_REGISTRY_KEY to follow the value of
CPACK_PACKAGE_INSTALL_DIRECTORY so if an installation overwrites another installation,
the proper registry entries are more likely to be overwritten.

Fix CPack/NSIS generator to not insert code in the NSIS template to skip installation
of already installed components.  This enables a repair like behavior and also enables
installing patch releases on top of an older installation.
2011-07-29 12:23:22 -06:00
Steven Velez 05ddfbfe95 VS10: Add SCC support
Honor the properties that were added for earlier versions
of visual studio.
2011-07-29 14:06:28 -04:00
David Cole 37d8602cde Merge topic 'intel_fortran_vs2010' into fix-8707-add-vs-globals
Conflicts:
	Source/cmLocalVisualStudio7Generator.h
2011-07-29 10:22:33 -04:00
David Cole df9577259c Add support for Visual Studio project-specific globals (#8707)
Thanks to Pau Garcia i Quiles for the inspiration for the patch.
I've tweaked it a bit compared to what's in the bug tracker: this
commit does not allow empty global variable names.

I also added usage of the new feature to an existing test. Although
it has no effect on the resulting Visual Studio projects, you can
verify that the VSResource test produces a non-empty globals section
in the generated .vcproj(x) files.
2011-07-29 10:04:36 -04:00
KWSys Robot 5ef20b2dc5 KWSys Nightly Date Stamp 2011-07-29 00:14:03 -04:00
Brad King a343bc1c76 RunSingleCommand: Avoid assignment in condition
Several compilers warn about this case even when an extra layer of
parenthesis surrounds the assignment.  Make the condition explicit.
2011-07-28 10:43:11 -04:00
Johan Björk 642f10066a RunSingleCommand: Add a OUTPUT_NORMAL flag.
OUTPUT_NORMAL does no processing of the output streams, it just passes
them through the same streams as they were received on.
2011-07-28 10:43:09 -04:00
Johan Björk 856a9e499f RunSingleCommand: Replace verbose boolean with enum
No behaviour change, this prepares for adding a flag to skip the merging
of output streams.
2011-07-28 10:42:03 -04:00
Brad King 4096066723 RunSingleCommand: Fix indentation 2011-07-28 10:28:52 -04:00
Brad King acd2f84cc0 cmSystemTools: Remove trailing whitespace 2011-07-28 10:23:13 -04:00
KWSys Robot b6fb213ed1 KWSys Nightly Date Stamp 2011-07-28 00:12:21 -04:00
Modestas Vainius 317d077f6e multiarch: Treat lib/<arch> as implicit link dir (#12326)
Add multiarch library directories to the set of implicit link
directories.  In particular, this keeps lib/<arch> out of R(UN)PATH.
2011-07-27 09:13:58 -04:00
KWSys Robot 49a00ec2de KWSys Nightly Date Stamp 2011-07-27 00:14:05 -04:00