Commit Graph

10570 Commits

Author SHA1 Message Date
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
David Cole 764f6838a7 ENH: Give Mac installers package relocation capability. Default location is still the same for backwards compatibility, but packages will now be relocatable by default like they are on Windows via the NSIS installer. New CPack variables for controlling this functionality are CPACK_PACKAGE_DEFAULT_LOCATION and CPACK_PACKAGE_RELOCATABLE. 2007-12-26 16:57:13 -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
Miguel A. Figueroa-Villanueva bfeeb88b1f STYLE: Refactored common libs into a variable, modified comments, and cleaned use of monolithic build. 2007-12-22 10:15:04 -05:00
Brad King 9fcd08e17c STYLE: Nightly Date Stamp 2007-12-22 00:01:03 -05:00
Brad King d4e0727e4d BUG: Enable CMAKE_SUPPRESS_REGENERATION because the entire test runs during the inital configuration. 2007-12-21 20:19:23 -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
Eric Wing a5b3ab4eee BUG: Fixed modules to set FOO_FOUND when both headers and libraries are found.
BUG: FindSDL now has flag it responds to so it will not find/link against SDLmain. This is required to build libraries instead of applications since they don't have main().
ENH: All modules have a predictable search order, where environmental variables are searched before system paths. This is designed to make automation easier for those that need to automatically build projects without intervention but may be using alternative install locations for isolated testing.
ENH: New modules for OpenSceneGraph, Freetype, GDAL, Lua, QuickTime, GIFLIB, Producer, OpenThreads.
STYLE: Added documentation explaining peculuar SDL_LIBRARY_TEMP variable in SDL
  module when library find is incomplete.
2007-12-20 20:59:44 -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
Clinton Stimpson fffb0bd908 ENH: Better QT4_EXTRACT_OPTIONS macro. 2007-12-19 16:48:04 -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
Alexander Neundorf 04136a558a BUG: make CMAKE_USE_CHRPATH a simple variable instead an option, since an
option is not scriptable and so breaks the toolchain test
or maybe option() should be made scriptable ?

Alex
2007-12-19 03:55:11 -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
Clinton Stimpson f5f397debd ENH: should define QT_DLL instead of QT_SHARED 2007-12-18 14:50:18 -05:00
Clinton Stimpson b383d98771 ENH: Improve documentation of new features. 2007-12-18 13:05:43 -05:00
Bill Hoffman 4b2925222a BUG: fix for bug 5464 better find boost for windows 2007-12-18 10:02:52 -05:00