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
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
Alexander Neundorf
789f0b26d9
COMP: fix typo
...
Alex
2007-06-28 10:22:58 -04:00
Alexander Neundorf
43de8c8628
ENH: add OPTIONAL keyword to ENABLE_LANGUAGE, so it will be possible to do
...
something like this:
ENABLE_LANGUAGE(ASM-ATT)
IF(CMAKE_ASM-ATT_COMPILER_WORKS)
... do assembler stufff
ELSE(CMAKE_ASM-ATT_COMPILER_WORKS)
... fallback to generic C/C++
ENDIF(CMAKE_ASM-ATT_COMPILER_WORKS)
Alex
2007-06-28 09:09:26 -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
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
Brad King
996f391593
BUG: The ALL_BUILD target should not have any command lines so that it is not always considered out of date. Moved the 'Build all projects' message into the description field instead of an echo in the command field. Moved common implementation of Generate for VS6 and VS7 into the superclass to avoid duplicate code for the ALL_BUILD target. This addresses bug#4556.
2007-04-10 13:09:03 -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
Ken Martin
c53b26baf2
ENH: some more cleanup
2007-03-13 15:18:27 -04:00
Ken Martin
b99129d2d8
ENH: some code cleanup
2007-03-12 10:26:59 -04:00
Brad King
73a5c33f9b
BUG: Removed legacy SetupTests method that was causing RUN_TESTS to test twice.
2007-03-05 13:01:02 -05: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
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
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
Brad King
93c95f1cc5
BUG: Fixed installation of MacOSX Bundle executables and the corresponding install_name remapping support. Extended the BundleTest test to check that this all works. Part of these fixes required changing the signature of AppendDirectoryForConfig in all generators. It now accepts prefix and suffix strings to deal with whether leading or trailing slashes should be included with the configuration subdirectory.
2006-03-03 12:58:48 -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
Brad King
c21287552b
ENH: Switched order of slash and configuration name in cmGlobalGenerator::AppendDirectoryForConfig method to increase flexibility.
2006-02-19 19:28:53 -05:00
Bill Hoffman
347c5f4b46
ENH: add working directory support
2006-02-08 10:58:36 -05:00
Brad King
afa8367885
BUG: Fixed cmTarget::GetFullPath to not append the configuration name when only one configuration is built. It now asks the generator what subdirectory if any to use for a given configuration name.
2006-02-03 11:36:11 -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
Andy Cedilnik
782bef7374
ENH: Add a way for the generated command to include extra flags. This is useful for CTest (or try compile) to add -j2
2005-12-01 11:41:00 -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
Andy Cedilnik
61d0a75d11
ENH: Add option to ignore errors. Only works on make
2005-04-29 11:49:18 -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
Andy Cedilnik
cb3ea2328a
ENH: Start working on a method that abstracts generating of build command
2005-04-28 18:18:54 -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
Andy Cedilnik
86cebea79a
ENH: More ctest changes and move SetupTest to superclass
2005-04-01 15:48:46 -05:00
Ken Martin
791aa6052b
ENH: add support for out of source source
2005-03-14 11:29:15 -05:00
Ken Martin
a8770ccc19
BUG: fix for empty target or config strings in the Build method
2005-02-23 14:36:38 -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
Ken Martin
4d30cb309c
ENH: ctest now uses CMake global generator to do the build part of build-and-test
2005-02-22 09:12:10 -05:00
Bill Hoffman
13865fc4fa
ENH: move project map to global generator base
2005-01-21 12:26:32 -05:00
Ken Martin
cf7893b934
BUG: fix VSExternal for visual studio 6
2004-09-16 10:48:10 -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
b1f3e10439
BUG: make sure env CC and CXX are not set for VS IDE builds
2004-09-15 11:31:54 -04:00
Bill Hoffman
b5bdf2cb0a
ENH: add better error reporting for file open failures
2004-09-07 16:55:25 -04:00
Bill Hoffman
731369ef9c
ENH: try to initialize all languages at the same time
2004-08-27 08:41:07 -04:00
Bill Hoffman
bb32a51825
ENH: change RUN_TESTS to use -C and not -D also use GetRequiredDefinition where needed
2004-08-11 16:57:27 -04:00
Brad King
9b1771aef4
BUG: CMAKE_TRY_COMPILE_CONFIGURATION should be obtained from the cmMakefile instance for the listfile containing the TRY_COMPILE call, not the top level listfile.
2004-08-04 16:33:10 -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
Andy Cedilnik
9ac968174e
ENH: Handle make install target on Visual Studio 6 and 7 and install templates
2004-04-15 13:09:24 -04:00
Bill Hoffman
ddb815c125
ENH: add new subdirectory exclude from top option
2004-03-09 16:28:44 -05:00
Bill Hoffman
a8620773f3
BUG: fix crash in external dsp include
2004-01-07 09:22:30 -05:00
Bill Hoffman
5d987e4a3f
BUG: fix crash
2004-01-07 09:08:52 -05:00