4638 Commits

Author SHA1 Message Date
Brad King
fa894c3003 Merge topic 'UseSWIG-octave'
f39671c UseSWIG: Handle octave extensions.
2013-12-02 12:07:03 -05:00
Brad King
f3a10191e7 Merge topic 'UseSWIG-fix12184'
74f5545 UseSWIG: set .bundle ext on OSX and no prefix (#12184)
2013-12-02 12:06:57 -05:00
Brad King
406635fd6c Merge topic 'UseSWIG-fix13318'
a87c063 UseSWIG: Name python module according to swig flags (#13318)
2013-12-02 12:06:50 -05:00
Brad King
9c56366250 Merge topic 'KateProjectGenerator2'
b54c336 kate: add some documentation
9414217 kate: insert build targets
644e012 kate: add project generator for the Kate project plugin
2013-12-02 12:06:27 -05:00
Julien Schueller
f39671c117 UseSWIG: Handle octave extensions. 2013-11-29 10:13:27 +01:00
Julien Schueller
74f5545d0a UseSWIG: set .bundle ext on OSX and no prefix (#12184) 2013-11-28 10:26:14 +01:00
Julien Schueller
a87c06328c UseSWIG: Name python module according to swig flags (#13318) 2013-11-26 09:46:39 -05:00
Brad King
8b585eed44 Merge topic 'cross-compiling-toolchain-variables'
89ba7b0 Update the Clang pattern to specify compiler options.
2013-11-26 09:38:55 -05:00
Brad King
784e6e7f15 Merge topic 'UseSWIG-fix14520'
20028d6 UseSWIG: Remove duplicate include dirs (#14520)
2013-11-26 09:36:46 -05:00
Brad King
0ccc535734 Merge topic 'UseSWIG-fix13814'
acc59e5 UseSWIG: Handle a dll name different than module name (#13814)
2013-11-26 09:36:22 -05:00
Brad King
170c50da38 Merge topic 'FindGTK2-quartz-backend'
0e9bf6a FindGTK2: Add support for Quartz backend on MAC
2013-11-26 09:35:13 -05:00
Stephen Kelly
89ba7b0046 Update the Clang pattern to specify compiler options.
In Clang 3.4, the preferred (and new) option pattern is --target=.

 http://thread.gmane.org/gmane.comp.compilers.clang.devel/29975
 http://llvm.org/viewvc/llvm-project?view=revision&revision=184408

Clang 3.4 is not yet released, but there is a release candidate, and
there is a dashboard test of Clang trunk.
2013-11-25 23:01:21 +01:00
Alex Neundorf
644e012863 kate: add project generator for the Kate project plugin
This patch adds an extra generator for KDE's kate text editor,
or better more specifically, the project plugin.

Alex
2013-11-25 10:48:33 -05:00
Brad King
d6516dc693 Merge topic 'EclipseParallelMakeOnlyOnUnixHosts'
83751af Eclipse: add -j only on UNIX hosts
2013-11-25 08:38:07 -05:00
Brad King
788910941f Merge topic 'UseSWIG-fix13772'
276e373 UseSWIG: Fix .i relative source file location (#13173,#13772,#14459)
2013-11-25 08:37:59 -05:00
Brad King
f1d5d88911 Merge topic 'FindSWIG-fix13771'
8c127c9 FindSWIG: Use CMAKE_CURRENT_LIST_DIR instead of CMAKE_ROOT (#13771)
2013-11-25 08:37:53 -05:00
Brad King
adde0c6324 Merge topic 'FindSWIG-fix13449'
19b7a54 FindSWIG: Search for swig.swg only on host (#13449)
2013-11-25 08:37:47 -05:00
Brad King
7008754b0e Merge topic 'FindSWIG-fix13426'
6620dc7 FindSWIG: Mark SWIG_DIR & SWIG_VERSION as advanced (#13426)
2013-11-25 08:37:34 -05:00
Julien Schueller
20028d600f UseSWIG: Remove duplicate include dirs (#14520)
Shorten the swig command line.
2013-11-25 08:33:30 -05:00
Julien Schueller
acc59e55e1 UseSWIG: Handle a dll name different than module name (#13814) 2013-11-25 08:32:13 -05:00
Julien Schueller
276e3735d8 UseSWIG: Fix .i relative source file location (#13173,#13772,#14459) 2013-11-25 08:29:37 -05:00
Daniele E. Domenichelli
0e9bf6a257 FindGTK2: Add support for Quartz backend on MAC
Fix issue #14593
2013-11-24 14:53:47 +01:00
Alex Neundorf
83751af219 Eclipse: add -j only on UNIX hosts
The previous version added -jN to the make invokation if UNIX
was set, but this was true also when cross compiling.
What we are actually interested in is CMAKE_HOST_UNIX, i.e.
whether the build host is UNIX.
Or we should check more exactly what CMAKE_MAKE_PROGRAM is.

Alex
2013-11-23 23:48:43 +01:00
Julien Schueller
8c127c9e33 FindSWIG: Use CMAKE_CURRENT_LIST_DIR instead of CMAKE_ROOT (#13771)
This is a simpler way to reference the location of UseSWIG.cmake.
2013-11-22 09:10:51 -05:00
Julien Schueller
19b7a54d35 FindSWIG: Search for swig.swg only on host (#13449)
Use NO_CMAKE_FIND_ROOT_PATH to ensure swig.swg can be found on the host
even when cross-compiling.
2013-11-22 09:09:43 -05:00
Julien Schueller
6620dc7691 FindSWIG: Mark SWIG_DIR & SWIG_VERSION as advanced (#13426) 2013-11-22 09:09:20 -05:00
Brad King
7246e635fe Merge topic 'FixIssue14029'
9619719 FindSDL: Add additional search paths on MSVC (#14029)
2013-11-22 08:41:43 -05:00
Brad King
3013a11826 Merge topic 'cross-compiling-toolchain-variables'
7521da2 Introduce CMAKE_STAGING_PREFIX variable.
2013-11-22 08:40:50 -05:00
Benjamin Eikel
9619719882 FindSDL: Add additional search paths on MSVC (#14029)
Add an architecture-specific library directory path suffix for each
component.  Use different search path for SDL_sound.  Project files in
VisualC directory suggest that a win32lib will hold the libraries.

Reported-by: Paul Hampson <Paul.Hampson@Pobox.com>
2013-11-21 15:30:36 -05:00
Brad King
91330e9505 Merge topic 'FindwxWidgets-3.0.0'
2cd5597 FindwxWidgets: Add support for wxWidgets 3.0.0 (#14587)
2013-11-21 09:39:07 -05:00
Brad King
26bed2ac57 Merge topic 'find_backtrace'
c6f339c Add FindBacktrace.cmake module.
2013-11-21 09:38:56 -05:00
Stephen Kelly
7521da2852 Introduce CMAKE_STAGING_PREFIX variable.
This variable can be useful in cross-compiling contexts where the
sysroot is read-only or where the sysroot should otherwise remain
pristine.

If the new CMAKE_STAGING_PREFIX variable is set, it is used instead
of CMAKE_INSTALL_PREFIX when generating the installation rules in
cmake_install.cmake.

This way, the CMAKE_INSTALL_PREFIX variable
always refers to the installation prefix on the target device, regardless
of whether host==target.

If any -rpath paths passed to the linker contain the CMAKE_STAGING_PREFIX,
the matching path fragments are replaced with the CMAKE_INSTALL_PREFIX.
Matching paths in the -rpath-link are not transformed.

The cross-prefix usr-move workaround is assumed not to require extension
regarding CMAKE_STAGING_PREFIX. The staging area is a single prefix, so
there is no scope for cross-prefix symlinks. The CMAKE_INSTALL_PREFIX
is still used to determine the workaround path, and that variable
remains the relevant one even if CMAKE_STAGING_PREFIX is used. If the
generated export files are deployed to the target, the workaround
will still be in place, and still be employed if required.
2013-11-21 11:48:03 +01:00
Arnaud Desmier
2cd559789b FindwxWidgets: Add support for wxWidgets 3.0.0 (#14587)
Add the "wxWidgets-3.0.0" path suffix and the "30" library names.
While at it, add the "wxWidgets-2.9.5" suffix too.
2013-11-20 10:51:55 -05:00
Brad King
6703508a31 Merge topic 'add-missing-parent-group'
2751b93 CPackComponent: handle the documented PARENT_GROUP parameter
2013-11-20 09:08:38 -05:00
Brad King
5f4e31ce3b Merge topic 'FindLATEX-ps2pdf'
0767474 FindLATEX: Find ps2pdf with MikTeX.
2013-11-20 09:07:31 -05:00
Nils Gladitz
2751b934a3 CPackComponent: handle the documented PARENT_GROUP parameter 2013-11-19 21:22:44 +01:00
Brad King
46ec48c93d Merge topic 'cross-compiling-toolchain-variables'
7cd65c9 Add CMAKE_SYSROOT variable to set --sysroot when cross compiling.
5096967 Allow toolchain files to specify an external toolchain.
76552d5 Add compiler target compile options.
f41ecd1 CMakeDetermineCompilerId: Look for internal file only on host
2013-11-19 12:41:57 -05:00
Stephen Kelly
7cd65c97fa Add CMAKE_SYSROOT variable to set --sysroot when cross compiling.
As CMAKE_ROOT_FIND_PATH can be a list, a new CMAKE_SYSROOT is
introduced, which is never a list.

The contents of this variable is passed to supporting compilers
as --sysroot. It is also accounted for when processing implicit
link directories reported by the compiler, and when generating
RPATH information.
2013-11-19 12:39:39 -05:00
Stephen Kelly
5096967ecd Allow toolchain files to specify an external toolchain.
Clang can compile code, but uses the gcc tools for other tasks such
as linking. The -gcc-toolchain option can be used for that, but
generalize so that other compilers can be treated the same.

If such a location is specified, use it as a hint for finding
the binutils executables.
2013-11-19 12:39:34 -05:00
Stephen Kelly
76552d595d Add compiler target compile options.
For clang, this allows passing -target <triple> to the compiler, and
for qcc, -V<arch> using toolchain files containing something like

 set(triple arm-linux-gnueabihf)
 set(CMAKE_C_COMPILER "/usr/bin/clang")
 set(CMAKE_C_COMPILER_TARGET ${triple})
 set(CMAKE_CXX_COMPILER "/usr/bin/clang++")
 set(CMAKE_CXX_COMPILER_TARGET ${triple})

or

 set(arch gcc_ntoarmv7le)
 set(CMAKE_C_COMPILER /opt/qnx650/host/linux/x86/usr/bin/qcc)
 set(CMAKE_C_COMPILER_TARGET ${arch})
 set(CMAKE_CXX_COMPILER /opt/qnx650/host/linux/x86/usr/bin/QCC)
 set(CMAKE_CXX_COMPILER_TARGET ${arch})

Both clang and qcc are inherently cross compiler( driver)s.

When cross-compiling with clang, use the CMAKE_${lang}_COMPILER_TARGET
as the _CMAKE_TOOLCHAIN_PREFIX to find the appropriate binutils.

When cross-compiling with QNX qcc, use the CMAKE_${lang}_COMPILER_TARGET
to set the appropriate _CMAKE_TOOLCHAIN_PREFIX.
2013-11-19 12:38:53 -05:00
Stephen Kelly
f41ecd1db4 CMakeDetermineCompilerId: Look for internal file only on host
The find_file this module uses to locate the compiler id source file
must always look on the host and never in CMAKE_FIND_ROOT_PATH, even
when a toolchain file has

 set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)

Add NO_CMAKE_FIND_ROOT_PATH to the find_file call to avoid rerooting.
2013-11-19 12:36:27 -05:00
Brad King
1da77bf1ee Merge topic 'cleanup-build-commands'
4cce44b Help: Document the CMAKE_MAKE_PROGRAM variable in more detail
558c74d VS: Switch to internal CMAKE_MAKE_PROGRAM lookup by generators
5229f2d Tests: Do not use an explicit make program for VS generators
72dd738 Tests: Fix MFC test heuristic for empty CMAKE_TEST_MAKEPROGRAM
fd6076d Tests: Pass CMAKE_MAKE_PROGRAM instead of --build-makeprogram
68031ab Tests: Configure SubProject-Stage2 test more robustly
003d10c Tests: Simplify VSExcludeFromDefaultBuild configuration
e47d934 Tests: Simplify VSProjectInSubdir configuration
e965cb1 Tests: Simplify CTest.BuildCommand.ProjectInSubdir configuration
72bf255 Tests: Pass --build-options to every test
4d1d772 ctest: Teach --build-options to allow zero options
96966b5 ctest: Make the --build-makeprogram optional for --build-and-test
91a0211 Simplify some calls to cmGlobalGenerator::Build
123a060 Teach GenerateBuildCommand to find its own make program
5f5c92b VS: Add internal APIs to find MSBuild, devenv/VCExpress, and msdev
4ac75fd Prefer CMAKE_MAKE_PROGRAM over CMAKE_BUILD_TOOL (#14548)
...
2013-11-19 10:55:39 -05:00
Brad King
8564682136 Merge topic 'doc-ExternalProject-formatting'
01ecd24 ExternalProject: Format module documentation
2013-11-19 09:47:39 -05:00
Brad King
01ecd24fa6 ExternalProject: Format module documentation
Manually revise the .rst format of the documentation.  Use inline
literal quotes appropriately in paragraph text.  Move the :: literal
block openers to the end of the preceding paragraphs.  Convert the
command signature documentation and examples to cmake code-block
directives.
2013-11-19 09:27:08 -05:00
Brad King
558c74d0ab VS: Switch to internal CMAKE_MAKE_PROGRAM lookup by generators
Drop the "Modules/CMakeVS*FindMake.cmake" files.  Override the
cmGlobalGenerator::FindMakeProgram method for VS generators to use their
internal APIs to locate the build tool.  Set the CMAKE_MAKE_PROGRAM as a
normal variable for use by project code, but do not cache it.  This will
allow CMake and CTest to select the proper tool at build time.
2013-11-18 11:30:50 -05:00
Brad King
4ac75fdfe6 Prefer CMAKE_MAKE_PROGRAM over CMAKE_BUILD_TOOL (#14548)
Historically these were both added for the Makefile and Visual Studio
generators, respectively.  Later the VS generators started using the
CMAKE_MAKE_PROGRAM cache entry to find the IDE build tool, and the
CMAKE_BUILD_TOOL was simply set as an alias.

Fix the documentation to explain that CMAKE_MAKE_PROGRAM is the modern
variable and that CMAKE_BUILD_TOOL is the compatibility alias, not the
other way around.  Replace uses of CMAKE_BUILD_TOOL with
CMAKE_MAKE_PROGRAM in CMake-provided modules.  Nothing needs to lookup
CMAKE_BUILD_TOOL in the cache, so simply set it as a normal variable.
2013-11-18 08:26:23 -05:00
Nils Gladitz
7621ad6eae CPack: don't write internal variables to CPackConfig.cmake
The internal variables CPACK_ADDCOMP_COMPONENTS,
CPACK_ADDCOMP_STR and CPACK_ADDCOMP_UNAME were being needlessly
exported to CPackConfig.cmake.
Prefixing them with an underscore prevents this.

CPACK_ADDCOMP_STR was particularily problematic since it contains
unescaped quotes.
2013-11-17 11:02:41 +01:00
Brad King
5084cac09f Merge topic 'gp-ld_library_path'
e130b9e GetPrerequisites:  Preserve search path order from caller.
2013-11-14 11:28:34 -05:00
Brad King
3993300ad3 Merge topic 'openmp-cray'
ebf70b0 FindOpenMP: fix detecting compilers that do not need any special flag (#14567)
2013-11-14 11:28:24 -05:00
Brad King
42eaf34168 Merge topic 'configure_file-drop-IMMEDIATE'
15610bb Drop use of configure_file IMMEDIATE option
2013-11-14 11:28:07 -05:00