Commit Graph

1419 Commits

Author SHA1 Message Date
Alexander Neundorf 93223f7dc0 BUG: if Qt is installed as a framework, add -F to the command line so
Q_WS_MAC can be detected correctly

Alex
2007-09-19 09:35:37 -04:00
Bill Hoffman 0eba9b638f ENH: allow for desktop link to be created and fix chop of last char in PATH on uninstall 2007-09-18 15:16:21 -04:00
Alexander Neundorf ec207513e4 BUG: make the string static, otherwise the contents are gone when we exit
the function (same fix as in VTK/CMake/)

Alex
2007-09-18 15:13:22 -04:00
Alexander Neundorf 4ee1ee1bd0 ENH: add support for the Portland Compiler to CMake, can build cmake and the tests pass (except the wrapping tests, which fail to link to the g++-compiled Qt)
Alex
2007-09-17 15:55:17 -04:00
Bill Hoffman 298b1491e6 ENH: allow for installation of debug libs 2007-09-17 15:26:59 -04:00
Bill Hoffman 9cbb998737 ENH: add support for vs 2008 beta 2 2007-09-17 15:21:47 -04:00
Alexander Neundorf 5ceafcb7e2 STYLE: mark the generator options as advanced
Alex
2007-08-31 16:27:08 -04:00
Alexander Neundorf 52bf51b425 ENH: add support for the next python release, python 2.6
Alex
2007-08-30 13:35:54 -04:00
Alexander Neundorf 483a147136 ENH: fail with error if trying to create a RPM stating that rpmbuild can't
handle spaces

Alex
2007-08-29 16:31:46 -04:00
Alexander Neundorf c3b42e90ed ENH: add flag so a terminating slash for the link path can be specified (needed by the Digital Mars D compiler)
Alex
2007-08-28 16:19:01 -04:00
Alexander Neundorf bd8b733d5e ENH: use the same CMAKE_SKIP_RPATH setting in CHECK_C/CXX_SOURCE_RUNS as in
the main project. I think it doesn't make sense if a project disables
RPATH, uses CHECK_C_SOURCE_RUNS() to see if something is able to run, and
this succeeds because it has been built with RPATH, but an executable built
within the project won't be able to run since it has been built without
RPATH.

Alex
2007-08-28 10:52:07 -04:00
Alexander Neundorf c41f798383 COMP: make it build on NetBSD, which has separate curses and ncurses, so
it has to be detected that curses isn't good enough, but ncurses is, and
that ncurses.h instead of curses.h is included

Alex
2007-08-27 09:01:14 -04:00
Alexander Neundorf 983e2a9a51 BUG: KDEDIRS contains the kde install locations, not the binary dirs, so
make KDEDIRS actually work in FindKDE4.cmake

Alex
2007-08-26 03:29:13 -04:00
Alexander Neundorf 1410eef27a STYLE: fix typo
Alex
2007-08-26 02:42:46 -04:00
Alexander Neundorf f35f1ac9ab STYLE: fix typo in the docs
Alex
2007-08-24 08:40:57 -04:00
Alexander Neundorf 6fd330b9e8 ENH: support QtScript
Alex
2007-08-21 16:51:30 -04:00
Alexander Neundorf b0b34dc7e5 ENH: support QtScript (since Qt 4.3), #4632
Alex
2007-08-21 16:50:49 -04:00
Alexander Neundorf 68c2dd8009 COMP: also use -Wl,-relax and -lc -lnss etc. when using the IBM compiler
Alex
2007-08-17 10:41:27 -04:00
Alexander Neundorf 45da4d2f80 ENH: patch from Eric Noulard for an RPM package generator
It seems rpmbuild can't handle paths with spaces, it complains that
Buildroot takes only one tag (or something like this), quoting and escaping
don't seem to help.

Alex
2007-08-17 09:13:15 -04:00
Bill Hoffman 038f3e240c ENH: use the correct flag for the linker 2007-08-17 09:00:13 -04:00
Alexander Neundorf fee42f6e68 STYLE: this wasn't intended to be committed
Alex
2007-08-16 15:03:31 -04:00
Alexander Neundorf 6b0e5745ab ENH: add -Wl,-relax to the default linker flags for BlueGene, otherwise you can get "relocation truncated to fit" errors
Alex
2007-08-16 15:02:14 -04:00
Bill Hoffman 8ee6fc0598 ENH: make sure osx searches static and shared libs like other platforms 2007-08-16 09:22:29 -04:00
Alexander Neundorf 5fdb818c84 COMP: fix arguments
Alex
2007-08-16 08:37:17 -04:00
Alexander Neundorf b100fe1fe1 STYLE: don't use an extra file to generate CMakeSystem.cmake but instead
configure the toolchain file into it if required
-also search for nm, objdump and objcpy, so these can be used in macros

Alex
2007-08-15 14:26:00 -04:00
Alexander Neundorf 984b0adc5f STYLE: explicitely set default options for sdcc, so it is visible for which
processor it currently compiles, use --out-fmt-ihx to enforce .ihx files

Alex
2007-08-15 14:22:54 -04:00
Alexander Neundorf 58b0e31784 COMP: ccmake requires ncurses, according to Berk and since it doesn't build
on NetBSD where there are separate curses and ncurses libraries, and where
the curses library is found, which doesn't work for ccmake while the
existing ncurses library would work.
With this change it should be possible to test whether the found curses lib
provides ncurses functionality.

Alex
2007-08-15 09:43:01 -04:00
Alexander Neundorf 281e08131a BUG: fix typo
Alex
2007-08-14 10:20:20 -04:00
Alexander Neundorf dfbd4ce0f2 ENH: deb generator: don't use the system provided ar, but do it yourself
using the code from OpenBSD ar
COMP: don't build all package generators on all platforms

Alex
2007-08-14 08:40:40 -04:00
Alexander Neundorf 263bb4e172 ENH: for universal binaries return the endianess based on the processor
Alex
2007-08-13 11:04:19 -04:00
Alexander Neundorf c2e714c079 COMP: turn error into warning for now
Alex
2007-08-12 21:08:14 -04:00
Alexander Neundorf 578841cce5 STYLE: remove unused CheckTypeSize.c.in
ENH: change test for endianess from TRY_RUN() to TRY_COMPILE() by testing
the binary image of a 16bit integer array, tested on Linux x86, Intel Mac
and Sun (big endian)

Alex
2007-08-10 13:14:00 -04:00
Alexander Neundorf 1fe4220669 STYLE: remove unnecessary default search paths
Alex
2007-08-10 11:37:29 -04:00
Alexander Neundorf 40e55ab780 BUG: fix compiler id test on cygwin
Alex
2007-08-10 09:20:14 -04:00
Alexander Neundorf 512e0d40ef ENH: set UNIX, WIN32 and APPLE in cmMakefile.cxx as it was before, so it
works for scripts, then reset them in CMakeSystemSpecificInformation.cxx, so
the platform modules can set them again for the target system

Alex
2007-08-10 09:07:39 -04:00
Alexander Neundorf f9cb0f3cb4 BUG: also include UnixPaths.cmake on these platforms, this also sets UNIX to 1
Alex
2007-08-10 08:54:42 -04:00
Alexander Neundorf 97b57fbaa4 BUG: use CMAKE_HOST_UNIX here instead of UNIX
Alex
2007-08-09 16:47:35 -04:00
Alexander Neundorf 176fe63d15 ENH: UNIX, CYGWIN, WIN32, APPLE, QNXNTO and BEOS are not longer set in
cmMakefile.cxx, but now in the platform files and are now valid for the
target platform, not the host platform.
New variables CMAKE_HOST_WIN32, CMAKE_HOST_UNIX, CMAKE_HOST_APPLE and
CMAKE_HOST_CYGWIN have been added in cmMakefile.cxx (...and have now to be
used in all cmake files which are executed before
CMakeSystemSpecificInformation.cmake is loaded). For compatibility the old
set is set to the new one in CMakeDetermineSystem.cmake and reset before the
system platform files are loaded, so custom language or compiler modules
which use these should still work.

Alex
2007-08-09 14:45:23 -04:00
Alexander Neundorf 4b92b89664 BUG: work with spaces in the path
Alex
2007-08-09 11:05:32 -04:00
Alexander Neundorf 4ba24ce474 ENH: patch from Mathieu: more entries in the debian control file
Alex
2007-08-08 14:18:13 -04:00
Alexander Neundorf 7432ef206e ENH: add empty RPM package generator, Eric Noulard wants to work on it
Alex
2007-08-08 11:33:42 -04:00
Alexander Neundorf 88bb17bee9 STYLE: find Dart quietly (so it doesn't go in the feature log)
Alex
2007-08-07 15:42:37 -04:00
Alexander Neundorf 8d7b502337 ENH: add global properties for collecting enabled/disabled features during
the cmake run and add macros print_enabled/disabled_features() and
set_feature_info(), so projects can get a nice overview at the end of the
cmake run what has been found and what hasn't
FIND_PACKAGE() automatically adds the packages to these global properties,
except when used with QUIET
Maybe this can also be useful for packagers to find out dependencies of
projects.

Alex
2007-08-07 15:41:57 -04:00
Alexander Neundorf af1b145b3b STYLE: fix typo
Alex
2007-08-06 22:08:59 -04:00
Alexander Neundorf b82b47e329 STYLE: use FIND_PACKAGE_HANDLE_STANDARD_ARGS() also in FindMPI.cmake
-remove unnecessary ELSE() in FindThreads.cmake

Alex
2007-08-06 11:02:58 -04:00
Bill Hoffman 70585819fb ENH: threads used to include this 2007-08-06 10:42:45 -04:00
Alexander Neundorf 68674bd0d7 ENH: better error messages from the debian package generator
-don't display the cpack help if a generator failed with some problem
-check for cmSystemTools::GetErrorOccuredFlag()

Alex
2007-08-03 15:26:30 -04:00
Alexander Neundorf f32aa8f296 ENH: make the python modules usable for C and C++ and only write the header
if it has changed

Alex
2007-08-02 15:48:51 -04:00
Alexander Neundorf dac7814841 ENH: use WindowsPaths.cmake on all Windows platforms, not only for cl, makes
the mingw cross compiler work out of the box and should help mingw users on
windows with a common install dir

Alex
2007-08-02 11:17:32 -04:00
Alexander Neundorf 21f73ebc36 ENH: add support for Catamount, the OS running on the compute nodes of Cray super computers
Alex
2007-08-01 09:14:32 -04:00
Alexander Neundorf 7beee2df48 STYLE: don't use FIND_INCLUDE_FILE() but only FIND_INCLUDE_FILES() in
FindThreads.h

BUG: improve CheckC(XX)SourceRuns.cmake so that it works with cross
compiling, the return value has to go in the cache but shouldn't overwrite
the actual return value, and it should go only in the cache if we have a
result from try_run() otherwise we won't get here again if we have a result
later on

Alex
2007-07-31 13:30:10 -04:00
Alexander Neundorf 507896e03b ENH:
-add /usr/openwin/include and /usr/openwin/lib to the default search paths
-add /${CMAKE_INSTALL_PREFIX}/(lib|bin|include) to the default cmake search
paths -> this should help users who install stuff in their home

Alex
2007-07-27 11:57:17 -04:00
Alexander Neundorf d6a0c330bc ENH: deb generator can now generate deb packages
-remove the unscriptable commands also from the cpack cmake
-use CPACK_PACKAGE_CONTACT in CMakeCPack.cmake, it's used in the nsis and
the deb generator
-make set_properties() scriptable
-use a non-const char array for adding the python modules

Alex
2007-07-27 08:59:59 -04:00
Alexander Neundorf 7e9eed0230 COMP: same as in VTK, build modules by default as shared if the platform
supports this, don't include shared modules in the generated header

Alex
2007-07-25 15:08:37 -04:00
Alexander Neundorf a39aff52a0 ENH: add an empty debian package generator, Mathieu volunteered to fill it
:-)

Alex
2007-07-25 10:57:33 -04:00
Alexander Neundorf 919265516e ENH: add ReadListFile() to cmCPackGenericGenerator, so cmMakefile can be
private again
-convert the ZIP generator to use a cmake script instead of hardcoding
everything (CPackZIP.cmake)

Alex
2007-07-24 12:52:39 -04:00
Alexander Neundorf 8a6e2bb81d ENH: determine the current system also in cpack, so the search paths are
loaded
Additionally the makefile in cmCPackGenericGenerator is now protected
instead of private, so with these two changes the cpack generators should
now be able to find their tools and how to call these tools from cmake
scripts, instead of hardcoding the search order and command line (as done
e.g. in cmCPackZIPGenerator.cxx)

Alex
2007-07-24 10:00:26 -04:00
Alexander Neundorf 3c92cfbea0 STYLE: mark the variable as advanced
Alex
2007-07-23 11:22:14 -04:00
Alexander Neundorf 13db5b578b ENH: add second failure message parameter to
FIND_PACKAGE_HANDLE_STANDARD_ARGS(), so cmake modules can specify their own
better failure messages. If the default is ok use "DEFAULT_MSG".
Do this also for FindBoost.cmake (#5349)

Alex
2007-07-23 09:49:52 -04:00
Alexander Neundorf 3a12116e39 ENH: try if tail works with the -n +<number> syntax, if not use only
"+<number>" (GNU tail warns that this is deprecated)

Alex
2007-07-19 15:39:58 -04:00
Alexander Neundorf 0f4985ea23 ENH: add TK_FOUND and TCLTK_FOUND
TCL_FOUND is now TRUE if Tcl was found, before it was only TRUE if Tcl and
Tk were found

Alex
2007-07-19 13:40:23 -04:00
Alexander Neundorf 3907d59445 BUG: fix typo
Alex
2007-07-19 11:59:04 -04:00
Alexander Neundorf f0b6f02746 ENH: make the list of modules global
Alex
2007-07-19 11:47:23 -04:00
Alexander Neundorf 3d862c44f1 ENH: only load the static modules in the LoadAll function
Alex
2007-07-19 10:20:21 -04:00
Alexander Neundorf ad8efca061 BUG: fix #5329, if /usr/xpg4/bin/tail exists, use this one -> on SunOS
/usr/bin/tail doesn't understand the -n +<number> syntax
-remove standard searchd dirs from FindPHP4.cmake

Alex
2007-07-19 09:42:57 -04:00
Alexander Neundorf c7770b8edb ENH: use the new FIND_PACKAGE_HANDLE_STANDARD_ARGS() macro in most of the
not-too-complicated modules
-remove unnecessary default search paths used in the FIND_XXX() calls

Alex
2007-07-19 09:00:51 -04:00
Alexander Neundorf b5f656e0de ENH: use the new FIND_PACKAGE_HANDLE_STANDARD_ARGS in some of the FindXXX
modules, remove some of the extra search paths which are also searched by
default

Alex
2007-07-18 13:56:45 -04:00
Alexander Neundorf e118a62709 ENH: add a macro FIND_PACKAGE_HANDLE_STANDARD_ARGS(LibXml2 LIBXML2_LIBRARIES LIBXML2_INCLUDE_DIR)
which handles the required and QUIET arguments and sets <NAME>_FOUND

Alex
2007-07-18 13:26:02 -04:00
Alexander Neundorf ff9ed18dad ENH: if CMAKE_(C|CXX)_COMPILER is preset to a list of two elements, use the
first one as the compiler and the second one as ARG1 for the compiler

Alex
2007-07-18 10:52:53 -04:00
Alexander Neundorf 57f25c53e3 ENH: also look in the include/, lib/ and bin/ directories in the cmake
install dir under windows, this will help e.g. people using kdewininstaller
and similar setups

Alex
2007-07-17 08:51:45 -04:00
Alexander Neundorf 7eb86d1e3c ENH: don't hardcode the /lib/kde3/ directory for the libtool files, but make
it adjustable and detect if libkdecore.so is a 64bit library

Alex
2007-07-17 08:41:20 -04:00
Alexander Neundorf ce33d80fa5 BUG: the Plugin test fails on NetBSD, let's see if this fixes it
Alex
2007-07-16 10:13:00 -04:00
Alexander Neundorf 5bd38eb630 ENH: also add the install base dir of the running cmake to the search
directories for the FIND_XXX() commands, for the case that somebody has its
own install tree

Alex
2007-07-16 09:08:45 -04:00
Alexander Neundorf 2339b9f753 ENH: add DragonFly BSD, which is very close to FreeBSD (#4500)
Alex
2007-07-13 11:20:42 -04:00
Alexander Neundorf 8e6f6155c0 BUG: the SET( ... CACHE INTERNAL) didn't work as expected, since the
variable is already added to the cache inside cmTryRunCommand.cxx, so the
value used here was ignored. Additionally the INTERNAL made it internal,
which shouldn't be done when cross compiling, since here the user is
required to edit this variable manually e.g. using ccmake.

Alex
2007-07-13 10:29:36 -04:00
Alexander Neundorf 2509e24afe ENH: add the static libs always to the link libs, if they are not used it shouldn't hurt
Alex
2007-07-12 16:15:29 -04:00
Alexander Neundorf 3e72dbe4c2 ENH: add macro to test if a member has specified struct, e.g.
check_struct_has_member("struct stat" st_rdev    "${CFG_HEADERS}" HAVE_STRUCT_STAT_ST_RDEV)

Alex
2007-07-12 15:00:37 -04:00
Alexander Neundorf d090159318 ENH: add support for the ADSP toolchains for Blackfin, Shark and TigerShark
DSPs, patch from Raphael Cotty

Alex
2007-07-12 13:41:00 -04:00
Alexander Neundorf a5be2b7782 BUG: honor REQUIRED and QUIETLY (#5312)
Alex
2007-07-12 11:05:57 -04:00
Alexander Neundorf 021ceea1b0 ENH: second try for handling the linker language with integer priority values (returning a pointer to a string on the stack is no good idea)
Alex
2007-07-12 08:37:10 -04:00
Alexander Neundorf 16705a3e87 COMP: revert last commit for now, broke Visual Studio
Alex
2007-07-11 17:29:27 -04:00
Alexander Neundorf bea1a5de77 ENH: CMAKE_<LANG>_LINKER_PREFERENCE is now an integer priority, not a
two-step priority (None or Prefered)
Current order: ASM 0, C 10, Fortran 20, CXX 30, Java 40
This is the same order as automake choses:
http://www.gnu.org/software/automake/manual/html_node/How-the-Linker-is-Chosen.html

This change should be backward compatible:
if there is a project using fortran and CXX, they had to set the
LINKER_LANGUAGE explicitely, otherwise cmake complained (but still generated
the project files). Explicitely setting the linker language still overrides
automatic detection.
If somebody has a custom language for cmake and the PREFERENCE starts with
"P", its changed to 100, which gives it preference over all other languages
(except the other custom languages which have also "Prefered"). "None" is
converted to 0.

Alex
2007-07-11 16:22:04 -04:00
Alexander Neundorf d885d45b0f ENH: add CMAKE_INCLUDE_FLAG_ASM${ASM_DIALECT} and don't allow preset
CMAKE_xxx_INFORMATION files

Alex
2007-07-11 13:39:51 -04:00
Alexander Neundorf 3eced4a222 STYLE: use EXECUTE_PROCESS() instead of EXEC_PROGRAM()
Alex
2007-07-10 21:38:34 -04:00
Alexander Neundorf 1f7e8e6f0b ENH: add the ecos include dir and the ecos definitions by default
Alex
2007-07-10 17:11:57 -04:00
Alexander Neundorf 3974ddc69e ENH: add support for building eCos applications natively
Alex
2007-07-09 13:07:23 -04:00
Alexander Neundorf d9ec3bbe43 STYLE: don't test twice for APPLE
Alex
2007-07-03 11:41:37 -04:00
Alexander Neundorf 58fcc23a47 COMP: with visual studio it's no error if link isn't found
Alex
2007-07-02 15:54:41 -04:00
Alexander Neundorf fda7753f5c ENH: make supporting embedded compilers need a user specific linker file for
compiling an executable (amd thus cannot build the compiler-id program)
easier by providing CMAKE_FORCE_XXX() macros which force cmake to use the
given compilers anyway

Alex
2007-07-02 14:18:16 -04:00
Alexander Neundorf 930bb0cd37 ENH: remove support for presetting CMAKE_SYSTEM_INFO_FILE,
CMAKE_SYSTEM_AND_C_COMPILER_INFO_FILE, CMAKE_SYSTEM_AND_CXX_COMPILER_INFO_FILE,
CMAKE_SYSTEM_AND_C_COMPILER_AND_PROCESSOR_INFO_FILE and CMAKE_SYSTEM_AND_CXX_COMPILER_AND_PROCESSOR_INFO_FILE

Instead of presetting these variables to arbitrary filenames, users should
set up CMAKE_SYSTEM_NAME and the compilers correctly and also create a
Platform/ directory so these files will all follow the official cmake style,
which should make it easier to understand and debug project which have their
own platform/toolchain support files.

-remove support for a suffix to MS crosscompilers, since this is not (yet)
supported by cmake and might confuse users

Alex
2007-07-02 13:29:36 -04:00
Alexander Neundorf 3c1c335800 BUG: with MS Visual Studio currently there is no compiler id, so check the
generator too

Alex
2007-07-02 12:46:55 -04:00
Alexander Neundorf 5b18b80b58 ENH: initial support for assembler in cmake, needs testing by our users
Alex
2007-06-28 09:14:27 -04:00
Alexander Neundorf d44bd2551c BUG: use ${LANG}_COMPILER_ARG1 also here, otherwise some compilers won't be
able to compile e.g. the C++ source file (e.g. the ADSP compiler needs -c++
for compiling C++ files)

Alex
2007-06-27 14:55:42 -04:00
Brad King eab81489f1 ENH: Added global property FIND_LIBRARY_USE_LIB64_PATHS to allow lib64 paths to be searched optionally. Turn off the feature on debian systems. This addresses debian report 419007. 2007-06-27 12:07:34 -04:00
Brad King a5e6f52a96 ENH: Added GNU/Hurd platform. Taken from debian patch 407155. 2007-06-27 11:42:10 -04:00
Alexander Neundorf 25a425ecf0 ENH: 2007-06-26 15:15:52 -04:00
Alexander Neundorf cd8687782b ENH: add basic support for sdcc (http://sdcc.sourceforge.net), needs sdcc (sdcclib) cvs for creating libraries)
Alex
2007-06-26 13:19:46 -04:00
Alexander Neundorf f8261ff9f7 STYLE: change global cmake variable CMAKE_TARGET_SUPPORTS_ONLY_STATIC_LIBS
to the first global cmake property TARGET_SUPPORTS_SHARED_LIBS

Alex
2007-06-26 13:05:27 -04:00
Alexander Neundorf 5fb7dab541 ENH: check for CMAKE_HOST_SYSTEM_NAME to decide whether to load
CMakeDetermineSystem.cmake, since CMAKE_SYSTEM_NAME might already be preset
when using cmake for cross compiling
use type STRING instead of FILEPATH since otherwise a strange filename was
generated

Alex
2007-06-26 13:00:42 -04:00
Alexander Neundorf 10e3efa6b5 ENH: add support for BlueGene/L
Alex
2007-06-22 10:22:27 -04:00
Alexander Neundorf 1383368628 ENH: print a warning if ADD_LIBRARY( SHARED/MODULE ) is used and the target
platform doesn't support shared libraries

Alex
2007-06-21 16:23:54 -04:00
Alexander Neundorf 0b804cbece STYLE: use IF(NOT ...) and remove MARK_AS_ADVANCED() for variables which are
not defined here

Alex
2007-06-18 18:01:15 -04:00
Alexander Neundorf df1edcb9d3 ENH: first include the processor specific file, then the compiler file, this
way the specific hardware file can set variables which can be used in the
toolchain rules (like CMAKE_C_COMPILE_OBJECT etc.)

Alex
2007-06-12 16:41:50 -04:00
Alexander Neundorf 6c02ec1a40 STYLE: add a comment about SetLanguageEnabled()
-add a Generic.cmake for target platforms without operating system

Alex
2007-06-11 15:47:35 -04:00
Alexander Neundorf 422dc631b6 ENH: split cmGlobalGenerator::SetLanguageEnabled() in two parts, where the
second part copies the values from the cmake variables into internal maps.
So this can now be done after the compiler-specific information has been
loaded, which can now overwrite more settings.

Alex
2007-06-11 15:31:42 -04:00
Brad King 1a71290836 BUG: Fixed name of variable used to check version of uic executable. 2007-06-11 15:02:03 -04:00
Alexander Neundorf 79077f8373 ENH: more consistence among the X11 components
Alex
2007-06-08 10:28:52 -04:00
Alexander Neundorf dddc9e3103 ENH: patch from #5054: also search for QtUitoolsd lib
Alex
2007-06-08 09:28:33 -04:00
Alexander Neundorf b956fc2406 STYLE: remove out commented code
Alex
2007-06-07 13:51:17 -04:00
Alexander Neundorf eab5a4350d ENH: also load a processor-specific file if exists
-also try the basename file if the compiler id file doesn't exist
-don't rely so much on the CMAKE_TOOLCHAIN_FILE

Alex
2007-06-05 10:28:43 -04:00
Alexander Neundorf 6989f80026 COMP: don't use stdio, it can fail on some embedded targets (sdcc)
Alex
2007-06-05 10:20:21 -04:00
Alexander Neundorf 442147504f COMP: make the new check_type_size work with the HPUX cc compiler: const doesn't exist there
Alex
2007-06-05 08:30:50 -04:00
Alexander Neundorf 74750610cf ENH: determine typesize by compiling a file and reading strings from the compiled output.
Tested with various gcc, XCode, MSVC7, sdcc
For OSX when doing TRY_COMPILE() CMAKE_OSX_ARCHITECTURES is used, if there are different results an error is generated. CMAKE_OSX_ARCHITECTURES can be overwritten for the TRY_COMPILES with CMAKE_TRY_COMPILE_OSX_ARCHITECTURES.

Alex
2007-06-04 17:08:46 -04:00
Alexander Neundorf f94b8cfd3c COMP: fix warnings on some machines where some X libs apparently don't
really work by reverting X11_LIBRARIES back to the old version
-add some more X11_xxx_FOUND variables
-reformat comments at the top
-always use IF(INCLUDE_DIR and LIB) for setting FOUND to TRUE

Alex
2007-06-01 13:17:23 -04:00
Alexander Neundorf eddf1cf39f ENH: improve TRY_RUN() for crosscompiling: instead of just failing, it now
creates two cache variables, one for the RUN_RESULT, one for the RUN_OUTPUT
(if required), which can be set or preset by the user. It has now also two
new arguments: RUN_OUTPUT_VARIABLE and COMPILE_OUTPUT_VARIABLE (the old
OUTPUT_VARIABLE merges both), so if only COMPILE_OUTPUT_VARIABLE is used the
run time output of the TRY_RUN is unused and the user doesn't have to care
about the output when crosscompiling. This is now used in FindThreads.cmake,
CheckC/CXXSourceRuns.cmake and TestBigEndian.cmake, which used the output
only for the logfile (compile output is still there). Test/TryCompile/ now
also tests the behaviour of OUTPUT_VARIABLE, RUN_OUTPUT_VARIABLE and
COMPILE_OUTPUT_VARIABLE.

Alex
2007-06-01 11:16:29 -04:00
Alexander Neundorf 5a6a3cd869 ENH: mostly synced with FindX11.cmake from KDE svn: now also searches for a
lot of additional X11 libs, like Xv, Xau, Xrandr and others

Alex
2007-05-30 12:09:34 -04:00
Alexander Neundorf eed7c8dec1 ENH: always provide CMAKE_SYSTEM_XXX() and MAKE_HOST_SYSTEM_XXX() variables,
so when cross compiling the build host platform can be tested

Alex
2007-05-29 11:36:07 -04:00
Alexander Neundorf 55f11b348b ENH: add option to FILE(STRINGS NO_HEX_CONVERSION) to disable automatic
conversion of hex and srec files to binary.
Without this automatic conversion, everywhere where a compiled file is parsed for strings the
a file(HEX2BIN somefile binfile) command has to be added otherwise it will
not work for these compilers. I tried this with DetermineCompiler and
CheckTypeSize and nobody will do this except the users who work with such
compilers. For them it will break if they don't add this conversion command
in all these places.
If FILE(STRINGS) is used with a text file, it
will in most cases still work as expected, since it will only convert hex
and srec files. If a user actually wants to get text out of hex files, he
knows what he's doing and will see the hint in the documentation.

Anyway, it should work without having to create a temporary file, will work
on this later.

Alex
2007-05-25 16:46:50 -04:00
Alexander Neundorf f4eb541880 ENH: make the compiler id detection work, even if the output file name of
the compiler is completely unknown and even if it produces intel hex or
motorola s-record files, with test

Alex
2007-05-25 15:22:22 -04:00
Alexander Neundorf c9aecb91cc STYLE: remove debug output, fix indentation
the tests run again successfully, but since CheckTypeSize will switch to a
TRY_COMPILE soon I will look at it again after this change

Alex
2007-05-24 16:03:39 -04:00
Alexander Neundorf 504ea6df4e COMP: try to fix the test failures on dash2
Alex
2007-05-24 14:30:09 -04:00
Alexander Neundorf 8fb8a44f5f ENH: add compiler id for sdcc
Alex
2007-05-24 09:35:24 -04:00
Alexander Neundorf e10e3bc86e ENH: add compiler id for IAR compiler (http://www.iar.com/)
ENH: don't run endian test again if the variable is already set

Alex
2007-05-24 08:33:05 -04:00
Brad King 2d051a6709 ENH: Unify design of CMakeCCompilerId.c, CMakeCXXCompilerId.cpp, and CMakePlatformId.h. BUG: Do not violate system-reserved symbol namespace _[A-Z]. 2007-05-23 11:00:54 -04:00
Alexander Neundorf 6e2fd2c2ca BUG: now the toolchain file is configured into the buildtree, otherwise e.g.
CMAKE_SOURCE_DIR can't be used there
ENH: modify CMakeCCompilerId.c and .h so that sdcc can compile them. As they
were the preprocessor produced:

 9 "test.c"
static char const info_compiler[] = "INFO:compiler["
# 40 "test.c"
""

"]";

and the mixing of the preprocessing directives and the string constants
didn't work.

Alex
2007-05-22 12:48:16 -04:00
Alexander Neundorf 6be930f0cf STYLE: move the two CMAKE_SHARED_LIBRARYC/CXX_FLAGS for gcc from
CMakeGenericSystem.cmake to gcc.cmake

Alex
2007-05-22 09:15:00 -04:00
Alexander Neundorf 71359f5b9d STYLE: use a separate source file for generating CMakeSystem.cmake if CMAKE_TOOLCHAIN_FILE is used
Alex
2007-05-21 11:26:40 -04:00
Alexander Neundorf c8dd1caff9 BUG: don't fail if a compiler is given in CMAKE_C/CXX_COMPILER but it can't
be found in the path

Alex
2007-05-21 10:58:04 -04:00
Alexander Neundorf 3b4aa3bf35 BUG: always search for ar, ranlib, etc. except under MSVC -> this should fix the mingw fortran test
-also generate the fortran test with the kdevelop generator

Alex
2007-05-21 10:15:42 -04:00
Brad King daca282db4 BUG: Use @ONLY substitution to configure CMakeSystem.cmake. 2007-05-20 10:08:38 -04:00
Alexander Neundorf a18d286635 ENH: move hack to fix "new cmake on old build tree on OSX doesn't have CMAKE_INSTALL_NAME_TOOL in the cache" from
cmInstallTargetGenerator.cxx to Darwin.cmake

Alex
2007-05-18 11:57:29 -04:00
Brad King 92c0f41251 ENH: Use CMAKE_PLATFORM_IMPLICIT_LINK_DIRECTORIES from platform files to block link directories. 2007-05-18 11:36:23 -04:00
Alexander Neundorf 15a7414a60 COMP: if a new cmake runs on an old build tree, set CMAKE_LINKER to link to make it link
Alex
2007-05-18 10:55:35 -04:00
Alexander Neundorf 891f2130cf COMP: fix link rules with nmake, the linker command has to be converted to shortpath form for nmake
Alex
2007-05-18 10:32:22 -04:00
Alexander Neundorf d9bbc3f45f STYLE: fdcorrect comments about FC/CC
Alex
2007-05-18 09:16:07 -04:00
Brad King 8780da000a BUG: If the Fortran CompilerId source fails to compile it should not be a failure. It is only expected to work for Fortran90 compilers. 2007-05-18 09:08:49 -04:00
Alexander Neundorf ba2988e4c5 ENH: fail if install_name_tool wasn't found
Alex
2007-05-17 16:49:31 -04:00
Brad King 58debfd6bd ENH: Use IF(NOT DEFINED) check to short-circuit size test. 2007-05-17 15:17:45 -04:00
Alexander Neundorf 61d3444f93 ENH: merge CMake-CrossCompileBasic to HEAD
-add a RESULT_VARIABLE to INCLUDE()
-add CMAKE_TOOLCHAIN_FILE for specifiying your (potentially crosscompiling) toolchain
-have TRY_RUN() complain if you try to use it in crosscompiling mode (which were compiled but cannot run on this system)
-use CMAKE_EXECUTABLE_SUFFIX in TRY_RUN(), probably TRY_RUN won't be able to
run the executables if they have a different suffix because they are
probably crosscompiled, but nevertheless it should be able to find them
-make several cmake variables presettable by the user: CMAKE_C/CXX_COMPILER, CMAKE_C/CXX_OUTPUT_EXTENSION, CMAKE_SYSTEM_NAME, CMAKE_SYSTEM_INFO_FILE
-support prefix for GNU toolchains (arm-elf-gcc, arm-elf-ar, arm-elf-strip etc.)
-move ranlib on OSX from the file command to a command in executed in cmake_install.cmake
-add support for stripping during install in cmake_install.cmake
-split out cl.cmake from Windows-cl.cmake, first (very incomplete) step to support MS crosscompiling tools
-remove stdio.h from the simple C program which checks if the compiler works, since this may not exist for some embedded platforms
-create a new CMakeFindBinUtils.cmake which collects the search fro ar, ranlib, strip, ld, link, install_name_tool and other tools like these
-add support for CMAKE_FIND_ROOT_PATH for all FIND_XXX commands, which is a
list of directories which will be prepended to all search directories, right
now as a cmake variable, turning it into a global cmake property may need
some more work
-remove cmTestTestHandler::TryExecutable(), it's unused
-split cmFileCommand::HandleInstall() into slightly smaller functions

Alex
2007-05-17 13:20:44 -04:00
Bill Hoffman 871f7cf222 ENH: fix up compiler id to be more robust 2007-05-17 10:07:51 -04:00
Bill Hoffman 0c7130905d BUG: make sure this thing compiles on 64 bit machines 2007-05-17 08:38:07 -04:00
Brad King e1260b8468 ENH: Enabled preprocessor make rules for Watcom. 2007-05-16 13:26:47 -04:00
Brad King 93b94ce443 STYLE: Added basic usage documentation. 2007-05-15 10:23:40 -04:00
Bill Hoffman 9323a27989 ENH: initial support for creation of frameworks on Mac 2007-05-08 10:32:54 -04:00
Brad King 96232d4052 BUG: Detect debian with existence of /etc/debian_version so things work in a chroot install. This is suggested in bug#4805. 2007-05-07 18:17:32 -04:00
Brad King 44ab336a0c ENH: Merging CompilerId updates from branch CMake-Modules-CompilerId to the main tree. Changes between CMake-Modules-CompilerId-mp1 and CMake-Modules-CompilerId-mp2 are included. 2007-05-03 08:24:32 -04:00
Brad King 2db8d671e7 ENH: Changed GNUC compiler id name to GNU. 2007-05-01 14:35:55 -04:00
Brad King 5f1db8b249 STYLE: Added comment explaining choice of file extension. 2007-04-30 18:10:37 -04:00
Brad King 3b744d0804 BUG: Need to install CMakeCXXCompilerId.cpp so that C++ compiler identification works in an install tree. 2007-04-30 18:09:04 -04:00
Alexander Neundorf 412c0f4a61 STYLE: comment which says which variables this macro sets
Alex
2007-04-30 17:05:32 -04:00