Add upstream patch to find Boost MPI library (bug #756141)
This commit is contained in:
parent
65dd936a49
commit
496495b0bd
67
cmake-boostmpi.patch
Normal file
67
cmake-boostmpi.patch
Normal file
@ -0,0 +1,67 @@
|
|||||||
|
commit a22eeca3fd7fe022e06001428d5e903913467fa0
|
||||||
|
Author: Brad King <brad.king@kitware.com>
|
||||||
|
Date: Fri Feb 7 16:45:10 2014 -0500
|
||||||
|
|
||||||
|
FindBoost: Search next to MPI libraries for boost_mpi (#14739)
|
||||||
|
|
||||||
|
Some distributions place boost_mpi next to the MPI libraries against
|
||||||
|
which it was built instead of next to the other Boost libraries. If
|
||||||
|
find_package(MPI) has already been run prior to find_package(Boost) then
|
||||||
|
MPI_CXX_LIBRARIES or MPI_C_LIBRARIES may be set to the location of the
|
||||||
|
MPI libraries. Teach FindBoost.cmake to look there for boost_mpi and
|
||||||
|
boost_mpi_python after looking next to the other Boost libraries but
|
||||||
|
not consider the location to be Boost_LIBRARY_DIR.
|
||||||
|
|
||||||
|
diff --git a/Modules/FindBoost.cmake b/Modules/FindBoost.cmake
|
||||||
|
index ae8baab..945694d 100644
|
||||||
|
--- a/Modules/FindBoost.cmake
|
||||||
|
+++ b/Modules/FindBoost.cmake
|
||||||
|
@@ -305,10 +305,15 @@ endmacro()
|
||||||
|
macro(_Boost_FIND_LIBRARY var)
|
||||||
|
find_library(${var} ${ARGN})
|
||||||
|
|
||||||
|
- # If we found the first library save Boost_LIBRARY_DIR.
|
||||||
|
- if(${var} AND NOT Boost_LIBRARY_DIR)
|
||||||
|
- get_filename_component(_dir "${${var}}" PATH)
|
||||||
|
- set(Boost_LIBRARY_DIR "${_dir}" CACHE PATH "Boost library directory" FORCE)
|
||||||
|
+ if(${var})
|
||||||
|
+ # If this is the first library found then save Boost_LIBRARY_DIR.
|
||||||
|
+ if(NOT Boost_LIBRARY_DIR)
|
||||||
|
+ get_filename_component(_dir "${${var}}" PATH)
|
||||||
|
+ set(Boost_LIBRARY_DIR "${_dir}" CACHE PATH "Boost library directory" FORCE)
|
||||||
|
+ endif()
|
||||||
|
+ elseif(_Boost_FIND_LIBRARY_HINTS_FOR_COMPONENT)
|
||||||
|
+ # Try component-specific hints but do not save Boost_LIBRARY_DIR.
|
||||||
|
+ find_library(${var} HINTS ${_Boost_FIND_LIBRARY_HINTS_FOR_COMPONENT} ${ARGN})
|
||||||
|
endif()
|
||||||
|
|
||||||
|
# If Boost_LIBRARY_DIR is known then search only there.
|
||||||
|
@@ -935,6 +940,28 @@ foreach(COMPONENT ${Boost_FIND_COMPONENTS})
|
||||||
|
set( _boost_docstring_release "Boost ${COMPONENT} library (release)")
|
||||||
|
set( _boost_docstring_debug "Boost ${COMPONENT} library (debug)")
|
||||||
|
|
||||||
|
+ # Compute component-specific hints.
|
||||||
|
+ set(_Boost_FIND_LIBRARY_HINTS_FOR_COMPONENT "")
|
||||||
|
+ if(${COMPONENT} STREQUAL "mpi" OR ${COMPONENT} STREQUAL "mpi_python")
|
||||||
|
+ foreach(lib ${MPI_CXX_LIBRARIES} ${MPI_C_LIBRARIES})
|
||||||
|
+ if(IS_ABSOLUTE "${lib}")
|
||||||
|
+ get_filename_component(libdir "${lib}" PATH)
|
||||||
|
+ string(REPLACE "\\" "/" libdir "${libdir}")
|
||||||
|
+ list(APPEND _Boost_FIND_LIBRARY_HINTS_FOR_COMPONENT ${libdir})
|
||||||
|
+ endif()
|
||||||
|
+ endforeach()
|
||||||
|
+ endif()
|
||||||
|
+
|
||||||
|
+ # Consolidate and report component-specific hints.
|
||||||
|
+ if(_Boost_FIND_LIBRARY_HINTS_FOR_COMPONENT)
|
||||||
|
+ list(REMOVE_DUPLICATES _Boost_FIND_LIBRARY_HINTS_FOR_COMPONENT)
|
||||||
|
+ if(Boost_DEBUG)
|
||||||
|
+ message(STATUS "[ ${CMAKE_CURRENT_LIST_FILE}:${CMAKE_CURRENT_LIST_LINE} ] "
|
||||||
|
+ "Component-specific library search paths for ${COMPONENT}: "
|
||||||
|
+ "${_Boost_FIND_LIBRARY_HINTS_FOR_COMPONENT}")
|
||||||
|
+ endif()
|
||||||
|
+ endif()
|
||||||
|
+
|
||||||
|
#
|
||||||
|
# Find RELEASE libraries
|
||||||
|
#
|
10
cmake.spec
10
cmake.spec
@ -13,7 +13,7 @@
|
|||||||
|
|
||||||
Name: cmake
|
Name: cmake
|
||||||
Version: 2.8.12.2
|
Version: 2.8.12.2
|
||||||
Release: 1%{?dist}
|
Release: 2%{?dist}
|
||||||
Summary: Cross-platform make system
|
Summary: Cross-platform make system
|
||||||
|
|
||||||
Group: Development/Tools
|
Group: Development/Tools
|
||||||
@ -56,6 +56,10 @@ Patch8: cmake-qtdeps.patch
|
|||||||
# Fix FindFreetype for 2.5.1+
|
# Fix FindFreetype for 2.5.1+
|
||||||
# http://public.kitware.com/Bug/view.php?id=14601
|
# http://public.kitware.com/Bug/view.php?id=14601
|
||||||
Patch9: cmake-FindFreetype.patch
|
Patch9: cmake-FindFreetype.patch
|
||||||
|
# Upstream patch to find Boost MPI library
|
||||||
|
# http://www.cmake.org/Bug/view.php?id=14739
|
||||||
|
# https://bugzilla.redhat.com/show_bug.cgi?id=756141
|
||||||
|
Patch10: cmake-boostmpi.patch
|
||||||
|
|
||||||
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
||||||
|
|
||||||
@ -125,6 +129,7 @@ The %{name}-gui package contains the Qt based GUI for CMake.
|
|||||||
%patch7 -p1
|
%patch7 -p1
|
||||||
%patch8 -p1
|
%patch8 -p1
|
||||||
%patch9 -p1
|
%patch9 -p1
|
||||||
|
%patch10 -p1
|
||||||
# Setup copyright docs for main package
|
# Setup copyright docs for main package
|
||||||
mkdir _doc
|
mkdir _doc
|
||||||
find Source Utilities -type f -iname copy\* | while read f
|
find Source Utilities -type f -iname copy\* | while read f
|
||||||
@ -236,6 +241,9 @@ update-mime-database %{_datadir}/mime &> /dev/null || :
|
|||||||
|
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Tue Feb 11 2014 Orion Poplawski <orion@cora.nwra.com> - 2.8.12.2-2
|
||||||
|
- Add upstream patch to find Boost MPI library (bug #756141)
|
||||||
|
|
||||||
* Tue Jan 28 2014 Orion Poplawski <orion@cora.nwra.com> - 2.8.12.2-1
|
* Tue Jan 28 2014 Orion Poplawski <orion@cora.nwra.com> - 2.8.12.2-1
|
||||||
- Update to 2.8.12.2
|
- Update to 2.8.12.2
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user