Commit Graph

7813 Commits

Author SHA1 Message Date
Bill Hoffman 603cd2ab6a ENH: fix new incremental link stuff to work with nmake @ files 2008-01-02 09:32:29 -05:00
Brad King 8624abf272 STYLE: Nightly Date Stamp 2008-01-02 00:01:03 -05:00
Bill Hoffman ada4252c56 ENH: remove warning 2008-01-01 17:19:11 -05:00
Bill Hoffman b479c6a8a9 ENH: add ability to have manifest files and incremental linking with make and nmake 2008-01-01 15:13:41 -05:00
Brad King 06a24eee51 STYLE: Nightly Date Stamp 2008-01-01 00:01:03 -05:00
David Cole 546c839d04 ENH: Add a dependency from the PACKAGE target to the ALL target so that "make package" will first (essentially) do a "make all"... A similar chunk of code already existed for the make install target. This change makes it easy to build an installer package as part of a dashboard run simply by setting CTEST_BUILD_TARGET to "package". 2007-12-31 17:29:20 -05:00
Brad King 1f987c06ea ENH: Changes based on patch from Maik Beckmann to copy fortran modules to timestamps only if they have really changed. This optimization should reduce extra rebuilds caused by dependencies on modules whose providers have recompiled but whose interfaces have not changed. 2007-12-31 11:25:17 -05:00
Brad King 1ebf5aa2df STYLE: Nightly Date Stamp 2007-12-31 00:01:03 -05:00
Brad King b2e8c07af8 ENH: Implemented Fortran module output directory and search path flags. 2007-12-30 16:11:38 -05:00
Brad King cd8a2bbab6 ENH: Simplify Fortran module proxy dependency implementation by removing unnecessary target. 2007-12-30 12:23:54 -05:00
Brad King e30e58d38b STYLE: Nightly Date Stamp 2007-12-30 00:01:04 -05:00
Alexander Neundorf f3ea6a351a BUG: create modules documentation not only for the first documentation creation step
in cmake (the set ModulesFound wasn't cleared at the beginning of each
PrintDocumentation() function, so when documentation for modules was executed the second
time, ModulesFound already contained all modules and so no module was
documented)

Alex
2007-12-29 11:53:36 -05:00
Brad King bd454247da STYLE: Nightly Date Stamp 2007-12-29 00:01:04 -05:00
Brad King 3efc6e40cb BUG: Do not remove the source file extension when computing an object file name. This addresses bug #6169. If CMAKE_BACKWARDS_COMPATIBILITY is 2.4 or lower maintain the old behavior so that existing build trees and old project releases are not affected. 2007-12-28 23:07:26 -05:00
Brad King f872c10b7e ENH: Added method cmLocalGenerator::GetBackwardsCompatibility to reduce parsing of CMAKE_BACKWARDS_COMPATIBILITY variable. Add cmLocalGenerator::NeedBackwardsCompatibility to simplify checks for compatibility requirements. 2007-12-28 23:07:14 -05:00
Brad King edd5f1f5f1 COMP: Fix uninitialized variable and unused parameter warnings. 2007-12-28 22:29:19 -05:00
Brad King 59aa144516 ENH: Simplified and moved link script implementation up from cmMakefileLibraryTargetGenerator to cmMakefileTargetGenerator and use for cmMakefileExecutableTargetGenerator too. This addresses bug #6192. 2007-12-28 14:59:06 -05:00
Brad King 0a7bb41129 ENH: Make FIND_* commands look in the CMAKE_PREFIX_PATH directories directly after looking in each command's specific subdirectory (/include, /lib, or /bin). This may be useful on Windows where projects could be installed in a single directory. See issue #4947. 2007-12-28 12:01:37 -05:00
Brad King 81f6e86f12 ENH: Add per-language clean rule generation to cmake_clean.cmake files to include cmake_clean_<lang>.cmake files generated by dependency scanning. Add Fortran module file and timestamp cleaning rules. 2007-12-28 11:50:14 -05:00
Brad King 68dad94b00 ENH: Implement Fortran module dependencies across targets and directories.
- See issue #5809
  - Keep information about all sources in the target until deps are written
  - Create a fortran.internal file after scanning that lists modules provided
  - Load fortran.internal files from linked targets to find modules
  - Search the include path for external modules
  - Create file-level deps on in-project module timestamps or external mods
2007-12-28 11:49:59 -05:00
Brad King 42f3f3c342 ENH: Store in DependInfo.cmake files a list of the corresponding files for the targets to which a target links. This is useful for locating Fortran modules provided by linked targets. See issue #5809. 2007-12-28 11:49:46 -05:00
Brad King 9528b38fba STYLE: Nightly Date Stamp 2007-12-28 00:01:05 -05:00
Brad King 2541c05b3d STYLE: Nightly Date Stamp 2007-12-27 00:01:03 -05:00
Brad King ad788fe4c8 STYLE: Nightly Date Stamp 2007-12-26 00:01:05 -05:00
Brad King ae3f8adf1f STYLE: Nightly Date Stamp 2007-12-25 00:01:03 -05:00
Brad King 70f73adccb COMP: Fix build on VS6. 2007-12-24 11:15:45 -05:00
Brad King fc55596bd5 STYLE: Nightly Date Stamp 2007-12-24 00:01:03 -05:00
Brad King 611d1119d1 ENH: Clarify documentation of link_directories command for bug#6199. 2007-12-23 19:03:22 -05:00
Brad King 430296dc96 ENH: Moved global inter-target dependency analysis and cycle-prevention code up from cmGlobalUnixMakefileGenerator3 to cmGlobalGenerator. Simplified cmGlobalUnixMakefileGenerator3 to use it. Later other generators may be modified to use it also. 2007-12-23 15:03:42 -05:00
Brad King 8769444beb BUG: Revert previous change until it works on all OSX versions. 2007-12-23 13:16:21 -05:00
Brad King d21dc588ef BUG: Disable static lib deps until a global cycle removal can be done. 2007-12-23 13:13:44 -05:00
Brad King e521c5674d STYLE: Nightly Date Stamp 2007-12-23 00:01:03 -05:00
Brad King 4d360f7ac5 ENH: Convert cmDepends object interface to scan an entire target at once. 2007-12-22 22:41:42 -05:00
Brad King a7245e4792 ENH: Simplify target-level dependencies by depending only on directly linked targets instead of those chained. 2007-12-22 14:17:07 -05:00
Brad King 2836fc43e7 BUG: Support cyclic dependencies among STATIC libraries by removing one from the generated Makefile rules. 2007-12-22 13:08:26 -05:00
Brad King 9fcd08e17c STYLE: Nightly Date Stamp 2007-12-22 00:01:03 -05:00
Brad King e23348c5a6 COMP: Remove unused parameter of method. 2007-12-21 18:32:22 -05:00
Brad King 3cf3bb664a ENH: Make static library targets depend on targets to which they "link" for the purpose of build ordering. This makes the build order consistent for static and shared library builds. It is also useful when custom command inputs of one library are generated as custom commands outputs of another. It may be useful in the future for Fortran module dependencies. Implemented for Makefiles, Xcode, and VS 8 and above. Added sample code to do it for VS 7.1 and below, but left it disabled with comments explaining why. Likely it will never be needed on VS 7.1 or below anyway. 2007-12-21 15:04:06 -05:00
Brad King d2be142e3b BUG: Now that custom targets have dependencies their DependInfo files should be listed in Makefile.cmake. 2007-12-21 13:10:33 -05:00
Brad King d83b4cd255 ENH: Add a depends check step to custom targets. Add support for the IMPLICIT_DEPENDS feature of custom commands when building in custom targets. Convert multiple-output pair checks to be per-target instead of global. 2007-12-21 12:22:12 -05:00
Brad King 6586149d64 BUG: The dependency scanning target should be symbolic. 2007-12-21 11:00:03 -05:00
Brad King e72521b720 STYLE: Nightly Date Stamp 2007-12-21 00:01:02 -05:00
Alexander Neundorf 355b1f23af STYLE: make formatting of help a bit more consistent
Alex
2007-12-20 17:49:38 -05:00
Ken Martin f69a6a7c8c BUG: fix issue with CMAKE_CURENT_LIST_FILE reporting in funcitons 2007-12-20 10:05:08 -05:00
Brad King 4ca0d1ba09 COMP: Fixed error on HP due to newline macro. 2007-12-20 09:35:14 -05:00
Brad King 850721f9af COMP: Fixed data loss warning. 2007-12-20 09:27:59 -05:00
Brad King 48be0a596f STYLE: Nightly Date Stamp 2007-12-20 00:01:04 -05:00
Brad King 011d7db6bd BUG: Fix make depend target in subdirectory Makefile interface. 2007-12-19 17:54:24 -05:00
Brad King 73704ede42 ENH: Enabled color printing of "Scanning dependencies of target ..." message. 2007-12-19 17:15:41 -05:00
Alexander Neundorf f0824c7a19 ENH: options() is now scriptable, set() is scriptable too, I don't see a big
difference

Alex
2007-12-19 16:53:58 -05:00
Alexander Neundorf 3a304f8e1b STYLE: nicer error message:
"Command options() is not scriptable" is IMO better to understand than
"Command options not scriptable" (with all uppercase commands it was easier to see)

Alex
2007-12-19 16:46:15 -05:00
Brad King de96fd1df9 ENH: Moved dependency integrity check from CheckBuildSystem over to a per-target UpdateDependencies step. This greatly reduces the startup time for make processes and allows individual targets to be built without a global dependency check. 2007-12-19 16:36:30 -05:00
Brad King c7bf320539 BUG: cmDependsFortran should store the source file as a dependency of the object file when scanning for dependencies. 2007-12-19 16:35:09 -05:00
Brad King 891256546b ENH: Pass target directory to cmDependsFortran scanning instances. 2007-12-19 14:28:46 -05:00
Brad King 9ccba7c391 ENH: Improved speed of cmake::CheckBuildSystem when checking build system outputs versus dependencies. Instead of doing an O(m*n) comparison of every pair, just locate the oldest output and the newest input and compare them which is now O(m+n). 2007-12-19 11:51:30 -05:00
Brad King 07db9b83a7 ENH: Renamed CMAKE_FIND_PREFIX_PATH to CMAKE_PREFIX_PATH for brevity and consistency with other find path variable names. 2007-12-19 11:06:47 -05:00
Brad King d1fdc38c68 ENH: Added CMAKE_SYSTEM_PREFIX_PATH variable. 2007-12-19 10:34:43 -05:00
Alexander Neundorf ac017f7aba STYLE: fix warnings: comparison signed/unsigned, unused variable
Alex
2007-12-19 03:56:13 -05:00
Brad King 42da2be0b1 STYLE: Nightly Date Stamp 2007-12-19 00:01:03 -05:00
Alexander Neundorf 3ae731fab7 ENH: add support for chrpath, so the RPATH in ELF files can be changed when
installing without having to link the target again -> can save a lot of time

chrpath is handled very similar to install_name_tool on the mac. If the
RPATH in the build tree file is to short, it is padded using the separator
character.
This is currently disabled by default, it can be enabled using the option
CMAKE_USE_CHRPATH. There are additional checks whether it is safe to enable
it. I will rework them and use FILE(READ) instead to detect whether the
binaries are actually ELF files.

chrpath is available here
http://www.tux.org/pub/X-Windows/ftp.hungry.com/chrpath/
or kde svn (since a few days): http://websvn.kde.org/trunk/kdesupport/chrpath/

Alex
2007-12-18 17:50:27 -05:00
Bill Hoffman b57b1c563d BUG: fix for bug 6172 add get source file prop LANGUAGE 2007-12-18 09:57:41 -05:00
Brad King 872553de7e ENH: Implemented generation of display for pre-build, pre-link, and post-build custom command comments during the build. This addresses issue #5353. 2007-12-18 09:50:08 -05:00
Bill Hoffman 42bad89fe7 STYLE: fix line len 2007-12-18 08:53:10 -05:00
Brad King cffd2f18c6 STYLE: Nightly Date Stamp 2007-12-18 00:01:02 -05:00
Brad King 4c87af30b2 BUG: Remove stray debugging message. 2007-12-17 19:48:13 -05:00
Brad King abaa026721 BUG: When the working directory for a custom command is on another drive letter we need to change to that drive letter after changing its working directory. Fixes issue #6150. 2007-12-17 18:38:19 -05:00
Brad King 60149b33c1 BUG: Fixed memory-leaks in fortran parser. 2007-12-17 17:55:21 -05:00
Brad King ca5c5fc770 BUG: Fix parsing of #include preprocessor directives. 2007-12-17 17:55:03 -05:00
Brad King 44f38c9b86 ENH: Fortran include path is the same as C and CXX include paths. 2007-12-17 17:54:43 -05:00
Bill Hoffman c6089d1642 BUG: fix for bug 5931 add some more flags for the gui 2007-12-17 17:28:23 -05:00
Bill Hoffman 4c108d2a24 ENH: try to fix dashboard 2007-12-17 15:27:30 -05:00
Brad King 5e0dadbfb8 BUG: Apply patch from issue #6006. 2007-12-17 15:20:06 -05:00
Bill Hoffman 58f671bb1c ENH: add support for vs 9 win64 2007-12-17 14:43:11 -05:00
Brad King 8506938407 ENH: Added SOURCES property to targets. This is based on patch from issues #6137. 2007-12-17 10:12:22 -05:00
Brad King 99d57b3c8c ENH: Added cmSourceFile::GetLocation method to get a read-only reference to the Location ivar. This partially addresses issue #6137. 2007-12-17 10:12:19 -05:00
Brad King ff8d2a6647 STYLE: Nightly Date Stamp 2007-12-17 00:01:02 -05:00
Alexander Neundorf bcb73bb9f4 BUG: fix STRING(STRIP ...) if no non-space is contained in the input string,
this should fix the dashboard

Alex
2007-12-16 07:56:43 -05:00
Brad King eb098e1970 STYLE: Nightly Date Stamp 2007-12-16 00:01:02 -05:00
Brad King 4143d8a700 ENH: Make module timestamps work for modules in subdirectories. Make sure timestamps for all modules provided by a target are created when the target is done building. 2007-12-15 15:35:00 -05:00
Brad King 994c88559a STYLE: Removed trailing whitespace. 2007-12-15 14:17:21 -05:00
Brad King 540a98aa45 STYLE: Fixed terminology to avoid confusion between roots and prefixes. 2007-12-15 14:14:05 -05:00
Brad King 99dfcc05ef STYLE: Fixed line-too-long. 2007-12-15 14:13:14 -05:00
Brad King f143856371 STYLE: Nightly Date Stamp 2007-12-15 00:01:04 -05:00
Bill Hoffman 779877a2ee BUG: fix for bug 6039 LIB and INCLUDE not used for find stuff 2007-12-14 20:46:15 -05:00
Bill Hoffman a5e76555bf BUG: fix for bug 6136 make sure includes are not directories 2007-12-14 20:31:27 -05:00
Bill Hoffman f282f999c3 BUG: fix bug 6081 2007-12-14 15:50:10 -05:00
Bill Hoffman ad75cb7195 BUG: fix for 6086 uninstall icon not set right 2007-12-14 14:58:27 -05:00
Bill Hoffman 1f84c86e21 STYLE: line length 2007-12-14 12:49:36 -05:00
Brad King 1713bf95c6 STYLE: Nightly Date Stamp 2007-12-14 00:01:04 -05:00
Brad King 6db2c473e2 COMP: Add missing return value from Bill's change. 2007-12-13 18:30:53 -05:00
Brad King 9f61e2a235 ENH: Centralized and globalized computation of CMake program locations. This eliminates startup paths that failed to produce this information. 2007-12-13 17:56:50 -05:00
Brad King ebc036bbda BUG: Fixed typo introduced by previous commit. 2007-12-13 17:39:53 -05:00
Bill Hoffman fd33bf93a5 ENH: fix for bug 6102, allow users to change the compiler 2007-12-13 15:54:29 -05:00
Bill Hoffman 3409e0a777 STYLE: fix indent 2007-12-13 15:42:49 -05:00
Bill Hoffman 5f00eb6e79 ENH: fix docs 2007-12-13 15:41:54 -05:00
Bill Hoffman b9520e00cb ENH: fix docs 2007-12-13 15:11:09 -05:00
Brad King b1598e1dfc STYLE: Nightly Date Stamp 2007-12-13 00:01:03 -05:00
Clinton Stimpson 4bb6141bdc BUG: Fix logic to accept drop events. 2007-12-12 13:25:24 -05:00
Brad King 42b11caf05 STYLE: Nightly Date Stamp 2007-12-12 00:01:06 -05:00
Brad King b0078fd3b4 ENH: Added C String utilities to KWSys. Implemented strcasecmp and strncasecmp. 2007-12-11 11:36:57 -05:00
Brad King 76ef80a931 STYLE: Nightly Date Stamp 2007-12-11 00:01:03 -05:00
Brad King ea5968be99 STYLE: Nightly Date Stamp 2007-12-10 00:01:04 -05:00
Bill Hoffman af1230fea0 STYLE: fix line len error 2007-12-09 19:58:33 -05:00
Brad King 526e5284c6 STYLE: Nightly Date Stamp 2007-12-09 00:01:03 -05:00
Brad King 4ba844bb01 STYLE: Nightly Date Stamp 2007-12-08 00:01:03 -05:00
Brad King 1f8592cc91 STYLE: Nightly Date Stamp 2007-12-07 00:01:03 -05:00
Philippe Pebay 836e595fcc BUG: fixed an incomplete regexp 2007-12-06 16:43:11 -05:00
Clinton Stimpson 5d0f88ae22 BUG: Prevent mapping of Configure to Preferences when Qt merges menu items with
the standard Mac OS X application menu.
2007-12-06 14:07:52 -05:00
Bill Hoffman 3944e268f4 ENH: for try compile do not put the rules to rebuild the project with cmake inside it. This has caused infinite loops of builds in some cases, and it is just a waste of time anyway. 2007-12-06 09:56:02 -05:00
Bill Hoffman 246e964180 BUG: fix for bug 5455, handle nodefaultlib with more than one lib 2007-12-06 08:40:18 -05:00
Brad King 6d7ca9f9d4 STYLE: Nightly Date Stamp 2007-12-06 00:01:07 -05:00
Brad King cc80c4e285 COMP: Remove reference to vtksys. The unmangled kwsys name should be used in this source. 2007-12-05 13:13:53 -05:00
Philippe Pebay f18ae2234c ENH: added two functions for URL parsing:
1. an "abridged" version that separates protocol from dataglom in
        an expression with the form protocol://dataglom
     2. a "full" version that parses protocol, username, password,
        hostname, port, and path in a standard URL (all of these variables
        are optional, except for protocol and hostname).
2007-12-05 12:24:27 -05:00
Bill Hoffman 8eea168c23 STYLE: fix line len 2007-12-05 09:17:07 -05:00
Brad King a6d800351c STYLE: Nightly Date Stamp 2007-12-05 00:01:02 -05:00
Bill Hoffman 39c164cb83 ENH: remove warning 2007-12-04 17:00:44 -05:00
Bill Hoffman c34b1b48fc ENH: do not depend on touch being on the system 2007-12-04 16:09:46 -05:00
Bill Hoffman 5050706ae3 ENH: add a touch -E command to cmake 2007-12-04 16:03:19 -05:00
Ken Martin ab7f11a239 COMP: fix style and work around old compilers 2007-12-04 10:43:33 -05:00
Brad King b786d4f184 STYLE: Nightly Date Stamp 2007-12-04 00:01:02 -05:00
Ken Martin f4b1c3880b ENH: add functions and raise scope 2007-12-03 13:35:41 -05:00
Ken Martin 257b775f70 ENH: add functions 2007-12-03 12:47:22 -05:00
Ken Martin 951444165f ENH: add functions and raise scope to cmake 2007-12-03 12:44:42 -05:00
Brad King 50bdabde07 STYLE: Nightly Date Stamp 2007-12-03 00:01:03 -05:00
Brad King 5fcb6d2ffb STYLE: Nightly Date Stamp 2007-12-02 00:01:03 -05:00
Brad King dd7a655b60 STYLE: Nightly Date Stamp 2007-12-01 00:01:06 -05:00
Brad King 8537c55988 STYLE: Nightly Date Stamp 2007-11-30 00:01:03 -05:00
Ken Martin ad581280a5 BUG: fix single module generation 2007-11-29 10:23:26 -05:00
Brad King 0d5e854e91 STYLE: Nightly Date Stamp 2007-11-29 00:01:02 -05:00
Brad King a3a6cb853b STYLE: Nightly Date Stamp 2007-11-28 00:01:02 -05:00
Bill Hoffman 6156a33633 ENH: better output for qt assistant 2007-11-27 15:59:22 -05:00
Clinton Stimpson 86126dc41f ENH: Add handling of --help and related arguments. 2007-11-27 01:04:02 -05:00
Brad King 9b2f950061 STYLE: Nightly Date Stamp 2007-11-27 00:01:04 -05:00
Alexander Neundorf f2bb0af819 STYLE: restructure OutputLinkLibraries() a bit, so that new there is a
function which returns the RPATH, so e.g. the install rpath can be queried
when the command for the build rpath is created. This is a first step for
supporting chrpath.

Alex
2007-11-26 17:57:39 -05:00
Brad King cc0386f7ea BUG: Fixed computation of 'object' name for MACOSX_PACKAGE_LOCATION source files. 2007-11-26 10:01:49 -05:00
Brad King ab480c8e7a STYLE: Nightly Date Stamp 2007-11-26 00:01:03 -05:00
Alexander Neundorf fc86a05455 STYLE: move the code for generating the XML for one target in a separate
function AppendTarget()
-add "all" target
-some syncing with the Eclipse generator


Alex
2007-11-25 07:45:18 -05:00
Alexander Neundorf 38896657db ENH: add the "clean" target
don't add *all existing* targets as Eclipse targets, but only a subset (the
same as for CodeBlocks), e.g. exclude the subtargets of Experimental, and
also edit_cache, ccmake doesn't work from within an IDE

Alex
2007-11-25 07:40:57 -05:00
Alexander Neundorf 4ed64cf73a ENH: add GetCleanTargetName() which returns "clean" for makefiles, so it can
be used by the eclipse generator

Alex
2007-11-25 07:34:53 -05:00
Alexander Neundorf 153810cd82 ENH: also add the experimental, nightly, package_source, preinstall and
rebuild_cache targets

Alex
2007-11-25 06:21:38 -05:00
Alexander Neundorf d0839eb95e STYLE: add some comments
Alex
2007-11-25 05:26:58 -05:00
Brad King 0fd5a62d4e STYLE: Nightly Date Stamp 2007-11-25 00:01:04 -05:00
Alexander Neundorf f13e25e67d STYLE: QT -> Qt in the docs
Alex
2007-11-24 03:51:14 -05:00
Brad King ba3a55ddcc STYLE: Nightly Date Stamp 2007-11-24 00:01:05 -05:00
Alexander Neundorf e3c84cf5a6 ENH: add support for the Syllable OS (http://www.syllable.org)
major issues:
-access() doesn't return false for an empty string (#ifdefed in cmake)
-dlopen() doesn't return 0 on failure (#ifdefed in cmake and fixed now in Syllable)
-the kwsys and Bootstrap tests fail with timeout due to the fact that I'm doing all that in qemu, which is quite slow
-RPATH is now supported, so without modifying the test adapting DLL_PATH in Syllable is required for the tests to succeed
-the Plugin test fails with an undefined reference to example_exe_function() in example_mod_1, it seems this isn't supported under Syllable

Alex
2007-11-23 20:45:49 -05:00
Brad King d48ab19efe STYLE: Fixed line-too-long. 2007-11-23 14:53:06 -05:00
Alexander Neundorf 67e8012783 STYLE: QT is quicktime, Qt is Qt, as pointed out by David Faure
Alex
2007-11-23 11:30:55 -05:00
Brad King 73a8240669 STYLE: Nightly Date Stamp 2007-11-23 00:01:02 -05:00
Brad King 83a7d9fb35 STYLE: Nightly Date Stamp 2007-11-22 00:01:02 -05:00
Brad King 2176e40212 ENH: Change compiler working directory to the local build tree location when compiling object files. This simplifies the compiler command line and the usage of the <objBase>.s and <objBase>.i targets. It also helps fortran compilers put their modules in the correct place. 2007-11-21 13:37:14 -05:00