johu 14/07/27 11:55:54
Added: cmake-3.0.0-FindBoost-python.patch
cmake-3.0.0-FindBLAS.patch
cmake-3.0.0-prefix-dirs.patch
cmake-3.0.0-FindLAPACK.patch
Log:
Version bump by Michael Palimaka <[email protected]>, bug #513682.
(Portage version: 2.2.10/cvs/Linux x86_64, signed Manifest commit with key
F3CFD2BD)
Revision Changes Path
1.1 dev-util/cmake/files/cmake-3.0.0-FindBoost-python.patch
file :
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-util/cmake/files/cmake-3.0.0-FindBoost-python.patch?rev=1.1&view=markup
plain:
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-util/cmake/files/cmake-3.0.0-FindBoost-python.patch?rev=1.1&content-type=text/plain
Index: cmake-3.0.0-FindBoost-python.patch
===================================================================
>From 934ec9add33d413e4d5c9cec1cb3ebb5cbfd81f4 Mon Sep 17 00:00:00 2001
From: Michael Palimaka <[email protected]>
Date: Thu, 19 Jun 2014 00:17:48 +1000
Subject: [PATCH] Fix detection of PYTHON_ABI-versioned Boost Python libraries
wrt bug #400969.
---
Modules/FindBoost.cmake | 41 +++++++++++++++++++++++++++++++++++++++++
1 file changed, 41 insertions(+)
diff --git a/Modules/FindBoost.cmake b/Modules/FindBoost.cmake
index dfd4460..70bfb4f 100644
--- a/Modules/FindBoost.cmake
+++ b/Modules/FindBoost.cmake
@@ -952,6 +952,15 @@ foreach(COMPONENT ${Boost_FIND_COMPONENTS})
set( _boost_docstring_release "Boost ${COMPONENT} library (release)")
set( _boost_docstring_debug "Boost ${COMPONENT} library (debug)")
+ if(${COMPONENT} STREQUAL "python" OR ${COMPONENT} STREQUAL "mpi_python")
+ # Get version of Python.
+ if (NOT PYTHON_EXECUTABLE)
+ #if a certain version of python was detected by cmake before use that one
+ set(PYTHON_EXECUTABLE "python")
+ endif (NOT PYTHON_EXECUTABLE)
+ execute_process(COMMAND "${PYTHON_EXECUTABLE}" -c "import sys;
sys.stdout.write('.'.join(str(x) for x in sys.version_info[:2]))"
OUTPUT_VARIABLE _python_version)
+ endif()
+
# Compute component-specific hints.
set(_Boost_FIND_LIBRARY_HINTS_FOR_COMPONENT "")
if(${COMPONENT} STREQUAL "mpi" OR ${COMPONENT} STREQUAL "mpi_python" OR
@@ -984,6 +993,15 @@ foreach(COMPONENT ${Boost_FIND_COMPONENTS})
${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${_boost_MULTITHREADED}${_boost_RELEASE_ABI_TAG}-${Boost_LIB_VERSION}
${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${_boost_MULTITHREADED}${_boost_RELEASE_ABI_TAG}
${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT} )
+ if(${COMPONENT} STREQUAL "python" OR ${COMPONENT} STREQUAL "mpi_python")
+ list(APPEND _boost_RELEASE_NAMES
+
${Boost_LIB_PREFIX}boost_${COMPONENT}-${_python_version}${_boost_COMPILER}${_boost_MULTITHREADED}${_boost_RELEASE_ABI_TAG}-${Boost_LIB_VERSION}
+
${Boost_LIB_PREFIX}boost_${COMPONENT}-${_python_version}${_boost_COMPILER}${_boost_MULTITHREADED}${_boost_RELEASE_ABI_TAG}
+
${Boost_LIB_PREFIX}boost_${COMPONENT}-${_python_version}${_boost_MULTITHREADED}${_boost_RELEASE_ABI_TAG}-${Boost_LIB_VERSION}
+
${Boost_LIB_PREFIX}boost_${COMPONENT}-${_python_version}${_boost_MULTITHREADED}${_boost_RELEASE_ABI_TAG}
+ ${Boost_LIB_PREFIX}boost_${COMPONENT}-${_python_version} )
+ endif()
+
if(_boost_STATIC_RUNTIME_WORKAROUND)
set(_boost_RELEASE_STATIC_ABI_TAG "-s${_boost_RELEASE_ABI_TAG}")
list(APPEND _boost_RELEASE_NAMES
@@ -991,6 +1009,13 @@ foreach(COMPONENT ${Boost_FIND_COMPONENTS})
${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${_boost_COMPILER}${_boost_MULTITHREADED}${_boost_RELEASE_STATIC_ABI_TAG}
${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${_boost_MULTITHREADED}${_boost_RELEASE_STATIC_ABI_TAG}-${Boost_LIB_VERSION}
${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${_boost_MULTITHREADED}${_boost_RELEASE_STATIC_ABI_TAG}
)
+ if(${COMPONENT} STREQUAL "python" OR ${COMPONENT} STREQUAL "mpi_python")
+ list(APPEND _boost_RELEASE_NAMES
+
${Boost_LIB_PREFIX}boost_${COMPONENT}-${_python_version}${_boost_COMPILER}${_boost_MULTITHREADED}${_boost_RELEASE_STATIC_ABI_TAG}-${Boost_LIB_VERSION}
+
${Boost_LIB_PREFIX}boost_${COMPONENT}-${_python_version}${_boost_COMPILER}${_boost_MULTITHREADED}${_boost_RELEASE_STATIC_ABI_TAG}
+
${Boost_LIB_PREFIX}boost_${COMPONENT}-${_python_version}${_boost_MULTITHREADED}${_boost_RELEASE_STATIC_ABI_TAG}-${Boost_LIB_VERSION}
+
${Boost_LIB_PREFIX}boost_${COMPONENT}-${_python_version}${_boost_MULTITHREADED}${_boost_RELEASE_STATIC_ABI_TAG}
)
+ endif()
endif()
if(Boost_THREADAPI AND ${COMPONENT} STREQUAL "thread")
_Boost_PREPEND_LIST_WITH_THREADAPI(_boost_RELEASE_NAMES
${_boost_RELEASE_NAMES})
@@ -1020,6 +1045,15 @@ foreach(COMPONENT ${Boost_FIND_COMPONENTS})
${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${_boost_MULTITHREADED}${_boost_DEBUG_ABI_TAG}
${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${_boost_MULTITHREADED}
${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT} )
+ if(${COMPONENT} STREQUAL "python" OR ${COMPONENT} STREQUAL "mpi_python")
+ list(APPEND _boost_DEBUG_NAMES
+
${Boost_LIB_PREFIX}boost_${COMPONENT}-${_python_version}${_boost_COMPILER}${_boost_MULTITHREADED}${_boost_DEBUG_ABI_TAG}-${Boost_LIB_VERSION}
+
${Boost_LIB_PREFIX}boost_${COMPONENT}-${_python_version}${_boost_COMPILER}${_boost_MULTITHREADED}${_boost_DEBUG_ABI_TAG}
+
${Boost_LIB_PREFIX}boost_${COMPONENT}-${_python_version}${_boost_MULTITHREADED}${_boost_DEBUG_ABI_TAG}-${Boost_LIB_VERSION}
+
${Boost_LIB_PREFIX}boost_${COMPONENT}-${_python_version}${_boost_MULTITHREADED}${_boost_DEBUG_ABI_TAG}
+
${Boost_LIB_PREFIX}boost_${COMPONENT}-${_python_version}${_boost_MULTITHREADED}
+ ${Boost_LIB_PREFIX}boost_${COMPONENT}-${_python_version} )
+ endif()
if(_boost_STATIC_RUNTIME_WORKAROUND)
set(_boost_DEBUG_STATIC_ABI_TAG "-s${_boost_DEBUG_ABI_TAG}")
list(APPEND _boost_DEBUG_NAMES
@@ -1027,6 +1061,13 @@ foreach(COMPONENT ${Boost_FIND_COMPONENTS})
${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${_boost_COMPILER}${_boost_MULTITHREADED}${_boost_DEBUG_STATIC_ABI_TAG}
${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${_boost_MULTITHREADED}${_boost_DEBUG_STATIC_ABI_TAG}-${Boost_LIB_VERSION}
${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${_boost_MULTITHREADED}${_boost_DEBUG_STATIC_ABI_TAG}
)
+ if(${COMPONENT} STREQUAL "python" OR ${COMPONENT} STREQUAL "mpi_python")
+ list(APPEND _boost_DEBUG_NAMES
+
${Boost_LIB_PREFIX}boost_${COMPONENT}-${_python_version}${_boost_COMPILER}${_boost_MULTITHREADED}${_boost_DEBUG_STATIC_ABI_TAG}-${Boost_LIB_VERSION}
+
${Boost_LIB_PREFIX}boost_${COMPONENT}-${_python_version}${_boost_COMPILER}${_boost_MULTITHREADED}${_boost_DEBUG_STATIC_ABI_TAG}
+
${Boost_LIB_PREFIX}boost_${COMPONENT}-${_python_version}${_boost_MULTITHREADED}${_boost_DEBUG_STATIC_ABI_TAG}-${Boost_LIB_VERSION}
+
${Boost_LIB_PREFIX}boost_${COMPONENT}-${_python_version}${_boost_MULTITHREADED}${_boost_DEBUG_STATIC_ABI_TAG}
)
+ endif()
endif()
if(Boost_THREADAPI AND ${COMPONENT} STREQUAL "thread")
_Boost_PREPEND_LIST_WITH_THREADAPI(_boost_DEBUG_NAMES
${_boost_DEBUG_NAMES})
--
1.8.5.5
1.1 dev-util/cmake/files/cmake-3.0.0-FindBLAS.patch
file :
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-util/cmake/files/cmake-3.0.0-FindBLAS.patch?rev=1.1&view=markup
plain:
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-util/cmake/files/cmake-3.0.0-FindBLAS.patch?rev=1.1&content-type=text/plain
Index: cmake-3.0.0-FindBLAS.patch
===================================================================
--- Modules/FindBLAS.cmake
+++ Modules/FindBLAS.cmake
@@ -4,6 +4,10 @@
#
# Find BLAS library
#
+# Version modified for Gentoo Linux.
+# If a valid PkgConfig configuration is found, this overrides and cancels
+# all further checks.
+#
# This module finds an installed fortran library that implements the
# BLAS linear-algebra interface (see http://www.netlib.org/blas/). The
# list of libraries searched for is taken from the autoconf macro file,
@@ -50,6 +54,23 @@
# (To distribute this file outside of CMake, substitute the full
# License text for the above reference.)
+# first, try PkgConfig
+#
+find_package(PkgConfig REQUIRED)
+pkg_check_modules(PC_BLAS blas)
+if(PC_BLAS_FOUND)
+ foreach(PC_LIB ${PC_BLAS_LIBRARIES})
+ find_library(${PC_LIB}_LIBRARY NAMES ${PC_LIB} HINTS
${PC_BLAS_LIBRARY_DIRS} )
+ if (NOT ${PC_LIB}_LIBRARY)
+ message(FATAL_ERROR "Something is wrong in your pkg-config file - lib
${PC_LIB} not found in ${PC_BLAS_LIBRARY_DIRS}")
+ endif (NOT ${PC_LIB}_LIBRARY)
+ list(APPEND BLAS_LIBRARIES ${${PC_LIB}_LIBRARY})
+ endforeach(PC_LIB)
+ find_package_handle_standard_args(BLAS DEFAULT_MSG BLAS_LIBRARIES)
+ mark_as_advanced(BLAS_LIBRARIES)
+else(PC_BLAS_FOUND)
+message(STATUS "No PkgConfig configuration for BLAS found; starting more
extensive search.")
+
include(${CMAKE_CURRENT_LIST_DIR}/CheckFunctionExists.cmake)
include(${CMAKE_CURRENT_LIST_DIR}/CheckFortranFunctionExists.cmake)
@@ -688,3 +709,5 @@
endif()
set(CMAKE_FIND_LIBRARY_SUFFIXES ${_blas_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES})
+
+endif(PC_BLAS_FOUND)
1.1 dev-util/cmake/files/cmake-3.0.0-prefix-dirs.patch
file :
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-util/cmake/files/cmake-3.0.0-prefix-dirs.patch?rev=1.1&view=markup
plain:
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-util/cmake/files/cmake-3.0.0-prefix-dirs.patch?rev=1.1&content-type=text/plain
Index: cmake-3.0.0-prefix-dirs.patch
===================================================================
>From e7ce3e523f8cfa1bc749118f381753230766827f Mon Sep 17 00:00:00 2001
From: Michael Palimaka <[email protected]>
Date: Thu, 19 Jun 2014 00:08:13 +1000
Subject: [PATCH] Set some proper paths to make cmake find our tools.
The ebuild now adds an extra / at the end of $EPREFIX so that it is
never the empty string (so that CMAKE_SYSTEM_PREFIX_PATH remains
correct)
Original patch by Heiko Przybyl.
Updated by Chris Reffett (cmake-2.8.8)
Updated by Johannes Huber (cmake-2.8.9)
Updated by Michael Palimaka (cmake-2.8.10)
Updated by Chris Reffett (cmake-2.8.11)
Updated by Michael Palimaka (cmake-3.0.0)
---
Modules/Platform/Darwin.cmake | 12 +++++++----
Modules/Platform/UnixPaths.cmake | 43 ++++++++++++++++++++--------------------
2 files changed, 29 insertions(+), 26 deletions(-)
diff --git a/Modules/Platform/Darwin.cmake b/Modules/Platform/Darwin.cmake
index e25df1e..9b22a6a 100644
--- a/Modules/Platform/Darwin.cmake
+++ b/Modules/Platform/Darwin.cmake
@@ -132,9 +132,9 @@ set(CMAKE_C_FRAMEWORK_SEARCH_FLAG -F)
set(CMAKE_CXX_FRAMEWORK_SEARCH_FLAG -F)
set(CMAKE_Fortran_FRAMEWORK_SEARCH_FLAG -F)
-# default to searching for frameworks first
+# default to searching for frameworks last
if(NOT DEFINED CMAKE_FIND_FRAMEWORK)
- set(CMAKE_FIND_FRAMEWORK FIRST)
+ set(CMAKE_FIND_FRAMEWORK LAST)
endif()
# Older OS X linkers do not report their framework search path
@@ -156,6 +156,8 @@ endif()
# set up the default search directories for frameworks
set(CMAKE_SYSTEM_FRAMEWORK_PATH
+ @GENTOO_PORTAGE_EPREFIX@Frameworks
+ @GENTOO_PORTAGE_EPREFIX@usr/lib
~/Library/Frameworks
)
if(_CMAKE_OSX_SYSROOT_PATH)
@@ -187,13 +189,15 @@ if(CMAKE_OSX_SYSROOT)
endif()
endif()
-# default to searching for application bundles first
+# default to searching for application bundles last
if(NOT DEFINED CMAKE_FIND_APPBUNDLE)
- set(CMAKE_FIND_APPBUNDLE FIRST)
+ set(CMAKE_FIND_APPBUNDLE LAST)
endif()
# set up the default search directories for application bundles
set(_apps_paths)
foreach(_path
+ @GENTOO_PORTAGE_EPREFIX@Applications
+ @GENTOO_PORTAGE_EPREFIX@usr/bin
"~/Applications"
"/Applications"
"${OSX_DEVELOPER_ROOT}/../Applications" # Xcode 4.3+
diff --git a/Modules/Platform/UnixPaths.cmake b/Modules/Platform/UnixPaths.cmake
index 20ee1d1..3481ca8 100644
--- a/Modules/Platform/UnixPaths.cmake
+++ b/Modules/Platform/UnixPaths.cmake
@@ -33,6 +33,7 @@ get_filename_component(_CMAKE_INSTALL_DIR
"${_CMAKE_INSTALL_DIR}" PATH)
# search types.
list(APPEND CMAKE_SYSTEM_PREFIX_PATH
# Standard
+ @GENTOO_PORTAGE_EPREFIX@usr/local @GENTOO_PORTAGE_EPREFIX@usr
@GENTOO_PORTAGE_EPREFIX@
/usr/local /usr /
# CMake install location
@@ -53,43 +54,41 @@ endif()
# List common include file locations not under the common prefixes.
list(APPEND CMAKE_SYSTEM_INCLUDE_PATH
- # Windows API on Cygwin
- /usr/include/w32api
-
- # X11
- /usr/X11R6/include /usr/include/X11
-
- # Other
- /usr/pkg/include
- /opt/csw/include /opt/include
- /usr/openwin/include
+ @GENTOO_PORTAGE_EPREFIX@usr/include
)
list(APPEND CMAKE_SYSTEM_LIBRARY_PATH
- # Windows API on Cygwin
- /usr/lib/w32api
-
- # X11
- /usr/X11R6/lib /usr/lib/X11
-
- # Other
- /usr/pkg/lib
- /opt/csw/lib /opt/lib
- /usr/openwin/lib
+ @GENTOO_PORTAGE_GCCLIBDIR@/gcc
+ @GENTOO_PORTAGE_GCCLIBDIR@
+ @GENTOO_PORTAGE_EPREFIX@usr/lib64
+ @GENTOO_PORTAGE_EPREFIX@usr/libx32
+ @GENTOO_PORTAGE_EPREFIX@usr/lib32
+ @GENTOO_PORTAGE_EPREFIX@usr/lib
+ @GENTOO_PORTAGE_EPREFIX@lib
)
list(APPEND CMAKE_SYSTEM_PROGRAM_PATH
- /usr/pkg/bin
+ @GENTOO_PORTAGE_EPREFIX@usr/bin
+ @GENTOO_PORTAGE_EPREFIX@bin
)
list(APPEND CMAKE_PLATFORM_IMPLICIT_LINK_DIRECTORIES
- /lib /lib32 /lib64 /usr/lib /usr/lib32 /usr/lib64
+ @GENTOO_PORTAGE_GCCLIBDIR@/gcc
+ @GENTOO_PORTAGE_GCCLIBDIR@
+ @GENTOO_PORTAGE_EPREFIX@usr/lib64
+ @GENTOO_PORTAGE_EPREFIX@usr/libx32
+ @GENTOO_PORTAGE_EPREFIX@usr/lib32
+ @GENTOO_PORTAGE_EPREFIX@usr/lib
+ @GENTOO_PORTAGE_EPREFIX@lib
+ /lib /usr/lib /usr/lib32 /usr/lib64 /usr/libx32
)
list(APPEND CMAKE_C_IMPLICIT_INCLUDE_DIRECTORIES
+ GENTOO_PORTAGE_EPREFIX@usr/include
/usr/include
)
list(APPEND CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES
+ @GENTOO_PORTAGE_EPREFIX@usr/include
/usr/include
)
--
1.8.5.5
1.1 dev-util/cmake/files/cmake-3.0.0-FindLAPACK.patch
file :
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-util/cmake/files/cmake-3.0.0-FindLAPACK.patch?rev=1.1&view=markup
plain:
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-util/cmake/files/cmake-3.0.0-FindLAPACK.patch?rev=1.1&content-type=text/plain
Index: cmake-3.0.0-FindLAPACK.patch
===================================================================
--- Modules/FindLAPACK.cmake
+++ Modules/FindLAPACK.cmake
@@ -4,6 +4,10 @@
#
# Find LAPACK library
#
+# Version modified for Gentoo Linux.
+# If a valid PkgConfig configuration is found, this overrides and cancels
+# all further checks.
+#
# This module finds an installed fortran library that implements the
# LAPACK linear-algebra interface (see http://www.netlib.org/lapack/).
#
@@ -72,6 +76,24 @@
# N.B. _prefix is the prefix applied to the names of all cached variables that
# are generated internally and marked advanced by this macro.
+#
+# first, try PkgConfig
+#
+find_package(PkgConfig REQUIRED)
+pkg_check_modules(PC_LAPACK lapack)
+if(PC_LAPACK_FOUND)
+ foreach(PC_LIB ${PC_LAPACK_LIBRARIES})
+ find_library(${PC_LIB}_LIBRARY NAMES ${PC_LIB} HINTS
${PC_LAPACK_LIBRARY_DIRS} )
+ if (NOT ${PC_LIB}_LIBRARY)
+ message(FATAL_ERROR "Something is wrong in your pkg-config file - lib
${PC_LIB} not found in ${PC_LAPACK_LIBRARY_DIRS}")
+ endif (NOT ${PC_LIB}_LIBRARY)
+ list(APPEND LAPACK_LIBRARIES ${${PC_LIB}_LIBRARY})
+ endforeach(PC_LIB)
+ find_package_handle_standard_args(LAPACK DEFAULT_MSG LAPACK_LIBRARIES)
+ mark_as_advanced(LAPACK_LIBRARIES)
+else(PC_LAPACK_FOUND)
+message(STATUS "No PkgConfig configuration for LAPACK found; starting more
extensive search.")
+
set(_libraries_work TRUE)
set(${LIBRARIES})
set(_combined_name)
@@ -348,3 +370,5 @@
endif()
set(CMAKE_FIND_LIBRARY_SUFFIXES ${_lapack_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES})
+
+endif(PC_LAPACK_FOUND)