Commit Graph

3440 Commits

Author SHA1 Message Date
David Cole
65db5b4a99 Merge topic 'osx-dependent-libraries'
5d99343 Do not link private dependent shared libraries on OS X > 10.4
2011-12-16 10:15:07 -05:00
David Cole
e44cdb04f1 Merge topic 'hp-shared-libs'
5720e1f HP: Drive shared library linking with compiler front end
2011-12-16 10:14:56 -05:00
David Cole
c6c82f9e3e Merge topic 'fix-12480-correct-windres-compiler-when-cross-compiling'
6ddb1e5 Modules: Use "windres" as rc compiler base name for cross-compiles (#12480)
2011-12-16 10:14:42 -05:00
David Cole
ac9453c371 Merge topic 'fix-lapack-issues'
b3c42cb FindLAPACK: List thread libs to avoid link errors (#12625)
f603cf2 FindLAPACK: Correct CMAKE_FIND_LIBRARY_SUFFIXES spelling (#12624)
2011-12-16 10:14:17 -05:00
David Cole
c68a780dec Merge topic 'qt4-deploy-module'
4e9274e Unset configurations variable when no build type.
2011-12-16 10:13:59 -05:00
David Cole
e945df2a7e Merge topic 'CPackRPM-0012608-UserSpecificFileControl'
121c295 CPackRPM fix #0012608 and unoticed related bug
2011-12-16 10:13:33 -05:00
Brad King
5f6985ac86 Avoid clobbering variable 'OUTPUT' in compiler tests (#12628)
Use an obscure name and clean up afterwards.
2011-12-15 08:31:17 -05:00
Brad King
5d9934312d Do not link private dependent shared libraries on OS X > 10.4
The default OS X 10.4 linker incorrectly searches for dependencies of
linked shared libraries only under the -isysroot location.  It fails to
find dependencies of linked shared libraries in cases such as the
ExportImport test.  It produces errors like:

 /usr/libexec/gcc/i686-apple-darwin8/4.0.1/ld: warning can't open dynamic library:
 libtestLib3Imp.dylib
 referenced from: /.../ExportImport/Root/lib/libtestLib3lib.1.2.dylib
 (checking for undefined symbols may be affected) (No such file or directory, errno = 2)
 /usr/libexec/gcc/i686-apple-darwin8/4.0.1/ld: Undefined symbols: _testLib3Imp
 referenced from libtestLib3lib expected to be defined in
 libtestLib3Imp.dylib

or with CMAKE_SKIP_RPATH off to enable install_name in the Export side:

 /usr/libexec/gcc/i686-apple-darwin8/4.0.1/ld: warning can't open dynamic library:
 /Developer/SDKs/MacOSX10.4u.sdk/.../ExportImport/Export/impl/libtestLib3Imp.dylib
 referenced from: /.../ExportImport/Export/libtestLib3lib.1.2.dylib
 (checking for undefined symbols may be affected) (No such file or directory, errno = 2)
 /usr/libexec/gcc/i686-apple-darwin8/4.0.1/ld: Undefined symbols:_testLib3Imp
 referenced from libtestLib3lib expected to be defined in
 /.../ExportImport/Export/impl/libtestLib3Imp.dylib

Note how "/Developer/SDKs/MacOSX10.4u.sdk" is prepended to the dependent
library path.

Commit 2cff26fa (Support linking to shared libs with dependent libs,
2008-01-31) and commit 82fcaebe (Pass dependent library search path to
linker on some platforms, 2008-02-01) worked around the problem by
defining platform variable CMAKE_LINK_DEPENDENT_LIBRARY_FILES.  It tells
CMake to link to dependent libraries explicitly by their path thus
telling the linker where to find them.

Unfortunately the workaround had the side effect of linking dependent
libraries and defeats most benefits of LINK_INTERFACE_LIBRARIES.
Fortunately OS X 10.5 and above do not need to find transitive
dependencies at all so we can avoid the workaround on Modern OS X.
2011-12-15 08:14:30 -05:00
Alex Neundorf
43f83d2ee5 GNUInstallDirs: add support for Debian multiarch
This patch makes CMAKE_INSTALL_LIBDIR default to the debian
multiarch dir if present, e.g. lib/i386-linux-gnu/

Alex
2011-12-14 19:24:28 +01:00
Brad King
5720e1f634 HP: Drive shared library linking with compiler front end
Previously we linked C, Fortran, and ASM shared libraries compiled with
the HP compiler using a direct invocation of the linker (ld).  This
behavior was left historically from support for an ancient HP C compiler
that did not know how to create shared libraries.  Fortran shared
libraries need to be linked with the compiler to get the language
runtime library dependencies as is already done for C++.

Update the HP-UX-HP* platform information to use the compiler front end
when linking shared libraries.  This works on modern HP tools and
produces correct behavior.  If there is a need to support older tools
again we can add a special case for them.
2011-12-14 09:32:27 -05:00
David Cole
6ddb1e5b9a Modules: Use "windres" as rc compiler base name for cross-compiles (#12480)
...if it matches "windres", as opposed to being exactly equal to "windres"

Cross-compiling windres compilers are named something like
"i686-w64-mingw32-windres" (for example)
2011-12-13 19:57:00 -05:00
Tim Gallagher
b3c42cb012 FindLAPACK: List thread libs to avoid link errors (#12625) 2011-12-13 16:26:33 -05:00
Tim Gallagher
f603cf2d36 FindLAPACK: Correct CMAKE_FIND_LIBRARY_SUFFIXES spelling (#12624) 2011-12-13 16:23:54 -05:00
Alex Neundorf
96fc5d5d07 automoc: default to strict mode, use CMAKE_AUTOMOC_RELAXED_MODE
automoc now defaults to strict mode, also with Qt4, i.e. it behaves as
the documentation says by default. I also inverted the switch
CMAKE_AUTOMOC_STRICT_MODE to CMAKE_AUTOMOC_RELAXED_MODE.
Docs and test adapted accordingly.

Alex
2011-12-13 22:11:47 +01:00
Mike McQuaid
4e9274e954 Unset configurations variable when no build type. 2011-12-13 09:39:53 -07:00
Eric NOULARD
121c29553f CPackRPM fix #0012608 and unoticed related bug
The User may now specific a list of file that shouldn't be
automatically handled by CPack but specified by the user.
Like %config(noreplace) or specific %attr.
The concerned files/dir lines will be removed from the set
automatically handled by CPack.
2011-12-12 23:11:02 +01:00
Brad King
4cb73c43ac FortranCInterface: Work around mingw32-make trouble with parens
The mingw32-make tool does not handle parenthesis in the path to a
source file consistently.  When CMake is installed in a typical location
like "c:\Program Files (x86)\CMake 2.8\" the mingw32-make tool fails on
the FortranCInterface detection project sometimes with errors like

 >mingw32-make -f CMakeFiles\myfort.dir\build.make CMakeFiles/myfort.dir/my_module.f90.obj
 mingw32-make: *** No rule to make target `x86)/CMake 2.8/share/cmake-2.8/Modules/FortranCInterface/my_module.f90)',
 needed by `CMakeFiles/myfort.dir/my_module.f90.obj'.  Stop.

due to parens in the path to the FortranCInterface source directory.
However, the behavior varies with the file name of build.make:

 >copy CMakeFiles\myfort.dir\build.make CMakeFiles\myfort.dir\build2.make
 >mingw32-make -f CMakeFiles\myfort.dir\build2.make CMakeFiles/myfort.dir/my_module.f90.obj
 [  3%] Building Fortran object CMakeFiles/myfort.dir/my_module.f90.obj

Tested with

 >mingw32-make -v
 GNU Make 3.82
 Built for i386-pc-mingw32

Work around the problem by copying the whole FortranCInterface source
directory in to the project build tree.
2011-12-09 09:40:14 -05:00
Brad King
c213eb9cbf Windows-GNU: Remove extra quotes in GNUtoMS rule variable
CMake replaces the <TARGET...> tokens with properly quoted values so we
do not need an extra set of quotes around them.
2011-12-08 13:28:37 -05:00
David Cole
d050d6b58b Merge topic 'AutomocIncludedDotMocFileHandling'
2d11951 Merge branch 'master' into AutomocIncludedDotMocFileHandling
1eca18f automoc: add documentation for CMAKE_AUTOMOC_STRICT_MODE
bc278ce automoc: fix line length
62e223e automoc: add variable CMAKE_AUTOMOC_STRICT_MODE, to enable strict parsing
40c5167 automoc: accept even more .moc files in non-strict mode
c207f5d automoc: also accept other files when .moc is included in non-strict mode
9c0df72 automoc: add a StrictParseCppFile(), which is only qmake-compatible
174bf35 automoc: move the code for finding headers into separate function
8507eae automoc: fix handling of included _p.moc files
7ada172 automoc: some more linebreaks for the warnings for better readability
3b93e26 automoc: add extra check whether the header contains Q_PRIVATE_SLOT
4745715 Add a test case for the use of Q_PRIVATE_SLOT.
bde4edb automoc: add special handling for including basename_p.moc, with test
74ab0f6 automoc: move some code from the big parsing loop into separate functions
bc7560e automoc: add test for including a moc_abc_p.cpp file
30fd8e6 automoc: add test for including the moc file from another header
...
2011-12-07 16:47:35 -05:00
David Cole
0ea95b99ce Merge topic 'topics/FindCUDA/Misc-fixes'
aa36082 Miscellaneous fixes.
2011-12-07 16:45:35 -05:00
David Cole
c26e28754c Merge topic 'topics/FindCUDA/Multi-dir-clash'
80e279d Make CUDA working directory unique for each target.
2011-12-07 16:45:00 -05:00
David Cole
2d1195123e Merge branch 'master' into AutomocIncludedDotMocFileHandling
Conflicts:
	Source/cmTarget.cxx
2011-12-07 16:29:13 -05:00
Brad King
c198730b45 Detect Watcom compiler version with its id
Decode decimal digits from __WATCOMC__ to compute the version number
components.  See documentation at:

  http://predef.sourceforge.net/precomp.html
2011-12-07 09:39:50 -05:00
Brad King
5899b988d5 Detect Clang compiler version with its id
Decode decimal digits from

  __clang_major__
  __clang_minor__
  __clang_patchlevel__

to compute version number components.  See documentation at:

  http://clang.llvm.org/docs/LanguageExtensions.html#builtinmacros
  http://predef.sourceforge.net/precomp.html
2011-12-07 09:39:49 -05:00
Brad King
b8cfa656ce Detect PGI compiler version with its id
Decode decimal digits from

  __PGIC__
  __PGIC_MINOR__
  __PGIC_PATCHLEVEL__

to compute version number components.
2011-12-07 09:39:48 -05:00
Brad King
6dae6660fc Detect IBM XL compiler version with its id
Decode decimal digits from __IBMC__ and __IBMCPP__ to compute version
number components.  See documentation at:

  http://predef.sourceforge.net/precomp.html
  http://publib.boulder.ibm.com/infocenter/comphelp/v111v131/topic/com.ibm.xlc111.aix.doc/compiler_ref/xlmacros.html
  http://publib.boulder.ibm.com/infocenter/comphelp/v111v131/topic/com.ibm.xlcpp111.aix.doc/compiler_ref/xlmacros.html
2011-12-07 09:39:47 -05:00
Brad King
4080d5510e Detect Borland compiler version with its id
Decode hex digits from __BORLANDC__ to compute the version number
components.  Note that the constant encodes decimal digits as hex digits
(never larger than 9).  We represent them as decimal after extraction.
See documentation at

  http://predef.sourceforge.net/precomp.html
  http://docwiki.embarcadero.com/RADStudio/en/Predefined_Macros
2011-12-07 09:39:46 -05:00
Brad King
2cc205a0fb Detect Intel compiler version with its id (#11937)
Decode decimal digits from

  __INTEL_COMPILER
  __INTEL_COMPILER_BUILD_DATE

to compute the version number components.  See documentation at:

  http://predef.sourceforge.net/precomp.html
  http://software.intel.com/sites/products/documentation/hpc/compilerpro/en-us/fortran/lin/compiler_f/bldaps_for/common/bldaps_use_presym.htm
2011-12-07 09:39:45 -05:00
Brad King
a6d83ccea9 Detect MSVC compiler version with its id
Decode decimal digits from _MSC_VER, _MSC_FULL_VER, and _MSC_BUILD to
compute the version number components.  See documentation at:

  http://msdn.microsoft.com/en-us/library/b0084kay.aspx
  http://predef.sourceforge.net/precomp.html
2011-12-07 08:59:53 -05:00
Brad King
a66285583d Detect GNU compiler version with its id (#6251)
Decode decimal digits from

  __GNUC__
  __GNUC_MINOR__
  __GNUC_PATCHLEVEL__

to compute version components.  See documentation at

  http://gcc.gnu.org/onlinedocs/cpp/Common-Predefined-Macros.html
  http://predef.sourceforge.net/precomp.html
2011-12-07 08:59:52 -05:00
Brad King
fa7141f5ad Add framework to detect compiler version with its id (#12408)
Teach CMakePlatformId.h to construct an "INFO:compiler_version[]" string
literal from macros COMPILER_VERSION_(MAJOR|MINOR|PATCH|TWEAK) to be
defined in CMake(C|CXX)CompilerId.(c|cpp) for each compiler.  Provide
conversion macros DEC() and HEX() to decode decimal or hex digits from
integer values.  Parse the version out of the compiler id binary along
with the other INFO values already present.

Store the result in variable CMAKE_<LANG>_COMPILER_VERSION in the format
"major[.minor[.patch[.tweak]]]".  Save the value persistently in
CMake(C|CXX)Compiler.cmake in the build tree.  Document the variable for
internal use since we do not set it everywhere yet.

Report the compiler version on the compiler id result line e.g.

  The C compiler identification is GNU 4.5.2

Report CMAKE_(C|CXX)_COMPILER_(ID|VERSION) in SystemInformation test.
2011-12-07 08:59:51 -05:00
David Cole
9f18f64c7c Merge topic 'topics/FindCUDA/Quote-fixes'
c3c7a0c Fixes for handling quotes in args and other places (Fix Bug 11726 and 12099).
2011-12-06 15:08:12 -05:00
David Cole
de9dc82779 Merge topic 'topics/FindCUDA/FixCUDAInUNCPath'
83d4eea Add work around for CUDA in UNC paths.
2011-12-06 15:08:03 -05:00
David Cole
35017df53c Merge topic 'topics/FindCUDA/linux-double-build'
aa59544 Reset dependency file list when a dependency disappeared.
2011-12-06 15:07:48 -05:00
David Cole
386cf3c593 Merge topic 'GNU-to-MS'
ae62a1c Test CMAKE_GNUtoMS option in ExportImport on MinGW and MSys
afb00fe Add CMAKE_GNUtoMS option to convert GNU .dll.a to MS .lib
61e8629 Factor makefile generator link rule lookup into helper function
a603250 Load platform files that need to know the ABI when possible
ecd8414 Fortran: Detect pointer size in gfortran on MinGW
2011-12-06 15:07:39 -05:00
David Cole
b8c0dd48b0 Merge topic 'CUDAv3.2PathChanges'
8930938 Added support for CUDA_PATH which is present in the CUDA toolkit 3.2 onward.
2011-12-06 15:07:27 -05:00
David Cole
cc35c8fad3 Merge topic 'findlapack-0012477-new'
f44f053 FindLAPACK: Fix linking to static LAPACK on Unix (#12477)
2011-12-06 15:06:52 -05:00
David Cole
4c84aa7346 Merge topic 'TinyCC-compiler'
0efe602 TinyCC: Add default compilation flags (#12605)
ec636e2 TinyCC: Add compiler info for shared libs on Linux (#12605)
1f49d72 Recognize the Tiny C Compiler (#12605)
2011-12-06 15:06:34 -05:00
James Bigler
aa36082a2b Miscellaneous fixes. 2011-12-05 19:04:48 -07:00
James Bigler
80e279d37c Make CUDA working directory unique for each target.
This allows you to have more than source file with the same name but different
directories.  The intermediate and configuration files are now in this same directory.
2011-12-05 19:00:00 -07:00
James Bigler
c3c7a0cfb8 Fixes for handling quotes in args and other places (Fix Bug 11726 and 12099). 2011-12-05 17:16:05 -07:00
James Bigler
83d4eeadac Add work around for CUDA in UNC paths.
Nvcc can emit '/path' instead of '//path' which can cause a lot of grief later.  We test
to see if the file exists, if it doesn't then we see if the file exists with '/'
prepended.  Files that don't exist won't be added to the list.
2011-12-05 16:54:06 -07:00
James Bigler
aa59544078 Reset dependency file list when a dependency disappeared.
Fix a long outstanding bug when a file in the dependency list wasn't found.  This bug
wouldn't reset the dependencies, so the makefile would still want the missing file when
building.  The work around was to configure twice, but this is no longer necessary.
2011-12-05 16:29:28 -07:00
Brad King
afb00fef19 Add CMAKE_GNUtoMS option to convert GNU .dll.a to MS .lib
Teach the Windows-GNU.cmake platform file to look for Visual Studio
tools matching the target ABI.  Add an extra step to the link command
for shared libraries and executables that export symbols and on which a
new GNUtoMS property is set (initialized by the CMAKE_GNUtoMS option).
Tell the GNU linker to output a module definition (.def) file listing
exported symbols in addition to the GNU-format import library (.dll.a).
Pass the .def file to the MS "lib" tool to construct a MS-format DLL
import library (.lib).

Teach the install(TARGETS) command to install the MS import library next
to the GNU one.  Teach the install(EXPORT) and export() command to set
the IMPORTED_IMPLIB property pointing at the import library to use the
import library matching the tools in the importing project.
2011-12-05 18:13:49 -05:00
James Bigler
8930938351 Added support for CUDA_PATH which is present in the CUDA toolkit 3.2 onward.
This required changing how the paths were used.  I now use the PATH_SUFFIXES parameter
instead of putting the whole path in the command.
2011-12-05 16:04:00 -07:00
Brad King
a603250a13 Load platform files that need to know the ABI when possible
Load platform files named in CMAKE_<lang>_ABI_FILES for each language
once the ABI sizeof(void*) is known.  During the first configuration
this is after the test for working compiler and ABI detection checks.
During later configurations the ABI information is immediately available
because it has been saved in CMake<lang>Compiler.cmake.
2011-12-05 16:35:42 -05:00
Brad King
ecd8414757 Fortran: Detect pointer size in gfortran on MinGW
Use __SIZEOF_POINTER__ which the GNU Fortran compiler defines at least
on 64-bit MinGW.  Assume default size 4 on MinGW if gfortran does not
define the size.
2011-12-05 16:32:29 -05:00
Alexey Ozeritsky
f44f053a52 FindLAPACK: Fix linking to static LAPACK on Unix (#12477) 2011-12-05 11:41:52 -05:00
Mathieu Malaterre
0efe602c59 TinyCC: Add default compilation flags (#12605) 2011-12-05 08:59:50 -05:00
Pierre-Francois Laquerre
9b07c19f92 Fix path quoting in Qt4 macros
Adding VERBATIM to the ADD_CUSTOM_COMMAND calls in the qt4 macros
ensures that paths are properly quoted when passed to the shell.
This fixes issues when building projects that contained paths with
special characters (according to /bin/sh), such as parentheses or
spaces.
2011-12-03 17:51:24 -07:00
Alex Neundorf
62e223e8fa automoc: add variable CMAKE_AUTOMOC_STRICT_MODE, to enable strict parsing
Alex
2011-12-02 22:08:06 +01:00
Brad King
ec636e299f TinyCC: Add compiler info for shared libs on Linux (#12605)
Use the "-shared" option to link shared libraries.  The compiler does
not support "-Wl," or "-rpath" but does know how to pass "-soname"
through to the linker.
2011-12-02 10:23:48 -05:00
Brad King
1f49d725ab Recognize the Tiny C Compiler (#12605)
See compiler home page here:

  http://tinycc.org/
  http://bellard.org/tcc/

Use the id "TinyCC" as it appears in their online documentation.
2011-12-02 10:08:34 -05:00
David Cole
9401da8084 Merge topic 'FindZLIB-use-ZLIB_ROOT'
985dee4 FindZLIB: Search under ZLIB_ROOT if it is set
2011-12-01 14:03:36 -05:00
David Cole
333fd1131c Merge topic 'useqt4-fix-declarative'
3cd08ce Qt4: Fix dependencies of QtDeclartive.
2011-12-01 14:03:03 -05:00
David Cole
9c288d6c2b Merge topic 'automoc_qt5'
a828623 moc is now part of the Qt5Core module
b8c8cab Merge remote-tracking branch 'origin/master' into automoc_qt5
2011-12-01 14:02:21 -05:00
Brad King
985dee4f54 FindZLIB: Search under ZLIB_ROOT if it is set
Perform multiple separate searches in order.  If ZLIB_ROOT is set search
it exclusively so it takes precedence over CMAKE_PREFIX_PATH.  This
allows a user to provide -DZLIB_ROOT=/path/to/zlib/prefix on the CMake
command line to tell it exactly where to find zlib.  Otherwise fall back
to a normal search.

Inspired-by: Andreas Schneider <asn@cryptomilk.org>
2011-11-30 13:18:07 -05:00
Clinton Stimpson
3cd08ce048 Qt4: Fix dependencies of QtDeclartive. 2011-11-29 09:02:40 -07:00
Stephen Kelly
a8286235a3 moc is now part of the Qt5Core module
There is no separate SrcTools module anymore.
2011-11-26 15:15:33 +01: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
f4e266f41f Merge topic 'FindPNG_Provide_PNG_INCLUDE_DIRS_Variable'
df0f302 FindPNG: provide PNG_INCLUDE_DIRS, as the readme.txt says (#11312)
2011-11-22 16:23:36 -05:00
David Cole
e9547efa96 Merge topic 'FindBISON-version-regex'
20cb5ed FindBISON: Fix matching output of "bison --version"
f30f9a5 FindBISON: Fix bison++ version parsing to avoid "Offending entry"
2011-11-22 16:23:31 -05:00
David Cole
e8fc3bc8d0 Merge topic 'FixGettextPoProcessingWithMultipleDots'
65dde30 FindGettext: two more fixes for files with multiple dots
e48fcff -make GETTEXT_PROCESS_PO_FILES() work with files with multiple dots
ecb4459 Strip trailing whitespace
2011-11-22 16:23:14 -05:00
Clinton Stimpson
9a6b102205 GetPrerequisites: Add support for @rpath on Mac OS X.
Handle @rpath much like other Unixes, by doing a find_file with the given directories.

Also, consider a library to be local if it is found in the same directory or a subdirectory relative to the user
executable/library.  Previously, it was local only if found in the same directory.
This case is encountered when @rpath is used with framework libraries, which are inside a directory tree.
2011-11-21 16:45:49 -07: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
df0f302485 FindPNG: provide PNG_INCLUDE_DIRS, as the readme.txt says (#11312)
Also improve the documentation a bit.

Alex
2011-11-18 19:20:07 +01:00
Rolf Eike Beer
20cb5edbca FindBISON: Fix matching output of "bison --version"
The output may contain semicolons, which will confuse the IF() because of
missing quoting.
2011-11-18 10:47:28 -05:00
Alex Neundorf
65dde30ddd FindGettext: two more fixes for files with multiple dots
Another patch by Albert Astals Cid for dealing with translation files
with multiple dots.

Alex
2011-11-16 20:53:59 +01:00
David Cole
a9e686d68b Merge topic 'qt4-deploy-module'
b688f11 Check QtCore without warning.
2011-11-15 14:39:38 -05:00
David Cole
6fbba223f4 Merge topic 'FindBoost-vs11-issue-12568'
1c4ba48 FindBoost: Use MSVC11 to find Boost on Windows (#12568)
2011-11-15 14:39:03 -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
Alex Neundorf
e48fcfffa3 -make GETTEXT_PROCESS_PO_FILES() work with files with multiple dots
Patch by Albert Astals Cid.
E.g. plasma_package_org.kde.activityswitcher.po will now be installed
correctly as plasma_package_org.kde.activityswitcher.mo, and not as
plasma_package_org.mo.

This is kind-of related to #12282

Alex
2011-11-15 18:49:47 +01:00
Alex Neundorf
ecb4459e31 Strip trailing whitespace
Alex
2011-11-15 18:48:38 +01:00
Mike McQuaid
b688f114c9 Check QtCore without warning.
When debug and release versions of QtCore were available it printed
a warning. This has been fixed.
2011-11-14 10:00:08 -07:00
Ondrej Balaz
f30f9a500c FindBISON: Fix bison++ version parsing to avoid "Offending entry"
I've just found out that use of FindBISON.cmake shipped with CMake 2.8
on system where bison++ is default bison executable (e.g. Debian Linux)
will result in corrupted CMakeCache.txt file and parse error due to
"Offending entry"

As FindBISON.cmake logic used to obtain installed bison executable
version is tailored to match only the message used in GNU Bison it fails
on absolutely different Bison++ version message and whole version
message including \n characters is stored into BISON_VERSION which is
then dumped into CMakeCache.txt, so everything after first \n character
makes "Offending entry".
2011-11-11 16:50:23 -05:00
Stephen Kelly
b8c8cab242 Merge remote-tracking branch 'origin/master' into automoc_qt5 2011-11-10 15:46:13 +01:00
Mateusz Loskot
1c4ba48e44 FindBoost: Use MSVC11 to find Boost on Windows (#12568)
While at it, add recent Boost versions.
2011-11-10 08:03:17 -05: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
Dan Kegel
0e721e5129 Modules: Add XRes to FindX11.cmake 2011-11-09 06:22:32 -05:00
David Cole
51f442e603 VS11: Update InstallRequiredSystemLibraries.cmake for VS11 (#11213)
Should fix the newly added MFC test on VS11 dashboards.
2011-11-08 15:22:40 -05:00
David Cole
437deb3356 Merge topic 'CPackRPM-fix12556'
9066886 CPackRPM fix #12556 and enhance documentation
2011-11-08 14:43:52 -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
Eric NOULARD
9066886f9b CPackRPM fix #12556 and enhance documentation
Inspired-By: Chip Christian
2011-11-05 11:40:47 +01:00
David Cole
a39c195bc5 Merge topic 'qt4-deploy-module'
467ee36 Check plugin variables are defined before warning.
4571ea6 Don't resolve directories; are never relative.
9cfc920 Match fixup_qt4_executable with documentation.
2011-11-01 14:26:43 -04:00
David Cole
09dfcfb6cb Merge topic 'CPackRPM-perComponentHeader'
e20c59a CPackRPM support component specific variables for spec files
2011-11-01 14:26:31 -04:00
Mike McQuaid
467ee36840 Check plugin variables are defined before warning. 2011-11-01 13:54:35 -04:00
Mike McQuaid
4571ea6e4d Don't resolve directories; are never relative. 2011-11-01 13:54:34 -04:00
Mike McQuaid
9cfc920973 Match fixup_qt4_executable with documentation. 2011-11-01 13:54:34 -04: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
Eric NOULARD
e20c59ae50 CPackRPM support component specific variables for spec files
This is a modified version of a user patch
Inspired-By: informant
2011-10-30 20:13:20 +01:00
Alex Neundorf
fe6d9c1a44 FindLibXslt: also search libexslt and xsltproc
merging some changes FindLibXslt.cmake from KDE

Alex
2011-10-25 23:03:17 +02: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
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
e1902dd145 Merge topic 'qt4-deploy-module'
0618045 Add DeployQt4 module.
cf4b529 Add QT_LIBRARIES_PLUGINS variable to UseQt4.
2011-10-25 15:33:56 -04:00
Nicolas Despres
bfb0ed4293 Usage: Add missing exepath argument in get_prerequisites documentation. 2011-10-23 22:18:14 +02:00
Alex Neundorf
70de8bd5ae Eclipse: detect number of CPUs, set CMAKE_ECLIPSE_MAKE_ARGUMENTS accordigly
Using the new module ProcessorCount.cmake now the number of CPUs is
detected, and if it is bigger than 1, make -jX is set accordingly.

Alex
2011-10-23 14:33:25 +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
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
c818589113 Merge topic 'FindProtoBuf_doc_clarify'
a481d84 FindProtoBuf: Documented limitation of the public macro
2011-10-18 15:03:43 -04:00
David Cole
02e99d9851 Merge topic 'FindRubyOnOpenBSD'
d2b1ce6 Find Ruby on OpenBSD when installed from ports (#12507)
ba5a8bc Remove trailing whitespace
2011-10-18 15:02:53 -04:00
David Cole
91e970ce5b Merge topic 'DetectMasmCompilerId'
cf93d63 fix #12465: detect the masm compiler ID ("MSVC")
2011-10-18 15:02:30 -04:00
Alex Neundorf
dcd245913c Eclipse: better message when Eclipse version could not be determined
Alex
2011-10-15 21:04:23 +02:00
Alex Neundorf
4974ec90a4 Eclipse generator: detect Eclipse version
Try to detect the eclipse version and put it in the cache.

Alex
2011-10-15 18:43:27 +02:00
Philip Lowman
a481d84ff7 FindProtoBuf: Documented limitation of the public macro 2011-10-12 23:44:40 -04:00
Alex Neundorf
d2b1ce6af0 Find Ruby on OpenBSD when installed from ports (#12507)
The ruby library on OpenBSD is named rubyXY, not ruby X.y.
Find that too.

Alex
2011-10-12 23:05:52 +02:00
Alex Neundorf
ba5a8bcf5d Remove trailing whitespace
Alex
2011-10-12 23:05:30 +02: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
bb28c9f3bf Merge topic 'qt_dbus_interface_args'
648c454 Add features from KDE for arguments to qdbusxml2cpp.
2011-10-11 14:44:48 -04:00
Alex Neundorf
cf93d63c0a fix #12465: detect the masm compiler ID ("MSVC")
Alex
2011-10-06 17:57:32 +02:00
Mike McQuaid
06180459cc Add DeployQt4 module.
Add a module that gives better support to BundleUtilities to handle
Qt plugins and deploy Qt applications.
2011-10-03 11:01:48 -06:00
Mike McQuaid
cf4b52980d Add QT_LIBRARIES_PLUGINS variable to UseQt4. 2011-10-03 11:01:39 -06: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
David Cole
c4ef30e3dd Merge topic 'PkgConfigTypoFix'
9cbbea3 Fix typo in UsePkgConfig.cmake
2011-09-30 15:57:24 -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
Rolf Eike Beer
9cbbea31d3 Fix typo in UsePkgConfig.cmake 2011-09-29 19:43:44 +02:00
Brad King
89bdc3e213 Merge topic 'FindBulletLibRenames'
6f935d7 FindBullet: Also search for _Debug postfixed library names
2011-09-26 11:24:46 -04:00
Brad King
3d5632ed59 Add Visual Studio 11 generator for x86 and x64 tools 2011-09-23 10:10:01 -04:00
Philip Lowman
6f935d7f55 FindBullet: Also search for _Debug postfixed library names 2011-09-22 23:31:37 -04:00
Alex Neundorf
59ccf38554 Minor improvements to the UsePkgConfig.cmake docs
Alex
2011-09-22 14:47:18 +02:00
Alex Neundorf
ad11118ebf Remove trailing whitespace
Alex
2011-09-22 14:39:19 +02:00
David Cole
26e5b0ea82 Merge topic 'revert-fix-for-11333'
98c49a4 Revert "FindThreads: Try pthreads with no special option first (#11333)"
2011-09-21 17:29:39 -04:00
David Cole
ac623ce2fe Merge topic 'CPackRPM-per-component-script'
cc26a06 CPackRPM authorize per-component pre/post-[un]install scripts (#0012063)
2011-09-21 17:29:30 -04:00
David Cole
253e370c9e Merge topic 'generate-export-header'
41e2b1d Make add_compiler_export_flags a function again.
6a10deb Made ADD_COMPILER_EXPORT_FLAGS into a macro.
2d1acfe Don't warn when nothing to do in visibility function.
d679568 Just code style changes.
2011-09-21 17:29:23 -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
David Cole
98c49a4a25 Revert "FindThreads: Try pthreads with no special option first (#11333)"
This reverts commit fd61be7140.
2011-09-20 18:40:22 -04:00
David Cole
d622088b2b Merge topic 'MinorFeatureSummaryFixes'
0ba9853 Don't warn when setting a property multiple times to the same value #12464
b7ac63e Fix typos in FeatureSummary.cmake (#12462)
2011-09-20 14:42:21 -04:00
David Cole
f628f12799 Merge topic 'CheckForFlexHeader'
ae331e1 FindFLEX.cmake: also search the include dir
2011-09-20 14:42:16 -04:00
David Cole
bef996852e Merge topic 'FortranCInterface-VS'
67fcc83 Simplify IntelVSImplicitPath detection project
a7ce26d Move IntelVSImplicitPath project to better location
539a822 Enable Fortran tests for IDE builds.
555f589 For VS Intel Fortran IDE builds, add a check to find the Fortran library PATH.
71402eb FortranCInterface: Compile separate Fortran lib in VerifyC[XX]
2011-09-20 14:41:56 -04:00
Eric NOULARD
cc26a0614a CPackRPM authorize per-component pre/post-[un]install scripts (#0012063)
Merged patch from Chip Christian previously based on the one from winfriedd
with some small pruning editing by commiter
2011-09-20 20:21:01 +02:00
Marcus D. Hanwell
41e2b1d824 Make add_compiler_export_flags a function again.
Making this a macro had unintended issues on (among others) Windows
compilers. Moving it back to being a function using PARENT_SCOPE still
satisfies the use case where we simply want to obtain the extra flags.
2011-09-20 00:16:16 -04:00
Marcus D. Hanwell
6a10deb670 Made ADD_COMPILER_EXPORT_FLAGS into a macro.
It adds to the CMAKE_CXX_FLAGS (as before), or populates the supplied
optional argument with the CXX_FLAGS for symbol import/export.
2011-09-19 16:42:42 -04:00
Marcus D. Hanwell
2d1acfe359 Don't warn when nothing to do in visibility function. 2011-09-19 14:55:19 -04:00
Marcus D. Hanwell
d6795685ae Just code style changes. 2011-09-19 14:04:42 -04:00
Alex Neundorf
0ba98533d0 Don't warn when setting a property multiple times to the same value #12464
Patch by Yury Kudryashov

Alex
2011-09-18 12:51:05 +02:00
Alex Neundorf
b7ac63e1c1 Fix typos in FeatureSummary.cmake (#12462)
Patch by Yury Kudrashov

Alex
2011-09-18 12:46:29 +02:00
Alex Neundorf
ae331e1864 FindFLEX.cmake: also search the include dir
FindFLEX.cmake already searched for the library, but
not for the include dir. Do that too.

Alex
2011-09-17 14:27:24 +02:00
Brad King
67fcc838d9 Simplify IntelVSImplicitPath detection project
Use the ENV{LIB} variable directly instead of parsing the output of the
whole environment from "set".  Store the output in a .cmake script and
include it from CMakeDetermineCompilerABI instead of using file(READ).
2011-09-14 14:06:02 -04:00
Brad King
a7ce26d837 Move IntelVSImplicitPath project to better location
This project is not part of the FortranCInterface module.  Make it a
sibling instead of a child directory.
2011-09-14 13:49:40 -04:00
David Cole
21e03c4c44 Merge topic 'CPackDeb-remove-stray-paren'
85fd794 remove stray brace in CPackDeb documentation
2011-09-13 14:33:12 -04:00
Rolf Eike Beer
85fd794a19 remove stray brace in CPackDeb documentation 2011-09-12 11:47:31 -04:00
Bill Hoffman
555f589a5a For VS Intel Fortran IDE builds, add a check to find the Fortran library PATH.
To use VS C and Fotran in the same solution, it is required that VS be
able to find the Fortran run time libraries as they will be implicitly
linked by any Fortran library used by VS C programs.  This adds a check
into CMakeDetermineCompilerABI using a try-compile to find the correct
PATH.
2011-09-08 17:42:49 -04:00
Eric NOULARD
59204e1126 CPack fix #12449 doc mispelled
CPACK_INSTALL_DIRECTORIES-->CPACK_INSTALLED_DIRECTORIESœ
2011-09-08 22:00:34 +02:00
Brad King
71402eb252 FortranCInterface: Compile separate Fortran lib in VerifyC[XX]
The Intel Fortran plugin for Visual Studio requires Fortran source files
to be compiled in a separate target from C and C++ code.  Compile the
VerifyFortran.f source file in a separate library and link the main
VerifyFortanC executable to it.
2011-09-08 14:56:48 -04:00
David Cole
c80cbad152 Merge topic 'CPackRPM-includeDir'
f9e5277 CPackRPM fix #12305, include directories in RPM package
2011-09-07 15:38:50 -04:00
David Cole
de62fd1b6d Merge topic 'CPackRPM-fix12366'
b0f6a97 CPack  fix #12366 components RPM packages have the same package name
2011-09-07 15:38:27 -04:00
David Cole
54730d7604 Merge topic 'generate_export_header'
dbd776d Don't put what some compilers consider junk at the end of the line.
93d8d19 Add some more unit tests.
2011-09-07 15:38:00 -04:00
David Cole
4558e6eeee Merge topic 'vs-compiler-id'
38aab37 Set CMAKE_<lang>_COMPILER_ID for VS generators
2011-09-07 15:37:37 -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