12315 Commits

Author SHA1 Message Date
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