Commit Graph

67 Commits

Author SHA1 Message Date
Brad King 764ac9803d ENH: Generalize exe implib dir creation for VS
In VS 7,8,9 executable targets we generate a build event to create the
output directory for the import library in case the executable marks
symbols with dllexport (VS forgets to create this directory).  This
generalizes computation of the custom command line to support future use
with other VS versions.
2009-06-16 11:44:07 -04:00
Bill Hoffman a7e1031efe ENH: remove patch as directory change was already fixed 2008-01-15 14:00:52 -05:00
Bill Hoffman feea7133ef BUG: fix for bug 6234, use cd /d so that drives can be changed. 2008-01-15 11:56:41 -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
Alexander Neundorf 94f0eca689 BUG: fix #5326: source files with the same name in different groups lead to colliding object file names
Alex
2007-08-27 17:05:43 -04:00
Brad King 35936433e1 ENH: Merging changes from branch CMake-SourceFile2-b between tags
CMake-SourceFile2-bp and CMake-SourceFile2-b-mp1 to trunk.  This
commit is surrounded by tags CMake-SourceFile2-b-mp1-pre and
CMake-SourceFile2-b-mp1-post on the trunk.

The changes re-implement cmSourceFile and the use of it to allow
instances to be created much earlier.  The use of cmSourceFileLocation
allows locating a source file referenced by a user to be much simpler
and more robust.  The two SetName methods are no longer needed so some
duplicate code has been removed.  The strange "SourceName" stuff is
gone.  Code that created cmSourceFile instances on the stack and then
sent them to cmMakefile::AddSource has been simplified and converted
to getting cmSourceFile instances from cmMakefile.  The CPluginAPI has
preserved the old API through a compatibility interface.

Source lists are gone.  Targets now get real instances of cmSourceFile
right away instead of storing a list of strings until the final pass.

TraceVSDependencies has been re-written to avoid the use of
SourceName.  It is now called TraceDependencies since it is not just
for VS.  It is now implemented with a helper object which makes the
code simpler.
2007-06-18 11:59:23 -04:00
Alexander Neundorf 7f11536704 ENH: now target names can be used in add_custom_command() and
add_custom_target() as COMMAND, and cmake will recognize them and replace
them with the actual output path of these executables. Also the dependency
will be added automatically. Test included.
ENH: moved TraceVSDependencies() to the end of GlobalGenerator::Configure(),
so it is done now in one central place

Alex
2007-05-09 08:25:45 -04:00
Bill Hoffman ca0230a33e ENH: check in initial conv library stuff 2007-02-16 16:12:17 -05:00
Bill Hoffman 1589890a09 ENH: do not use relative paths for custom command commands if they working directory is used 2007-01-18 16:10:21 -05:00
Brad King e23b82c2cf BUG: Avoid leading and trailing newlines in custom command scripts because some VS6 versions do not like the trailing backslash this produces. This addresses bug#3977. 2006-10-25 12:27:17 -04:00
Brad King dd332a00cc ENH: Re-implemented command line argument shell quoting to support several platforms with one code base. 2006-09-27 13:43:46 -04:00
Brad King 2459ceb076 BUG: Centralized generation of command line arguments in escaped form. This addresses bug#3786 for several platforms. 2006-09-21 15:14:06 -04:00
Brad King 6ad36e407e BUG: Duplicate object name detection should not be case sensitive since this code is used on Windows file systems. This addresses bug#3589. 2006-08-08 11:26:59 -04:00
Brad King 24b55bfe11 BUG: Make sure sources with unknown extensions are not compiled by VS. 2006-08-03 09:26:36 -04:00
Brad King 8dda3a2f6e ENH: Adding .hh file as a C++ header file extension. Remove duplicate code from implementation of unique object name computation for VS generators. This addresses bug#3565. 2006-08-01 10:48:40 -04:00
Ken Martin dd8247e324 STYLE: fix long lines 2006-07-18 09:32:45 -04:00
Brad King 9bf5af6e32 ENH: Moved unique object file name computation from cmLocalUnixMakefileGenerator3 up to cmLocalGenerator for use by all generators. Created cmLocalVisualStudioGenerator as superclass for all VS generators. Implemented on-demand unique object file name computation for VS 7 generator to avoid slow compiles when all sources are in subdirectories. 2006-07-11 11:41:38 -04:00