Brad King
847c8403fe
BUG: Added TARGET_ARCHIVES_MAY_BE_SHARED_LIBS global property to help compute proper rpath information on AIX when shared libraries have names like "libfoo.a".
2008-02-04 15:22:10 -05:00
Brad King
f2dfa8925b
ENH: Enable dependent library search paths on more platforms
...
- NetBSD needs dependent library paths in -rpath-link option.
- kFreeBSD needs dependent library paths in -rpath-link option.
2008-02-02 08:58:53 -05:00
Brad King
f49ec94e9f
ENH: Enable dependent library search paths on more platforms
...
- HP-UX needs dependent library paths as -L options.
- IRIX needs dependent library paths as -L options.
- Sun needs dependent library paths as -L options.
- FreeBSD needs dependent library paths in -rpath-link option.
2008-02-01 09:57: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
2cff26fa52
ENH: Support linking to shared libs with dependent libs
...
- Split IMPORTED_LINK_LIBRARIES into two parts:
IMPORTED_LINK_INTERFACE_LIBRARIES
IMPORTED_LINK_DEPENDENT_LIBRARIES
- Add CMAKE_DEPENDENT_SHARED_LIBRARY_MODE to select behavior
- Set mode to LINK for Darwin (fixes universal binary problem)
- Update ExportImport test to account for changes
2008-01-31 15:45:31 -05:00
Brad King
3a05425309
BUG: Move decision to switch library paths found in implicit link directories to use -l options from cmFindLibraryCommand to cmComputeLinkInformation. Existing projects may depend on find_library returning a full path. This slightly weakens cmComputeLinkInformation but is necessary for compatibility.
2008-01-31 07:50:40 -05:00
Brad King
66e0b4212f
ENH: Added build rule variables CMAKE_<LANG>_ARCHIVE_CREATE, CMAKE_<LANG>_ARCHIVE_APPEND, and CMAKE_<LANG>_ARCHIVE_FINISH to support creation of static archive libraries out of a large number of objects. See bug #6284 .
2008-01-29 20:46:25 -05:00
Brad King
b4b9e1d44b
BUG: Fix dynamic exports executable link option for Sun C compiler on Linux.
2008-01-29 07:48:22 -05:00
Brad King
09af624dee
BUG: Fix generation of Watcom link lines.
...
- Work-around bug in Watcom command line parsing for spaces in paths.
- Add 'library' option before libraries specified by file path.
2008-01-23 13:30:55 -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
c0bb73787d
ENH: make sure msvc90 gets set
2008-01-18 16:06:10 -05:00
Bill Hoffman
e5a4da5b3c
ENH: make sure MSVC90 is set
2008-01-18 15:19:19 -05:00
Brad King
8d1d5500c8
ENH: Enable use of COMPILE_DEFINITIONS property for Fortran sources.
2008-01-17 19:58:01 -05:00
Brad King
b8357db11d
ENH: Rename SET_PROPERITES command to SET_PROPERTY and give it a more powerful signature.
2008-01-17 15:54:49 -05:00
Brad King
18b9e7db6c
ENH: Enable CMAKE_<lang>_DEFINE_FLAG for COMPILE_DEFINITIONS property implementation.
2008-01-17 10:00:19 -05:00
Brad King
2a78288064
ENH: Convert Modules/Platform specification of system search paths to use CMAKE_SYSTEM_PREFIX_PATH when possible.
2008-01-16 09:51:57 -05:00
Bill Hoffman
c598da4328
BUG: fix for bug 6231, bad regex for sunos, worked by chance, but better to have it right
2008-01-15 14:19:32 -05:00
Brad King
8262ccfd4e
ENH: Create COMPILE_DEFINITIONS property for targets and source files. Create <config>_COMPILE_DEFINITIONS property as per-configuration version. Add Preprocess test to test the feature. Document limitations on Xcode and VS6 generators.
2008-01-14 09:20:58 -05:00
Bill Hoffman
3f45a27a6b
ENH: add support for xlf with -WF,-D for -D
2008-01-11 17:38:41 -05:00
Bill Hoffman
c3b7f618d1
ENH: add support for xlf with -WF,-D for -D
2008-01-11 17:37:38 -05:00
Brad King
d6a21fc25c
BUG: Removed stray debugging message.
2008-01-10 14:47:19 -05:00
Bill Hoffman
a40147abce
ENH: add support for visual age fortran on linux
2008-01-10 10:50:46 -05:00
Brad King
b761da39c1
ENH: Patch from Maik to add preprocessor directive handling to Fortran dependency scanning. Also added -fpp flag to Intel Fortran compiler on Windows by default.
2008-01-09 10:30:11 -05:00
Bill Hoffman
b479c6a8a9
ENH: add ability to have manifest files and incremental linking with make and nmake
2008-01-01 15:13:41 -05:00
Brad King
19037da40f
ENH: Add SunPro fortran module flags on SunOS.
2007-12-30 16:34:49 -05:00
Brad King
b2e8c07af8
ENH: Implemented Fortran module output directory and search path flags.
2007-12-30 16:11:38 -05:00
Alexander Neundorf
e3c84cf5a6
ENH: add support for the Syllable OS ( http://www.syllable.org )
...
major issues:
-access() doesn't return false for an empty string (#ifdefed in cmake)
-dlopen() doesn't return 0 on failure (#ifdefed in cmake and fixed now in Syllable)
-the kwsys and Bootstrap tests fail with timeout due to the fact that I'm doing all that in qemu, which is quite slow
-RPATH is now supported, so without modifying the test adapting DLL_PATH in Syllable is required for the tests to succeed
-the Plugin test fails with an undefined reference to example_exe_function() in example_mod_1, it seems this isn't supported under Syllable
Alex
2007-11-23 20:45:49 -05:00
Bill Hoffman
90e6f983de
ENH: add support for env var and better default for CMAKE_OSX_SYSROOT
2007-11-15 13:14:41 -05:00
Bill Hoffman
2f23d79969
ENH: fix bug in default arch, it was using the environment variable which is not a default
2007-11-08 14:31:56 -05:00
David Cole
e3572607f4
BUG: Do not us the search_paths_first flag on older Mac OSX (10.2 and earlier) systems.
2007-11-08 09:09:14 -05:00
Bill Hoffman
5765fbbb88
ENH: fix spelling error
2007-10-22 14:01:49 -04:00
Bill Hoffman
397d7ff29d
ENH: try to fix boostrap on 10.5
2007-10-22 10:17:31 -04:00
Bill Hoffman
613c35e033
ENH: do not always add -arch flags
2007-10-19 22:24:00 -04:00
Alin Elena
680cff0b9f
ENH: FindBLAS.cmake and FindLAPACK.cmake modules added. They locate various implementations of blas and lapack libraries. CheckFortranFunctionExists.cmake provides a test function to check if the library is usabale. I have also changed the -KPIC flag to -fPIC in Linux-ifort.cmake.
2007-10-10 17:47:37 -04:00
Bill Hoffman
f4ab553178
ENH: add support for preprocessed files in borland
2007-10-05 13:15:34 -04:00
Alexander Neundorf
4ee1ee1bd0
ENH: add support for the Portland Compiler to CMake, can build cmake and the tests pass (except the wrapping tests, which fail to link to the g++-compiled Qt)
...
Alex
2007-09-17 15:55:17 -04:00
Bill Hoffman
9cbb998737
ENH: add support for vs 2008 beta 2
2007-09-17 15:21:47 -04:00
Alexander Neundorf
68c2dd8009
COMP: also use -Wl,-relax and -lc -lnss etc. when using the IBM compiler
...
Alex
2007-08-17 10:41:27 -04:00
Bill Hoffman
038f3e240c
ENH: use the correct flag for the linker
2007-08-17 09:00:13 -04:00
Alexander Neundorf
6b0e5745ab
ENH: add -Wl,-relax to the default linker flags for BlueGene, otherwise you can get "relocation truncated to fit" errors
...
Alex
2007-08-16 15:02:14 -04:00
Bill Hoffman
8ee6fc0598
ENH: make sure osx searches static and shared libs like other platforms
2007-08-16 09:22:29 -04:00
Alexander Neundorf
5fdb818c84
COMP: fix arguments
...
Alex
2007-08-16 08:37:17 -04:00
Alexander Neundorf
984b0adc5f
STYLE: explicitely set default options for sdcc, so it is visible for which
...
processor it currently compiles, use --out-fmt-ihx to enforce .ihx files
Alex
2007-08-15 14:22:54 -04:00
Alexander Neundorf
f9cb0f3cb4
BUG: also include UnixPaths.cmake on these platforms, this also sets UNIX to 1
...
Alex
2007-08-10 08:54:42 -04:00
Alexander Neundorf
176fe63d15
ENH: UNIX, CYGWIN, WIN32, APPLE, QNXNTO and BEOS are not longer set in
...
cmMakefile.cxx, but now in the platform files and are now valid for the
target platform, not the host platform.
New variables CMAKE_HOST_WIN32, CMAKE_HOST_UNIX, CMAKE_HOST_APPLE and
CMAKE_HOST_CYGWIN have been added in cmMakefile.cxx (...and have now to be
used in all cmake files which are executed before
CMakeSystemSpecificInformation.cmake is loaded). For compatibility the old
set is set to the new one in CMakeDetermineSystem.cmake and reset before the
system platform files are loaded, so custom language or compiler modules
which use these should still work.
Alex
2007-08-09 14:45:23 -04:00
Alexander Neundorf
dac7814841
ENH: use WindowsPaths.cmake on all Windows platforms, not only for cl, makes
...
the mingw cross compiler work out of the box and should help mingw users on
windows with a common install dir
Alex
2007-08-02 11:17:32 -04:00
Alexander Neundorf
21f73ebc36
ENH: add support for Catamount, the OS running on the compute nodes of Cray super computers
...
Alex
2007-08-01 09:14:32 -04:00
Alexander Neundorf
507896e03b
ENH:
...
-add /usr/openwin/include and /usr/openwin/lib to the default search paths
-add /${CMAKE_INSTALL_PREFIX}/(lib|bin|include) to the default cmake search
paths -> this should help users who install stuff in their home
Alex
2007-07-27 11:57:17 -04:00
Alexander Neundorf
919265516e
ENH: add ReadListFile() to cmCPackGenericGenerator, so cmMakefile can be
...
private again
-convert the ZIP generator to use a cmake script instead of hardcoding
everything (CPackZIP.cmake)
Alex
2007-07-24 12:52:39 -04:00
Alexander Neundorf
57f25c53e3
ENH: also look in the include/, lib/ and bin/ directories in the cmake
...
install dir under windows, this will help e.g. people using kdewininstaller
and similar setups
Alex
2007-07-17 08:51:45 -04:00
Alexander Neundorf
ce33d80fa5
BUG: the Plugin test fails on NetBSD, let's see if this fixes it
...
Alex
2007-07-16 10:13:00 -04:00
Alexander Neundorf
5bd38eb630
ENH: also add the install base dir of the running cmake to the search
...
directories for the FIND_XXX() commands, for the case that somebody has its
own install tree
Alex
2007-07-16 09:08:45 -04:00
Alexander Neundorf
2339b9f753
ENH: add DragonFly BSD, which is very close to FreeBSD ( #4500 )
...
Alex
2007-07-13 11:20:42 -04:00
Alexander Neundorf
2509e24afe
ENH: add the static libs always to the link libs, if they are not used it shouldn't hurt
...
Alex
2007-07-12 16:15:29 -04:00
Alexander Neundorf
d090159318
ENH: add support for the ADSP toolchains for Blackfin, Shark and TigerShark
...
DSPs, patch from Raphael Cotty
Alex
2007-07-12 13:41:00 -04:00
Alexander Neundorf
1f7e8e6f0b
ENH: add the ecos include dir and the ecos definitions by default
...
Alex
2007-07-10 17:11:57 -04:00
Alexander Neundorf
3974ddc69e
ENH: add support for building eCos applications natively
...
Alex
2007-07-09 13:07:23 -04:00
Alexander Neundorf
5b18b80b58
ENH: initial support for assembler in cmake, needs testing by our users
...
Alex
2007-06-28 09:14:27 -04:00
Brad King
eab81489f1
ENH: Added global property FIND_LIBRARY_USE_LIB64_PATHS to allow lib64 paths to be searched optionally. Turn off the feature on debian systems. This addresses debian report 419007.
2007-06-27 12:07:34 -04:00
Brad King
a5e6f52a96
ENH: Added GNU/Hurd platform. Taken from debian patch 407155.
2007-06-27 11:42:10 -04:00
Alexander Neundorf
25a425ecf0
ENH:
2007-06-26 15:15:52 -04:00
Alexander Neundorf
cd8687782b
ENH: add basic support for sdcc ( http://sdcc.sourceforge.net ), needs sdcc (sdcclib) cvs for creating libraries)
...
Alex
2007-06-26 13:19:46 -04:00
Alexander Neundorf
f8261ff9f7
STYLE: change global cmake variable CMAKE_TARGET_SUPPORTS_ONLY_STATIC_LIBS
...
to the first global cmake property TARGET_SUPPORTS_SHARED_LIBS
Alex
2007-06-26 13:05:27 -04:00
Alexander Neundorf
10e3efa6b5
ENH: add support for BlueGene/L
...
Alex
2007-06-22 10:22:27 -04:00
Alexander Neundorf
1383368628
ENH: print a warning if ADD_LIBRARY( SHARED/MODULE ) is used and the target
...
platform doesn't support shared libraries
Alex
2007-06-21 16:23:54 -04:00
Alexander Neundorf
6c02ec1a40
STYLE: add a comment about SetLanguageEnabled()
...
-add a Generic.cmake for target platforms without operating system
Alex
2007-06-11 15:47:35 -04:00
Alexander Neundorf
74750610cf
ENH: determine typesize by compiling a file and reading strings from the compiled output.
...
Tested with various gcc, XCode, MSVC7, sdcc
For OSX when doing TRY_COMPILE() CMAKE_OSX_ARCHITECTURES is used, if there are different results an error is generated. CMAKE_OSX_ARCHITECTURES can be overwritten for the TRY_COMPILES with CMAKE_TRY_COMPILE_OSX_ARCHITECTURES.
Alex
2007-06-04 17:08:46 -04:00
Alexander Neundorf
6be930f0cf
STYLE: move the two CMAKE_SHARED_LIBRARYC/CXX_FLAGS for gcc from
...
CMakeGenericSystem.cmake to gcc.cmake
Alex
2007-05-22 09:15:00 -04:00
Alexander Neundorf
a18d286635
ENH: move hack to fix "new cmake on old build tree on OSX doesn't have CMAKE_INSTALL_NAME_TOOL in the cache" from
...
cmInstallTargetGenerator.cxx to Darwin.cmake
Alex
2007-05-18 11:57:29 -04:00
Brad King
92c0f41251
ENH: Use CMAKE_PLATFORM_IMPLICIT_LINK_DIRECTORIES from platform files to block link directories.
2007-05-18 11:36:23 -04:00
Alexander Neundorf
15a7414a60
COMP: if a new cmake runs on an old build tree, set CMAKE_LINKER to link to make it link
...
Alex
2007-05-18 10:55:35 -04:00
Alexander Neundorf
891f2130cf
COMP: fix link rules with nmake, the linker command has to be converted to shortpath form for nmake
...
Alex
2007-05-18 10:32:22 -04:00
Alexander Neundorf
61d3444f93
ENH: merge CMake-CrossCompileBasic to HEAD
...
-add a RESULT_VARIABLE to INCLUDE()
-add CMAKE_TOOLCHAIN_FILE for specifiying your (potentially crosscompiling) toolchain
-have TRY_RUN() complain if you try to use it in crosscompiling mode (which were compiled but cannot run on this system)
-use CMAKE_EXECUTABLE_SUFFIX in TRY_RUN(), probably TRY_RUN won't be able to
run the executables if they have a different suffix because they are
probably crosscompiled, but nevertheless it should be able to find them
-make several cmake variables presettable by the user: CMAKE_C/CXX_COMPILER, CMAKE_C/CXX_OUTPUT_EXTENSION, CMAKE_SYSTEM_NAME, CMAKE_SYSTEM_INFO_FILE
-support prefix for GNU toolchains (arm-elf-gcc, arm-elf-ar, arm-elf-strip etc.)
-move ranlib on OSX from the file command to a command in executed in cmake_install.cmake
-add support for stripping during install in cmake_install.cmake
-split out cl.cmake from Windows-cl.cmake, first (very incomplete) step to support MS crosscompiling tools
-remove stdio.h from the simple C program which checks if the compiler works, since this may not exist for some embedded platforms
-create a new CMakeFindBinUtils.cmake which collects the search fro ar, ranlib, strip, ld, link, install_name_tool and other tools like these
-add support for CMAKE_FIND_ROOT_PATH for all FIND_XXX commands, which is a
list of directories which will be prepended to all search directories, right
now as a cmake variable, turning it into a global cmake property may need
some more work
-remove cmTestTestHandler::TryExecutable(), it's unused
-split cmFileCommand::HandleInstall() into slightly smaller functions
Alex
2007-05-17 13:20:44 -04:00
Brad King
e1260b8468
ENH: Enabled preprocessor make rules for Watcom.
2007-05-16 13:26:47 -04:00
Bill Hoffman
9323a27989
ENH: initial support for creation of frameworks on Mac
2007-05-08 10:32:54 -04:00
Brad King
96232d4052
BUG: Detect debian with existence of /etc/debian_version so things work in a chroot install. This is suggested in bug#4805.
2007-05-07 18:17:32 -04:00
Brad King
44ab336a0c
ENH: Merging CompilerId updates from branch CMake-Modules-CompilerId to the main tree. Changes between CMake-Modules-CompilerId-mp1 and CMake-Modules-CompilerId-mp2 are included.
2007-05-03 08:24:32 -04:00
Alexander Neundorf
6e2cd41138
BUG: if /opt/lib and /opt/csw/lib are searched for libs, then /opt/include
...
and /opt/csw/include should also be searched for headers (according to
google they also exist)
Alex
2007-04-30 10:57:32 -04:00
Brad King
2dd364f751
ENH: Add CMAKE_EXE_EXPORTS_C_FLAG and CMAKE_EXE_EXPORTS_CXX_FLAG to support executables that export symbols.
2007-04-18 00:11:47 -04:00
Brad King
66d1930f56
ENH: Added CMAKE_EXE_EXPORTS_C_FLAG and CMAKE_EXE_EXPORTS_CXX_FLAG to support executables that export symbols.
2007-04-17 23:41:51 -04:00
Brad King
60befc2e49
ENH: Added CMAKE_SHARED_MODULE_LOADER_C_FLAG and CMAKE_SHARED_MODULE_LOADER_CXX_FLAG to support linking plugins to executables.
2007-04-17 16:19:36 -04:00
Brad King
a017333d9a
ENH: Added option CMAKE_INSTALL_SO_NO_EXE on linux to choose whether the default permissions for shared libraries include the executable bit. This is necessary to support the conflicting policies of Debian and Fedora. These changes address bug#4805.
2007-04-10 11:22:15 -04:00
Brad King
0526552b10
ENH: Enabled use of soname and therefore versioning symlinks. Patch is from bug#4558.
2007-04-10 08:36:33 -04:00
Brad King
5a32aa5919
ENH: Added target property ENABLE_EXPORTS for executable targets. It enables the executables for linking by loadable modules that import symbols from the executable. This finishes the executable import library support mentioned in bug #4210 .
2007-03-22 09:45:25 -04:00
Brad King
56ce727d10
BUG: Disable creation of import libraries for executables on Borland until it can be made optional. Otherwise all executables get a .lib with the same name which is unexpected behavior for users.
2007-03-20 09:14:27 -04:00
Brad King
fc7c433463
ENH: Added support for import libraries created by executable and module targets. The module import libraries should never be used but some windows compilers always create them for .dll files since there is no distinction from shared libraries on that platform. The executable import libraries may be used to create modules that when loaded bind to symbols from the executables. This is an enhancement related to bug#4210 though not requested by it explicitly.
2007-03-19 10:00:36 -04:00
Brad King
2f09a22411
BUG: Do not create import library for MODULEs. This is an incremental fix for bug#4210.
2007-03-10 07:49:47 -05:00
Brad King
007fa79037
BUG: Fixed MSVC8 module build rule to not use /implib option. This is an incremental fix for bug#4210.
2007-03-10 07:37:42 -05:00
Brad King
475447870f
BUG: Shared library creation should use /implib option to specify the name of the import library explicitly. This is an incremental step for bug #4210 .
2007-03-09 13:59:18 -05:00
Brad King
0e8515fa4c
BUG: Get rid of ancient variables CMAKE_CXX_WARNING_LEVEL, CMAKE_CXX_USE_RTTI, CMAKE_CXX_STACK_SIZE which are only partially implemented and now taken care of by flag mapping anyway.
2007-03-07 15:57:52 -05:00
Brad King
42e1ffb7f5
BUG: Do not create import library for MODULEs. The TARGET_IMPLIB name is not set correctly for MODULE rules anyway.
2007-03-03 10:09:18 -05:00
Andy Cedilnik
b9ab2b1932
BUG: Propagate platform settings such as CMAKE_OSX_ARCHITECTURES to the try compile
2007-03-02 11:33:37 -05:00
Bill Hoffman
846b058f73
ENH: force c++ when building c++ objects
2007-02-21 11:45:38 -05:00
Bill Hoffman
b8eede3b19
BUG: fix for bug 3950 add support for df compiler on windows
2007-02-20 16:43:32 -05:00
Bill Hoffman
c96c175484
ENH: try to force c++ on qnx
2007-02-20 11:33:40 -05:00
Brad King
a7042f2e97
BUG: Applied patch from bug#4462.
2007-02-19 13:53:25 -05:00
Bill Hoffman
a47820ca86
ENH: add beos file
2006-12-07 16:14:09 -05:00
Bill Hoffman
5ac4801a04
BUG: use different commands for shared libraries and exe for manifest stuff fix for bug#4039
2006-11-11 14:04:29 -05:00
Brad King
b155f3aa1c
ENH: Adding image version number (major.minor) property to windows binaries. Default is 0.0, but the VERSION target property may change the value. Windows now has first-class support for dll and exe versioning. This addresses bug#1219.
2006-10-16 18:17:14 -04:00
Brad King
7f7374e818
BUG: Do not enable -isystem support for Xcode generator until it is implemented.
2006-10-06 09:16:53 -04:00