13416 Commits

Author SHA1 Message Date
Brad King
c118fd4c55 Find locally installed software first
This commit re-orders the search path prefix list from

  /
  /usr
  /usr/local

to

  /usr/local
  /
  /usr

so that locally-installed software is preferred.

This makes the search consistent with the Filesystem Hierarchy Standard:

  http://www.pathname.com/fhs/

See issue #9657.
2009-10-05 11:09:15 -04:00
Brad King
82c8b48c2a Add '#!/bin/sh' to cygwin-package.sh
This commit adds '#!/bin/sh' to the top of the cygwin-package.sh.in
script.  All executable interpreted scripts should have this directive.

Patch from Modestas Vainius.  See issue #9659.
2009-10-05 10:28:57 -04:00
Brad King
3b7e46b27f Fix permsissions of installed SquishRunTestCase.sh
This commit fixes permissions of Modules/SquishRunTestCase.sh after
installation.  Previously install() removed executable permissions.

Patch from Modestas Vainius.  See issue #9659.
2009-10-05 10:28:37 -04:00
Brad King
282b4e3776 Fix module docs to be manpage (groff) friendly
Most problems are fixed (or rather worked-around) by making long '====='
separators pre-formatted (i.e. prefixed with two spaces).  In order to
preserve visual view, the code examples themselves are prefixed with 3
spaces.

This commit fixes the following man warnings:

$ cmake --help-man - | LANG=C MANWIDTH=80 man --warnings -l - > /dev/null
  <standard input>:6024: warning [p 105, 1.7i]: can't break line
  <standard input>:6027: warning [p 105, 2.7i]: cannot adjust line
  <standard input>:6027: warning [p 105, 2.8i]: can't break line
  <standard input>:7142: warning [p 117, 7.8i]: can't break line
  <standard input>:7171: warning [p 117, 11.8i]: can't break line
  <standard input>:8878: warning [p 136, 9.0i]: can't break line
  <standard input>:8887: warning [p 136, 11.5i]: cannot adjust line
  <standard input>:8887: warning [p 136, 11.7i]: can't break line
  <standard input>:8904: warning [p 136, 14.2i]: can't break line

Patch from Modestas Vainius.  See issue #9659.
2009-10-05 10:28:05 -04:00
Brad King
451d68b7e3 Support GNU/kFreeBSD
GNU/kFreeBSD = FreeBSD kernel + userspace with glibc.  Linux.cmake
doesn't contain anything too OS specific, so we can forward to it.

Here are outputs of /bin/uname on author's machine:
  uname -p ==> i386
  uname -o ==> GNU/kFreeBSD
  uname -s ==> GNU/kFreeBSD
  uname -r ==> 5.4-1-686

Patch from Modestas Vainius.  See issue #9659.
2009-10-05 10:26:50 -04:00
Brad King
4e1d610224 Remove old Encoding field from CMake.desktop
The Encoding key is now deprecated by the FreeDesktop standard and all
strings are required to be encoded in UTF-8.  This desktop entry
explicitly specified an Encoding of UTF-8, which is harmless but no
longer necessary.  See

  http://standards.freedesktop.org/desktop-entry-spec/1.0/apc.html

for details.  Patch from Modestas Vainius.  See issue #9659.
2009-10-05 10:26:08 -04:00
Brad King
a0e63cff1d FindQt3: Prefer (moc|uic)-qt3 names over (moc|uic)
On Debian moc and uic from Qt3 have '-qt3' suffixes.  The latter names
might come from Qt4, so prefer the version-specific names.

Patch from Modestas Vainius.  See issue #9659.
2009-10-05 10:25:36 -04:00
Zach Mullen
b304186bc5 Match width of ctest "Start xx: " line to line up with the end test line 2009-10-05 10:20:52 -04:00
Brad King
940733997a Remove old license from FindPkgConfig.cmake module
This module was contributed under a BSD-like license.  We added CMake's
OSI-approved BSD License on top of it.  With the author's permission,
this commit removes the old license text and puts the author's copyright
notice in the block referring to the new license.
2009-10-05 09:13:29 -04:00
Brad King
750eb105c2 Test target link information invalidation
We test this by adding export(TARGETS) to the LinkLanguage test to
export the executable before the library is linked to it.  Since
export(TARGETS) computes the link interface of the target (so that it
can export it), this ensures that the information is recomputed after
the link library is added.
2009-10-05 09:07:09 -04:00
Brad King
0fb5b2c88c Invalidate target link info when necessary
In cmTarget we compute the link implementation, link interface, and link
closure structures on-demand and cache the results.  This commit teaches
cmTarget to invalidate results after a LINK_INTERFACE_* property changes
or a new link library is added.  We also clear the results at the end of
the Configure step to ensure the Generate step uses up-to-date results.
2009-10-05 09:06:59 -04:00
Brad King
daa2f3aa41 Combine duplicate code in target property methods
In cmTarget::SetProperty and cmTarget::AppendProperty we check whether
changing the property invalidates cached information.  The check was
duplicated in the two methods, so this commit moves the check into a
helper method called from both.
2009-10-05 09:06:44 -04:00
Brad King
78f0811628 Create explicit cmTarget::FinishConfigure step
This method is called during ConfigureFinalPass on every target.  It
gives each target a chance to do some final processing after it is known
that no more commands will affect it.  Currently we just call the old
AnalyzeLibDependencies that used to be called directly.
2009-10-05 09:06:29 -04:00
Brad King
847875bebd Remove unused cmTarget::AddLinkLibrary method 2009-10-05 09:05:57 -04:00
KWSys Robot
b783fbd04c KWSys Nightly Date Stamp 2009-10-05 00:01:03 -04:00
Bill Hoffman
1bc355b711 Use new style header generation and get rid of OBJECT_DEPENDS in tutorial 2009-10-04 22:55:02 -04:00
David Cole
b272c61945 Fix issue #8649 - move the location of CPACK_NSIS_EXTRA_INSTALL_COMMANDS so that it is not excluded from execution when 'Do not create shortcuts' is checked. 2009-10-04 14:19:43 -04:00
Alexander Neundorf
b3040beb41 fix two more warnings from icpc
asfGlob and abfGlob were there since rev 1.3 of this file (Oct 17th 2004) and unused since
then, so remove them

Alex
2009-10-04 11:40:02 -04:00
Alexander Neundorf
e364dc784f some syncing with the FindQt4.cmake from KDE
-remove the parentheses in the if() conditions, they don't change the
result, and without them these lines are identical to the ones in
FindQt4.cmake from KDE
-mention which qmake was used for finding Qt

Alex
2009-10-04 11:31:30 -04:00
Bill Hoffman
a9fa71a47c Try to avoid cronic random failures on some Macs. 2009-10-04 09:54:55 -04:00
Bill Hoffman
78f68ef1b7 Try to avoid cronic random failures on some Macs. 2009-10-04 09:32:48 -04:00
KWSys Robot
eddfb095f9 KWSys Nightly Date Stamp 2009-10-04 00:01:06 -04:00
Alexander Neundorf
3563e6f44e -add the additional features for the dbus macros from KDE's FindQt4.cmake
Alex
2009-10-03 12:04:15 -04:00
David Cole
517e1e3c0f Add a few more cases to the new StringTest for even better coverage. Re-factor the scripts to make it easier to add new cases to this test. Re-factoring also enables the test driver in ExecuteScriptTests to be re-used when adding new tests in the future. 2009-10-03 12:01:10 -04:00
Alexander Neundorf
eb91859d6f remove unused variables, reported by icpc
Alex
2009-10-03 08:35:57 -04:00
KWSys Robot
b1686031e4 KWSys Nightly Date Stamp 2009-10-03 00:01:03 -04:00
David Cole
ccb0cf1306 Fix warnings in CMake source code. 2009-10-02 15:30:01 -04:00
David Cole
837364cb04 Correct some typos in error messages in the string command. Add a test that covers more of the code implemented in cmStringCommand.cxx, especially the error handlers. 2009-10-02 14:51:43 -04:00
Brad King
3d3efbd3f5 Clarify documentation and message for CMP0012
This commit re-words the warning message produced for CMP0012 to avoid
the word 'you' since often the person reading the message is not the
author of the code.  We also add an example of the bad OLD behavior to
the policy documentation.
2009-10-02 14:36:47 -04:00
Brad King
5837f4a613 Fix documentation of CMP0012 and CMP0013 versions
These policies were originally developed during the 2.7.x series and
intended for 2.6.5.  There was never a 2.6.5 release, so we should refer
to 2.8.0 instead.
2009-10-02 14:04:57 -04:00
Brad King
b4ace1cca0 Test INTERPROCEDURAL_OPTIMIZATION build feature
This creates an "IPO" test that builds some other tests as subdirectories
while enabling INTERPROCEDURAL_OPTIMIZATION.  See issue #9615.
2009-10-02 13:52:29 -04:00
Brad King
c513962701 Create INTERPROCEDURAL_OPTIMIZATION build feature
This commit creates target and directory properties to enable the Intel
interprocedural optimization support on Linux.  Enabling it adds the
compiler option '-ipo' and uses 'xiar' to create archives.

See issue #9615.
2009-10-02 13:52:13 -04:00
Brad King
1e48243591 Introduce "build feature" lookup framework
This creates cmTarget::GetFeature and cmMakefile::GetFeature methods to
query "build feature" properties.  These methods handle local-to-global
scope and per-configuration property lookup.  Specific build features
will be defined later.
2009-10-02 13:52:01 -04:00
Brad King
57df2abca8 Centralize language flag addition for Makefiles
We create cmMakefileTargetGenerator::AddFeatureFlags to consolidate
addition of language flags.  Currently it just adds the flags from
generic per-language flag variables (AddLanguageFlags).
2009-10-02 13:51:49 -04:00
Brad King
d455eeb6d7 Fix typo in Intel xiar search code
This renames the variable '_intel_xair_hints' to '_intel_xiar_hints'.
2009-10-02 13:24:32 -04:00
Brad King
2117143103 Document CMAKE_CURRENT_LIST_FILE more precisely
There is confusion whether the file "currently being processed" inside a
function or macro is the file containing the definition or not.  This
commit explicitly describes the behavior.  See issue #9646.
2009-10-02 13:22:13 -04:00
Bill Hoffman
07c3597a86 Fix the documentation to say what it really does. Bug #9638 2009-10-02 08:44:51 -04:00
KWSys Robot
2e78b58d79 KWSys Nightly Date Stamp 2009-10-02 00:01:09 -04:00
Alexander Neundorf
61a1ec5f20 document how the minimum version can be specified
Alex
2009-10-01 16:48:19 -04:00
David Cole
44bcba7461 Fix warnings in CMake source code. Suppress rampant warnings emanating from Qt files. 2009-10-01 16:47:08 -04:00
Clinton Stimpson
86459a89a1 Add documentation for Cocoa flag and move Motif under X11 flag. 2009-10-01 16:41:00 -04:00
Clinton Stimpson
023162256d QtHelp depends on QtNetwork 2009-10-01 16:12:39 -04:00
Brad King
62edb7b943 Better CMake.ModulesNotice test regex
This commit updates the copyright notice regex to enforce a more strict
format for contributor copyrights.
2009-10-01 14:22:58 -04:00
Brad King
26efeadd22 New CMake.ModulesNotice test for copyright notices
This new test checks Modules/*.cmake for the required copyright notice.
2009-10-01 14:12:19 -04:00
Brad King
cc11846dbf Add missing copyright notice to CMake.cmake module 2009-10-01 14:05:33 -04:00
Brad King
1b9e61f214 Add alternative _UTILITY targets to all solutions
In VS 6, 7, and 7.1 solutions we implement

  add_dependencies(myexe mylib) # depend without linking

by creating an intermediate mylib_UTILITY target with dependencies

  myexe -> mylib_UTILITY -> mylib

to avoid linking myexe to mylib.  Previously these extra targets were
only added to the solution files in an ancestor directory of that
defining mylib.  For example, in the project:

  # CMakeLists.txt
  project(TOP)
  add_subdirectory(A)
  add_subdirectory(b)

  # A/CMakeLists.txt
  add_library(mylib ...)

  # B/CMakeLists.txt
  project(B)
  add_executable(myexe ...)
  add_dependencies(myexe mylib)

the solution for TOP would have mylib_UTILITY but the solution for B
would not even though it pulls in mylib through the dependency.  This
commit fixes solutions generated in other directories so that any
solution that has mylib will get mylib_UTILITY also.

See issue #9568.
2009-10-01 10:27:02 -04:00
Brad King
c8ddb6813b Cleanup cmGlobalGenerator::GetTargetSets method
This commit cleans up the declaration, definition, and invocations of
the GetTargetSets method and related code.  There is no change in
function except to make the method virtual.
2009-10-01 10:26:54 -04:00
Philip Lowman
e8cdd54f74 Some bugfixes, also added public function for closer integration btwn GoogleTest & CTest, contributed by Dan Blezek.
Other minor changes:
* Enhanced documentation & added examples
* _INCLUDE_DIRS and _LIBRARIES was being set regardless of _FOUND
* Fixed status message to include library rather than include dir
* Improved detection of MSVC compiled libraries
* Added a variable (GTEST_BOTH_LIBRARIES) for libgtest + libgtest_main
2009-10-01 01:12:40 -04:00
KWSys Robot
3810911f56 KWSys Nightly Date Stamp 2009-10-01 00:01:11 -04:00
David Cole
f95bc6b5ad Eliminate ExternalProject's use of CMAKE_CFG_INTDIR subdir for Makefile generators. It was causing problems with parallel make -j invocations. Keep it for multi-configuration build systems so that Debug and Release stamp files remain separate. 2009-09-30 16:22:36 -04:00