Commit Graph

7000 Commits

Author SHA1 Message Date
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
Brad King e40c51dddf BUG: Fixed cmCommandArgumentLexer no-escape mode to not match backslash-escape sequences as lexical tokens at all. Needed to configure files with backslashes preceding an @VAR@ replacement. This fixes bug#5130. 2007-06-04 15:57:33 -04:00
Alexander Neundorf e9fc2cb086 STYLE: fix typo: now double space after -D
Alex
2007-06-04 13:50:34 -04:00
Alexander Neundorf 003654670b ENH: -U for removing variables now uses globbing expressions
-cmCacheManager: now also variables with type UNINITIALIZED are saved in
CMakeCache.txt, these are the vars defined using -DFOO=foo but without type

Alex
2007-06-04 13:48:11 -04:00
Ken Martin 8fdca686b3 ENH: fix passing of time limit to some ctest invocations that also use build-options 2007-06-04 13:39:43 -04:00
Andy Cedilnik 3bcec6e36c STYLE: Nightly Version update 2007-06-03 10:48:11 -04:00
Bill Hoffman fe1c4649ef ENH: remove debug that caused tests to fail 2007-06-02 16:15:01 -04:00
Andy Cedilnik f1745fbb8d STYLE: Nightly Version update 2007-06-02 06:33:59 -04:00
Bill Hoffman fa8f556a9d ENH: opps 2007-06-01 23:06:14 -04:00
Bill Hoffman 7bdad54614 ENH: initial bullseye stuff 2007-06-01 15:40:07 -04:00
Alexander Neundorf 0be0283f30 BUG: also put a variable into the cache when defined using -D if no type is
given, then STRING is used. Also add command line option -U as suggested for
undefining cache variables. This fixes #4896 and #4264.

Alex
2007-06-01 14:16:46 -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 26a5a295eb ENH: also handle comments for variables which contain newlines
Alex
2007-06-01 11:06:48 -04:00
Bill Hoffman 8cba2c55f9 BUG: fix crash, bug 5121 2007-06-01 09:18:08 -04:00
Andy Cedilnik fa858bc22c STYLE: Nightly Version update 2007-05-31 22:06:35 -04:00
Alexander Neundorf 66580ab341 ENH: if get_target_property() doesn't find a target with the given name, it
returns now "<NAME_OF_VAR>-NOTFOUND" instead of just "NOTFOUND", which can help
in finding problems

Alex
2007-05-31 12:03:52 -04:00
Andy Cedilnik a8d96319bb STYLE: Nightly Version update 2007-05-30 05:28:09 -04:00
Alexander Neundorf cfee916b7c COMP: less warnings with msvc8
Alex
2007-05-29 08:42:39 -04:00
Andy Cedilnik 25c6073080 STYLE: Nightly Version update 2007-05-29 05:26:30 -04:00
Brad King fac5d4845a BUG: Finished previous fix. 2007-05-28 17:49:03 -04:00
Brad King b4fb25941a COMP: Fixed shadowed local warning. 2007-05-28 13:46:10 -04:00
Brad King 25db01d7c4 ENH: Removed unused methods that should never be used anyway. 2007-05-28 13:32:17 -04:00
Brad King f944711917 STYLE: Fixed comment for Generate() method. 2007-05-28 12:23:32 -04:00
Brad King 3d822e3a25 ENH: Moved link library related code from GenerateSourceFilesFromSourceLists to AnalyzeLibDependencies to make the former do no more than what its name says. 2007-05-28 12:05:28 -04:00
Brad King 09289aadb6 ENH: Removed "Used" mark from custom commands. It is no longer needed or checked by any generators. 2007-05-28 11:18:15 -04:00
Brad King 60f02a27db ENH: Remove unused build rules from Xcode. This change was made in the VS generators on 2006-03-23 and should have been made for the Xcode generator too. Also commented out some debug print statements. 2007-05-28 11:16:50 -04:00
Brad King 0fa1bd2f71 COMP: Fix build on mac after change to GetSourceFiles signature. 2007-05-28 11:03:11 -04:00
Brad King 14d50b086f COMP: Fix build of XCode generator after change to GetSourceFiles signature. 2007-05-28 11:02:45 -04:00
Andy Cedilnik 2ea5caf13c STYLE: Nightly Version update 2007-05-28 11:02:27 -04:00
Brad King 27a0677d3e COMP: Fix build for windows-only generators after change to GetSourceFiles signature. 2007-05-28 11:00:26 -04:00
Brad King 3f2dd9bc54 ENH: Made cmTarget::GetSourceFiles method return reference to const so addition of cmSourceFile pointers must be done with an access method in cmTarget. 2007-05-28 10:25:03 -04:00
Brad King ba8ec0d5cf ENH: Made cmSourceFile::GetDepends return reference to const so dependencies can be added only by an access method in cmSourceFile. 2007-05-28 10:11:44 -04:00
Brad King d2f62e6ac3 ENH: Made cmTarget::GetSourceLists return a reference to const so that all additions of sources must go through access methods in cmTarget. 2007-05-28 09:59:08 -04:00
Alexander Neundorf 00c9964a8c COMP: fix warning on MSVC 8: conversion from 'size_t' to 'unsigned int', possible loss of data
Alex
2007-05-28 08:31:26 -04:00
Andy Cedilnik 9b5ed0cfa9 STYLE: Nightly Version update 2007-05-27 18:47:09 -04:00
Bill Hoffman a3d4d549ba ENH: @ must be escaped in xcode projects 2007-05-27 10:32:22 -04:00
Andy Cedilnik 4168dba9d9 STYLE: Nightly Version update 2007-05-27 04:31:38 -04:00
Andy Cedilnik 123a81088c STYLE: Nightly Version update 2007-05-26 14:26:00 -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 d6f779a9b0 COMP: less warnings (signed vs. unsigned)
Alex
2007-05-25 16:23:57 -04:00
Brad King 775f012fae BUG: Need to create global targets before AddHelperCommands is called. We should investigate creating global targets at the beginning of the configure step even if their commands are not populated or if they will not actually be generated later. 2007-05-25 15:51:33 -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 1ed238c7f5 BUG: remove debug output
Alex
2007-05-25 12:05:59 -04:00
Brad King 22a1df0576 BUG: Fix FILES mode after recent changes. 2007-05-25 11:08:52 -04:00
Brad King 92ec498b8c BUG: Fixed INSTALL_FILES and INSTALL_PROGRAMS commands to install under the prefix like they did before the recent changes. 2007-05-25 11:01:20 -04:00
Andy Cedilnik 9192d1d153 STYLE: Nightly Version update 2007-05-25 06:55:01 -04:00
Bill Hoffman d0f12061c3 ENH: add copy header stuff 2007-05-24 17:06:32 -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 7147c3e1cc ENH: add COPY_FILE argument to TRY_COMPILE, so the compiled executable can
be used e.g. for getting strings out of it.

Alex
2007-05-24 12:06:59 -04:00
Alexander Neundorf 7d7aba292c ENH: add two simple tests for TRY_RUN()
STYLE: create a new base class cmCoreTryCompile, from which
cmTryCompileCommand and cmTryRunCommand are derived, so there are no public
static functions with lots of arguments anymore

Alex
2007-05-24 11:27:51 -04:00
Alexander Neundorf 00e6d62fd1 ENH: move output file search to cmTryCompileCommand.cxx, so it can be used
there too... many public static functions with lots of arguments... :-/

Alex
2007-05-24 08:56:14 -04:00
Alexander Neundorf 79756b0e67 BUG: don't use non-imported target when cross compiling as commands in custom commands
STYLE: remove now invalid comments, use this->

Alex
2007-05-24 08:43:31 -04:00
Alexander Neundorf 1835c327ff STYLE: use "items" instead od "item"
Alex
2007-05-24 08:18:46 -04:00
Andy Cedilnik 4df8826d6c STYLE: Nightly Version update 2007-05-24 05:26:22 -04:00
Brad King 5639c69d39 ENH: Removed unused code now that INSTALL_FILES and INSTALL_PROGRAMS are not targets. 2007-05-23 18:23:17 -04:00
Brad King 9d75da9eaf ENH: Removed unused code now that INSTALL_FILES and INSTALL_PROGRAMS are not targets. 2007-05-23 18:22:52 -04:00
Brad King ea44d68cb6 BUG: Need to use GetRealDependency for custom command file-level dependencies. 2007-05-23 17:21:08 -04:00
Brad King ba7780a3c4 ENH: Fixed INSTALL_FILES and INSTALL_PROGRAMS commands to not create targets. No targets of type cmTarget::INSTALL_FILES or cmTarget::INSTALL_PROGRAMS are created, so we do not need to check for them everywhere anymore. 2007-05-23 15:40:12 -04:00
Brad King c288da754a BUG: Target names in the COMMAND part of a custom command should not create a file-level dependency that forces the command to rerun when the executable target rebuilds, but the target-level dependency should still be created. Target names in a DEPENDS should do both a target-level and file-level dependency. Updated the BuildDepends test to check that this works. 2007-05-23 13:27:00 -04:00
Brad King 702d785c9a BUG: Add ./ to custom command executables in the top of the build tree even when the path is generated by target name replacement. 2007-05-23 12:05:05 -04:00
Alexander Neundorf 526b72e12c COMP: don't user string::clear(), fix warnings about unused variables
Alex
2007-05-23 08:24:29 -04:00
Andy Cedilnik 1d84b36935 STYLE: Nightly Version update 2007-05-22 17:10:02 -04:00
Alexander Neundorf bef8d3580b COMP: compile fix
Alex
2007-05-22 11:05:59 -04:00
Alexander Neundorf b37cc6072f COMP: compile fix and remove warning
Alex
2007-05-22 10:42:37 -04:00
Alexander Neundorf 4878c00905 ENH: add the IMPORT keyword to ADD_EXECUTABLE(), which generates an
"imported" executable target. This can then be used e.g. with
ADD_CUSTOM_COMMAND() to generate stuff. It adds a second container for
"imported" targets, and FindTarget() now takes an additional argument bool
useImportedTargets to specify whether you also want to search in the
imported targets or only in the "normal" targets.

Alex
2007-05-22 10:24:59 -04:00
Andy Cedilnik b759765134 STYLE: Nightly Version update 2007-05-22 04:14:07 -04:00
Andy Cedilnik a7a1e40afa STYLE: Nightly Version update 2007-05-21 05:03:43 -04:00
Andy Cedilnik fe1f147dc0 STYLE: Nightly Version update 2007-05-20 02:39:38 -04:00
Brad King 4259c7c1e4 COMP: Fix for borland now that components list check is const. 2007-05-19 09:55:18 -04:00
Andy Cedilnik 7cd767ca48 STYLE: Nightly Version update 2007-05-18 20:51:40 -04:00
Alexander Neundorf 9670a8c485 ENH: 2nd try to move stripping out of cpack and to install time, now if
CPACK_STRIP_FILES is true (or contains a list of files), everything will be
stripped, if it's empty or false they won't be stripped

Alex
2007-05-18 14:41:09 -04:00
Alexander Neundorf df8f550029 ENH: add install/strip target for makefile generators if strip was found
Alex
2007-05-18 13:43:39 -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
Alexander Neundorf d64dc9b5bb COMP: force a recompile on VS71
Alex
2007-05-18 11:45:18 -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 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
Bill Hoffman fda955e752 STYLE: fix documentation for command 2007-05-18 09:30:21 -04:00
Brad King 07fe611fc6 BUG: Added carrot (^) to characters that need quoting. The solaris shell needs it. 2007-05-18 09:17:36 -04:00
Alexander Neundorf aee311a89d STYLE: fix line lengths
Alex
2007-05-18 08:49:06 -04:00
Brad King 42a272428b BUG: Need to use GetSafeDefinition when assigning to a string. 2007-05-17 17:43:32 -04:00
Brad King 9a5b4eba97 BUG: All variable accesses should produce watch callbacks, including IF(DEFINED <var>) ones. Instead we define a new access type for IF(DEFINED) so that the error does not show up for backward compatibility variables. 2007-05-17 17:40:59 -04:00
Alexander Neundorf b47807fc15 STYLE: fix indentation
ENH: add hack to make new cmake work with older existing cmake build trees

Alex
2007-05-17 17:21:52 -04:00
Alexander Neundorf fc07a8c353 STYLE: use braces
Alex
2007-05-17 16:50:53 -04:00
Brad King 58debfd6bd ENH: Use IF(NOT DEFINED) check to short-circuit size test. 2007-05-17 15:17:45 -04:00
Brad King b8928b0c8e BUG: Do not complain about missing watched variables when they are accessd with IF(DEFINED VAR). 2007-05-17 15:12:13 -04:00
Brad King bdc7792e40 COMP: GCC 2.95 does not have std::string::clear() method. 2007-05-17 14:47:18 -04:00
Brad King 5e1dd6fb51 BUG: Some single-character arguments need quoting on windows. 2007-05-17 14:01:02 -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
Brad King 9bfe711ef1 BUG: Fix ExpandListArgument when the string ends in a backslash. 2007-05-17 11:27:46 -04:00
Brad King 51fe906ab7 BUG: An empty configuration name is equivalent to no configuration. 2007-05-17 11:18:23 -04:00
Brad King c25d2bfdd2 ENH: Added testing for custom command line arguments containing all special characters on the US keyboard. Fixed curly brace arguments on borland and % arguments in mingw32-make. 2007-05-17 10:53:18 -04:00
Brad King cc507411d3 ENH: Added more special unix shell characters that require quoting. Added escaping of % as %% for shells inside mingw32-make. 2007-05-17 10:53:14 -04:00
Andy Cedilnik 6a271a4bfb STYLE: Nightly Version update 2007-05-17 07:27:52 -04:00
Andy Cedilnik 65645a0d4c STYLE: Nightly Version update 2007-05-16 19:59:41 -04:00
Brad King 73197eaefa BUG: Shell escaping needs to write % as %% for VS IDE. 2007-05-16 16:19:18 -04:00
Brad King 142210997f BUG: Watcom WMake needs empty rule commands even for symbolic targets. This fixes the cmake_force target. 2007-05-16 13:24:17 -04:00
Brad King 01c7db07c3 BUG: Do not send both SIGSTOP and SIGKILL when killing a process. The SIGSTOP seems to be able to block the SIGKILL occasionally. Also the SIGKILL is sufficient since the process table entry will still exist until it is reaped with waitpid. 2007-05-16 13:10:45 -04:00
Andy Cedilnik b7b43934b8 STYLE: Nightly Version update 2007-05-16 10:36:14 -04:00
Brad King bd78952748 BUG: Do not emit /usr/lib32 or /usr/lib64 as linker paths. Submitted by David Faure. 2007-05-16 09:07:53 -04:00