Brad King
fd37a6ec3d
ENH: Better linker search path computation.
...
- Use linker search path -L.. -lfoo for lib w/out soname
when platform sets CMAKE_PLATFORM_USES_PATH_WHEN_NO_SONAME
- Rename cmOrderRuntimeDirectories to cmOrderDirectories
and generalize it for both soname constraints and link
library constraints
- Use cmOrderDirectories to order -L directories based
on all needed constraints
- Avoid processing implicit link directories
- For CMAKE_OLD_LINK_PATHS add constraints from libs
producing them to produce old ordering
2008-02-21 11:41:11 -05:00
Bill Hoffman
22927ede1e
ENH: support for cpack and install of cmake-gui as mac app bundle
2008-02-16 13:05:03 -05:00
Brad King
ad95a57509
ENH: Add option to bootstrap script to enable Qt dialog.
...
- Add --qt-gui and --no-qt-gui options
- Add --qt-qmake=<qmake> option to help locate Qt
- Build more commands during bootstrap to help FindQt4.cmake:
MATH, GET_DIRECTORY_PROPERTY, EXECUTE_PROCESS,
SEPARATE_ARGUMENTS
- Bootstrapping with the cmake-gui is now possible in MSys
2008-02-13 14:47:03 -05:00
Brad King
4987e17f46
ENH: Improve link line generation for static library cycles.
...
- Move Tarjan algorithm from cmComputeTargetDepends
into its own class cmComputeComponentGraph
- Use cmComputeComponentGraph to identify the component DAG
of link dependencies in cmComputeLinkDepends
- Emit non-trivial component members more than once but always
in a contiguous group on the link line
2008-02-07 16:14:05 -05:00
Brad King
523ddedac5
ENH: Analyze inter-target dependencies to safely fix cycles
...
- Cycles may be formed among static libraries
- Native build system should not have cycles in target deps
- Create cmComputeTargetDepends to analyze dependencies
- Identify conneced components and use them to fix deps
- Diagnose cycles containing non-STATIC targets
- Add debug mode property GLOBAL_DEPENDS_DEBUG_MODE
- Use results in cmGlobalGenerator as target direct depends
2008-02-05 23:10:41 -05:00
Brad King
82fcaebe28
ENH: Pass dependent library search path to linker on some platforms.
...
- Move runtime path ordering out of cmComputeLinkInformation
into its own class cmOrderRuntimeDirectories.
- Create an instance of cmOrderRuntimeDirectories for runtime
path ordering and another instance for dependent library
path ordering.
- Replace CMAKE_DEPENDENT_SHARED_LIBRARY_MODE with explicit
CMAKE_LINK_DEPENDENT_LIBRARY_FILES boolean.
- Create CMAKE_LINK_DEPENDENT_LIBRARY_DIRS boolean.
- Create variables to specify -rpath-link flags:
CMAKE_SHARED_LIBRARY_RPATH_LINK_<LANG>_FLAG
CMAKE_EXECUTABLE_RPATH_LINK_<LANG>_FLAG
- Enable -rpath-link flag on Linux and QNX.
- Documentation and error message updates
2008-02-01 08:56:00 -05:00
Brad King
8f97980615
COMP: Use kwsys to get STL set_intersection algorithm.
2008-01-27 15:09:58 -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
02c3b71b2f
BUG: Do not have variable and function of the same name. Old shells do not likeit.
2008-01-23 17:43:08 -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
Brad King
c6a7d55127
COMP: The find_package command needs more of kwsys. Added String.h, String.c, and auto_ptr.hxx to bootstrapping kwsys.
2008-01-17 10:35:32 -05:00
Brad King
0ea6a8d1a4
ENH: Simplified CMake version information using KWSys DateStamp feature. Reduced duplicate code in bootstrap script.
2007-11-14 21:17:53 -05:00
Bill Hoffman
d88b30a742
ENH: add new file
2007-10-18 09:39:02 -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
Andy Cedilnik
310ca5795a
ENH: Fix copyright year
2007-04-04 13:41:12 -04:00
Ken Martin
21d9f9a8f1
COMP: fix bootstrap maybe
2006-12-07 10:48:11 -05:00
Bill Hoffman
0c381a2ce8
ENH: fix bootstrap for mac
2006-12-05 08:47:06 -05:00
Bill Hoffman
3a32cec969
ENH: merge in changes for beos support
2006-12-04 17:26:41 -05:00
Bill Hoffman
b56a60d01e
ENH: fix errors for unix builds
2006-11-29 17:45:55 -05:00
Brad King
6ff05e3946
ENH: Adding option to use system-installed third-party libraries. This addresses bug#3653.
2006-10-19 15:17:58 -04:00
Brad King
6c19d3a862
ENH: Renamed kwsysPlatformCxxTests to kwsysPlatformTests and generalized it for multiple language tests (C and CXX).
2006-10-04 17:24:36 -04:00
Brad King
f0050269ea
ENH: Added System component of kwsys.
2006-09-21 13:47:54 -04:00
Brad King
6e2f819942
ENH: Changing default data and doc directories to share/cmake-V.v and doc/cmake-V.v instead of share/CMake and doc/CMake for consistency with many linux distribution conventions.
2006-08-25 21:21:10 -04:00
Brad King
a2e3b01a59
COMP: Fix for new kwsys Configure.h.in.
2006-08-25 20:52:37 -04:00
Andy Cedilnik
d510ef2557
ENH: Support large file systems in kwsys
2006-08-22 15:34:14 -04:00
Andy Cedilnik
e49b93989d
COMP: More warnings and hp issues
2006-07-26 14:10:14 -04:00
Andy Cedilnik
a9c0929d39
COMP: Handle both ansi and non-ansi C
2006-07-26 11:46:22 -04:00
Andy Cedilnik
c3412def5d
COMP: Remove warning
2006-07-25 11:00:10 -04:00
Andy Cedilnik
126e5e39ff
ENH: Fix copyright year
2006-04-17 19:02:42 -04:00
Bill Hoffman
cae4e6b37a
ENH: add patch for finding applications on OSX
2006-04-13 11:00:52 -04:00
Bill Hoffman
ae10b3578d
ENH: add a wrapper for xcodebuild to get around bug and verbose output
2006-03-31 13:17:23 -05:00
Andy Cedilnik
3806c1050d
ENH: Remove things from bootstrap
2006-03-22 09:58:11 -05:00
Andy Cedilnik
15d7dd9937
ENH: Remove cmGlob and use glob from kwsys
2006-03-21 12:54:31 -05:00
Bill Hoffman
506afe9e8c
ENH: add more depends for bootstrap
2006-03-06 15:41:56 -05:00
Brad King
518080136d
ENH: Implemented FILES and PROGRAMS forms of the INSTALL command as replacements for the INSTALL_FILES and INSTALL_PROGRAMS commands. This addresses the request for absolute path install destinations in bug#2691.
2006-02-19 18:47:13 -05:00
Brad King
96f0266228
ENH: Created new install script generation framework. The INSTALL command creates the generators which are later used by cmLocalGenerator to create the cmake_install.cmake files. A new target installation interface is provided by the INSTALL command which fixes several problems with the INSTALL_TARGETS command. See bug#2691. Bugs 1481 and 1695 are addressed by these changes.
2006-02-19 15:25:27 -05:00
Brad King
8facf1f406
ENH: Made default install prefix consistent with building with another CMake.
2006-02-16 20:13:54 -05:00
Ken Martin
141ad7645e
ENH: some reorg of the unix makefile generator
2006-02-15 10:34:11 -05:00
Brad King
62ca4d34c2
BUG: Fixed bootstrap from MSYS prompt. It was working only when the bootstrap directory in MSYS mapped to the same directory on windows except for the drive letter in front. Now it should work from any path.
2006-02-10 11:19:19 -05:00
Brad King
f71a085f74
ENH: Added kwsys::String class to shorten debugging symbols and error messages involving std::string.
2006-02-07 10:11:40 -05:00
Brad King
576d8b41cb
ENH: Enabled bootstrapping with MinGW from an MSYS prompt.
2006-01-31 18:50:16 -05:00
Andy Cedilnik
fdc4795b91
ENH: Push glob to the kwsys
2005-10-18 14:08:55 -04:00
Andy Cedilnik
775c3495e2
ENH: Add file time comparison code
2005-10-12 13:36:07 -04:00
Bill Hoffman
f8c259b443
BUG: try to fix qt problems
2005-09-10 10:33:10 -04:00
Bill Hoffman
a0fb6e97db
ENH: fix bootstrap, maybe this should somehow grep awk the sources from the cmakelist file....
2005-09-03 22:16:41 -04:00
Andy Cedilnik
29f7e505a5
ENH: Use the new parser that supports nested variables
2005-06-13 11:00:29 -04:00
Ken Martin
c08862a88d
ENH: removed UMG2
2005-06-09 14:39:14 -04:00
Ken Martin
32aef87e3b
ENH: moved gen3 into bootstrap process
2005-05-12 11:53:42 -04:00
Andy Cedilnik
d395b563ed
ENH: Improve internal test handling by creating a test class. Command cmEnableTesting now only sets CMAKE_TESTING_ENABLED and cmAddTest only adds a test to the list. The actual test files are written by local generator. This way we can at some point in the future replace DartTestfile with some XML file
2005-04-24 15:59:51 -04:00
Brad King
8ddc8accb3
COMP: Added KWSys try-compiles KWSYS_STL_HAS_ALLOCATOR_TEMPLATE and KWSYS_STL_HAS_ALLOCATOR_OBJECTS. Needed for more old-stl support in the hashtable.
2005-04-21 13:47:43 -04:00
Brad King
bddade9696
COMP: Added KWSYS_CXX_HAS_CSTDDEF try-compile to KWSys to provide kwsys/cstddef header (to get size_t for hash_fun.hxx).
2005-04-15 16:00:44 -04:00
Brad King
6c68c81475
ENH: Added KWSys try-compiles KWSYS_STL_HAS_ITERATOR_TRAITS, KWSYS_STL_HAS_ITERATOR_CATEGORY, KWSYS_STL_HAS___ITERATOR_CATEGORY, and KWSYS_STL_HAS_ALLOCATOR_NONTEMPLATE to get the hash table to compile on old HP and Sun compilers.
2005-04-15 09:54:03 -04:00
Brad King
7f706ecc98
ENH: Added KWSYS_CXX_HAS_ARGUMENT_DEPENDENT_LOOKUP try-compile to KWSys. Needed to optionally bring hash table comparison operators into the global namespace when argument dependent lookup is not supported.
2005-04-15 08:59:30 -04:00
Brad King
be1084b524
COMP: Added KWSYS_STL_HAS_ALLOCATOR_MAX_SIZE_ARGUMENT check for non-standard argument to stl allocator<>::max_size method. Needed for kwsys hashtable to compile on Sun CC.
2005-04-13 15:39:03 -04:00
Brad King
b370936a25
BUG: Added more try-compiles from kwsys.
2005-04-13 14:13:35 -04:00
Brad King
6f95540ac7
BUG: The bootstrap script should perform the KWSYS_STL_STRING_HAVE_NEQ_CHAR test for kwsys.
2005-04-06 13:34:09 -04:00
Brad King
22f6d68be3
ENH: Added istream and ostream operators for stl string in KWSys when using old streams that do not provide them.
2005-03-29 08:20:08 -05:00
Andy Cedilnik
11077bfcaa
BUG: The is replaced by cvs... This is safer anyway
2005-03-28 18:00:42 -05:00
Andy Cedilnik
888d5f2f47
ENH: For development versions report version when doing bootstrap
2005-03-25 14:23:55 -05:00
Ken Martin
fe41711a08
ENH: oops forgot to chek this in
2005-03-14 12:25:12 -05:00
Andy Cedilnik
83343c59c9
BUG: Remove awk, remove problems and add full spaces in the path support
2005-03-09 15:51:30 -05:00
Brad King
636f1587b5
BUG: Fix for spaces in the path when constructing cmBootstrapCommands dependencies.
2005-03-08 17:27:08 -05:00
Andy Cedilnik
cc9a43dd13
ENH: Add proper dependencies for cmBootstrapCommands
2005-03-07 12:11:51 -05:00
Andy Cedilnik
6cb01848fb
BUG: Handle when initial cmake fails
2005-03-04 10:03:38 -05:00
Brad King
2aa613b98c
ENH: Enabling cmLocalUnixMakefileGenerator2 (new makefile generator) by default.
2005-03-01 12:26:25 -05:00
Bill Hoffman
ff812580eb
ENH: add a new library path ordering algorithm to make sure -L paths will pick the correct libraries if possible
2005-02-24 13:16:41 -05:00
Brad King
508cff55f6
ENH: Added try-compile KWSYS_STAT_HAS_ST_MTIM. This tests whether struct stat has the extra st_mtim member that has high resolution times.
2005-02-17 11:27:15 -05:00
Bill Hoffman
7eba58a439
ENH: add xcode stuff to bootstrap
2005-01-25 16:09:59 -05:00
Bill Hoffman
a641ad3bba
ENH: split up cmCommands into two files
2005-01-21 10:27:51 -05:00
Brad King
d46d8df0ed
ENH: Re-implemented cmGeneratedFileStream to look like a real stream and replace the destination file atomically. This will avoid problems with the process being terminated while generating a file.
2004-11-03 07:23:18 -05:00
Andy Cedilnik
56234aed4b
PERF: Remove several classes from the bootstrap and so making bootstrap smaller and faster
2004-10-27 10:47:14 -04:00
Brad King
3e59af4dcd
ENH: Added cmLocalUnixMakefileGenerator2 to build.
2004-10-26 12:54:51 -04:00
Andy Cedilnik
fc70a2bb2a
ENH: Add development version support in CMake
2004-10-22 15:44:54 -04:00
Bill Hoffman
30c71b5f20
ENH: perfer gmake for bootstrap
2004-10-19 14:51:25 -04:00
Will Schroeder
20461af1e6
COMP: Fix on sun
2004-10-18 18:11:42 -04:00
Andy Cedilnik
6b7257db61
ENH: Add check for previous bootstrap in the source tree when doing out-of-source build
2004-10-18 11:34:02 -04:00
Bill Hoffman
9fd8d5f181
allow kdevelop for cygwin
2004-10-12 10:57:24 -04:00
Bill Hoffman
832a302ca2
BUG: do not build kdevlop stuff when bootstrapping
2004-10-12 09:50:36 -04:00
Bill Hoffman
031e956adc
ENH: add kdev to bootstrap
2004-10-11 11:47:59 -04:00
Bill Hoffman
29794b24a9
ENH: pick native compilers first, and aCC before CC
2004-10-05 11:29:16 -04:00
Andy Cedilnik
bb865245f4
ERR: Fix bootstrap
2004-10-05 08:49:07 -04:00
Andy Cedilnik
d186bbd719
BUG: Check if the compiler is gnu. If it is, do not do special platform tests. Fixes Bug #1215 - bootstrap uses native flags with gnu compiler on OSF
2004-09-30 16:24:54 -04:00
Andy Cedilnik
47c82a381a
ENH: Attempt to detect a non-parallel make
2004-09-23 07:53:42 -04:00
Andy Cedilnik
25b0dbf608
ERR: Fix bootstrap for the changes in kwsys
2003-12-31 08:56:37 -05:00
Brad King
ef96274a08
ENH: Merging changes from KWSys-IOS-bp to KWSys-IOS-b2t-1-mp to main tree. This corresponds to the same merge in KWSys. Fixes for bootstrapping on cygwin are also included.
2003-12-23 11:03:38 -05:00
Andy Cedilnik
aa859a7603
ENH: Fix bootstrap to handle lex parser
2003-12-08 14:11:58 -05:00
Brad King
54584d1cb9
BUG: Need to check for -Ae flag on HP-UX cc compiler. Needed for ANSI C compilation.
2003-09-15 15:58:27 -04:00
Brad King
0cd97b4030
BUG: Must use C compiler to compile C files during bootstrap, not C++ compiler.
2003-09-02 13:27:58 -04:00
Andy Cedilnik
21ec23413e
ERR: Reorganize to try to fix the -pthread problem on some systems
2003-08-22 09:52:05 -04:00
Andy Cedilnik
9ad2a2eb14
ENH: Add error message for make missing
2003-08-11 17:53:10 -04:00
Andy Cedilnik
123759d9f5
ENH: Add rebuild_cache
2003-08-06 17:52:16 -04:00
Brad King
dada2859b7
ENH: Adding forced settings for prefix, docdir, mandir, and datadir.
2003-07-23 08:37:44 -04:00
Brad King
a1bb1a4712
ENH: Added optional configuration of data/doc/man dirs. This will be useful for package maintainers.
2003-07-21 16:38:53 -04:00
Brad King
2910c30dd5
ENH: Removed cmsys include directory from bootstrap build of kwsys. It is no longer needed.
2003-07-11 17:21:28 -04:00
Andy Cedilnik
db77d2e019
ENH: Add globbing to FILE command
2003-07-08 14:18:17 -04:00
Andy Cedilnik
2a6e9970b3
ENH: Fix bootstrap to include ProcessUNIX.c
2003-07-07 17:52:53 -04:00
Andy Cedilnik
6c66cdd28d
ERR: Fix changes in kwsys for Configure.h and StandardIncludes.hxx
2003-06-30 10:50:40 -04:00
Andy Cedilnik
81c2f420d8
ENH: Fix checking for C++ compiler on Mac, remove cmConfigure.h.tmp, so that nothing bad can happen if configure is interrupted, reports kwsys sources in cmConfigure.h
2003-06-30 09:56:33 -04:00
Andy Cedilnik
9754503095
ENH: Attempt to handle OSF compiler flags
2003-06-26 09:44:27 -04:00
Brad King
38482b46d1
ENH: Merged use of the kwsys RegularExpression class instead of cmRegularExpression.
2003-06-23 14:10:12 -04:00
Brad King
dc3fd5c267
ENH: Merged use of kwsys library.
2003-06-23 08:58:58 -04:00
Andy Cedilnik
324807d395
ENH: Add copyright, cmConfigure.h is now touched only when it is modified, remove some spaces from output, add procedure that copies file and replaces atstring with another string
2003-06-21 11:57:13 -04:00
Brad King
9ccc27864e
ERR: Cannot use iostream.h for strict C++ compiler sanity check. Using a small class instead.
2003-06-04 09:00:36 -04:00
Andy Cedilnik
b524f7573b
Several fixes before bootstrap is ready for prime-time:
...
1. Add --version flag to display version of CMake
2. Add comments to explain what is going on
3. Move CMAKE_ROOT_DIR and CMAKE_BOOTSTRAP to cmConfigure.h
4. Forward CC, CXX, and MAKE to cmake
5. Add more instructions
2003-05-15 09:35:16 -04:00
Andy Cedilnik
5e548d41d3
ENH: Add parallel build support, fix bug in verbose and clean output when adding arguments
2003-05-14 09:27:39 -04:00
Andy Cedilnik
df7ae80a21
ENH: Add better error reporting
2003-05-14 09:19:12 -04:00
Andy Cedilnik
a4238dc5db
ENH: Add SGI -LANG:std support
2003-04-22 14:32:48 -04:00
Andy Cedilnik
d0d9330c40
Support LDFLAGS
2003-04-17 13:13:48 -04:00
Andy Cedilnik
1181ac5ee7
BUG: Rename Bootstrap directory to Bootstrap.cmk, so that on platforms such as Windows and Mac OSX it will break during in-source build
2003-04-17 08:02:44 -04:00
Andy Cedilnik
b79f1a4731
Better support for spaces in paths
2003-04-03 18:40:12 -05:00
Andy Cedilnik
f57a7ba95c
Initial import of bootstrap for CMake
2003-03-27 15:29:38 -05:00