Brad King
5594ad4885
ENH: Updated exporting and importing of targets to support libraries and configurations.
...
- Created cmExportFileGenerator hierarchy to implement export file generation
- Installed exports use per-config import files loaded by a central one.
- Include soname of shared libraries in import information
- Renamed PREFIX to NAMESPACE in INSTALL(EXPORT) and EXPORT() commands
- Move addition of CMAKE_INSTALL_PREFIX to destinations to install generators
- Import files compute the installation prefix relative to their location when loaded
- Add mapping of importer configurations to importee configurations
- Rename IMPORT targets to IMPORTED targets to distinguish from windows import libraries
- Scope IMPORTED targets within directories to isolate them
- Place all properties created by import files in the IMPORTED namespace
- Document INSTALL(EXPORT) and EXPORT() commands.
- Document IMPORTED signature of add_executable and add_library
- Enable finding of imported targets in cmComputeLinkDepends
2008-01-28 08:38:36 -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
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
Ken Martin
6cdf032505
ENH: change to make the documentation class more generic, about halfway there, also provides secitons for Variables now
2007-10-22 12:49:09 -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
b37cc6072f
COMP: compile fix and remove warning
...
Alex
2007-05-22 10:42:37 -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
Ken Martin
8b0c61c322
ENH: added internal target property for the name of the project file
2007-04-10 09:54:01 -04:00
Brad King
438a7e2fce
BUG: Fix utility dependencies for static libraries in VS generators. This addresses bug#4789.
2007-04-04 14:50:35 -04:00
Brad King
fb38af53c0
BUG: Split precompiled header flags into a separate per-global-generator flag map. This is needed because the flag mappings differ across VS IDE versions. This fixes bug#3512 for VS8 where as the previous fix only worked for VS7.
2007-03-12 12:35:11 -04:00
Ken Martin
b99129d2d8
ENH: some code cleanup
2007-03-12 10:26:59 -04:00
Bill Hoffman
b0bc59f709
ENH: commit fix for putting everything in the build on vs
2006-11-09 09:57:23 -05:00
Brad King
8824f7984a
BUG: Fixed references to projects outside the build tree and in other locations with spaces in the path. This is needed for out-of-source/out-of-binary subdirectories in the build.
2006-10-09 21:48:48 -04:00
Brad King
9a1d4e92eb
BUG: Fix/cleanup custom commands and custom targets. Make empty comment strings work. Fix ZERO_CHECK target always out of date for debugging. Fix Makefile driving of custom commands in a custom target. Fix dependencies on custom targets not in ALL in VS generators.
2006-09-28 16:40:35 -04:00
Ken Martin
bf0cb4d49a
STYLE: fix line length
2006-05-11 11:47:03 -04:00
Brad King
bc135b7fc2
BUG: MSVC* variables should be set in IDE generators instead of just NMake.
2006-05-05 20:54:53 -04:00
Ken Martin
3d96e52261
STYLE: some m_ to this-> cleanup
2006-03-15 11:02:08 -05:00
Andy Cedilnik
c4156b4531
COMP: Even more global target fixes
2006-02-24 17:35:35 -05:00
Andy Cedilnik
07d0e776ad
BUG: More fixing of support for global target son visual studio
2006-02-24 16:20:44 -05:00
Andy Cedilnik
0ba40b59c7
COMP: Handle preinstall properly on IDEs
2006-02-24 09:43:23 -05:00
Andy Cedilnik
1ecd48ba67
COMP: Fix for preinstall
2006-02-24 09:32:27 -05:00
Andy Cedilnik
542b034a66
COMP: Even more Visual Studio fixes. Why is this code duplicated?
2006-02-23 14:05:32 -05:00
Brad King
bd0b829ffb
BUG: Fixed generation of VS8 solution file to not be re-written when loaded by VS and to work with msbuild.
2006-02-14 15:35:34 -05:00
Brad King
22c62c9e65
BUG: Sweeping changes to cleanup computation of target names. This should
...
fix many bugs related to target names being computed inconsistently.
- Centralized computation of a target's file name to a method in
cmTarget. Now that global knowledge is always available the
*_CMAKE_PATH cache variables are no longer needed.
- Centralized computation of link library command lines and link
directory search order.
- Moved computation of link directories needed to link CMake targets
to be after evaluation of linking dependencies.
This also removed alot of duplicate code in which each version had its
own bugs.
This commit is surrounded by the tags
CMake-TargetNameCentralization1-pre
and
CMake-TargetNameCentralization1-post
so make the large set of changes easy to identify.
2006-01-13 18:18:32 -05:00
Ken Martin
369308ca76
ENH: make LOCATION an computed property of the target and get rid of a bunch of const junk
2005-06-22 09:06:46 -04:00
Brad King
48702f8a8d
COMP: Converting INSTALL->ALL_BUILD dependency implementation to use the AddUtility method on a target. This significantly simplifies the implementation and removes warnings about hiding virtual functions.
2005-04-29 10:11:24 -04:00
Brad King
3b81a43294
ENH: Added dependency from INSTALL target to ALL_BUILD target so that targets build before being installed.
2005-04-28 16:21:28 -04:00
Bill Hoffman
0255dab023
BUG: fix for bug 1702, better error message for GUID missing
2005-04-05 10:22:18 -04:00
Ken Martin
791aa6052b
ENH: add support for out of source source
2005-03-14 11:29:15 -05:00
Brad King
39af9ee1e4
ENH: Updated implementation of custom commands. Multiple command lines are now supported effectively allowing entire scripts to be written. Also removed extra variable expansions and cleaned up passing of commands through to the generators. The command and individual arguments are now kept separate all the way until the generator writes them out. This cleans up alot of escaping issues.
2005-02-22 10:32:44 -05:00
Bill Hoffman
444dbd3309
BUG: fix external project command for VS 7 and 71
2004-09-15 15:15:46 -04:00
Bill Hoffman
5001eed8a5
ENH: clean up of INCLUDE_EXTERNAL_MSPROJECT contributed by Clinton Stimpson
2004-09-15 12:07:57 -04:00
Bill Hoffman
32fe8caaef
bug fixes for external projects
2004-09-14 14:05:40 -04:00
Bill Hoffman
d385543865
BUG: fix include external project bug
2004-09-14 09:19:21 -04:00
Bill Hoffman
1d061ae896
fix include order because of GetCurrentDirectory define and windows.h problem
2004-06-15 08:30:22 -04:00
Bill Hoffman
c15adc9221
BUG: fix sub project path problem
2004-06-14 10:28:04 -04:00
Bill Hoffman
8d1a5c48e7
BUG: fix for 871, include external should work for 7.1 and 7.0
2004-06-01 12:07:01 -04:00
Bill Hoffman
70eaddbf8e
BUG: make sure global generate is done when cmakelist file chagnes, also make sure guids are stored in the cache so the .sln file does not change every time
2004-05-20 16:29:09 -04:00
Andy Cedilnik
6918844bd6
ERR: Fix install on VS71
2004-04-21 17:54:10 -04:00
Bill Hoffman
94d8d25fd3
ENH: update vs71 generator to support excluded subdirs
2004-03-10 14:33:18 -05:00
Andy Cedilnik
72d8bd1e41
BUG: Fix Bug #445 - Same library in multiple projects can cause problems
2003-12-18 13:17:36 -05:00
Bill Hoffman
6e9a96119c
ENH: fix some warnings
2003-11-26 16:04:01 -05:00
Brad King
e5ed57ec18
ENH: Registered global generators are now kept in a table in the cmake instance. Added support for documentation with a Generators section.
2003-07-07 21:52:10 -04:00
Ken Martin
ba68f771b3
yikes added new custom command support
2003-06-03 10:30:23 -04:00
Bill Hoffman
8cb6645ad8
Remove some borland 6 warnings
2003-05-28 09:21:37 -04:00
Bill Hoffman
6112e7fc16
add support for vs 71
2003-05-08 16:59:27 -04:00