diff options
author | Graham Markall <graham@opengamma.com> | 2013-07-16 12:45:10 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2013-07-16 13:27:50 (GMT) |
commit | 1af8c8ddae9746663dca9dfbee8ab7a31cbe4fb0 (patch) | |
tree | 8555696119ca3738223fc97a61f3d4086d98a3e6 /Modules/Platform | |
parent | 2cc9f1fd5cece37efe00dde8a70a632eeb113112 (diff) | |
download | CMake-1af8c8ddae9746663dca9dfbee8ab7a31cbe4fb0.zip CMake-1af8c8ddae9746663dca9dfbee8ab7a31cbe4fb0.tar.gz CMake-1af8c8ddae9746663dca9dfbee8ab7a31cbe4fb0.tar.bz2 |
OS X: Add Fortran library version flags (#14249)
The linker flags for setting the compatibility and current versions of
libraries on Darwin are set for the supported Fortran compilers.
Set CMAKE_Fortran_CREATE_SHARED_LIBRARY for the NAG Fortran compiler to
have no space after <SONAME_FLAG> so the NAG compiler can parse the
argument correctly.
Diffstat (limited to 'Modules/Platform')
-rw-r--r-- | Modules/Platform/Darwin-Absoft-Fortran.cmake | 4 | ||||
-rw-r--r-- | Modules/Platform/Darwin-GNU-Fortran.cmake | 4 | ||||
-rw-r--r-- | Modules/Platform/Darwin-Intel-Fortran.cmake | 15 | ||||
-rw-r--r-- | Modules/Platform/Darwin-NAG-Fortran.cmake | 8 |
4 files changed, 31 insertions, 0 deletions
diff --git a/Modules/Platform/Darwin-Absoft-Fortran.cmake b/Modules/Platform/Darwin-Absoft-Fortran.cmake index 47dbd58..dc62b0d 100644 --- a/Modules/Platform/Darwin-Absoft-Fortran.cmake +++ b/Modules/Platform/Darwin-Absoft-Fortran.cmake @@ -1,5 +1,6 @@ #============================================================================= # Copyright 2011 Kitware, Inc. +# Copyright 2013 OpenGamma Ltd. <graham@opengamma.com> # # Distributed under the OSI-approved BSD License (the "License"); # see accompanying file Copyright.txt for details. @@ -12,3 +13,6 @@ # License text for the above reference.) set(CMAKE_Fortran_VERBOSE_FLAG "-X -v") # Runs gcc under the hood. + +set(CMAKE_Fortran_OSX_COMPATIBILITY_VERSION_FLAG "-compatibility_version ") +set(CMAKE_Fortran_OSX_CURRENT_VERSION_FLAG "-current_version ") diff --git a/Modules/Platform/Darwin-GNU-Fortran.cmake b/Modules/Platform/Darwin-GNU-Fortran.cmake index c5ffc6f..f4b509a 100644 --- a/Modules/Platform/Darwin-GNU-Fortran.cmake +++ b/Modules/Platform/Darwin-GNU-Fortran.cmake @@ -1,5 +1,6 @@ #============================================================================= # Copyright 2009 Kitware, Inc. +# Copyright 2013 OpenGamma Ltd. <graham@opengamma.com> # # Distributed under the OSI-approved BSD License (the "License"); # see accompanying file Copyright.txt for details. @@ -13,3 +14,6 @@ include(Platform/Darwin-GNU) __darwin_compiler_gnu(Fortran) + +set(CMAKE_Fortran_OSX_COMPATIBILITY_VERSION_FLAG "-compatibility_version ") +set(CMAKE_Fortran_OSX_CURRENT_VERSION_FLAG "-current_version ") diff --git a/Modules/Platform/Darwin-Intel-Fortran.cmake b/Modules/Platform/Darwin-Intel-Fortran.cmake new file mode 100644 index 0000000..6bd45f1 --- /dev/null +++ b/Modules/Platform/Darwin-Intel-Fortran.cmake @@ -0,0 +1,15 @@ +#============================================================================= +# Copyright 2013 OpenGamma Ltd. <graham@opengamma.com> +# +# Distributed under the OSI-approved BSD License (the "License"); +# see accompanying file Copyright.txt for details. +# +# This software is distributed WITHOUT ANY WARRANTY; without even the +# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +# See the License for more information. +#============================================================================= +# (To distribute this file outside of CMake, substitute the full +# License text for the above reference.) + +set(CMAKE_Fortran_OSX_COMPATIBILITY_VERSION_FLAG "-compatibility_version ") +set(CMAKE_Fortran_OSX_CURRENT_VERSION_FLAG "-current_version ") diff --git a/Modules/Platform/Darwin-NAG-Fortran.cmake b/Modules/Platform/Darwin-NAG-Fortran.cmake index 14437f0..4c28e62 100644 --- a/Modules/Platform/Darwin-NAG-Fortran.cmake +++ b/Modules/Platform/Darwin-NAG-Fortran.cmake @@ -1,5 +1,6 @@ #============================================================================= # Copyright 2010 Kitware, Inc. +# Copyright 2013 OpenGamma Ltd. <graham@opengamma.com> # # Distributed under the OSI-approved BSD License (the "License"); # see accompanying file Copyright.txt for details. @@ -16,3 +17,10 @@ set(CMAKE_Fortran_VERBOSE_FLAG "-Wl,-v") # Runs gcc under the hood. # Need -fpp explicitly on case-insensitive filesystem. set(CMAKE_Fortran_COMPILE_OBJECT "<CMAKE_Fortran_COMPILER> -fpp -o <OBJECT> <DEFINES> <FLAGS> -c <SOURCE>") + +set(CMAKE_Fortran_OSX_COMPATIBILITY_VERSION_FLAG "-Wl,-compatibility_version -Wl,") +set(CMAKE_Fortran_OSX_CURRENT_VERSION_FLAG "-Wl,-current_version -Wl,") +set(CMAKE_SHARED_LIBRARY_CREATE_Fortran_FLAGS "-Wl,-shared") +set(CMAKE_SHARED_LIBRARY_SONAME_Fortran_FLAG "-Wl,-install_name -Wl,") +set(CMAKE_Fortran_CREATE_SHARED_LIBRARY + "<CMAKE_Fortran_COMPILER> <LANGUAGE_COMPILE_FLAGS> <CMAKE_SHARED_LIBRARY_CREATE_Fortran_FLAGS> <LINK_FLAGS> -o <TARGET> <SONAME_FLAG><TARGET_INSTALLNAME_DIR><TARGET_SONAME> <OBJECTS> <LINK_LIBRARIES>") |