Commit Graph

160 Commits

Author SHA1 Message Date
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
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 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 14d50b086f COMP: Fix build of XCode generator after change to GetSourceFiles signature. 2007-05-28 11:02:45 -04:00
Bill Hoffman d0f12061c3 ENH: add copy header stuff 2007-05-24 17:06:32 -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
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
Alexander Neundorf e4b5de6377 STYLE: fix line lengths
Alex
2007-05-14 11:23:37 -04:00
Brad King 6c421971b9 BUG: Fixed generation of XCODE_DEPEND_HELPER.make into proper directory. Cleaned up duplicate code created by recent changes. 2007-05-11 13:52:33 -04:00
Alexander Neundorf 362f81981e STYLE: fix line length
Alex
2007-05-10 11:38:23 -04:00
Bill Hoffman 8c39efe854 ENH: make sure escaping is done for strings on the command line 2007-05-10 11:16:06 -04:00
Bill Hoffman 3e3413dadc ENH: fix for move of trace depends 2007-05-10 10:05:36 -04:00
Andy Cedilnik 181f4cb0af ENH: fix for older xcode and framework create 2007-05-09 10:28:32 -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 5af3105021 ENH: getting closer 2007-05-08 16:37:18 -04:00
Bill Hoffman 2ed6191fce ENH: add initial xcode framework stuff 2007-05-08 15:49:54 -04:00
Bill Hoffman 5ed2141d12 ENH: make sure default /System framework is not added with -F 2007-03-30 10:53:02 -04:00
Brad King 0e15f3412f COMP: Restored shared local variable removed by previous change. 2007-03-27 23:15:59 -04:00
Brad King af95f61d76 ENH: Created method cmTarget::GetExportMacro to centralize computation of the export symbol name. This removes duplicate code from all the generators. Also enabled the export definition for executable targets with the ENABLE_EXPORTS property set. 2007-03-27 23:13:25 -04:00
Ken Martin c53b26baf2 ENH: some more cleanup 2007-03-13 15:18:27 -04:00
Ken Martin 55603ea9eb COMP: XCode fix 2007-03-12 11:32:10 -04:00
Brad King 789a0f8359 ENH: Removed unused variables LibraryOutputPath and ExecutableOutputPath. Each target is asked for its own output directory. This is a step towards bug#2240. 2007-03-08 15:24:01 -05:00
Brad King 073076e0f7 COMP: Fix ConvertToRelativePath change for Xcode generator. 2007-03-07 16:32:29 -05:00
Bill Hoffman 7a13c7affe BUG: fix for quotes in strings for flags #4022 2007-02-21 14:01:19 -05:00
Bill Hoffman d5cb0f48b7 ENH: fix source extensions fror txt on xcode 2007-02-20 13:52:29 -05:00
Bill Hoffman d712e40d36 ENH: fix for force language stuff 2007-02-20 11:14:41 -05:00
Bill Hoffman 797a7f50a2 ENH: use project not target name 2007-02-19 15:07:31 -05:00
Bill Hoffman 63e2a9dffa ENH: fix for external object test 2007-02-17 11:43:47 -05:00
Bill Hoffman 66523061d0 ENH: remove warnings and debug statement 2007-02-17 08:38:41 -05:00
Bill Hoffman ca0230a33e ENH: check in initial conv library stuff 2007-02-16 16:12:17 -05:00
Bill Hoffman 5330a03994 ENH: allow for -gdwarf-2 to be in cflags or cxxflags for xcode 2006-10-13 11:53:12 -04:00
Bill Hoffman 052cb7753b ENH: undo bad changes 2006-10-12 17:19:57 -04:00
Bill Hoffman 107e01c8dc ENH: fix for bug -gdwarf getting removed 2006-10-12 10:57:36 -04:00
Brad King c0326d0d54 ENH: Simplify code by removing redundant check against BUILD_WITH_INSTALL_RPATH. 2006-10-11 12:41:17 -04:00
Bill Hoffman 21f3a18bee ENH: fix failing tests on mac 2006-09-29 16:14:34 -04:00
Brad King 7d2de52c1a ENH: Cleaned up signature of cmMakefile::AddUtilityCommand. It is not valid to have an output from a utility rule and no calls to the method asked for an output anyway. The argument has been removed. 2006-09-28 13:55:26 -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 b9fc06735d BUG: Enabled use of EscapeForShell to properly escape custom command lines. This addresses bug#3786 for Xcode. 2006-09-21 16:10:47 -04:00
Bill Hoffman 78275f1d4b ENH: do not use OBJROOT or you can get two copies of executables 2006-08-14 17:02:34 -04:00
Brad King d3e8ef705e BUG: Set GCC_SYMBOLS_PRIVATE_EXTERN and GCC_INLINES_ARE_PRIVATE_EXTERN attributes on all projects to prevent -fvisibility=hidden flags. This is needed to make RTTI work by default. 2006-07-27 15:02:35 -04:00
Bill Hoffman 1fa5f76e40 BUG: fix for bug 3417 2006-06-16 14:02:03 -04:00
Ken Martin 8e9a6beccc ENH: centralized locaiton of CMakeFiles setting 2006-06-14 12:28:32 -04:00
Brad King 87d4d0e039 BUG: cmGlobalGenerator::Build should not always use the /fast target name because dependency checking is often required. It now takes an argument specifying whether to use the /fast target name, and the argument is currently only true for try-compiles. 2006-06-01 15:51:24 -04:00
Bill Hoffman 43fd40fe21 ENH: fix warning 2006-05-16 13:23:22 -04:00
Bill Hoffman 0883dee7f0 ENH: fix rebuild problem with xcode and universal binaries 2006-05-16 09:54:49 -04:00
Ken Martin 80f71359c1 STYLE: fix line length 2006-05-11 15:39:46 -04:00
Ken Martin bf0cb4d49a STYLE: fix line length 2006-05-11 11:47:03 -04:00
Brad King d5719f22c1 ENH: Added support for multiple outputs generated by a single custom command. For Visual Studio generators the native tool provides support. For Xcode and Makefile generators a simple trick is used. The first output is considered primary and has the build rule attached. Other outputs simply depend on the first output with no build rule. During cmake_check_build_system CMake detects when a secondary output is missing and removes the primary output to make sure all outputs are regenerated. This approach always builds the custom command at the right time and only once even during parallel builds. 2006-04-11 11:06:19 -04:00