cmake: update to 3.5.2

This upgrade cmake to 3.5.2

BUG=none
CQ-DEPEND=CL:351355
TEST=cbuildbot chromiumos-sdk falco-release daisy-release

Change-Id: I5bffb97ed63ef50ccc8bafc7f6307b30def57dc3
Reviewed-on: https://chromium-review.googlesource.com/349365
Commit-Ready: Caroline Tice <cmtice@chromium.org>
Tested-by: Caroline Tice <cmtice@chromium.org>
Reviewed-by: Mike Frysinger <vapier@chromium.org>
diff --git a/dev-util/cmake/Manifest b/dev-util/cmake/Manifest
index b8f43eb..c2e413d 100644
--- a/dev-util/cmake/Manifest
+++ b/dev-util/cmake/Manifest
@@ -1,2 +1 @@
-DIST cmake-2.8.11.2.tar.gz 5887016 SHA256 b32acb483afdd14339941c6e4ec25f633d916a7a472653a0b00838771a6c0562 SHA512 05ac2293300bf15fdcf98f07dfa7b9862b117cd0d6f7e30c1995ecb8a3bfd94e2b7e778caaa05bc46bd88eca5afe7f6be38b1904275a9a2aeae562bfdbaeec94 WHIRLPOOL 28365c3d091eb41fdbd428d3f9de37ed547c68415bd726874587af1cefd81ed6dce8255527dbee9d3019a65cf1b1416b9f09dfb744befba4c1428da8f88e3907
-DIST cmake-2.8.12.2.tar.gz 6068231 SHA256 8c6574e9afabcb9fc66f463bb1f2f051958d86c85c37fccf067eb1a44a120e5e SHA512 a0fe8f6305052ba7894a7d58aa30f97b4be1f52eb7de650273a704929a6fbe81c7cebfa6e68a18c9e7d62f7ed02c944f74c2974da9aacc70e2cb186e0a1be44d WHIRLPOOL 3635651a59a93c661db4df8c248e35bfd8a9869eb74faa33fa6d56c12039ef7bb37756fd4c55fb107a9b7c38d2616dc43eb41acc0c565cfad4a24db99c361c29
+DIST cmake-3.5.2.tar.gz 6863498 SHA256 92d8410d3d981bb881dfff2aed466da55a58d34c7390d50449aa59b32bb5e62a SHA512 7b08eb9f1b37993553f89c03eceedc465dc52b787dec99b78c74ebff2817d0aac9764e82ad835e8fc39f61cd2d2c0a3544d3f5ae299234ed52e9a940edf30b81 WHIRLPOOL c255825aa024ba9feb51540ed2a36cfa73c6397356d18c5ff8f49258a4c30906c8ed5d7553e7d56f3c373ffff418697f056f218f30aa409debab2303b0f9fa84
diff --git a/dev-util/cmake/cmake-2.8.12.2-r1.ebuild b/dev-util/cmake/cmake-3.5.2-r1.ebuild
similarity index 65%
rename from dev-util/cmake/cmake-2.8.12.2-r1.ebuild
rename to dev-util/cmake/cmake-3.5.2-r1.ebuild
index 0ddacae..ead8135 100644
--- a/dev-util/cmake/cmake-2.8.12.2-r1.ebuild
+++ b/dev-util/cmake/cmake-3.5.2-r1.ebuild
@@ -1,33 +1,31 @@
-# Copyright 1999-2014 Gentoo Foundation
+# Copyright 1999-2016 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/dev-util/cmake/cmake-2.8.12.2-r1.ebuild,v 1.13 2014/09/26 21:07:08 mattst88 Exp $
+# $Id$
 
 EAPI=5
 
 CMAKE_REMOVE_MODULES="no"
 inherit bash-completion-r1 elisp-common toolchain-funcs eutils versionator cmake-utils virtualx
 
-MY_PV=${PV/_/-}
-MY_P=${PN}-${MY_PV}
+MY_P="${P/_/-}"
 
 DESCRIPTION="Cross platform Make"
 HOMEPAGE="http://www.cmake.org/"
 SRC_URI="http://www.cmake.org/files/v$(get_version_component_range 1-2)/${MY_P}.tar.gz"
 
 LICENSE="CMake"
-KEYWORDS="*"
 SLOT="0"
-IUSE="emacs ncurses qt4 qt5"
+KEYWORDS="*"
+IUSE="doc emacs system-jsoncpp ncurses qt4 qt5"
 
-REQUIRED_USE="?? ( qt4 qt5 )"
-
-DEPEND="
-	>=app-arch/libarchive-2.8.0:=
+RDEPEND="
+	>=app-arch/libarchive-3.0.0:=
 	>=dev-libs/expat-2.0.1
-	>=net-misc/curl-7.20.0-r1[ssl]
+	>=net-misc/curl-7.21.5[ssl]
 	sys-libs/zlib
 	virtual/pkgconfig
-	ncurses? ( sys-libs/ncurses )
+	emacs? ( virtual/emacs )
+	ncurses? ( sys-libs/ncurses:0= )
 	qt4? (
 		dev-qt/qtcore:4
 		dev-qt/qtgui:4
@@ -37,9 +35,10 @@
 		dev-qt/qtgui:5
 		dev-qt/qtwidgets:5
 	)
+	system-jsoncpp? ( >=dev-libs/jsoncpp-0.6.0_rc2:0= )
 "
-RDEPEND="${DEPEND}
-	emacs? ( virtual/emacs )
+DEPEND="${RDEPEND}
+	doc? ( dev-python/sphinx )
 "
 
 S="${WORKDIR}/${MY_P}"
@@ -49,23 +48,25 @@
 CMAKE_BINARY="${S}/Bootstrap.cmk/cmake"
 
 PATCHES=(
-	"${FILESDIR}"/${PN}-2.6.3-fix_broken_lfs_on_aix.patch
-	"${FILESDIR}"/${PN}-2.6.3-no-duplicates-in-rpath.patch
-	"${FILESDIR}"/${PN}-2.8.7-FindLAPACK.patch
-	"${FILESDIR}"/${PN}-2.8.8-FindPkgConfig.patch
-	"${FILESDIR}"/${PN}-2.8.10-darwin-bundle.patch
-	"${FILESDIR}"/${PN}-2.8.10-darwin-isysroot.patch
-	"${FILESDIR}"/${PN}-2.8.10-desktop.patch
-	"${FILESDIR}"/${PN}-2.8.10-libform.patch
-	"${FILESDIR}"/${PN}-2.8.10.2-FindPythonInterp.patch
-	"${FILESDIR}"/${PN}-2.8.10.2-FindPythonLibs.patch
-	"${FILESDIR}"/${PN}-2.8.11-FindBLAS.patch
-	"${FILESDIR}"/${PN}-2.8.11-more-no_host_paths.patch
+)
+aa=(
+	# prefix
+	"${FILESDIR}"/${PN}-3.4.0_rc1-darwin-bundle.patch
+	"${FILESDIR}"/${PN}-3.0.0-prefix-dirs.patch
+	"${FILESDIR}"/${PN}-3.1.0-darwin-isysroot.patch
+
+	# handle gentoo packaging in find modules
 	"${FILESDIR}"/${PN}-2.8.12.1-FindImageMagick.patch
-	"${FILESDIR}"/${PN}-2.8.12.1-FindFreetype.patch
-	"${FILESDIR}"/${PN}-2.8.12.2-hppa-bootstrap.patch
-	"${FILESDIR}"/${PN}-2.8.12.2-FindBoost-python.patch
-	"${FILESDIR}"/${PN}-2.8.12.2-FindCurses.patch
+	"${FILESDIR}"/${PN}-3.0.0-FindBLAS.patch
+	"${FILESDIR}"/${PN}-3.0.0-FindBoost-python.patch
+	"${FILESDIR}"/${PN}-3.0.2-FindLAPACK.patch
+	"${FILESDIR}"/${PN}-3.5.2-FindQt4.patch
+
+	# respect python eclasses
+	"${FILESDIR}"/${PN}-2.8.10.2-FindPythonLibs.patch
+	"${FILESDIR}"/${PN}-3.1.0-FindPythonInterp.patch
+
+	# upstream fixes (can usually be removed with a version bump)
 )
 
 cmake_src_bootstrap() {
@@ -107,21 +108,18 @@
 
 	# Excluded tests:
 	#    BootstrapTest: we actualy bootstrap it every time so why test it.
-	#    CTest.updatecvs, which fails to commit as root
+	#    BundleUtilities: bundle creation broken
+	#    CTest.updatecvs: which fails to commit as root
+	#    Fortran: requires fortran
 	#    Qt4Deploy, which tries to break sandbox and ignores prefix
 	#    TestUpload, which requires network access
 	"${BUILD_DIR}"/bin/ctest ${ctestargs} \
-		-E "(BootstrapTest|CTest.UpdateCVS|Qt4Deploy|TestUpload)" \
+		-E "(BootstrapTest|BundleUtilities|CTest.UpdateCVS|Fortran|Qt4Deploy|TestUpload)" \
 		|| die "Tests failed"
 
 	popd > /dev/null
 }
 
-pkg_setup() {
-	# bug 387227
-	addpredict /proc/self/coredump_filter
-}
-
 src_prepare() {
 	cmake-utils_src_prepare
 
@@ -140,18 +138,16 @@
 }
 
 src_configure() {
-	# make things work with gentoo java setup
-	# in case java-config cannot be run, the variable just becomes unset
-	# per bug #315229
-	export JAVA_HOME=$(java-config -g JAVA_HOME 2> /dev/null)
-
 	local mycmakeargs=(
 		-DCMAKE_USE_SYSTEM_LIBRARIES=ON
+		-DCMAKE_USE_SYSTEM_LIBRARY_JSONCPP=$(usex system-jsoncpp)
 		-DCMAKE_INSTALL_PREFIX="${EPREFIX}"/usr
 		-DCMAKE_DOC_DIR=/share/doc/${PF}
 		-DCMAKE_MAN_DIR=/share/man
 		-DCMAKE_DATA_DIR=/share/${PN}
-		$(cmake-utils_use_build ncurses CursesDialog)
+		-DSPHINX_MAN=$(usex doc)
+		-DSPHINX_HTML=$(usex doc)
+		-DBUILD_CursesDialog="$(usex ncurses)"
 	)
 
 	if use qt4 || use qt5 ; then
@@ -160,36 +156,39 @@
 			$(cmake-utils_use_find_package qt5 Qt5Widgets)
 		)
 	fi
+
 	cmake-utils_src_configure
 }
 
 src_compile() {
 	cmake-utils_src_compile
-	use emacs && elisp-compile Docs/cmake-mode.el
+	use emacs && elisp-compile Auxiliary/cmake-mode.el
 }
 
 src_test() {
-	VIRTUALX_COMMAND="cmake_src_test" virtualmake
+	virtx cmake_src_test
 }
 
 src_install() {
 	cmake-utils_src_install
+
 	if use emacs; then
-		elisp-install ${PN} Docs/cmake-mode.el Docs/cmake-mode.elc
+		elisp-install ${PN} Auxiliary/cmake-mode.el Auxiliary/cmake-mode.elc
 		elisp-site-file-install "${FILESDIR}/${SITEFILE}"
 	fi
 
 	insinto /usr/share/vim/vimfiles/syntax
-	doins Docs/cmake-syntax.vim
+	doins Auxiliary/cmake-syntax.vim
 
 	insinto /usr/share/vim/vimfiles/indent
-	doins Docs/cmake-indent.vim
+	doins Auxiliary/cmake-indent.vim
 
 	insinto /usr/share/vim/vimfiles/ftdetect
 	doins "${FILESDIR}/${PN}.vim"
 
-	dobashcomp Docs/bash-completion/{${PN},ctest,cpack}
-	rm -rf "${D}/usr/share/cmake/completions" || die
+	dobashcomp Auxiliary/bash-completion/{${PN},ctest,cpack}
+
+	rm -rf "${ED}"/usr/share/cmake/{completions,editors} || die
 }
 
 pkg_postinst() {
diff --git a/dev-util/cmake/files/cmake-2.6.3-fix_broken_lfs_on_aix.patch b/dev-util/cmake/files/cmake-2.6.3-fix_broken_lfs_on_aix.patch
deleted file mode 100644
index 02c3011..0000000
--- a/dev-util/cmake/files/cmake-2.6.3-fix_broken_lfs_on_aix.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-http://public.kitware.com/Bug/view.php?id=7933
-
-diff -ur cmake-2.6.2/Source/kwsys/kwsysPlatformTestsCXX.cxx cmake-2.6.2-p/Source/kwsys/kwsysPlatformTestsCXX.cxx
---- cmake-2.6.2/Source/kwsys/kwsysPlatformTestsCXX.cxx	Wed Sep 24 20:34:37 2008
-+++ cmake-2.6.2-p/Source/kwsys/kwsysPlatformTestsCXX.cxx	Tue Nov  4 11:18:32 2008
-@@ -38,6 +38,13 @@
- int main() { return 0; }
- #endif
- 
-+#ifdef TEST_KWSYS_LFS_SUPPORT
-+#define _LARGE_FILES
-+#include <iostream>
-+int main() { return 0; }
-+#endif
-+
-+
- #ifdef TEST_KWSYS_IOS_HAVE_STD
- #include <iosfwd>
- void f(std ::ostream*) {}
-diff -ur cmake-2.6.2/bootstrap cmake-2.6.2-p/bootstrap
---- cmake-2.6.2/bootstrap	Wed Sep 24 20:34:33 2008
-+++ cmake-2.6.2-p/bootstrap	Tue Nov  4 11:17:11 2008
-@@ -1005,6 +1005,16 @@
-   echo "${cmake_cxx_compiler} does not have stl iterator_traits"
- fi
- 
-+if cmake_try_run "${cmake_cxx_compiler}" \
-+  "${cmake_cxx_flags} -DTEST_KWSYS_LFS_SUPPORT" \
-+  "${cmake_source_dir}/Source/kwsys/kwsysPlatformTestsCXX.cxx" >> cmake_bootstrap.log 2>&1; then
-+  KWSYS_LFS_AVAILABLE=1
-+  echo "LFS support available"
-+else
-+  KWSYS_LFS_AVAILABLE=0
-+  echo "LFS support unavailable, disabled"
-+fi
-+
- if [ "x${KWSYS_STL_HAS_ITERATOR_TRAITS}" = "x0" ]; then
-   if cmake_try_run "${cmake_cxx_compiler}" \
-     "${cmake_cxx_flags} -DTEST_KWSYS_STL_HAS_ITERATOR_CATEGORY -DKWSYS_STL_HAVE_STD=${KWSYS_STL_HAVE_STD}" \
diff --git a/dev-util/cmake/files/cmake-2.6.3-no-duplicates-in-rpath.patch b/dev-util/cmake/files/cmake-2.6.3-no-duplicates-in-rpath.patch
deleted file mode 100644
index ceb205f..0000000
--- a/dev-util/cmake/files/cmake-2.6.3-no-duplicates-in-rpath.patch
+++ /dev/null
@@ -1,19 +0,0 @@
-Patch by Heiko Przybyl
-
---- Source/cmComputeLinkInformation.cxx
-+++ Source/cmComputeLinkInformation.cxx
-@@ -1686,6 +1686,14 @@ std::string cmComputeLinkInformation::Ge
-   for(std::vector<std::string>::const_iterator ri = runtimeDirs.begin();
-       ri != runtimeDirs.end(); ++ri)
-     {
-+      // Do not add duplicates.
-+      // I'd like to have that check already in the list generation code
-+      // but that would need lots of more changes, even in ExpandListArgument().
-+      if(*sep != '\0' && (rpath + sep).find(*ri + sep) != std::string::npos)
-+        {
-+          //std::cerr << "ignoring duplicate: '" << *ri << "' in '" << rpath << "'" << std::endl;
-+          continue;
-+        }
-     // Separate from previous path.
-     rpath += sep;
-     sep = this->GetRuntimeSep().c_str();
diff --git a/dev-util/cmake/files/cmake-2.8.10-desktop.patch b/dev-util/cmake/files/cmake-2.8.10-desktop.patch
deleted file mode 100644
index e0cefa9..0000000
--- a/dev-util/cmake/files/cmake-2.8.10-desktop.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/Source/QtDialog/CMake.desktop b/Source/QtDialog/CMake.desktop
-index 645eb76..7be495f 100644
---- a/Source/QtDialog/CMake.desktop
-+++ b/Source/QtDialog/CMake.desktop
-@@ -3,7 +3,7 @@ Version=1.0
- Name=CMake
- Comment=Cross-platform buildsystem
- Exec=cmake-gui %f
--Icon=CMakeSetup32.png
-+Icon=CMakeSetup32
- Terminal=false
- X-MultipleArgs=false
- Type=Application
diff --git a/dev-util/cmake/files/cmake-2.8.10-libform.patch b/dev-util/cmake/files/cmake-2.8.10-libform.patch
deleted file mode 100644
index 052cc30..0000000
--- a/dev-util/cmake/files/cmake-2.8.10-libform.patch
+++ /dev/null
@@ -1,51 +0,0 @@
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index ea1c033..ae479ce 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -395,9 +395,6 @@ macro (CMAKE_BUILD_UTILITIES)
-   else ()
-     set(BUILD_CursesDialog 0)
-   endif ()
--  if(BUILD_CursesDialog)
--    add_subdirectory(Source/CursesDialog/form)
--  endif()
- endmacro ()
- 
- #-----------------------------------------------------------------------
-diff --git a/Source/CursesDialog/CMakeLists.txt b/Source/CursesDialog/CMakeLists.txt
-index 96e28b4..4102379 100644
---- a/Source/CursesDialog/CMakeLists.txt
-+++ b/Source/CursesDialog/CMakeLists.txt
-@@ -25,13 +25,16 @@ set( CURSES_SRCS
-               CursesDialog/ccmake
-    )
- 
--include_directories(${CMake_SOURCE_DIR}/Source/CursesDialog/form
--                    ${CMake_BINARY_DIR}/Source/CursesDialog/form)
- include_directories(${CURSES_INCLUDE_PATH})
- 
- 
- add_executable(ccmake ${CURSES_SRCS} )
- target_link_libraries(ccmake CMakeLib)
--target_link_libraries(ccmake cmForm)
-+TARGET_LINK_LIBRARIES(ccmake form)
-+TARGET_LINK_LIBRARIES(ccmake ${CURSES_LIBRARY})
-+IF(CURSES_EXTRA_LIBRARY)
-+  TARGET_LINK_LIBRARIES(ccmake ${CURSES_EXTRA_LIBRARY})
-+ENDIF(CURSES_EXTRA_LIBRARY)
-+
- 
- install_targets(/bin ccmake)
-diff --git a/Source/CursesDialog/cmCursesStandardIncludes.h b/Source/CursesDialog/cmCursesStandardIncludes.h
-index b157a28..f131ea4 100644
---- a/Source/CursesDialog/cmCursesStandardIncludes.h
-+++ b/Source/CursesDialog/cmCursesStandardIncludes.h
-@@ -15,8 +15,6 @@
-  #define _MSE_INT_H
- #endif
- 
--#include <cmFormConfigure.h>
--
- #if defined(__hpux)
- # define _BOOL_DEFINED
- # include <sys/time.h>
diff --git a/dev-util/cmake/files/cmake-2.8.10.2-FindPythonInterp.patch b/dev-util/cmake/files/cmake-2.8.10.2-FindPythonInterp.patch
deleted file mode 100644
index a7e8688..0000000
--- a/dev-util/cmake/files/cmake-2.8.10.2-FindPythonInterp.patch
+++ /dev/null
@@ -1,22 +0,0 @@
---- Modules/FindPythonInterp.cmake
-+++ Modules/FindPythonInterp.cmake
-@@ -60,6 +60,10 @@
- 
- list(APPEND _Python_NAMES python)
- 
-+if (CMAKE_BUILD_TYPE STREQUAL Gentoo)
-+    set(_Python_NAMES python)
-+endif()
-+
- # Search for the current active python version first
- find_program(PYTHON_EXECUTABLE NAMES ${_Python_NAMES})
- 
-@@ -76,7 +80,7 @@
- unset(_PYTHON3_VERSIONS)
- 
- # Search for newest python version if python executable isn't found
--if(NOT PYTHON_EXECUTABLE)
-+if(NOT PYTHON_EXECUTABLE AND NOT CMAKE_BUILD_TYPE STREQUAL Gentoo)
-     foreach(_CURRENT_VERSION ${_Python_VERSIONS})
-       set(_Python_NAMES python${_CURRENT_VERSION})
-       if(WIN32)
diff --git a/dev-util/cmake/files/cmake-2.8.12.1-FindFreetype.patch b/dev-util/cmake/files/cmake-2.8.12.1-FindFreetype.patch
deleted file mode 100644
index 6dc244c..0000000
--- a/dev-util/cmake/files/cmake-2.8.12.1-FindFreetype.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-From: Julian Ospald <hasufell@gentoo.org>
-Date: Sun Dec  8 13:38:06 UTC 2013
-Subject: fix check for freetype-2.5.1
-
---- Modules/FindFreetype.cmake
-+++ Modules/FindFreetype.cmake
-@@ -64,6 +64,19 @@
-   PATH_SUFFIXES include/freetype2 include
- )
- 
-+if(NOT FREETYPE_INCLUDE_DIR_freetype2)
-+  find_path(FREETYPE_INCLUDE_DIR_freetype2 config/ftheader.h
-+    HINTS
-+      ENV FREETYPE_DIR
-+    PATHS
-+      /usr/X11R6
-+      /usr/local/X11R6
-+      /usr/local/X11
-+      /usr/freeware
-+    PATH_SUFFIXES include/freetype2 include
-+  )
-+endif()
-+
- find_library(FREETYPE_LIBRARY
-   NAMES freetype libfreetype freetype219
-   HINTS
-@@ -82,8 +95,14 @@
- endif()
- set(FREETYPE_LIBRARIES "${FREETYPE_LIBRARY}")
- 
--if(FREETYPE_INCLUDE_DIR_freetype2 AND EXISTS "${FREETYPE_INCLUDE_DIR_freetype2}/freetype/freetype.h")
--    file(STRINGS "${FREETYPE_INCLUDE_DIR_freetype2}/freetype/freetype.h" freetype_version_str
-+if(EXISTS "${FREETYPE_INCLUDE_DIR_freetype2}/freetype/freetype.h")
-+  set(FREETYPE_H "${FREETYPE_INCLUDE_DIR_freetype2}/freetype/freetype.h")
-+elseif(EXISTS "${FREETYPE_INCLUDE_DIR_freetype2}/freetype.h")
-+  set(FREETYPE_H "${FREETYPE_INCLUDE_DIR_freetype2}/freetype.h")
-+endif()
-+
-+if(FREETYPE_INCLUDE_DIR_freetype2 AND FREETYPE_H)
-+    file(STRINGS "${FREETYPE_H}" freetype_version_str
-          REGEX "^#[\t ]*define[\t ]+FREETYPE_(MAJOR|MINOR|PATCH)[\t ]+[0-9]+$")
- 
-     unset(FREETYPE_VERSION_STRING)
diff --git a/dev-util/cmake/files/cmake-2.8.12.1-FindImageMagick.patch b/dev-util/cmake/files/cmake-2.8.12.1-FindImageMagick.patch
index b094f17..0c42303 100644
--- a/dev-util/cmake/files/cmake-2.8.12.1-FindImageMagick.patch
+++ b/dev-util/cmake/files/cmake-2.8.12.1-FindImageMagick.patch
@@ -1,5 +1,5 @@
---- Modules/FindImageMagick.cmake
-+++ Modules/FindImageMagick.cmake
+--- a/Modules/FindImageMagick.cmake
++++ b/Modules/FindImageMagick.cmake
 @@ -147,17 +147,17 @@
      )
    if(component STREQUAL "Magick++")
diff --git a/dev-util/cmake/files/cmake-2.8.12.2-FindCurses.patch b/dev-util/cmake/files/cmake-2.8.12.2-FindCurses.patch
deleted file mode 100644
index 43a2a7f..0000000
--- a/dev-util/cmake/files/cmake-2.8.12.2-FindCurses.patch
+++ /dev/null
@@ -1,42 +0,0 @@
---- cmake-2.8.12.1-orig/Modules/FindCurses.cmake	2013-11-06 06:07:22.000000000 +1100
-+++ cmake-2.8.12.1/Modules/FindCurses.cmake	2014-01-17 21:55:40.630142386 +1100
-@@ -30,7 +30,7 @@
- find_library(CURSES_NCURSES_LIBRARY NAMES ncurses )
- set(CURSES_USE_NCURSES FALSE)
- 
--if(CURSES_NCURSES_LIBRARY  AND NOT  CURSES_CURSES_LIBRARY)
-+if(CURSES_NCURSES_LIBRARY  AND ((NOT CURSES_CURSES_LIBRARY) OR CURSES_NEED_NCURSES))
-   set(CURSES_USE_NCURSES TRUE)
- endif()
- # http://cygwin.com/ml/cygwin-announce/2010-01/msg00002.html
-@@ -125,10 +125,20 @@
-       CACHE FILEPATH "The curses library" ${FORCE_IT})
-   endif()
- 
-+  CHECK_LIBRARY_EXISTS("${CURSES_NCURSES_LIBRARY}"
-+    cbreak "" CURSES_NCURSES_HAS_CBREAK)
-+  if(NOT CURSES_NCURSES_HAS_CBREAK)
-+    find_library(CURSES_EXTRA_LIBRARY tinfo HINTS "${_cursesLibDir}")
-+    find_library(CURSES_EXTRA_LIBRARY tinfo )
-+    CHECK_LIBRARY_EXISTS("${CURSES_EXTRA_LIBRARY}"
-+      cbreak "" CURSES_TINFO_HAS_CBREAK)
-+  endif()
- endif()
- 
--find_library(CURSES_EXTRA_LIBRARY cur_colr HINTS "${_cursesLibDir}")
--find_library(CURSES_EXTRA_LIBRARY cur_colr )
-+if (NOT CURSES_TINFO_HAS_CBREAK)
-+  find_library(CURSES_EXTRA_LIBRARY cur_colr HINTS "${_cursesLibDir}")
-+  find_library(CURSES_EXTRA_LIBRARY cur_colr )
-+endif()
- 
- find_library(CURSES_FORM_LIBRARY form HINTS "${_cursesLibDir}")
- find_library(CURSES_FORM_LIBRARY form )
-@@ -172,5 +182,7 @@
-   CURSES_INCLUDE_DIR
-   CURSES_CURSES_HAS_WSYNCUP
-   CURSES_NCURSES_HAS_WSYNCUP
-+  CURSES_NCURSES_HAS_CBREAK
-+  CURSES_TINFO_HAS_CBREAK
-   )
- 
diff --git a/dev-util/cmake/files/cmake-2.8.12.2-hppa-bootstrap.patch b/dev-util/cmake/files/cmake-2.8.12.2-hppa-bootstrap.patch
deleted file mode 100644
index 99e39a2..0000000
--- a/dev-util/cmake/files/cmake-2.8.12.2-hppa-bootstrap.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-diff --git a/CompileFlags.cmake b/CompileFlags.cmake
-index 20f5dec..24ac58d 100644
---- a/CompileFlags.cmake
-+++ b/CompileFlags.cmake
-@@ -66,5 +66,5 @@ endif ()
- # avoid binutils problem with large binaries, e.g. when building CMake in debug mode
- # See http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50230
- if (CMAKE_SYSTEM_NAME STREQUAL Linux AND CMAKE_SYSTEM_PROCESSOR STREQUAL parisc)
--  set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Wl,--unique=.text.*")
-+  set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Wl,--unique=.text._*")
- endif ()
-diff --git a/bootstrap b/bootstrap
-index 9784d5d..51d067e 100755
---- a/bootstrap
-+++ b/bootstrap
-@@ -692,10 +692,7 @@ if ${cmake_system_linux}; then
-   # avoid binutils problem with large binaries, e.g. when building CMake in debug mode
-   # See http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50230
-   if ${cmake_machine_parisc}; then
--    # if -O[s23] is given the effect is inverted, so do not use the flag then
--    if [ "`echo "${CXXFLAGS}" | sed -r '/^(.* )?(-O[s234])( .*)?$/s/.*/-Os/'`" != "-Os" ]; then
--      cmake_ld_flags="${LDFLAGS} -Wl,--unique=.text.*"
--    fi
-+    cmake_ld_flags="${LDFLAGS} -Wl,--unique=.text._*"
-   fi
- fi
- 
diff --git a/dev-util/cmake/files/cmake-2.8.7-FindLAPACK.patch b/dev-util/cmake/files/cmake-2.8.7-FindLAPACK.patch
deleted file mode 100644
index 6808b80..0000000
--- a/dev-util/cmake/files/cmake-2.8.7-FindLAPACK.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-diff -ruN cmake-2.8.7.orig/Modules/FindLAPACK.cmake cmake-2.8.7/Modules/FindLAPACK.cmake
---- cmake-2.8.7.orig/Modules/FindLAPACK.cmake	2011-12-30 17:49:56.000000000 +0100
-+++ cmake-2.8.7/Modules/FindLAPACK.cmake	2012-03-09 02:15:46.000000000 +0100
-@@ -1,3 +1,9 @@
-+#
-+# Version modified for Gentoo Linux
-+# If a valid PkgConfig configuration is found, this overrides and cancels
-+# all further checks.
-+#
-+
- # - Find LAPACK library
- # This module finds an installed fortran library that implements the LAPACK
- # linear-algebra interface (see http://www.netlib.org/lapack/).
-@@ -36,6 +42,24 @@
- # (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_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(_lapack_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES ${CMAKE_FIND_LIBRARY_SUFFIXES})
- 
- get_property(_LANGUAGES_ GLOBAL PROPERTY ENABLED_LANGUAGES)
-@@ -305,3 +329,5 @@
- endif(BLA_F95)
- 
- set(CMAKE_FIND_LIBRARY_SUFFIXES ${_lapack_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES})
-+
-+endif(PC_LAPACK_FOUND)
diff --git a/dev-util/cmake/files/cmake-2.8.8-FindPkgConfig.patch b/dev-util/cmake/files/cmake-2.8.8-FindPkgConfig.patch
deleted file mode 100644
index c5e17c5..0000000
--- a/dev-util/cmake/files/cmake-2.8.8-FindPkgConfig.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-diff --git a/Modules/FindPkgConfig.cmake b/Modules/FindPkgConfig.cmake
-index c47f583..5783d37 100644
---- a/Modules/FindPkgConfig.cmake
-+++ b/Modules/FindPkgConfig.cmake
-@@ -87,7 +87,12 @@
- set(PKG_CONFIG_VERSION 1)
- set(PKG_CONFIG_FOUND   0)
- 
--find_program(PKG_CONFIG_EXECUTABLE NAMES pkg-config DOC "pkg-config executable")
-+if(NOT PKG_CONFIG_EXECUTABLE)
-+	set(PKG_CONFIG_EXECUTABLE $ENV{PKG_CONFIG})
-+	if(NOT PKG_CONFIG_EXECUTABLE)
-+		find_program(PKG_CONFIG_EXECUTABLE NAMES pkg-config DOC "pkg-config executable")
-+	endif(NOT PKG_CONFIG_EXECUTABLE)
-+endif(NOT PKG_CONFIG_EXECUTABLE)
- mark_as_advanced(PKG_CONFIG_EXECUTABLE)
- 
- if(PKG_CONFIG_EXECUTABLE)
diff --git a/dev-util/cmake/files/cmake-2.8.11-FindBLAS.patch b/dev-util/cmake/files/cmake-3.0.0-FindBLAS.patch
similarity index 74%
rename from dev-util/cmake/files/cmake-2.8.11-FindBLAS.patch
rename to dev-util/cmake/files/cmake-3.0.0-FindBLAS.patch
index 02e44fb..342a431 100644
--- a/dev-util/cmake/files/cmake-2.8.11-FindBLAS.patch
+++ b/dev-util/cmake/files/cmake-3.0.0-FindBLAS.patch
@@ -1,20 +1,20 @@
---- b/Modules/FindBLAS.cmake
-+++ a/Modules/FindBLAS.cmake
-@@ -1,3 +1,9 @@
-+#
-+# Version modified for Gentoo Linux
-+# If a valid PkgConfig configuration for blas is found, this overrides and cancels
+--- a/Modules/FindBLAS.cmake
++++ b/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.
 +#
-+
- # - Find BLAS library
- # This module finds an installed fortran library that implements the BLAS
- # linear-algebra interface (see http://www.netlib.org/blas/).
-@@ -40,6 +46,26 @@
+ # 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)
@@ -32,17 +32,12 @@
 +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)
  
-@@ -604,3 +630,8 @@
+@@ -688,3 +709,5 @@
  endif()
  
  set(CMAKE_FIND_LIBRARY_SUFFIXES ${_blas_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES})
 +
-+
 +endif(PC_BLAS_FOUND)
-+
-+
diff --git a/dev-util/cmake/files/cmake-2.8.12.2-FindBoost-python.patch b/dev-util/cmake/files/cmake-3.0.0-FindBoost-python.patch
similarity index 64%
rename from dev-util/cmake/files/cmake-2.8.12.2-FindBoost-python.patch
rename to dev-util/cmake/files/cmake-3.0.0-FindBoost-python.patch
index 4a5474a..a6291d2 100644
--- a/dev-util/cmake/files/cmake-2.8.12.2-FindBoost-python.patch
+++ b/dev-util/cmake/files/cmake-3.0.0-FindBoost-python.patch
@@ -1,9 +1,21 @@
---- Modules/FindBoost.cmake
-+++ Modules/FindBoost.cmake
-@@ -905,6 +905,15 @@
- 
+From 934ec9add33d413e4d5c9cec1cb3ebb5cbfd81f4 Mon Sep 17 00:00:00 2001
+From: Michael Palimaka <kensington@gentoo.org>
+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)
@@ -13,13 +25,13 @@
 +    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()
 +
- 
-   #
-   # Find RELEASE libraries
-@@ -915,6 +924,14 @@
-     ${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_MULTITHREADED}${_boost_RELEASE_ABI_TAG}-${Boost_LIB_VERSION}
-     ${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_MULTITHREADED}${_boost_RELEASE_ABI_TAG}
-     ${Boost_LIB_PREFIX}boost_${COMPONENT} )
+   # 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}
@@ -28,13 +40,14 @@
 +        ${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
-@@ -922,6 +939,13 @@
-       ${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_COMPILER}${_boost_MULTITHREADED}${_boost_RELEASE_STATIC_ABI_TAG}
-       ${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_MULTITHREADED}${_boost_RELEASE_STATIC_ABI_TAG}-${Boost_LIB_VERSION}
-       ${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_MULTITHREADED}${_boost_RELEASE_STATIC_ABI_TAG} )
+@@ -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}
@@ -45,10 +58,10 @@
    endif()
    if(Boost_THREADAPI AND ${COMPONENT} STREQUAL "thread")
       _Boost_PREPEND_LIST_WITH_THREADAPI(_boost_RELEASE_NAMES ${_boost_RELEASE_NAMES})
-@@ -951,6 +975,15 @@
-     ${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_MULTITHREADED}${_boost_DEBUG_ABI_TAG}
-     ${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_MULTITHREADED}
-     ${Boost_LIB_PREFIX}boost_${COMPONENT} )
+@@ -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}
@@ -61,10 +74,10 @@
    if(_boost_STATIC_RUNTIME_WORKAROUND)
      set(_boost_DEBUG_STATIC_ABI_TAG "-s${_boost_DEBUG_ABI_TAG}")
      list(APPEND _boost_DEBUG_NAMES
-@@ -958,6 +991,13 @@
-       ${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_COMPILER}${_boost_MULTITHREADED}${_boost_DEBUG_STATIC_ABI_TAG}
-       ${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_MULTITHREADED}${_boost_DEBUG_STATIC_ABI_TAG}-${Boost_LIB_VERSION}
-       ${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_MULTITHREADED}${_boost_DEBUG_STATIC_ABI_TAG} )
+@@ -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}
@@ -75,3 +88,6 @@
    endif()
    if(Boost_THREADAPI AND ${COMPONENT} STREQUAL "thread")
       _Boost_PREPEND_LIST_WITH_THREADAPI(_boost_DEBUG_NAMES ${_boost_DEBUG_NAMES})
+-- 
+1.8.5.5
+
diff --git a/dev-util/cmake/files/cmake-2.8.11-more-no_host_paths.patch b/dev-util/cmake/files/cmake-3.0.0-prefix-dirs.patch
similarity index 76%
rename from dev-util/cmake/files/cmake-2.8.11-more-no_host_paths.patch
rename to dev-util/cmake/files/cmake-3.0.0-prefix-dirs.patch
index 36f4ded..decfb91 100644
--- a/dev-util/cmake/files/cmake-2.8.11-more-no_host_paths.patch
+++ b/dev-util/cmake/files/cmake-3.0.0-prefix-dirs.patch
@@ -1,6 +1,6 @@
-From 65571942d4f19d508174f6f89aeaac5ffe380a6e Mon Sep 17 00:00:00 2001
+From e7ce3e523f8cfa1bc749118f381753230766827f Mon Sep 17 00:00:00 2001
 From: Michael Palimaka <kensington@gentoo.org>
-Date: Tue, 6 Nov 2012 23:35:34 +1100
+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
@@ -12,12 +12,19 @@
 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
-@@ -252,9 +252,9 @@
-       "<CMAKE_CXX_COMPILER> <LANGUAGE_COMPILE_FLAGS> <CMAKE_SHARED_LIBRARY_CREATE_CXX_FLAGS> <LINK_FLAGS> -o <TARGET> <SONAME_FLAG> <TARGET_INSTALLNAME_DIR><TARGET_SONAME> <OBJECTS> <LINK_LIBRARIES>")
- 
+@@ -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
@@ -27,16 +34,16 @@
  endif()
  
  # Older OS X linkers do not report their framework search path
-@@ -276,6 +276,8 @@
+@@ -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
-   /Library/Frameworks
-   /Network/Library/Frameworks
-@@ -298,13 +300,15 @@
+   )
+ if(_CMAKE_OSX_SYSROOT_PATH)
+@@ -187,13 +189,15 @@ if(CMAKE_OSX_SYSROOT)
    endif()
  endif()
  
@@ -54,9 +61,11 @@
    "~/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 @@
+@@ -33,6 +33,7 @@ get_filename_component(_CMAKE_INSTALL_DIR "${_CMAKE_INSTALL_DIR}" PATH)
  # search types.
  list(APPEND CMAKE_SYSTEM_PREFIX_PATH
    # Standard
@@ -64,7 +73,7 @@
    /usr/local /usr /
  
    # CMake install location
-@@ -44,43 +45,41 @@
+@@ -53,43 +54,41 @@ endif()
  
  # List common include file locations not under the common prefixes.
  list(APPEND CMAKE_SYSTEM_INCLUDE_PATH
@@ -108,7 +117,7 @@
    )
  
  list(APPEND CMAKE_PLATFORM_IMPLICIT_LINK_DIRECTORIES
--  /lib /usr/lib /usr/lib32 /usr/lib64
+-  /lib /lib32 /lib64 /usr/lib /usr/lib32 /usr/lib64
 +  @GENTOO_PORTAGE_GCCLIBDIR@/gcc
 +  @GENTOO_PORTAGE_GCCLIBDIR@
 +  @GENTOO_PORTAGE_EPREFIX@usr/lib64
@@ -120,7 +129,7 @@
    )
  
  list(APPEND CMAKE_C_IMPLICIT_INCLUDE_DIRECTORIES
-+  @GENTOO_PORTAGE_EPREFIX@usr/include
++  GENTOO_PORTAGE_EPREFIX@usr/include
    /usr/include
    )
  list(APPEND CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES
@@ -128,3 +137,6 @@
    /usr/include
    )
  
+-- 
+1.8.5.5
+
diff --git a/dev-util/cmake/files/cmake-3.0.2-FindLAPACK.patch b/dev-util/cmake/files/cmake-3.0.2-FindLAPACK.patch
new file mode 100644
index 0000000..321f053
--- /dev/null
+++ b/dev-util/cmake/files/cmake-3.0.2-FindLAPACK.patch
@@ -0,0 +1,43 @@
+--- a/Modules/FindLAPACK.cmake
++++ b/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/).
+ #
+@@ -140,6 +144,23 @@
+ 
+ endmacro()
+ 
++#
++# 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(LAPACK_LINKER_FLAGS)
+ set(LAPACK_LIBRARIES)
+@@ -348,3 +369,5 @@
+ endif()
+ 
+ set(CMAKE_FIND_LIBRARY_SUFFIXES ${_lapack_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES})
++
++endif(PC_LAPACK_FOUND)
diff --git a/dev-util/cmake/files/cmake-3.1.0-FindPythonInterp.patch b/dev-util/cmake/files/cmake-3.1.0-FindPythonInterp.patch
new file mode 100644
index 0000000..3abb2e4
--- /dev/null
+++ b/dev-util/cmake/files/cmake-3.1.0-FindPythonInterp.patch
@@ -0,0 +1,29 @@
+--- a/Modules/FindPythonInterp.cmake
++++ b/Modules/FindPythonInterp.cmake
+@@ -75,6 +75,11 @@
+ else()
+     set(_PYTHON_FIND_OTHER_VERSIONS ${_PYTHON3_VERSIONS} ${_PYTHON2_VERSIONS} ${_PYTHON1_VERSIONS})
+ endif()
++
++if (CMAKE_BUILD_TYPE STREQUAL Gentoo)
++    set(_Python_NAMES python)
++endif()
++
+ find_program(PYTHON_EXECUTABLE NAMES ${_Python_NAMES})
+ 
+ # Set up the versions we know about, in the order we will search. Always add
+@@ -99,12 +104,13 @@
+ unset(_PYTHON3_VERSIONS)
+ 
+ # Search for newest python version if python executable isn't found
+-if(NOT PYTHON_EXECUTABLE)
++if(NOT PYTHON_EXECUTABLE AND NOT CMAKE_BUILD_TYPE STREQUAL Gentoo)
+     foreach(_CURRENT_VERSION IN LISTS _Python_VERSIONS)
+       set(_Python_NAMES python${_CURRENT_VERSION})
+       if(WIN32)
+         list(APPEND _Python_NAMES python)
+       endif()
++
+       find_program(PYTHON_EXECUTABLE
+         NAMES ${_Python_NAMES}
+         PATHS [HKEY_LOCAL_MACHINE\\SOFTWARE\\Python\\PythonCore\\${_CURRENT_VERSION}\\InstallPath]
diff --git a/dev-util/cmake/files/cmake-2.8.10-darwin-isysroot.patch b/dev-util/cmake/files/cmake-3.1.0-darwin-isysroot.patch
similarity index 94%
rename from dev-util/cmake/files/cmake-2.8.10-darwin-isysroot.patch
rename to dev-util/cmake/files/cmake-3.1.0-darwin-isysroot.patch
index 97c93aa..1f3599b 100644
--- a/dev-util/cmake/files/cmake-2.8.10-darwin-isysroot.patch
+++ b/dev-util/cmake/files/cmake-3.1.0-darwin-isysroot.patch
@@ -1,11 +1,9 @@
 Do not detect Xcode and set -isysroot for its SDK, since that messes up
 our toolchain, and hence makes any compilation fail, bug #445308
 
---- Modules/Platform/Darwin.cmake
-+++ Modules/Platform/Darwin.cmake
-@@ -60,18 +60,18 @@
- endif()
- 
+--- a/Modules/Platform/Darwin-Initialize.cmake
++++ b/Modules/Platform/Darwin-Initialize.cmake
+@@ -1,16 +1,16 @@
  # Ask xcode-select where to find /Developer or fall back to ancient location.
 -execute_process(COMMAND xcode-select -print-path
 -  OUTPUT_VARIABLE _stdout
diff --git a/dev-util/cmake/files/cmake-2.8.10-darwin-bundle.patch b/dev-util/cmake/files/cmake-3.4.0_rc1-darwin-bundle.patch
similarity index 72%
rename from dev-util/cmake/files/cmake-2.8.10-darwin-bundle.patch
rename to dev-util/cmake/files/cmake-3.4.0_rc1-darwin-bundle.patch
index 9cb4777..2808ed7 100644
--- a/dev-util/cmake/files/cmake-2.8.10-darwin-bundle.patch
+++ b/dev-util/cmake/files/cmake-3.4.0_rc1-darwin-bundle.patch
@@ -1,8 +1,10 @@
 Don't use .so for modules on darwin/macos. Use .bundle instead.
 Patch by Heiko Przybyl
 
---- Modules/Platform/Darwin.cmake
-+++ Modules/Platform/Darwin.cmake
+Forward-ported from 2.8.10 to 3.4.0-rc1
+
+--- cmake-3.4.0-rc1/Modules/Platform/Darwin.cmake
++++ cmake-3.4.0-rc1/Modules/Platform/Darwin.cmake
 @@ -26,7 +26,7 @@
  set(CMAKE_SHARED_LIBRARY_PREFIX "lib")
  set(CMAKE_SHARED_LIBRARY_SUFFIX ".dylib")
@@ -12,12 +14,12 @@
  set(CMAKE_MODULE_EXISTS 1)
  set(CMAKE_DL_LIBS "")
  
-@@ -48,7 +48,7 @@
+@@ -53,7 +53,7 @@
  set(CMAKE_SHARED_MODULE_CREATE_C_FLAGS "-bundle -Wl,-headerpad_max_install_names")
  set(CMAKE_SHARED_MODULE_LOADER_C_FLAG "-Wl,-bundle_loader,")
  set(CMAKE_SHARED_MODULE_LOADER_CXX_FLAG "-Wl,-bundle_loader,")
--set(CMAKE_FIND_LIBRARY_SUFFIXES ".dylib" ".so" ".a")
-+set(CMAKE_FIND_LIBRARY_SUFFIXES ".dylib" ".bundle" ".a")
+-set(CMAKE_FIND_LIBRARY_SUFFIXES ".tbd" ".dylib" ".so" ".a")
++set(CMAKE_FIND_LIBRARY_SUFFIXES ".tbd" ".dylib" ".bundle" ".a")
  
  # hack: if a new cmake (which uses CMAKE_INSTALL_NAME_TOOL) runs on an old build tree
  # (where install_name_tool was hardcoded) and where CMAKE_INSTALL_NAME_TOOL isn't in the cache
diff --git a/dev-util/cmake/files/cmake-3.5.2-FindQt4.patch b/dev-util/cmake/files/cmake-3.5.2-FindQt4.patch
new file mode 100644
index 0000000..845fc6e
--- /dev/null
+++ b/dev-util/cmake/files/cmake-3.5.2-FindQt4.patch
@@ -0,0 +1,45 @@
+Ensure that the correct version of Qt is always used.
+
+With the introduction qt-4.8.6, Qt binaries were moved from /usr/bin to
+/usr/$(get_libdir)/qt4/bin, leaving behind in their place symlinks to qtchooser.
+
+There is no guarantee to which version of Qt these symlinks might point, so it
+is necessary to find the correct version explicitly.
+
+Once qmake is found, it is queried for the correct location of all other items.
+
+Gentoo-bug: 547222
+
+--- a/Modules/FindQt4.cmake
++++ b/Modules/FindQt4.cmake
+@@ -482,13 +482,23 @@
+ 
+   get_filename_component(qt_install_version "[HKEY_CURRENT_USER\\Software\\trolltech\\Versions;DefaultQtVersion]" NAME)
+ 
+-  find_program(QT_QMAKE_EXECUTABLE NAMES ${QMAKE_NAME}
+-    PATHS
+-      ENV QTDIR
+-      "[HKEY_CURRENT_USER\\Software\\Trolltech\\Versions\\${qt_install_version};InstallDir]"
+-    PATH_SUFFIXES bin
+-    DOC "The qmake executable for the Qt installation to use"
+-  )
++  if(CMAKE_BUILD_TYPE STREQUAL Gentoo)
++    find_program(QT_QMAKE_EXECUTABLE NAMES ${QMAKE_NAME}
++      PATHS
++        $ENV{EPREFIX}/usr/${CMAKE_INSTALL_LIBDIR}/qt4/bin
++        $ENV{EPREFIX}/usr/bin
++        NO_DEFAULT_PATH
++      DOC "The qmake executable for the Qt installation to use"
++    )
++  else()
++    find_program(QT_QMAKE_EXECUTABLE NAMES ${QMAKE_NAME}
++      PATHS
++        ENV QTDIR
++        "[HKEY_CURRENT_USER\\Software\\Trolltech\\Versions\\${qt_install_version};InstallDir]"
++      PATH_SUFFIXES bin
++      DOC "The qmake executable for the Qt installation to use"
++    )
++  endif()
+ 
+   set(major 0)
+   if (QT_QMAKE_EXECUTABLE)
diff --git a/dev-util/cmake/metadata.xml b/dev-util/cmake/metadata.xml
index a23f444..437189f 100644
--- a/dev-util/cmake/metadata.xml
+++ b/dev-util/cmake/metadata.xml
@@ -1,5 +1,11 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
 <pkgmetadata>
-	<herd>kde</herd>
+	<maintainer type="project">
+		<email>kde@gentoo.org</email>
+		<name>Gentoo KDE Project</name>
+	</maintainer>
+	<use>
+		<flag name="system-jsoncpp">Use system copy of <pkg>dev-libs/jsoncpp</pkg> instead of bundled one.</flag>
+	</use>
 </pkgmetadata>