439 Commits

Author SHA1 Message Date
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
99b97dece8 ENH: Created cmComputeLinkDepends to compute link dependencies.
- This will be useful for imported library dependencies
  - Replaces old cmTarget analyze-lib-depends stuff for linking
  - Formalizes graph construction and dump
  - Explicitly represents dependency inferral sets
  - Use BFS of initial dependencies to preserve order
2008-01-27 13:42:49 -05:00
Brad King
96fd5909d9 ENH: Implement linking with paths to library files instead of -L and -l separation. See bug #3832
- This is purely an implementation improvement.  No interface has changed.
  - Create cmComputeLinkInformation class
  - Move and re-implement logic from:
      cmLocalGenerator::ComputeLinkInformation
      cmOrderLinkDirectories
  - Link libraries to targets with their full path (if it is known)
  - Dirs specified with link_directories command still added with -L
  - Make link type specific to library names without paths
    (name libfoo.a without path becomes -Wl,-Bstatic -lfoo)
  - Make directory ordering specific to a runtime path computation feature
    (look for conflicting SONAMEs instead of library names)
  - Implement proper rpath support on HP-UX and AIX.
2008-01-22 09:13:04 -05:00
Bill Hoffman
58f671bb1c ENH: add support for vs 9 win64 2007-12-17 14:43:11 -05:00
David Cole
867de7fc67 ENH: Add ability to call Visual Studio macros from CMake. Add a CMake Visual Studio macro to reload a solution file automatically if CMake makes changes to .sln files or .vcproj files. Add code to call the macro automatically for any running Visual Studio instances with the .sln file open at the end of the Visual Studio Generate call. Only call the macro if some .sln or .vcproj file changed during Generate. Also, add handling for REG_EXPAND_SZ type to SystemTools::ReadRegistryValue - returned string has environment variable references expanded. 2007-11-16 07:01:58 -05:00
Ken Martin
8eae7fddf2 ENH: move CMAKE_STRICT option to the top 2007-11-06 14:14:18 -05:00
Bill Hoffman
743cec67d5 ENH: change name 2007-11-05 16:55:45 -05:00
Bill Hoffman
62decc533b ENH: change name of class 2007-11-05 16:33:19 -05:00
Bill Hoffman
8079907714 ENH: add option for qt dialog 2007-11-02 12:03:29 -04: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
Bill Hoffman
5c4eadba23 ENH: add docs for variables 2007-10-18 09:10:42 -04:00
Ken Martin
236d1ebf56 ENH: added CMAKE_STRICT option for var and property checking 2007-10-16 14:28:37 -04:00
Brad King
00c33e7e8f ENH: Updated CMAKE_REGENERATE_YACCLEX option to support cmDependsFortran. Fixed to work with spaces in path. 2007-10-03 15:23:54 -04:00
Alexander Neundorf
c5f249bdbd STYLE: move the code for the different formats of the generated help into
their own classes, making cmDocumentation smaller and also making it easier
to eventually add another format

Alex
2007-09-19 09:05:28 -04:00
Bill Hoffman
9cbb998737 ENH: add support for vs 2008 beta 2 2007-09-17 15:21:47 -04:00
Alexander Neundorf
9eb4ffcc3f COMP: make it build on Linux
Alex
2007-08-21 16:21:09 -04:00
Alexander Neundorf
dfbd4ce0f2 ENH: deb generator: don't use the system provided ar, but do it yourself
using the code from OpenBSD ar
COMP: don't build all package generators on all platforms

Alex
2007-08-14 08:40:40 -04:00
Alexander Neundorf
9bd32386c2 COMP: this copy of curl is unused, the one in Utilities/cmcurl/ is used
Alex
2007-08-09 14:26:10 -04:00
Alexander Neundorf
7432ef206e ENH: add empty RPM package generator, Eric Noulard wants to work on it
Alex
2007-08-08 11:33:42 -04:00
Alexander Neundorf
f7f522e61a ENH: add Eclipse CDT4 generator, patch from Miguel A. Figueroa-Villanueva
Alex
2007-08-01 09:18:50 -04:00
Alexander Neundorf
a39aff52a0 ENH: add an empty debian package generator, Mathieu volunteered to fill it
:-)

Alex
2007-07-25 10:57:33 -04:00
Alexander Neundorf
27244a1fde ENH: build codeblocks generator also on Windows
Alex
2007-07-18 10:19:33 -04:00
Alexander Neundorf
378a8e99f9 ENH: add a simple CodeBlocks extra generator, early alpha stage, there seems
to be interest in it

Alex
2007-07-13 00:58:43 -04:00
Alexander Neundorf
c0d000d234 ENH: add INSTALL(EXPORT ...) mode and INSTALL( TARGETS ... EXPORT <set> ) ,
tests still have to be added

Alex
2007-06-19 13:10:21 -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
Ken Martin
0f0a83a51f ENH: more cleanup of some CMakeLists files 2007-05-11 09:02:17 -04:00
Bill Hoffman
18b7cbd700 ENH: add test for a simple depend test, does an exe re-link if a library that it uses changes 2007-05-10 10:31:44 -04:00
Bill Hoffman
b39d96dff8 ENH: add a very simple framework test 2007-05-08 10:58:35 -04:00
Brad King
3fe86c98cf ENH: Plugin test should now work on QNX. 2007-04-18 00:12:16 -04:00
Brad King
fc9ceda5e7 ENH: Fixed Plugin test on Cygwin. 2007-04-17 18:18:42 -04:00
Brad King
cb190cdb87 BUG: Disable Plugin test on Cygwin until it is implemented. 2007-04-17 16:42:15 -04:00
Brad King
fe5386be81 ENH: Re-enabling Plugin test now that it should work on MacOSX. I will let it run one night to see what platforms are still not implemented. Currently it is not run on QNX because it is known to not be implemented there. 2007-04-17 16:34:07 -04:00
Brad King
84584e1184 BUG: Disable Plugin test until it works everywhere. 2007-04-17 15:06:04 -04:00
Brad King
0164f2faae ENH: Added test for executables with plugins that use an API exported by the executable itself. 2007-04-17 14:08:30 -04:00
Brad King
2c1204e361 ENH: Added cmGlobalVisualStudioGenerator as superclass to all VS global generators. 2007-04-04 11:22:14 -04:00
Ken Martin
abf2704785 BUG: typo in if test 2007-03-21 13:49:40 -04:00
Ken Martin
3abf39eda0 ENH: support for --build-config-sample feature #1022 2007-03-19 13:04:10 -04:00
Brad King
1d75e47dee ENH: Enable SubDirSpaces test when building with bootstrapped cmake. 2007-03-08 13:13:58 -05:00
Brad King
fd3688fa72 ENH: Fixed recursive make call target escaping for Borland to support SubDirSpaces test. 2007-03-08 13:05:02 -05:00
Ken Martin
d12455fccb BUG: oops bad arg for new test 2007-03-07 13:01:00 -05:00
Ken Martin
bfb3598c4b BUG: improve bad argument handling for INCLUDE_DIRECTORIES and ADD_DEFINITIONS bug 4364 2007-03-07 11:03:57 -05:00
Brad King
0edbb68352 ENH: Cleaned up KWSys tests to use test drivers. 2007-03-03 10:47:06 -05:00
Ken Martin
56e3a35ece BUG: allow system information to accept the -G option 2007-02-28 12:25:19 -05:00
Ken Martin
08ccfacf03 BUG: possible fix for new SystemInfo test 2007-02-27 13:04:29 -05:00
Ken Martin
4d9bc90e58 BUG: possible fix for new SystemInfo test 2007-02-27 11:59:34 -05:00
Ken Martin
31a700188b ENH: added --system-information option to CMake 2007-02-27 10:10:10 -05:00
Andy Cedilnik
da72f0a07a COMP: Disable test until generators are fixed 2007-02-23 14:37:23 -05:00
Andy Cedilnik
b34f2d5c06 ENH: Try to fix spaces in the path problem 2007-02-23 11:30:04 -05:00
Andy Cedilnik
8ad3430931 ENH: Make EXCLUDE_FROM_ALL a target and directory properties. Also, make IsInAll use EXCLUDE_FROM_ALL. Also, enable the test that tests this 2007-02-23 09:46:27 -05:00
Bill Hoffman
abb67cae48 ENH: actually keep the output 2007-02-22 10:31:12 -05:00