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
Teach KWIML_test to use part of the C++ runtime library. Otherwise the
linker complains:
warning LNK4089: all references to 'MSVCP71.dll' discarded by /OPT:REF
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
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
The PGI compiler appears to define "long long" as size 8 but does not
provide a feature macro for it. It does provide options for the
signedness of char (-Mschar, -Muchar) but does not define a feature
macro indicating the choice. The default is signed, at least on Linux.
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...
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.
The VS 7.0 header <yvals.h> included by most C++ system headers defines
the macro _LONGLONG as __int64. Teach ABI.h to ignore the definition in
this case because "long long" does not exist.
Some system headers may define macros that interfere with preprocessor
tests in KWIML headers. Test this case to be sure that the verification
checks at the bottom of the headers do not fail.
-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
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.