Brad King
a3a046643a
ENH: Pass config to cmTarget RPATH install methods
...
This passes the build configuration to cmTarget methods IsChrpathUsed
and NeedRelinkBeforeInstall. Later these methods will use the value.
2009-07-08 13:03:47 -04:00
Brad King
cd83f1979d
ENH: Cleanup make progress rule generation code
...
This cleans up the Makefile generator's progress rule code. Instead of
keeping every cmMakefileTargetGenerator instance alive to generate
progress, we keep only the information necessary in a single table.
This approach keeps most of the code in cmGlobalUnixMakefileGenerator3,
thus simplifying its public interface.
2009-06-25 09:58:51 -04:00
Brad King
b9a98ef65b
STYLE: Remove unused variable
2009-06-25 09:43:19 -04:00
Brad King
c8795101a4
ENH: Skip 'SHELL = /bin/sh' in Makefiles on VMS
...
This shell does not exist on VMS, so we leave it out.
2009-06-10 13:03:37 -04:00
Brad King
516add4d58
ENH: On VMS use _dir and _tmp, not .dir and .tmp
...
The VMS posix path emulation does not handle multiple '.' characters in
file names in all cases. This avoids adding extra '.'s to file and
directory names for target directories and generated files.
2009-06-10 13:03:11 -04:00
Brad King
39f8b91125
BUG: Remove implicit include dir suppression
...
We used to suppress generation of -I/usr/include (and on OSX also
-I/usr/local/include). This behavior seems to cause more trouble than
it's worth, so I'm removing it until someone encounters the original
problem it fixed. See issue #8598 .
2009-02-24 15:37:09 -05:00
Brad King
15c52e9891
ENH: Add rule substitutions useful for launchers
...
This defines make rule substitutions <LANGUAGE>, <TARGET_NAME>,
<TARGET_TYPE>, and <OUTPUT>. They will be useful for RULE_LAUNCH_*
property values.
2009-02-10 08:52:07 -05:00
Brad King
b604b98c56
ENH: Define RULE_LAUNCH_* properties
...
This defines global, directory, and target properties
RULE_LAUNCH_COMPILE, RULE_LAUNCH_LINK, and RULE_LAUNCH_CUSTOM. Their
values specify 'launcher' command lines which are prefixed to compile,
link, and custom build rules by Makefile generators.
2009-02-10 08:51:15 -05:00
Brad King
c895d9f2e0
ENH: Give target in which custom commands build
...
This gives the cmTarget instance for which custom command rules are
being generated to cmLocalUnixMakefileGenerator3::AppendCustomCommands.
It will be useful in the future.
2009-02-10 08:50:33 -05:00
Alexander Neundorf
bd92bec66c
STYLE: fix two typos in the comments, patch from Daniel DOT Teske AT Nokia DOT com, QtCreator developer
...
Alex
2009-02-09 16:36:56 -05:00
Brad King
ac9b7ec155
ENH: Refactor custom command rule hashing
...
This simplifies computation of custom command rule hashes to hash
content exactly chosen as the custom commands are generated.
Unfortunately this will change the hashes of existing build trees from
earlier CMake versions, but this is not a big deal. The change is
necessary so that in the future we can make optional adjustments to
custom command lines at generate time without changing the hashes every
time the option is changed.
2009-02-02 13:28:12 -05:00
Brad King
3cf9265fa7
ENH: Refactor passing of max length object dir
...
When computing the maximum length full path to the build directory under
which object files will be placed, pass the actual path instead of just
its length. This will be useful for error message generation.
2008-12-16 09:14:40 -05:00
Brad King
ad44a41a18
ENH: Fix optional use of relative paths.
...
These changes refactor cmLocalGenerator methods Convert and
ConvertToOutputForExisting to support references inside the build tree
using relative paths. After this commit, all tests pass with Makefile
generators when relative paths are enabled by default. See issue #7779 .
2008-10-09 15:30:07 -04:00
Brad King
416bf5730f
ENH: Simplify makefile ref to interactive editor
...
The CMAKE_EDIT_COMMAND make variable need not be constructed with
ConvertToOutputForExisting. The CMAKE_COMMAND variable works fine
without it.
2008-10-09 15:08:53 -04:00
Brad King
934c832cba
BUG: Fix convenience rule working directory
...
We generate convenience rules to build object files, preprocessed
outputs, and assembly outputs of source files individually with make
rules. This removes a redundant working directory change when more than
one target builds the same source file.
2008-10-06 11:04:06 -04:00
Brad King
a1bb7e90ef
ENH: Allow users to specify macro-like #include line transforms for dependency scanning.
...
- Define IMPLICIT_DEPENDS_INCLUDE_TRANSFORM property on targets and directories.
- Make the directory version inherited.
- See issue #6648 .
2008-05-14 11:54:52 -04:00
Brad King
071725a1c1
BUG: Fix generation of some paths into .cmake files in the build tree to escape strings for the CMake language. This fix allows users to put double quotes in the SOVERSION of a shared library.
2008-05-10 18:39:06 -04:00
Brad King
09dd298f63
BUG: Fix logic that loops over multiple output pairs to not loop beyond the vector when there are an odd number of entries.
2008-05-10 18:39:00 -04:00
Brad King
12935b1599
ENH: Light refactoring of implicit dependency scanning configuration implementation.
...
- Move lookup of config variables from cmLocalUnixMakefileGenerator3 to cmDepends hierarchy.
2008-05-08 10:09:14 -04:00
Brad King
55606b155e
BUG: Fix repeated re-scanning of dependencies when the results do not change.
...
- We re-scan deps when DependInfo.cmake is newer than depend.internal
- Therefore depend.internal should not be copy-if-different
2008-05-07 17:25:05 -04:00
Brad King
9631c499dc
BUG: For Watcom WMake use the short path to avoid quoting problems in custom commands with shell redirections.
2008-04-30 15:58:56 -04:00
Bill Hoffman
d1281f5cbc
BUG: the sun make goes into some odd n squared thing with this sccs and rcs stuff for gmake, so I am removing them.
2008-04-10 11:55:49 -04:00
Bill Hoffman
5905d79c8a
ENH: fix for watcom can't use phony
2008-03-25 10:11:48 -04:00
Bill Hoffman
a24ff4e453
ENH: add PHONY targets
2008-03-24 10:26:38 -04:00
Bill Hoffman
dec1221f0b
ENH: exclude borland make as well
2008-03-18 11:51:23 -04:00
Bill Hoffman
cb512cd513
ENH: turn off extra rules for nmake and wmake
2008-03-18 11:28:59 -04:00
Bill Hoffman
813779d962
ENH: try to improve make speed by getting rid of some implicit rules that were still around.
2008-03-18 10:02:31 -04:00
Bill Hoffman
5ab6c0f0ed
ENH: remove abort calls and replace with an IssueMessage INTERANL_ERROR, better to not crash on the end user.
2008-03-12 21:06:32 -04:00
Brad King
b78997d71d
BUG: Fix subtle bug that prevented Makefile generators from rescanning dependencies when a new source file is added but no other sources are touched.
2008-03-11 17:53:54 -04:00
Brad King
9ed4266306
ENH: Cleanup impl of PUBLIC_HEADER, PRIVATE_HEADER, and RESOURCE properties
2008-02-18 16:38:34 -05:00
Brad King
342a32a2c0
BUG: Apply patch from bug #6180 to make CMAKE_ADDITIONAL_MAKE_CLEAN_FILES work for directories.
2008-02-15 11:56:13 -05:00
Brad King
ed76198b84
ENH: Cleanup building of OS X bundle content
...
- Fixes repeated rebuild of bundles by Makefile generators
- Add special rules to copy sources to their
MACOSX_PACKAGE_LOCATION bundle directory
- Remove MacOSX_Content language hack
- Remove EXTRA_CONTENT property
- Remove MACOSX_CONTENT
- Remove corresponding special cases in object names
2008-02-15 11:22:23 -05:00
Ken Martin
7c473d4828
BUG: fix bugs 5539 (progress going beyond 100% when new files are added) and 5889 (tests are not found in some cases when using add_subdirectory to .. etc)
2008-01-18 10:25:25 -05:00
Brad King
6ad79d13dd
BUG: Construction of COMPILE_DEFINITIONS_<CONFIG> property name must use upper-case config name.
2008-01-18 08:35:37 -05:00
Brad King
8d1d5500c8
ENH: Enable use of COMPILE_DEFINITIONS property for Fortran sources.
2008-01-17 19:58:01 -05:00
Brad King
8262ccfd4e
ENH: Create COMPILE_DEFINITIONS property for targets and source files. Create <config>_COMPILE_DEFINITIONS property as per-configuration version. Add Preprocess test to test the feature. Document limitations on Xcode and VS6 generators.
2008-01-14 09:20:58 -05:00
Brad King
b761da39c1
ENH: Patch from Maik to add preprocessor directive handling to Fortran dependency scanning. Also added -fpp flag to Intel Fortran compiler on Windows by default.
2008-01-09 10:30:11 -05:00
Brad King
52eb0ccac7
BUG: Restore old interface of "make foo.o" and "make foo.i" even though object file names now include source extensions. For Java we also need to always remove the source extension (.java -> .class). This fixes the re-opening of bug #6169 .
2008-01-07 16:12:37 -05:00
Brad King
c7de81f9a6
ENH: Make the Fortran compiler id available to cmDependsFortran at scanning and module timestamp copy time.
2008-01-02 11:04:52 -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
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
4d360f7ac5
ENH: Convert cmDepends object interface to scan an entire target at once.
2007-12-22 22:41:42 -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
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
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
891256546b
ENH: Pass target directory to cmDependsFortran scanning instances.
2007-12-19 14:28:46 -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
Brad King
44f38c9b86
ENH: Fortran include path is the same as C and CXX include paths.
2007-12-17 17:54:43 -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