summaryrefslogtreecommitdiffstats
path: root/Modules/Platform/AIX-GNU.cmake
Commit message (Collapse)AuthorAgeFilesLines
* Merge topic 'aix-shared-flags'Brad King2013-03-121-1/+1
|\ | | | | | | | | bce7a2a AIX: Do not use -brtl to create shared libraries (#13997)
| * AIX: Do not use -brtl to create shared libraries (#13997)Brad King2013-03-111-1/+1
| | | | | | | | | | | | | | | | | | | | The flag was added incorrectly by commit 9c3a6eb4 (Need -brtl when creating shared libraries, 2003-05-16). According to "man ld" the -G option implies "-brtl -bnortllib ...", -brtl implies "-brtllib", and -brtllib should only be used for executables, not shared libraries. Therefore it is incorrect and unnecessary to specify -brtl explicitly after -G. Reported-by: Kevin Burge <kcburge@gmail.com>
* | AIX-GNU: Put implicit link directories in runtime libpath (#13909)Brad King2013-02-141-0/+1
|/ | | | | | | | | | | | | | | | | | | | | | | | The GNU compiler front-ends on AIX invoke the linker with flags of the form "-L/path/to/gnu/runtime/lib" to tell ld where to find the language runtime libraries. They depend on the default libpath behavior documented in "man ld" to add the -L paths also to the runtime libpath so the dynamic loader can find the language runtime libraries. This differs from platforms whose linkers have distinct -rpath flags that non-system compilers can use to tell the dynamic loader where to find their language runtime libraries. Since commit 96fd5909 (Implement linking with paths to library files, 2008-01-22) CMake always passes "-Wl,-blibpath:" followed by any project-defined RPATH plus "/usr/lib:/lib" in order to explicitly set the runtime libpath and avoid getting all the project -L paths in the runtime libpath. The explicit libpath prevents the GNU compiler runtime library -L paths from being placed in the libpath and then the dynamic loader fails to find the language runtime libraries. CMake already detects the implicit link directories for each language since commit 07ea19ad (Implicit link info for C, CXX, and Fortran, 2009-07-23). Add the implicit link directories to the explicit runtime libpath for GNU compilers on AIX to fix this use case.
* AIX-GNU: Link shared libs with -brtl,-bnoipath (#13352)Brad King2012-07-091-1/+2
| | | | We already use these flags with the XL toolchain. Use them for GNU too.
* Move RPATH flags to AIX per-compiler information filesBrad King2011-03-021-0/+2
| | | | | | Move RPATH flags out of Platform/AIX.cmake into platform-specific compiler information files Platform/AIX-XL and Platform/AIX-GNU. The flags need to be set for each compiler of each language.
* Modules: Fix spelling 'To distributed' -> 'To distribute'Todd Gamblin2010-08-091-1/+1
|
* Split GNU compiler information filesBrad King2009-12-021-0/+23
This moves GNU compiler flags into new-style modules Compiler/GNU-<lang>.cmake Platform/<os>-GNU-<lang>.cmake We use language-independent helper modules Compiler/GNU.cmake Platform/<os>-GNU.cmake to define macros consolidating the information.