Factor duplicate information out of Compiler/XL-<lang>.cmake modules
into a macro in a new Compiler/XL.cmake module. Invoke it from the
per-language files to produce the original settings.
Since commit e1729238 (Add initial XL C compiler flags for safer builds,
2009-09-30) CMake sets the initial XL C flags to include "-qthreaded"
and "-qhalt=e". Do the same for C++ and Fortran with this toolchain.
112f1dd FindOpenSSL: Use find_package_handle_standard_args for version check.
a091ba6 FindOpenSSL: Fixed crypto und ssl variable names.
a164649 FindOpenSSL: We should only use hints to find OpenSSL.
0fb5142 FindOpenSSL: Added support for pkg-config.
The regex was slightly wrong, it excluded the last line, so e.g.
/usr/include/ didn't end up in the .cproject file.
Thanks to Shash Chatterjee for the patch.
Alex
The AMD64 ABI document http://www.x86-64.org/documentation/abi.pdf
does specify that 64bits binary libraries should end up in <prefix>/lib64
and 32bits ones in <prefix>/lib. All but debian based distros do so,
and some like OpenSUSE even enforce the rule when packaging with RPM
and refuse to build the RPM if this is not the case.
After some discussion (see the bug notes) we cannot do that behind
the scene and the current fix supposes that the user shall use
the CMAKE_INSTALL_LIBDIR variables content in its INSTALL rules if
he wants to put the lib in the right place. CMAKE_INSTALL_LIBDIR
shall have the appropriate value depending on the Linux distribution
found and 32/64bitness of the host.
The cross-compiling case (even 32bits compile on a 64bits host)
is not handled.
The Cray Fortran compiler started using module init symbols in version 7.3.2.
Starting in commit 71287734 (Teach FortranC interface for Intel, PGI, and gcc
4.2, 2009-08-05) we provide C versions of the module init symbols so that the
detection executable can link when the C versions of the module-mangled symbols
are picked up.
If no C module-mangled symbol matches then we cannot let the C module init
symbol appear because it will be duplicated by the Fortran copy that provides
the module-mangled symbol. This was first handled for the PathScale compiler
in commit 21faaa5d (FortranCInterface: Fix PathScale detection, 2010-01-22) and
commit 46858720 (FortranCInterface: Fix PathScale detection again, 2010-02-16).
Handle it now for the Cray compiler too.
86cb17b Pass include directories with response files to GNU on Windows
9a0b9bc Optionally pass include directories with response files
6e8a67f Generate target-wide flags before individual build rules
d099546 Factor old-style -D flags out from -I flag generation
Also, comment out all "debugging" calls to message() that helped
us interpret the output on other platforms when running on the
dashboard clients.
Using ERROR_QUIET avoids unnecessary stderr output while calling
external tools to determine the processor count. If there's an
error parsing the output, we set the count to 0 anyhow.
Also, the test will fail on a CMake dashboard run if the count
comes back equal to 0.
Now that the code is "done"-ish, remove the debugging output.
Expect no output on stdout or stderr when calling the
ProcessorCount function from now on.
This check if the function exists and the prototype we want to use is
correct. There are still functions which have different prototypes on
different UNIX systems.
The GNU 4.x toolchain on MinGW (and therefore MSYS) allows compiler
options to be passed via response files. Use this to pass include
directory -I options. This allows the include file search path to be
very long despite shell and mingw32-make command line length limits.
Also, add message output (temporarily) for gathering data
on all the dashboard machines. After the test runs on the
overnight dashboards tonight, I'll comment out the message
output and commit/push again.
Credit goes to David Cole ( http://www.kitware.com/blog/home/post/63 ).
Also add a script-based test of the new module.
Signed-off-by: Michael Wild <themiwi@users.sourceforge.net>
ade04de Remove debbuging typo
a201028 CPack try to please SUSE 64 bits and install lib in lib64 and not lib.
7ebbcf1 CPackRPM non matching ENDIF
0e07b42 CPackRPM even more trace in debug mode or in case of failure
564b731 CPackRPM add more trace output in order to help failing diagnostics