Commit Graph

20140 Commits

Author SHA1 Message Date
Michael Wild c66f03adf9 cmDepends: No dependency-vector erasure in CheckDependencies
Some dependency-generators (such as cmDependsFortran) generate multiple
entries per depender, so erasing the dependency vector for each depender
found loses earlier dependencies.

Signed-off-by: Michael Wild <themiwi@users.sourceforge.net>
2012-11-06 11:54:39 -05:00
Alex Neundorf e74ff7c29f cmDepends: allow multiple dependees per depender
This patch is heavily inspired by Michael Wild.

The interfaces cmDepends::Write and cmDepends::WriteDependencies where
extended to allow multiple dependees (sources) per depender (object).
cmDepends::Write first collect all dependencies into a std::set before
passing it to cmDepends::WriteDependencies.

cmDependsC::WriteDependencies also first collects all explicit and
implicit dependencies into a std::set and only then writes
depend.{internal,make}. The implementation of cmDependsFortran simply
loops over all sources and proceeds as before, whereas the cmDependsJava
implementation is as trivial as before.

This is for preventing exponential growth of depend.{internal,make} in
the next commit which fixes dependency-vector erasure in
cmDepends::CheckDependencies.

Inspired-by: Michael Wild <themiwi@users.sourceforge.net>
2012-11-06 11:54:39 -05:00
Alex Neundorf ecc77d09b8 cmDependsC: fix indentation
This is intentionally a separate commit, so the parent commit which
changes the logic is small and not mixed with formatting (indentation)
changes.  So, this patch here does not change any logic.

Alex
2012-11-06 11:54:00 -05:00
Alex Neundorf 077de8b271 Eclipse: set source path once to fix Eclipse indexer (#13596)
Since CMake 2.8.7 no src-path entry was generated anymore, in response to

 http://www.cmake.org/Bug/view.php?id=12213

Before that a src-path entry was added for each linked resource.
Now only one src-path entry is added, for the ${CMAKE_SOURCE_DIR}.
According to

 http://www.cmake.org/Bug/view.php?id=13596

this makes the indexer behave better.

Alex
2012-11-06 11:51:11 -05:00
Clinton Stimpson e7e2694823 CPack: Fix RPM/Deb package names to not include "ALL_COMPONENTS_IN_ONE" 2012-11-06 11:50:07 -05:00
Brad King 902ab6b565 CMake 2.8.10.1 2012-11-06 11:24:28 -05:00
Brad King f058b27547 Merge branch 'osx-sysroot-cleanup' into release 2012-11-06 11:21:55 -05:00
Brad King 511f227e13 Merge branch 'fix-FindSDL-paths' into release 2012-11-06 11:21:49 -05:00
Brad King 20c5104713 Merge branch 'fix-genex-CONFIG' into release 2012-11-06 11:21:39 -05:00
Brad King 731ca02ecb Merge branch 'copyright-year' into release 2012-11-06 11:21:33 -05:00
Brad King 7998ede985 Merge branch 'fix-PathScale-compiler-id' into release 2012-11-06 11:21:25 -05:00
Brad King d6ab875260 Merge branch 'fix-openssl-win' into release 2012-11-06 11:21:17 -05:00
Brad King 719438fc27 Merge branch 'pdb-default-outdir' into release 2012-11-06 11:20:50 -05:00
Brad King 68579cd6d9 Merge branch 'upstream-kwsys' into import-KWSys-subtree 2012-11-06 09:28:58 -05:00
KWSys Robot cd83da97a7 KWSys 2012-11-05 (df32fa6f)
Extract upstream KWSys using the following shell commands.

$ git archive --prefix=upstream-kwsys/ df32fa6f | tar x
$ git shortlog --no-merges --abbrev=8 --format='%h %s' b7a97ac3..df32fa6f
Brad King (4):
      b90f28e3 SystemInformation: Use kwsys_ios:: for string streams
      b7c42507 SystemInformation: No backtrace on LSB < 4.1
      2c46f562 SystemInformation: Fix sw_vers output processing
      df32fa6f SystemInformation: Compute FQDN only on specific platforms

Change-Id: I0a8f2d7c56a6dbde70e1dfbc1e25712b2f9b0e48
2012-11-06 09:28:52 -05:00
Kitware Robot b750bf86c4 CMake Nightly Date Stamp 2012-11-06 00:01:04 -05:00
Alex Neundorf 3a0ffa6225 Squish: add support for squish 4 (#9734)
This patch adds support for Squish 4.x.
The changes are basically what is attached to
http://public.kitware.com/Bug/view.php?id=9734.
When adding a test for squish 4.x, use squish_v4_add_test().

Alex
2012-11-05 19:20:13 +01:00
Alex Neundorf 2ae9d03fa6 Squish: use ${CMAKE_CURRENT_LIST_DIR}
Use ${CMAKE_CURRENT_LIST_DIR} instead of constructing the dir from pieces.

Alex
2012-11-05 19:17:24 +01:00
Alex Neundorf 53c42cb4ea Squish: rename squish_add_test() to squish_v3_add_test() and fix docs a bit
There is still a wrapper macro squish_add_test(), but this now
mentions that you should use squish_v3_add_test() instead.
Also, the docs for the macro were just wrong. They are at least
correct now, but still hard to understand (I don't have squish 3 around,
so I can't improve them).

Alex
2012-11-05 19:17:20 +01:00
Brad King 35171061f9 CTestCustom: Suppress LNK4089 warning about PSAPI
Add a warning suppression regex to match:

 LINK : warning LNK4089: all references to 'PSAPI.DLL' discarded by /OPT:REF
2012-11-05 11:42:27 -05:00
Brad King 15f5764e2c OS X: Fix default CMAKE_OSX_SYSROOT with deployment target
Since commit 43b74793 (OS X: Further improve default CMAKE_OSX_SYSROOT
selection, 2012-09-21) we choose a default CMAKE_OSX_SYSROOT only when
one is needed.  However, the change forgot that we require a sysroot
when a deployment target is requested.  Teach Darwin.cmake to choose a
default CMAKE_OSX_SYSROOT when CMAKE_OSX_DEPLOYMENT_TARGET is set.

Reported-by: Matthew Brett <matthew.brett@gmail.com>
Reported-by: Bradley Giesbrecht <pixilla@macports.org>
2012-11-05 10:47:33 -05:00
Brad King 7cb5173969 FindSDL: Restore accidentally dropped search paths (#13651)
Cleanup in commit 9ed24c53 (FindSDL: Remove from find_... calls PATHS
that are set by default, 2012-09-04) accidentally dropped some search
paths.  Restore the dropped PATH_SUFFIXES and add more suffixes needed
to search paths that were previously hard-coded.

Reported-by: Gino van den Bergen <gino@dtecta.com>
2012-11-05 09:47:09 -05:00
Stephen Kelly 9be64f34c2 GenEx: Use case insensitive comparison for $<CONFIG:...>
This fixes a regression introduced by commit f1eacf0e
(cmGeneratorExpression: Re-write for multi-stage evaluation).
2012-11-05 08:49:25 -05:00
Brad King a4ae88bdb2 Update programmatically-reported copyright year (#13638)
Update the copyright year reported by 'bootstrap' and in the generated
documentation to report 2012.
2012-11-05 08:44:03 -05:00
Brad King fccf19f49b Fix PathScale compiler id for Clang-based upstream
Upstream PathScale now uses Clang as its front-end.  Test for __PATHCC__
before __clang__.

Reported-by: C. Bergström <cbergstrom@pathscale.com>
2012-11-05 08:33:54 -05:00
Rolf Eike Beer 4a4c0ee780 FindOpenSSL: also find the non-MD debug libraries for MSVC
We already search for them in release mode.
2012-11-05 08:17:02 -05:00
Rolf Eike Beer 894b775fa7 FindOpenSSL: fix library selection on Windows (#13645) 2012-11-05 08:17:02 -05:00
Kitware Robot 7c724031a7 CMake Nightly Date Stamp 2012-11-05 00:01:08 -05:00
Alex Neundorf daf1c4d5a7 Squish: find executables also under Windows
This is required according to Volker Krause
(see http://public.kitware.com/Bug/view.php?id=9734)

Alex
2012-11-04 19:25:43 +01:00
Alex Neundorf b878cd6fb4 Squish: use FPHSA
Alex
2012-11-04 19:22:27 +01:00
Alex Neundorf 3fe2bc622e Squish: detect version
Alex
2012-11-04 19:19:40 +01:00
Alex Neundorf 65e9bbe78e Add support for Texas Instruments DSP compiler (#12405)
This is for the cl6x compiler from TI, which is used for TI DSPs.
The toolchain can be downloaded for free for Linux and Windows.

Alex
2012-11-04 15:46:57 +01:00
Rolf Eike Beer 8ebf74b02f Find* (and some other): use ${CMAKE_CURRENT_LIST_DIR} in include()
This solves a lots of warnings, e.g. in the FindModulesExecuteAll test. If the
installed version on the system is rather old this may even lead to bugs, e.g.
https://bugs.gentoo.org/show_bug.cgi?id=436540
2012-11-04 05:55:37 +01:00
Kitware Robot 314e7fb6e9 CMake Nightly Date Stamp 2012-11-04 00:01:06 -04:00
Matt McCormick 378aa127b4 ExternalProject: Do smoke tests for Git Tutorial builds. 2012-11-03 17:18:14 -04:00
Matt McCormick d0758290e7 ExternalProject: Only run 'git fetch' when required.
In the current default update step for Git under the ExternalProject_Add
command, a 'git fetch' is always performed, followed by a 'git checkout' and
'git submodule update --recursive'.  However, a 'git fetch' can be time
consuming and requires a network connection.

To save time, we look at the current checked out hash, and only perform the
fetch if required.  This is performed in a CMake script so we can handle
the conditional logic in a cross platform manner.
2012-11-03 17:18:14 -04:00
Alex Neundorf 3e7d97d45d cmDependsC: remove code duplication
This patch reduces a bit code duplication by changing the way how the
case that we already have valid dependencies for a file is handled.
Instead of having the code for writing the depend-files twice,
we now fill the existing dependencies into the same set and then
write it out once at the end of cmDependsC::WriteDependencies()

Alex

Inspired-by: Michael Wild <themiwi@users.sourceforge.net>
2012-11-03 18:45:34 +01:00
Kitware Robot d39bd3e6a8 CMake Nightly Date Stamp 2012-11-03 00:01:03 -04:00
Brad King f309366873 Fix default PDB output directory (#13644)
The ComputePDBOutputDir added by commit 3f60dbf1 (Add
PDB_OUTPUT_DIRECTORY and PDB_NAME target properties, 2012-09-25) falls
back to the current binary directory instead of the target output
directory as before.  When no PDB_OUTPUT_DIRECTORY property is set we
instead should fall back to the target output directory where .pdb files
used to go before the new property was added.
2012-11-02 12:49:44 -04:00
Petr Kmoch 828d4f514d Add several get_property() tests
Add tests for some get_property() uses not covered by existing tests.
2012-11-02 17:10:07 +01:00
Rolf Eike Beer 82106e3783 GetProperty test: move doc property tests into main process
They will not raise an error in the normal case so we do not need to run them
in their own process.
2012-11-02 17:10:07 +01:00
Rolf Eike Beer 56125a3f36 list: add tests for CMP0007 behavior 2012-11-02 17:10:07 +01:00
Amine Chadly 48ed48f7ad Add test to secure the file(GLOB empty) behavior. 2012-11-02 17:10:06 +01:00
Amine Chadly c2a6cb64af file: remove dead code
The file command requires at least two arguments, so guarding the GLOB and
MAKE_DIRECTORY command is not necessary. Changed it for an assert to keep the
protection.
2012-11-02 17:10:06 +01:00
Petr Kmoch 07251a8ea5 Consolidate list() argument count testing
Move test for list() argument count >= 2 to InitialPass().
2012-11-02 17:09:55 +01:00
Petr Kmoch 1b078c304d Add tests for list() invalid arguments
Add tests for error reporting when list() arguments are invalid.
2012-11-02 17:08:49 +01:00
Petr Kmoch f560977540 Add tests for list() argument count
Add test for error reporting when list() subcommands have wrong number of
arguments.
2012-11-02 17:08:44 +01:00
Rolf Eike Beer d211e5d203 CMakeTests: allow to call the check_cmake_test macro with a given file
This allows to generate a lot of simple files directly in the test tree instead
of having them all checked in.
2012-11-02 12:50:05 +01:00
Kitware Robot 1295247cad CMake Nightly Date Stamp 2012-11-02 00:01:06 -04:00
Brad King 5c63fa3d25 Merge branch 'ctest-SUBMIT_INDEX-cdash' into import-KWSys-subtree 2012-11-01 17:04:57 -04:00