public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: dev-util/cmake/files/, dev-util/cmake/
@ 2015-10-10 17:36 Michael Palimaka
  0 siblings, 0 replies; 23+ messages in thread
From: Michael Palimaka @ 2015-10-10 17:36 UTC (permalink / raw
  To: gentoo-commits

commit:     0ee1361bd482a7f8fb88b72c8975fdaebc4c4348
Author:     Michael Palimaka <kensington <AT> gentoo <DOT> org>
AuthorDate: Sat Oct 10 17:26:35 2015 +0000
Commit:     Michael Palimaka <kensington <AT> gentoo <DOT> org>
CommitDate: Sat Oct 10 17:36:09 2015 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0ee1361b

dev-util/cmake: add patch to ensure the correct version of Qt is always used

Gentoo-bug: 547222

Package-Manager: portage-2.2.20.1

 dev-util/cmake/cmake-3.3.2-r1.ebuild           | 200 +++++++++++++++++++++++++
 dev-util/cmake/files/cmake-3.3.2-FindQt4.patch |  45 ++++++
 2 files changed, 245 insertions(+)

diff --git a/dev-util/cmake/cmake-3.3.2-r1.ebuild b/dev-util/cmake/cmake-3.3.2-r1.ebuild
new file mode 100644
index 0000000..683b1fa
--- /dev/null
+++ b/dev-util/cmake/cmake-3.3.2-r1.ebuild
@@ -0,0 +1,200 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+CMAKE_REMOVE_MODULES="no"
+inherit bash-completion-r1 elisp-common toolchain-funcs eutils versionator cmake-utils virtualx
+
+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
+	http://www.cmake.org/gitweb?p=cmake.git;a=patch;h=b9ec9392da21a3421e48c6961976060d872faffb -> ${PN}-3.3.1-FindPkgConfig_remove_variable_dereference.patch"
+
+LICENSE="CMake"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~hppa-hpux ~ia64-hpux ~x86-interix ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
+IUSE="doc emacs system-jsoncpp ncurses qt4 qt5"
+
+RDEPEND="
+	>=app-arch/libarchive-3.0.0:=
+	>=dev-libs/expat-2.0.1
+	>=net-misc/curl-7.20.0-r1[ssl]
+	sys-libs/zlib
+	virtual/pkgconfig
+	emacs? ( virtual/emacs )
+	ncurses? ( sys-libs/ncurses:0= )
+	qt4? (
+		dev-qt/qtcore:4
+		dev-qt/qtgui:4
+	)
+	qt5? (
+		dev-qt/qtcore:5
+		dev-qt/qtgui:5
+		dev-qt/qtwidgets:5
+	)
+	system-jsoncpp? ( >=dev-libs/jsoncpp-0.6.0_rc2:0= )
+"
+DEPEND="${RDEPEND}
+	doc? ( dev-python/sphinx )
+"
+
+S="${WORKDIR}/${MY_P}"
+
+SITEFILE="50${PN}-gentoo.el"
+
+CMAKE_BINARY="${S}/Bootstrap.cmk/cmake"
+
+PATCHES=(
+	# prefix
+	"${FILESDIR}"/${PN}-2.8.10-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}-3.0.0-FindBLAS.patch
+	"${FILESDIR}"/${PN}-3.0.0-FindBoost-python.patch
+	"${FILESDIR}"/${PN}-3.0.2-FindLAPACK.patch
+	"${FILESDIR}"/${PN}-3.3.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)
+	"${DISTDIR}"/${PN}-3.3.1-FindPkgConfig_remove_variable_dereference.patch
+)
+
+cmake_src_bootstrap() {
+	# Cleanup args to extract only JOBS.
+	# Because bootstrap does not know anything else.
+	echo ${MAKEOPTS} | egrep -o '(\-j|\-\-jobs)(=?|[[:space:]]*)[[:digit:]]+' > /dev/null
+	if [ $? -eq 0 ]; then
+		par_arg=$(echo ${MAKEOPTS} | egrep -o '(\-j|\-\-jobs)(=?|[[:space:]]*)[[:digit:]]+' | tail -n1 | egrep -o '[[:digit:]]+')
+		par_arg="--parallel=${par_arg}"
+	else
+		par_arg="--parallel=1"
+	fi
+
+	# execinfo.h on Solaris isn't quite what it is on Darwin
+	if [[ ${CHOST} == *-solaris* ]] ; then
+		sed -i -e 's/execinfo\.h/blablabla.h/' Source/kwsys/CMakeLists.txt || die
+	fi
+
+	tc-export CC CXX LD
+
+	# bootstrap script isn't exactly /bin/sh compatible
+	${CONFIG_SHELL:-sh} ./bootstrap \
+		--prefix="${T}/cmakestrap/" \
+		${par_arg} \
+		|| die "Bootstrap failed"
+}
+
+cmake_src_test() {
+	# fix OutDir and SelectLibraryConfigurations tests
+	# these are altered thanks to our eclass
+	sed -i -e 's:#IGNORE ::g' \
+		"${S}"/Tests/{OutDir,CMakeOnly/SelectLibraryConfigurations}/CMakeLists.txt \
+		|| die
+
+	pushd "${BUILD_DIR}" > /dev/null
+
+	local ctestargs
+	[[ -n ${TEST_VERBOSE} ]] && ctestargs="--extra-verbose --output-on-failure"
+
+	# Excluded tests:
+	#    BootstrapTest: we actualy bootstrap it every time so why test it.
+	#    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|BundleUtilities|CTest.UpdateCVS|Fortran|Qt4Deploy|TestUpload)" \
+		|| die "Tests failed"
+
+	popd > /dev/null
+}
+
+src_prepare() {
+	cmake-utils_src_prepare
+
+	# disable running of cmake in boostrap command
+	sed -i \
+		-e '/"${cmake_bootstrap_dir}\/cmake"/s/^/#DONOTRUN /' \
+		bootstrap || die "sed failed"
+
+	# Add gcc libs to the default link paths
+	sed -i \
+		-e "s|@GENTOO_PORTAGE_GCCLIBDIR@|${EPREFIX}/usr/${CHOST}/lib/|g" \
+		-e "s|@GENTOO_PORTAGE_EPREFIX@|${EPREFIX}/|g" \
+		Modules/Platform/{UnixPaths,Darwin}.cmake || die "sed failed"
+
+	cmake_src_bootstrap
+}
+
+src_configure() {
+	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}
+		-DSPHINX_MAN=$(usex doc)
+		-DSPHINX_HTML=$(usex doc)
+		$(cmake-utils_use_build ncurses CursesDialog)
+	)
+
+	if use qt4 || use qt5 ; then
+		mycmakeargs+=(
+			-DBUILD_QtDialog=ON
+			$(cmake-utils_use_find_package qt5 Qt5Widgets)
+		)
+	fi
+
+	cmake-utils_src_configure
+}
+
+src_compile() {
+	cmake-utils_src_compile
+	use emacs && elisp-compile Auxiliary/cmake-mode.el
+}
+
+src_test() {
+	VIRTUALX_COMMAND="cmake_src_test" virtualmake
+}
+
+src_install() {
+	cmake-utils_src_install
+
+	if use emacs; then
+		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 Auxiliary/cmake-syntax.vim
+
+	insinto /usr/share/vim/vimfiles/indent
+	doins Auxiliary/cmake-indent.vim
+
+	insinto /usr/share/vim/vimfiles/ftdetect
+	doins "${FILESDIR}/${PN}.vim"
+
+	dobashcomp Auxiliary/bash-completion/{${PN},ctest,cpack}
+
+	rm -rf "${D}"/usr/share/cmake/{completions,editors} || die
+}
+
+pkg_postinst() {
+	use emacs && elisp-site-regen
+}
+
+pkg_postrm() {
+	use emacs && elisp-site-regen
+}

diff --git a/dev-util/cmake/files/cmake-3.3.2-FindQt4.patch b/dev-util/cmake/files/cmake-3.3.2-FindQt4.patch
new file mode 100644
index 0000000..665c330
--- /dev/null
+++ b/dev-util/cmake/files/cmake-3.3.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
+
+--- Modules/FindQt4.cmake
++++ 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
++        /usr/${CMAKE_INSTALL_LIBDIR}/qt4/bin
++        /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)


^ permalink raw reply related	[flat|nested] 23+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/cmake/files/, dev-util/cmake/
@ 2016-03-09 20:20 Lars Wendler
  0 siblings, 0 replies; 23+ messages in thread
From: Lars Wendler @ 2016-03-09 20:20 UTC (permalink / raw
  To: gentoo-commits

commit:     ff0d55b9c06d21de48664968b368490471a5d428
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Wed Mar  9 20:18:26 2016 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Wed Mar  9 20:20:25 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ff0d55b9

dev-util/cmake: Bump to version 3.5.0

Package-Manager: portage-2.2.27
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 dev-util/cmake/Manifest                            |   1 +
 dev-util/cmake/cmake-3.5.0.ebuild                  | 198 +++++++++++++++++++++
 .../files/cmake-2.8.12.1-FindImageMagick.patch     |   4 +-
 dev-util/cmake/files/cmake-3.0.0-FindBLAS.patch    |   4 +-
 dev-util/cmake/files/cmake-3.0.2-FindLAPACK.patch  |   4 +-
 .../cmake/files/cmake-3.1.0-FindPythonInterp.patch |   4 +-
 .../cmake/files/cmake-3.1.0-darwin-isysroot.patch  |   4 +-
 dev-util/cmake/files/cmake-3.3.2-FindQt4.patch     |   4 +-
 8 files changed, 211 insertions(+), 12 deletions(-)

diff --git a/dev-util/cmake/Manifest b/dev-util/cmake/Manifest
index 2e48950..d079502 100644
--- a/dev-util/cmake/Manifest
+++ b/dev-util/cmake/Manifest
@@ -5,3 +5,4 @@ DIST cmake-3.3.1.tar.gz 6577869 SHA256 cd65022c6a0707f1c7112f99e9c981677fdd5518f
 DIST cmake-3.3.2.tar.gz 6578184 SHA256 e75a178d6ebf182b048ebfe6e0657c49f0dc109779170bad7ffcb17463f2fc22 SHA512 01bc0e6ca52a6836ef57360fb38dd92a4575bfa37bfe9625645db77fefd0c170383cfb07b61c6283bde96738ce1a5e18cb7569e7e0b7c98d4b99e86305c50180 WHIRLPOOL 7951dc18d695ca4554b287f91becd8ecb05324e10f9e2c9e34427d26db0d664ee7ab8a226eabed87d93087e41635059f96b1aaea503480f46a555cf3baae3ce7
 DIST cmake-3.4.2.tar.gz 6722152 SHA256 da7cc34e1ce1d82e67a32ab081c02c2845534cd8bf2e09d88077a1b282e97392 SHA512 a06a3f1d2d2dcbc3c1d432bd7416632393b4f5219b89dc0ba000acefe6f0d713c35878344884ea9d9e595a6387b362c97a2432acd92c385cbddb4e7b916723bb WHIRLPOOL 42f66e4273367e821b4b06b630f84919a68bc0d4a2be2085a0f24fb79e1b20fb208abe78a1806570401ba6ca24ad1077b1be27c3e7a774491c8beb63f7d501af
 DIST cmake-3.4.3.tar.gz 6722311 SHA256 b73f8c1029611df7ed81796bf5ca8ba0ef41c6761132340c73ffe42704f980fa SHA512 a326c39cfe9f5408b4586ddd291cabfa400a2442947fb46d94dd6c44db3087c48c84a9a22ca5ed38707467448150383935ed59c669fbbfb20a968d4031eaaa11 WHIRLPOOL fdb3b47a242523919a56a63bf8e778e875f5721c997cdc1a6098f24eec57dadecc44d13b35d74ef1276aebf6f5299c89d4c91ce03c282d081b03ebba29c1ddad
+DIST cmake-3.5.0.tar.gz 6861686 SHA256 92c83ad8a4fd6224cf6319a60b399854f55b38ebe9d297c942408b792b1a9efa SHA512 4fef712560f1975f8d19e897c7b1903811f7bad9314602961b5b32ac58f367bf1308f96cc5edaceb99ac9084b1e0517e4ecb4b5996d2ad53b6aec305ae879b09 WHIRLPOOL bd7f8adfd91cfa0a240e1d3935163d3c978ebdb83f54a3c6c7bcab3b2ad2ad7ac175c247a896511b0736de13f93e19dc89ef68766498ace4163177a4d0aab442

diff --git a/dev-util/cmake/cmake-3.5.0.ebuild b/dev-util/cmake/cmake-3.5.0.ebuild
new file mode 100644
index 0000000..f3eb642
--- /dev/null
+++ b/dev-util/cmake/cmake-3.5.0.ebuild
@@ -0,0 +1,198 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=6
+
+CMAKE_REMOVE_MODULES="no"
+inherit bash-completion-r1 elisp-common toolchain-funcs eutils versionator cmake-utils virtualx
+
+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"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~hppa-hpux ~ia64-hpux ~x86-interix ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
+IUSE="doc emacs system-jsoncpp ncurses qt4 qt5"
+
+RDEPEND="
+	>=app-arch/libarchive-3.0.0:=
+	>=dev-libs/expat-2.0.1
+	>=net-misc/curl-7.20.0-r1[ssl]
+	sys-libs/zlib
+	virtual/pkgconfig
+	emacs? ( virtual/emacs )
+	ncurses? ( sys-libs/ncurses:0= )
+	qt4? (
+		dev-qt/qtcore:4
+		dev-qt/qtgui:4
+	)
+	qt5? (
+		dev-qt/qtcore:5
+		dev-qt/qtgui:5
+		dev-qt/qtwidgets:5
+	)
+	system-jsoncpp? ( >=dev-libs/jsoncpp-0.6.0_rc2:0= )
+"
+DEPEND="${RDEPEND}
+	doc? ( dev-python/sphinx )
+"
+
+S="${WORKDIR}/${MY_P}"
+
+SITEFILE="50${PN}-gentoo.el"
+
+CMAKE_BINARY="${S}/Bootstrap.cmk/cmake"
+
+PATCHES=(
+	# 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}-3.0.0-FindBLAS.patch
+	"${FILESDIR}"/${PN}-3.0.0-FindBoost-python.patch
+	"${FILESDIR}"/${PN}-3.0.2-FindLAPACK.patch
+	"${FILESDIR}"/${PN}-3.3.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() {
+	# Cleanup args to extract only JOBS.
+	# Because bootstrap does not know anything else.
+	echo ${MAKEOPTS} | egrep -o '(\-j|\-\-jobs)(=?|[[:space:]]*)[[:digit:]]+' > /dev/null
+	if [ $? -eq 0 ]; then
+		par_arg=$(echo ${MAKEOPTS} | egrep -o '(\-j|\-\-jobs)(=?|[[:space:]]*)[[:digit:]]+' | tail -n1 | egrep -o '[[:digit:]]+')
+		par_arg="--parallel=${par_arg}"
+	else
+		par_arg="--parallel=1"
+	fi
+
+	# execinfo.h on Solaris isn't quite what it is on Darwin
+	if [[ ${CHOST} == *-solaris* ]] ; then
+		sed -i -e 's/execinfo\.h/blablabla.h/' Source/kwsys/CMakeLists.txt || die
+	fi
+
+	tc-export CC CXX LD
+
+	# bootstrap script isn't exactly /bin/sh compatible
+	${CONFIG_SHELL:-sh} ./bootstrap \
+		--prefix="${T}/cmakestrap/" \
+		${par_arg} \
+		|| die "Bootstrap failed"
+}
+
+cmake_src_test() {
+	# fix OutDir and SelectLibraryConfigurations tests
+	# these are altered thanks to our eclass
+	sed -i -e 's:#IGNORE ::g' \
+		"${S}"/Tests/{OutDir,CMakeOnly/SelectLibraryConfigurations}/CMakeLists.txt \
+		|| die
+
+	pushd "${BUILD_DIR}" > /dev/null
+
+	local ctestargs
+	[[ -n ${TEST_VERBOSE} ]] && ctestargs="--extra-verbose --output-on-failure"
+
+	# Excluded tests:
+	#    BootstrapTest: we actualy bootstrap it every time so why test it.
+	#    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|BundleUtilities|CTest.UpdateCVS|Fortran|Qt4Deploy|TestUpload)" \
+		|| die "Tests failed"
+
+	popd > /dev/null
+}
+
+src_prepare() {
+	cmake-utils_src_prepare
+
+	# disable running of cmake in boostrap command
+	sed -i \
+		-e '/"${cmake_bootstrap_dir}\/cmake"/s/^/#DONOTRUN /' \
+		bootstrap || die "sed failed"
+
+	# Add gcc libs to the default link paths
+	sed -i \
+		-e "s|@GENTOO_PORTAGE_GCCLIBDIR@|${EPREFIX}/usr/${CHOST}/lib/|g" \
+		-e "s|@GENTOO_PORTAGE_EPREFIX@|${EPREFIX}/|g" \
+		Modules/Platform/{UnixPaths,Darwin}.cmake || die "sed failed"
+
+	cmake_src_bootstrap
+}
+
+src_configure() {
+	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}
+		-DSPHINX_MAN=$(usex doc)
+		-DSPHINX_HTML=$(usex doc)
+		-DBUILD_CursesDialog="$(usex ncurses)"
+	)
+
+	if use qt4 || use qt5 ; then
+		mycmakeargs+=(
+			-DBUILD_QtDialog=ON
+			$(cmake-utils_use_find_package qt5 Qt5Widgets)
+		)
+	fi
+
+	cmake-utils_src_configure
+}
+
+src_compile() {
+	cmake-utils_src_compile
+	use emacs && elisp-compile Auxiliary/cmake-mode.el
+}
+
+src_test() {
+	virtx cmake_src_test
+}
+
+src_install() {
+	cmake-utils_src_install
+
+	if use emacs; then
+		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 Auxiliary/cmake-syntax.vim
+
+	insinto /usr/share/vim/vimfiles/indent
+	doins Auxiliary/cmake-indent.vim
+
+	insinto /usr/share/vim/vimfiles/ftdetect
+	doins "${FILESDIR}/${PN}.vim"
+
+	dobashcomp Auxiliary/bash-completion/{${PN},ctest,cpack}
+
+	rm -rf "${ED}"/usr/share/cmake/{completions,editors} || die
+}
+
+pkg_postinst() {
+	use emacs && elisp-site-regen
+}
+
+pkg_postrm() {
+	use emacs && elisp-site-regen
+}

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-3.0.0-FindBLAS.patch b/dev-util/cmake/files/cmake-3.0.0-FindBLAS.patch
index 86c5dc7..342a431 100644
--- a/dev-util/cmake/files/cmake-3.0.0-FindBLAS.patch
+++ b/dev-util/cmake/files/cmake-3.0.0-FindBLAS.patch
@@ -1,5 +1,5 @@
---- Modules/FindBLAS.cmake
-+++ Modules/FindBLAS.cmake
+--- a/Modules/FindBLAS.cmake
++++ b/Modules/FindBLAS.cmake
 @@ -4,6 +4,10 @@
  #
  # Find BLAS library

diff --git a/dev-util/cmake/files/cmake-3.0.2-FindLAPACK.patch b/dev-util/cmake/files/cmake-3.0.2-FindLAPACK.patch
index 57250e4..321f053 100644
--- a/dev-util/cmake/files/cmake-3.0.2-FindLAPACK.patch
+++ b/dev-util/cmake/files/cmake-3.0.2-FindLAPACK.patch
@@ -1,5 +1,5 @@
---- Modules/FindLAPACK.cmake.orig	2014-09-15 23:50:11.377111987 +0200
-+++ Modules/FindLAPACK.cmake	2014-09-15 23:52:54.734388375 +0200
+--- a/Modules/FindLAPACK.cmake
++++ b/Modules/FindLAPACK.cmake
 @@ -4,6 +4,10 @@
  #
  # Find LAPACK library

diff --git a/dev-util/cmake/files/cmake-3.1.0-FindPythonInterp.patch b/dev-util/cmake/files/cmake-3.1.0-FindPythonInterp.patch
index 78f622d..3abb2e4 100644
--- a/dev-util/cmake/files/cmake-3.1.0-FindPythonInterp.patch
+++ b/dev-util/cmake/files/cmake-3.1.0-FindPythonInterp.patch
@@ -1,5 +1,5 @@
---- Modules/FindPythonInterp.cmake.orig	2015-01-06 11:50:03.376357898 +0100
-+++ Modules/FindPythonInterp.cmake	2015-01-06 12:25:48.614989290 +0100
+--- a/Modules/FindPythonInterp.cmake
++++ b/Modules/FindPythonInterp.cmake
 @@ -75,6 +75,11 @@
  else()
      set(_PYTHON_FIND_OTHER_VERSIONS ${_PYTHON3_VERSIONS} ${_PYTHON2_VERSIONS} ${_PYTHON1_VERSIONS})

diff --git a/dev-util/cmake/files/cmake-3.1.0-darwin-isysroot.patch b/dev-util/cmake/files/cmake-3.1.0-darwin-isysroot.patch
index 119001a..1f3599b 100644
--- a/dev-util/cmake/files/cmake-3.1.0-darwin-isysroot.patch
+++ b/dev-util/cmake/files/cmake-3.1.0-darwin-isysroot.patch
@@ -1,8 +1,8 @@
 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-Initialize.cmake
-+++ Modules/Platform/Darwin-Initialize.cmake
+--- 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

diff --git a/dev-util/cmake/files/cmake-3.3.2-FindQt4.patch b/dev-util/cmake/files/cmake-3.3.2-FindQt4.patch
index 665c330..31e4db3 100644
--- a/dev-util/cmake/files/cmake-3.3.2-FindQt4.patch
+++ b/dev-util/cmake/files/cmake-3.3.2-FindQt4.patch
@@ -10,8 +10,8 @@ Once qmake is found, it is queried for the correct location of all other items.
 
 Gentoo-bug: 547222
 
---- Modules/FindQt4.cmake
-+++ Modules/FindQt4.cmake
+--- 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)


^ permalink raw reply related	[flat|nested] 23+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/cmake/files/, dev-util/cmake/
@ 2016-07-15  5:44 Johannes Huber
  0 siblings, 0 replies; 23+ messages in thread
From: Johannes Huber @ 2016-07-15  5:44 UTC (permalink / raw
  To: gentoo-commits

commit:     f966538219d8d85fa903bec626e122b5f8cdbceb
Author:     Johannes Huber <johu <AT> gentoo <DOT> org>
AuthorDate: Fri Jul 15 05:40:48 2016 +0000
Commit:     Johannes Huber <johu <AT> gentoo <DOT> org>
CommitDate: Fri Jul 15 05:41:08 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f9665382

dev-util/cmake: Remove 3.3.2, 3.4.3

Package-Manager: portage-2.3.0

 dev-util/cmake/Manifest                        |   2 -
 dev-util/cmake/cmake-3.3.2-r1.ebuild           | 200 -------------------------
 dev-util/cmake/cmake-3.4.3.ebuild              | 198 ------------------------
 dev-util/cmake/files/cmake-3.3.2-FindQt4.patch |  45 ------
 4 files changed, 445 deletions(-)

diff --git a/dev-util/cmake/Manifest b/dev-util/cmake/Manifest
index 7206d93..36997d8 100644
--- a/dev-util/cmake/Manifest
+++ b/dev-util/cmake/Manifest
@@ -2,7 +2,5 @@ DIST cmake-2.8.12.2.tar.gz 6068231 SHA256 8c6574e9afabcb9fc66f463bb1f2f051958d86
 DIST cmake-3.2.2.tar.gz 6438736 SHA256 ade94e6e36038774565f2aed8866415443444fb7a362eb0ea5096e40d5407c78 SHA512 b7460733ebf81e6c0cade84c26407f474e1b0a7372d19ccadf928a8578a53043fd76c507b45a00762161aaf6938a59df6110a1eb11a7678bfbc984b020e5d68b WHIRLPOOL 7debc5ac607578feee1c322416ac132ad4ba00a40410e03ee5cba52290f2f15904e7d0f2b77da37c9e8caa379b0530339fb2cc87246209f7999f10e44637f2d2
 DIST cmake-3.3.1-FindPkgConfig_remove_variable_dereference.patch 1583 SHA256 22e6672bd9356a98a0eaf667e66d926f52c4e80e53e38cb8e5cd489993e5668f SHA512 306cf4498cbad9f9c49a63c1870e04f33b5a91032508654a691fe116ec4821da98e9a1e35b6cb186bf9367ebdd9c42ac919e6fc44d2ba6938ad3bc1131b80655 WHIRLPOOL 1d30dd99ea6dc085f64c1b02ab0708f0c033e8d98f69ca431016da17eecc29f01489e5e253446bd542a4a9b770bcaee7b7a7bfa71e7520e7900094a9350c7f8f
 DIST cmake-3.3.1.tar.gz 6577869 SHA256 cd65022c6a0707f1c7112f99e9c981677fdd5518f7ddfa0f778d4cee7113e3d6 SHA512 bc60dd58f884467d7426f73c8e3e78b7ea0a0089f2577c596f34bcfc6d38dfd5d4034589c82dd9cadf138d619dbc4f0c4519faeeeef0672b4578180de21b33f1 WHIRLPOOL 631b925dc8b60f57c573d7c220aaaf4193cb7a5fbd3537e96db6e17bbe537fa89398349763fce867b0e72af591cfcbab9b8cd570a613e7933a31788cfb771f2b
-DIST cmake-3.3.2.tar.gz 6578184 SHA256 e75a178d6ebf182b048ebfe6e0657c49f0dc109779170bad7ffcb17463f2fc22 SHA512 01bc0e6ca52a6836ef57360fb38dd92a4575bfa37bfe9625645db77fefd0c170383cfb07b61c6283bde96738ce1a5e18cb7569e7e0b7c98d4b99e86305c50180 WHIRLPOOL 7951dc18d695ca4554b287f91becd8ecb05324e10f9e2c9e34427d26db0d664ee7ab8a226eabed87d93087e41635059f96b1aaea503480f46a555cf3baae3ce7
-DIST cmake-3.4.3.tar.gz 6722311 SHA256 b73f8c1029611df7ed81796bf5ca8ba0ef41c6761132340c73ffe42704f980fa SHA512 a326c39cfe9f5408b4586ddd291cabfa400a2442947fb46d94dd6c44db3087c48c84a9a22ca5ed38707467448150383935ed59c669fbbfb20a968d4031eaaa11 WHIRLPOOL fdb3b47a242523919a56a63bf8e778e875f5721c997cdc1a6098f24eec57dadecc44d13b35d74ef1276aebf6f5299c89d4c91ce03c282d081b03ebba29c1ddad
 DIST cmake-3.5.2.tar.gz 6863498 SHA256 92d8410d3d981bb881dfff2aed466da55a58d34c7390d50449aa59b32bb5e62a SHA512 7b08eb9f1b37993553f89c03eceedc465dc52b787dec99b78c74ebff2817d0aac9764e82ad835e8fc39f61cd2d2c0a3544d3f5ae299234ed52e9a940edf30b81 WHIRLPOOL c255825aa024ba9feb51540ed2a36cfa73c6397356d18c5ff8f49258a4c30906c8ed5d7553e7d56f3c373ffff418697f056f218f30aa409debab2303b0f9fa84
 DIST cmake-3.6.0.tar.gz 6897636 SHA256 fd05ed40cc40ef9ef99fac7b0ece2e0b871858a82feade48546f5d2940147670 SHA512 4e519fa30a6fee2fb0ef8df667504dfaba1f965c263fd4f42d17348c45cff33777de9a8c552b13da0bb4b9f1300a142f204a844eac03bdf431e826e8d7ba3505 WHIRLPOOL 4d2842efa7ae6bdfe5d1e0b773f8649a6dec7d23364f89570d442db2f4da033acd0023dd5cf80004a024b5c1ec142db284357a21c993bc84d0a07d8e0fb76c77

diff --git a/dev-util/cmake/cmake-3.3.2-r1.ebuild b/dev-util/cmake/cmake-3.3.2-r1.ebuild
deleted file mode 100644
index 90cc7bd..0000000
--- a/dev-util/cmake/cmake-3.3.2-r1.ebuild
+++ /dev/null
@@ -1,200 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=5
-
-CMAKE_REMOVE_MODULES="no"
-inherit bash-completion-r1 elisp-common toolchain-funcs eutils versionator cmake-utils virtualx
-
-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
-	http://www.cmake.org/gitweb?p=cmake.git;a=patch;h=b9ec9392da21a3421e48c6961976060d872faffb -> ${PN}-3.3.1-FindPkgConfig_remove_variable_dereference.patch"
-
-LICENSE="CMake"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~hppa-hpux ~ia64-hpux ~x86-interix ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
-IUSE="doc emacs system-jsoncpp ncurses qt4 qt5"
-
-RDEPEND="
-	>=app-arch/libarchive-3.0.0:=
-	>=dev-libs/expat-2.0.1
-	>=net-misc/curl-7.20.0-r1[ssl]
-	sys-libs/zlib
-	virtual/pkgconfig
-	emacs? ( virtual/emacs )
-	ncurses? ( sys-libs/ncurses:0= )
-	qt4? (
-		dev-qt/qtcore:4
-		dev-qt/qtgui:4
-	)
-	qt5? (
-		dev-qt/qtcore:5
-		dev-qt/qtgui:5
-		dev-qt/qtwidgets:5
-	)
-	system-jsoncpp? ( >=dev-libs/jsoncpp-0.6.0_rc2:0= )
-"
-DEPEND="${RDEPEND}
-	doc? ( dev-python/sphinx )
-"
-
-S="${WORKDIR}/${MY_P}"
-
-SITEFILE="50${PN}-gentoo.el"
-
-CMAKE_BINARY="${S}/Bootstrap.cmk/cmake"
-
-PATCHES=(
-	# prefix
-	"${FILESDIR}"/${PN}-2.8.10-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}-3.0.0-FindBLAS.patch
-	"${FILESDIR}"/${PN}-3.0.0-FindBoost-python.patch
-	"${FILESDIR}"/${PN}-3.0.2-FindLAPACK.patch
-	"${FILESDIR}"/${PN}-3.3.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)
-	"${DISTDIR}"/${PN}-3.3.1-FindPkgConfig_remove_variable_dereference.patch
-)
-
-cmake_src_bootstrap() {
-	# Cleanup args to extract only JOBS.
-	# Because bootstrap does not know anything else.
-	echo ${MAKEOPTS} | egrep -o '(\-j|\-\-jobs)(=?|[[:space:]]*)[[:digit:]]+' > /dev/null
-	if [ $? -eq 0 ]; then
-		par_arg=$(echo ${MAKEOPTS} | egrep -o '(\-j|\-\-jobs)(=?|[[:space:]]*)[[:digit:]]+' | tail -n1 | egrep -o '[[:digit:]]+')
-		par_arg="--parallel=${par_arg}"
-	else
-		par_arg="--parallel=1"
-	fi
-
-	# execinfo.h on Solaris isn't quite what it is on Darwin
-	if [[ ${CHOST} == *-solaris* ]] ; then
-		sed -i -e 's/execinfo\.h/blablabla.h/' Source/kwsys/CMakeLists.txt || die
-	fi
-
-	tc-export CC CXX LD
-
-	# bootstrap script isn't exactly /bin/sh compatible
-	${CONFIG_SHELL:-sh} ./bootstrap \
-		--prefix="${T}/cmakestrap/" \
-		${par_arg} \
-		|| die "Bootstrap failed"
-}
-
-cmake_src_test() {
-	# fix OutDir and SelectLibraryConfigurations tests
-	# these are altered thanks to our eclass
-	sed -i -e 's:#IGNORE ::g' \
-		"${S}"/Tests/{OutDir,CMakeOnly/SelectLibraryConfigurations}/CMakeLists.txt \
-		|| die
-
-	pushd "${BUILD_DIR}" > /dev/null
-
-	local ctestargs
-	[[ -n ${TEST_VERBOSE} ]] && ctestargs="--extra-verbose --output-on-failure"
-
-	# Excluded tests:
-	#    BootstrapTest: we actualy bootstrap it every time so why test it.
-	#    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|BundleUtilities|CTest.UpdateCVS|Fortran|Qt4Deploy|TestUpload)" \
-		|| die "Tests failed"
-
-	popd > /dev/null
-}
-
-src_prepare() {
-	cmake-utils_src_prepare
-
-	# disable running of cmake in boostrap command
-	sed -i \
-		-e '/"${cmake_bootstrap_dir}\/cmake"/s/^/#DONOTRUN /' \
-		bootstrap || die "sed failed"
-
-	# Add gcc libs to the default link paths
-	sed -i \
-		-e "s|@GENTOO_PORTAGE_GCCLIBDIR@|${EPREFIX}/usr/${CHOST}/lib/|g" \
-		-e "s|@GENTOO_PORTAGE_EPREFIX@|${EPREFIX}/|g" \
-		Modules/Platform/{UnixPaths,Darwin}.cmake || die "sed failed"
-
-	cmake_src_bootstrap
-}
-
-src_configure() {
-	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}
-		-DSPHINX_MAN=$(usex doc)
-		-DSPHINX_HTML=$(usex doc)
-		$(cmake-utils_use_build ncurses CursesDialog)
-	)
-
-	if use qt4 || use qt5 ; then
-		mycmakeargs+=(
-			-DBUILD_QtDialog=ON
-			$(cmake-utils_use_find_package qt5 Qt5Widgets)
-		)
-	fi
-
-	cmake-utils_src_configure
-}
-
-src_compile() {
-	cmake-utils_src_compile
-	use emacs && elisp-compile Auxiliary/cmake-mode.el
-}
-
-src_test() {
-	VIRTUALX_COMMAND="cmake_src_test" virtualmake
-}
-
-src_install() {
-	cmake-utils_src_install
-
-	if use emacs; then
-		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 Auxiliary/cmake-syntax.vim
-
-	insinto /usr/share/vim/vimfiles/indent
-	doins Auxiliary/cmake-indent.vim
-
-	insinto /usr/share/vim/vimfiles/ftdetect
-	doins "${FILESDIR}/${PN}.vim"
-
-	dobashcomp Auxiliary/bash-completion/{${PN},ctest,cpack}
-
-	rm -rf "${D}"/usr/share/cmake/{completions,editors} || die
-}
-
-pkg_postinst() {
-	use emacs && elisp-site-regen
-}
-
-pkg_postrm() {
-	use emacs && elisp-site-regen
-}

diff --git a/dev-util/cmake/cmake-3.4.3.ebuild b/dev-util/cmake/cmake-3.4.3.ebuild
deleted file mode 100644
index bd2db16..0000000
--- a/dev-util/cmake/cmake-3.4.3.ebuild
+++ /dev/null
@@ -1,198 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=5
-
-CMAKE_REMOVE_MODULES="no"
-inherit bash-completion-r1 elisp-common toolchain-funcs eutils versionator cmake-utils virtualx
-
-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"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~hppa-hpux ~ia64-hpux ~x86-interix ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
-IUSE="doc emacs system-jsoncpp ncurses qt4 qt5"
-
-RDEPEND="
-	>=app-arch/libarchive-3.0.0:=
-	>=dev-libs/expat-2.0.1
-	>=net-misc/curl-7.21.5[ssl]
-	sys-libs/zlib
-	virtual/pkgconfig
-	emacs? ( virtual/emacs )
-	ncurses? ( sys-libs/ncurses:0= )
-	qt4? (
-		dev-qt/qtcore:4
-		dev-qt/qtgui:4
-	)
-	qt5? (
-		dev-qt/qtcore:5
-		dev-qt/qtgui:5
-		dev-qt/qtwidgets:5
-	)
-	system-jsoncpp? ( >=dev-libs/jsoncpp-0.6.0_rc2:0= )
-"
-DEPEND="${RDEPEND}
-	doc? ( dev-python/sphinx )
-"
-
-S="${WORKDIR}/${MY_P}"
-
-SITEFILE="50${PN}-gentoo.el"
-
-CMAKE_BINARY="${S}/Bootstrap.cmk/cmake"
-
-PATCHES=(
-	# 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}-3.0.0-FindBLAS.patch
-	"${FILESDIR}"/${PN}-3.0.0-FindBoost-python.patch
-	"${FILESDIR}"/${PN}-3.0.2-FindLAPACK.patch
-	"${FILESDIR}"/${PN}-3.3.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() {
-	# Cleanup args to extract only JOBS.
-	# Because bootstrap does not know anything else.
-	echo ${MAKEOPTS} | egrep -o '(\-j|\-\-jobs)(=?|[[:space:]]*)[[:digit:]]+' > /dev/null
-	if [ $? -eq 0 ]; then
-		par_arg=$(echo ${MAKEOPTS} | egrep -o '(\-j|\-\-jobs)(=?|[[:space:]]*)[[:digit:]]+' | tail -n1 | egrep -o '[[:digit:]]+')
-		par_arg="--parallel=${par_arg}"
-	else
-		par_arg="--parallel=1"
-	fi
-
-	# execinfo.h on Solaris isn't quite what it is on Darwin
-	if [[ ${CHOST} == *-solaris* ]] ; then
-		sed -i -e 's/execinfo\.h/blablabla.h/' Source/kwsys/CMakeLists.txt || die
-	fi
-
-	tc-export CC CXX LD
-
-	# bootstrap script isn't exactly /bin/sh compatible
-	${CONFIG_SHELL:-sh} ./bootstrap \
-		--prefix="${T}/cmakestrap/" \
-		${par_arg} \
-		|| die "Bootstrap failed"
-}
-
-cmake_src_test() {
-	# fix OutDir and SelectLibraryConfigurations tests
-	# these are altered thanks to our eclass
-	sed -i -e 's:#IGNORE ::g' \
-		"${S}"/Tests/{OutDir,CMakeOnly/SelectLibraryConfigurations}/CMakeLists.txt \
-		|| die
-
-	pushd "${BUILD_DIR}" > /dev/null
-
-	local ctestargs
-	[[ -n ${TEST_VERBOSE} ]] && ctestargs="--extra-verbose --output-on-failure"
-
-	# Excluded tests:
-	#    BootstrapTest: we actualy bootstrap it every time so why test it.
-	#    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|BundleUtilities|CTest.UpdateCVS|Fortran|Qt4Deploy|TestUpload)" \
-		|| die "Tests failed"
-
-	popd > /dev/null
-}
-
-src_prepare() {
-	cmake-utils_src_prepare
-
-	# disable running of cmake in boostrap command
-	sed -i \
-		-e '/"${cmake_bootstrap_dir}\/cmake"/s/^/#DONOTRUN /' \
-		bootstrap || die "sed failed"
-
-	# Add gcc libs to the default link paths
-	sed -i \
-		-e "s|@GENTOO_PORTAGE_GCCLIBDIR@|${EPREFIX}/usr/${CHOST}/lib/|g" \
-		-e "s|@GENTOO_PORTAGE_EPREFIX@|${EPREFIX}/|g" \
-		Modules/Platform/{UnixPaths,Darwin}.cmake || die "sed failed"
-
-	cmake_src_bootstrap
-}
-
-src_configure() {
-	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}
-		-DSPHINX_MAN=$(usex doc)
-		-DSPHINX_HTML=$(usex doc)
-		$(cmake-utils_use_build ncurses CursesDialog)
-	)
-
-	if use qt4 || use qt5 ; then
-		mycmakeargs+=(
-			-DBUILD_QtDialog=ON
-			$(cmake-utils_use_find_package qt5 Qt5Widgets)
-		)
-	fi
-
-	cmake-utils_src_configure
-}
-
-src_compile() {
-	cmake-utils_src_compile
-	use emacs && elisp-compile Auxiliary/cmake-mode.el
-}
-
-src_test() {
-	VIRTUALX_COMMAND="cmake_src_test" virtualmake
-}
-
-src_install() {
-	cmake-utils_src_install
-
-	if use emacs; then
-		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 Auxiliary/cmake-syntax.vim
-
-	insinto /usr/share/vim/vimfiles/indent
-	doins Auxiliary/cmake-indent.vim
-
-	insinto /usr/share/vim/vimfiles/ftdetect
-	doins "${FILESDIR}/${PN}.vim"
-
-	dobashcomp Auxiliary/bash-completion/{${PN},ctest,cpack}
-
-	rm -rf "${ED}"/usr/share/cmake/{completions,editors} || die
-}
-
-pkg_postinst() {
-	use emacs && elisp-site-regen
-}
-
-pkg_postrm() {
-	use emacs && elisp-site-regen
-}

diff --git a/dev-util/cmake/files/cmake-3.3.2-FindQt4.patch b/dev-util/cmake/files/cmake-3.3.2-FindQt4.patch
deleted file mode 100644
index 31e4db3..0000000
--- a/dev-util/cmake/files/cmake-3.3.2-FindQt4.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-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
-+        /usr/${CMAKE_INSTALL_LIBDIR}/qt4/bin
-+        /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)


^ permalink raw reply related	[flat|nested] 23+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/cmake/files/, dev-util/cmake/
@ 2016-08-28 16:19 Michał Górny
  0 siblings, 0 replies; 23+ messages in thread
From: Michał Górny @ 2016-08-28 16:19 UTC (permalink / raw
  To: gentoo-commits

commit:     08ad139374c65516481275579264319c74b4afcb
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Sun Aug 28 14:45:49 2016 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Sun Aug 28 16:19:24 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=08ad1393

dev-util/cmake: Backport find_library() lib32 fix, #338492

 dev-util/cmake/cmake-3.6.1-r1.ebuild               | 199 +++++++++
 .../files/cmake-3.6.1-find_library-lib32.patch     | 476 +++++++++++++++++++++
 2 files changed, 675 insertions(+)

diff --git a/dev-util/cmake/cmake-3.6.1-r1.ebuild b/dev-util/cmake/cmake-3.6.1-r1.ebuild
new file mode 100644
index 00000000..aded1dc
--- /dev/null
+++ b/dev-util/cmake/cmake-3.6.1-r1.ebuild
@@ -0,0 +1,199 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=6
+
+CMAKE_REMOVE_MODULES="no"
+inherit bash-completion-r1 elisp-common toolchain-funcs eutils versionator cmake-utils virtualx
+
+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"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~hppa-hpux ~ia64-hpux ~x86-interix ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
+IUSE="doc emacs system-jsoncpp ncurses qt4 qt5"
+
+RDEPEND="
+	>=app-arch/libarchive-3.0.0:=
+	>=dev-libs/expat-2.0.1
+	>=net-misc/curl-7.21.5[ssl]
+	sys-libs/zlib
+	virtual/pkgconfig
+	emacs? ( virtual/emacs )
+	ncurses? ( sys-libs/ncurses:0= )
+	qt4? (
+		dev-qt/qtcore:4
+		dev-qt/qtgui:4
+	)
+	qt5? (
+		dev-qt/qtcore:5
+		dev-qt/qtgui:5
+		dev-qt/qtwidgets:5
+	)
+	system-jsoncpp? ( >=dev-libs/jsoncpp-0.6.0_rc2:0= )
+"
+DEPEND="${RDEPEND}
+	doc? ( dev-python/sphinx )
+"
+
+S="${WORKDIR}/${MY_P}"
+
+SITEFILE="50${PN}-gentoo.el"
+
+CMAKE_BINARY="${S}/Bootstrap.cmk/cmake"
+
+PATCHES=(
+	# 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}-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)
+	"${FILESDIR}"/${PN}-3.6.1-find_library-lib32.patch
+)
+
+cmake_src_bootstrap() {
+	# Cleanup args to extract only JOBS.
+	# Because bootstrap does not know anything else.
+	echo ${MAKEOPTS} | egrep -o '(\-j|\-\-jobs)(=?|[[:space:]]*)[[:digit:]]+' > /dev/null
+	if [ $? -eq 0 ]; then
+		par_arg=$(echo ${MAKEOPTS} | egrep -o '(\-j|\-\-jobs)(=?|[[:space:]]*)[[:digit:]]+' | tail -n1 | egrep -o '[[:digit:]]+')
+		par_arg="--parallel=${par_arg}"
+	else
+		par_arg="--parallel=1"
+	fi
+
+	# execinfo.h on Solaris isn't quite what it is on Darwin
+	if [[ ${CHOST} == *-solaris* ]] ; then
+		sed -i -e 's/execinfo\.h/blablabla.h/' Source/kwsys/CMakeLists.txt || die
+	fi
+
+	tc-export CC CXX LD
+
+	# bootstrap script isn't exactly /bin/sh compatible
+	${CONFIG_SHELL:-sh} ./bootstrap \
+		--prefix="${T}/cmakestrap/" \
+		${par_arg} \
+		|| die "Bootstrap failed"
+}
+
+cmake_src_test() {
+	# fix OutDir and SelectLibraryConfigurations tests
+	# these are altered thanks to our eclass
+	sed -i -e 's:#IGNORE ::g' \
+		"${S}"/Tests/{OutDir,CMakeOnly/SelectLibraryConfigurations}/CMakeLists.txt \
+		|| die
+
+	pushd "${BUILD_DIR}" > /dev/null
+
+	local ctestargs
+	[[ -n ${TEST_VERBOSE} ]] && ctestargs="--extra-verbose --output-on-failure"
+
+	# Excluded tests:
+	#    BootstrapTest: we actualy bootstrap it every time so why test it.
+	#    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|BundleUtilities|CTest.UpdateCVS|Fortran|Qt4Deploy|TestUpload)" \
+		|| die "Tests failed"
+
+	popd > /dev/null
+}
+
+src_prepare() {
+	cmake-utils_src_prepare
+
+	# disable running of cmake in boostrap command
+	sed -i \
+		-e '/"${cmake_bootstrap_dir}\/cmake"/s/^/#DONOTRUN /' \
+		bootstrap || die "sed failed"
+
+	# Add gcc libs to the default link paths
+	sed -i \
+		-e "s|@GENTOO_PORTAGE_GCCLIBDIR@|${EPREFIX}/usr/${CHOST}/lib/|g" \
+		-e "s|@GENTOO_PORTAGE_EPREFIX@|${EPREFIX}/|g" \
+		Modules/Platform/{UnixPaths,Darwin}.cmake || die "sed failed"
+
+	cmake_src_bootstrap
+}
+
+src_configure() {
+	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}
+		-DSPHINX_MAN=$(usex doc)
+		-DSPHINX_HTML=$(usex doc)
+		-DBUILD_CursesDialog="$(usex ncurses)"
+	)
+
+	if use qt4 || use qt5 ; then
+		mycmakeargs+=(
+			-DBUILD_QtDialog=ON
+			$(cmake-utils_use_find_package qt5 Qt5Widgets)
+		)
+	fi
+
+	cmake-utils_src_configure
+}
+
+src_compile() {
+	cmake-utils_src_compile
+	use emacs && elisp-compile Auxiliary/cmake-mode.el
+}
+
+src_test() {
+	virtx cmake_src_test
+}
+
+src_install() {
+	cmake-utils_src_install
+
+	if use emacs; then
+		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 Auxiliary/cmake-syntax.vim
+
+	insinto /usr/share/vim/vimfiles/indent
+	doins Auxiliary/cmake-indent.vim
+
+	insinto /usr/share/vim/vimfiles/ftdetect
+	doins "${FILESDIR}/${PN}.vim"
+
+	dobashcomp Auxiliary/bash-completion/{${PN},ctest,cpack}
+
+	rm -rf "${ED}"/usr/share/cmake/{completions,editors} || die
+}
+
+pkg_postinst() {
+	use emacs && elisp-site-regen
+}
+
+pkg_postrm() {
+	use emacs && elisp-site-regen
+}

diff --git a/dev-util/cmake/files/cmake-3.6.1-find_library-lib32.patch b/dev-util/cmake/files/cmake-3.6.1-find_library-lib32.patch
new file mode 100644
index 00000000..e02faa2
--- /dev/null
+++ b/dev-util/cmake/files/cmake-3.6.1-find_library-lib32.patch
@@ -0,0 +1,476 @@
+From 896ad251de49f167f4ce3cbbcf9a6cce85a16681 Mon Sep 17 00:00:00 2001
+From: Daniel Scharrer <daniel@constexpr.org>
+Date: Fri, 10 Jun 2016 16:11:18 +0200
+Subject: [PATCH] Teach find_library and find_package to search lib32 paths
+ (#11260)
+
+Add a ``FIND_LIBRARY_USE_LIB32_PATHS`` global property analogous to the
+``FIND_LIBRARY_USE_LIB64_PATHS`` property.  This helps find commands on
+multilib systems that use ``lib32`` directories and either do not have
+``lib`` symlinks or point ``lib`` to ``lib64``.
+---
+ Help/command/find_library.rst                                 |  7 +++++++
+ Help/manual/cmake-properties.7.rst                            |  1 +
+ Help/prop_gbl/FIND_LIBRARY_USE_LIB32_PATHS.rst                | 10 ++++++++++
+ Help/release/dev/find-lib32.rst                               |  7 +++++++
+ Modules/FindPkgConfig.cmake                                   |  8 ++++++--
+ Modules/Platform/Linux.cmake                                  |  3 ++-
+ Modules/Platform/OpenBSD.cmake                                |  1 +
+ Modules/Platform/UnixPaths.cmake                              |  3 ++-
+ Source/cmFindLibraryCommand.cxx                               |  9 ++++-----
+ Source/cmFindPackageCommand.cxx                               | 11 +++++++++++
+ Source/cmFindPackageCommand.h                                 |  1 +
+ Source/cmMakefile.cxx                                         |  8 ++++++++
+ Source/cmMakefile.h                                           |  3 +++
+ Tests/CMakeOnly/find_library/CMakeLists.txt                   |  7 +++++++
+ Tests/CMakeOnly/find_library/lib/32/libtest5.a                |  0
+ Tests/CMakeOnly/find_library/lib/A/lib32/libtest3.a           |  0
+ Tests/CMakeOnly/find_library/lib32/A/lib/libtest2.a           |  0
+ Tests/CMakeOnly/find_library/lib32/A/lib32/libtest4.a         |  0
+ Tests/CMakeOnly/find_library/lib32/A/libtest4.a               |  0
+ Tests/CMakeOnly/find_library/lib32/libtest4.a                 |  0
+ .../FindPkgConfig/FindPkgConfig_CMAKE_APPBUNDLE_PATH.cmake    | 11 ++++++++---
+ .../FindPkgConfig/FindPkgConfig_CMAKE_FRAMEWORK_PATH.cmake    | 11 ++++++++---
+ .../FindPkgConfig/FindPkgConfig_NO_PKGCONFIG_PATH.cmake       |  3 ---
+ .../RunCMake/FindPkgConfig/FindPkgConfig_PKGCONFIG_PATH.cmake | 11 ++++++++---
+ ...ndPkgConfig_PKGCONFIG_PATH_NO_CMAKE_ENVIRONMENT_PATH.cmake | 11 ++++++++---
+ .../FindPkgConfig_PKGCONFIG_PATH_NO_CMAKE_PATH.cmake          | 11 ++++++++---
+ .../FindPkgConfig/pc-bar/lib32/pkgconfig/.placeholder         |  0
+ .../FindPkgConfig/pc-foo/lib32/pkgconfig/.placeholder         |  0
+ 28 files changed, 110 insertions(+), 27 deletions(-)
+ create mode 100644 Help/prop_gbl/FIND_LIBRARY_USE_LIB32_PATHS.rst
+ create mode 100644 Help/release/dev/find-lib32.rst
+ create mode 100644 Tests/CMakeOnly/find_library/lib/32/libtest5.a
+ create mode 100644 Tests/CMakeOnly/find_library/lib/A/lib32/libtest3.a
+ create mode 100644 Tests/CMakeOnly/find_library/lib32/A/lib/libtest2.a
+ create mode 100644 Tests/CMakeOnly/find_library/lib32/A/lib32/libtest4.a
+ create mode 100644 Tests/CMakeOnly/find_library/lib32/A/libtest4.a
+ create mode 100644 Tests/CMakeOnly/find_library/lib32/libtest4.a
+ create mode 100644 Tests/RunCMake/FindPkgConfig/pc-bar/lib32/pkgconfig/.placeholder
+ create mode 100644 Tests/RunCMake/FindPkgConfig/pc-foo/lib32/pkgconfig/.placeholder
+
+diff --git a/Help/command/find_library.rst b/Help/command/find_library.rst
+index 31e6ec0..1eb50f7 100644
+--- a/Help/command/find_library.rst
++++ b/Help/command/find_library.rst
+@@ -49,6 +49,13 @@ path to the framework ``<fullPath>/A.framework``.  When a full path to a
+ framework is used as a library, CMake will use a ``-framework A``, and a
+ ``-F<fullPath>`` to link the framework to the target.
+ 
++If the :prop_gbl:`FIND_LIBRARY_USE_LIB32_PATHS` global property is set
++all search paths will be tested as normal, with ``32/`` appended, and
++with all matches of ``lib/`` replaced with ``lib32/``.  This property is
++automatically set for the platforms that are known to need it if at
++least one of the languages supported by the :command:`project` command
++is enabled.
++
+ If the :prop_gbl:`FIND_LIBRARY_USE_LIB64_PATHS` global property is set
+ all search paths will be tested as normal, with ``64/`` appended, and
+ with all matches of ``lib/`` replaced with ``lib64/``.  This property is
+diff --git a/Help/manual/cmake-properties.7.rst b/Help/manual/cmake-properties.7.rst
+index 3403dcd..3574b7f 100644
+--- a/Help/manual/cmake-properties.7.rst
++++ b/Help/manual/cmake-properties.7.rst
+@@ -24,6 +24,7 @@ Properties of Global Scope
+    /prop_gbl/DISABLED_FEATURES
+    /prop_gbl/ENABLED_FEATURES
+    /prop_gbl/ENABLED_LANGUAGES
++   /prop_gbl/FIND_LIBRARY_USE_LIB32_PATHS
+    /prop_gbl/FIND_LIBRARY_USE_LIB64_PATHS
+    /prop_gbl/FIND_LIBRARY_USE_OPENBSD_VERSIONING
+    /prop_gbl/GLOBAL_DEPENDS_DEBUG_MODE
+diff --git a/Help/prop_gbl/FIND_LIBRARY_USE_LIB32_PATHS.rst b/Help/prop_gbl/FIND_LIBRARY_USE_LIB32_PATHS.rst
+new file mode 100644
+index 0000000..ce18b65
+--- /dev/null
++++ b/Help/prop_gbl/FIND_LIBRARY_USE_LIB32_PATHS.rst
+@@ -0,0 +1,10 @@
++FIND_LIBRARY_USE_LIB32_PATHS
++----------------------------
++
++Whether the :command:`find_library` command should automatically search
++``lib32`` directories.
++
++``FIND_LIBRARY_USE_LIB32_PATHS`` is a boolean specifying whether the
++:command:`find_library` command should automatically search the ``lib32``
++variant of directories called ``lib`` in the search path when building 32-bit
++binaries.
+diff --git a/Help/release/dev/find-lib32.rst b/Help/release/dev/find-lib32.rst
+new file mode 100644
+index 0000000..00818dc
+--- /dev/null
++++ b/Help/release/dev/find-lib32.rst
+@@ -0,0 +1,7 @@
++find-lib32
++----------
++
++* The :command:`find_library` and :command:`find_package` commands learned
++  to search in ``lib32/`` directories when the build targets a 32-bit
++  architecture.  See the :prop_gbl:`FIND_LIBRARY_USE_LIB32_PATHS` global
++  property.
+diff --git a/Modules/FindPkgConfig.cmake b/Modules/FindPkgConfig.cmake
+index 644687c..33290c4 100644
+--- a/Modules/FindPkgConfig.cmake
++++ b/Modules/FindPkgConfig.cmake
+@@ -316,9 +316,13 @@ macro(_pkg_check_modules_internal _is_required _is_silent _no_cmake_path _no_cma
+             list(APPEND _lib_dirs "lib/${CMAKE_LIBRARY_ARCHITECTURE}/pkgconfig")
+           endif()
+         else()
+-          # not debian, chech the FIND_LIBRARY_USE_LIB64_PATHS property
++          # not debian, check the FIND_LIBRARY_USE_LIB32_PATHS and FIND_LIBRARY_USE_LIB64_PATHS properties
++          get_property(uselib32 GLOBAL PROPERTY FIND_LIBRARY_USE_LIB32_PATHS)
++          if(uselib32 AND CMAKE_SIZEOF_VOID_P EQUAL 4)
++            list(APPEND _lib_dirs "lib32/pkgconfig")
++          endif()
+           get_property(uselib64 GLOBAL PROPERTY FIND_LIBRARY_USE_LIB64_PATHS)
+-          if(uselib64)
++          if(uselib64 AND CMAKE_SIZEOF_VOID_P EQUAL 8)
+             list(APPEND _lib_dirs "lib64/pkgconfig")
+           endif()
+         endif()
+diff --git a/Modules/Platform/Linux.cmake b/Modules/Platform/Linux.cmake
+index e40a74f..1f8c1b4 100644
+--- a/Modules/Platform/Linux.cmake
++++ b/Modules/Platform/Linux.cmake
+@@ -50,8 +50,9 @@ set(CMAKE_LIBRARY_ARCHITECTURE_REGEX "[a-z0-9_]+(-[a-z0-9_]+)?-linux-gnu[a-z0-9_
+ 
+ include(Platform/UnixPaths)
+ 
+-# Debian has lib64 paths only for compatibility so they should not be
++# Debian has lib32 and lib64 paths only for compatibility so they should not be
+ # searched.
+ if(NOT CMAKE_CROSSCOMPILING AND EXISTS "/etc/debian_version")
++  set_property(GLOBAL PROPERTY FIND_LIBRARY_USE_LIB32_PATHS FALSE)
+   set_property(GLOBAL PROPERTY FIND_LIBRARY_USE_LIB64_PATHS FALSE)
+ endif()
+diff --git a/Modules/Platform/OpenBSD.cmake b/Modules/Platform/OpenBSD.cmake
+index 7ac6c7e..6466a0a 100644
+--- a/Modules/Platform/OpenBSD.cmake
++++ b/Modules/Platform/OpenBSD.cmake
+@@ -18,6 +18,7 @@ endif()
+ set_property(GLOBAL PROPERTY FIND_LIBRARY_USE_OPENBSD_VERSIONING 1)
+ 
+ # OpenBSD has no multilib
++set_property(GLOBAL PROPERTY FIND_LIBRARY_USE_LIB32_PATHS FALSE)
+ set_property(GLOBAL PROPERTY FIND_LIBRARY_USE_LIB64_PATHS FALSE)
+ 
+ # OpenBSD policy requires that shared libraries be installed without
+diff --git a/Modules/Platform/UnixPaths.cmake b/Modules/Platform/UnixPaths.cmake
+index 20ee1d1..d6c3d41 100644
+--- a/Modules/Platform/UnixPaths.cmake
++++ b/Modules/Platform/UnixPaths.cmake
+@@ -93,5 +93,6 @@ list(APPEND CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES
+   /usr/include
+   )
+ 
+-# Enable use of lib64 search path variants by default.
++# Enable use of lib32 and lib64 search path variants by default.
++set_property(GLOBAL PROPERTY FIND_LIBRARY_USE_LIB32_PATHS TRUE)
+ set_property(GLOBAL PROPERTY FIND_LIBRARY_USE_LIB64_PATHS TRUE)
+diff --git a/Source/cmFindLibraryCommand.cxx b/Source/cmFindLibraryCommand.cxx
+index a4d4dbb..3094fcf 100644
+--- a/Source/cmFindLibraryCommand.cxx
++++ b/Source/cmFindLibraryCommand.cxx
+@@ -40,11 +40,10 @@ bool cmFindLibraryCommand::InitialPass(std::vector<std::string> const& argsIn,
+     return true;
+   }
+ 
+-  if (const char* abi_name =
+-        this->Makefile->GetDefinition("CMAKE_INTERNAL_PLATFORM_ABI")) {
+-    std::string abi = abi_name;
+-    if (abi.find("ELF N32") != abi.npos) {
+-      // Convert lib to lib32.
++  if (this->Makefile->GetState()->GetGlobalPropertyAsBool(
++        "FIND_LIBRARY_USE_LIB32_PATHS")) {
++    // add special 32 bit paths if this is a 32 bit compile.
++    if (this->Makefile->PlatformIs32Bit()) {
+       this->AddArchitecturePaths("32");
+     }
+   }
+diff --git a/Source/cmFindPackageCommand.cxx b/Source/cmFindPackageCommand.cxx
+index 7908afe..1a44d73 100644
+--- a/Source/cmFindPackageCommand.cxx
++++ b/Source/cmFindPackageCommand.cxx
+@@ -43,6 +43,7 @@ cmFindPackageCommand::cmFindPackageCommand()
+   this->UseConfigFiles = true;
+   this->UseFindModules = true;
+   this->DebugMode = false;
++  this->UseLib32Paths = false;
+   this->UseLib64Paths = false;
+   this->PolicyScope = true;
+   this->VersionMajor = 0;
+@@ -110,6 +111,13 @@ bool cmFindPackageCommand::InitialPass(std::vector<std::string> const& args,
+     this->LibraryArchitecture = arch;
+   }
+ 
++  // Lookup whether lib32 paths should be used.
++  if (this->Makefile->PlatformIs32Bit() &&
++      this->Makefile->GetState()->GetGlobalPropertyAsBool(
++        "FIND_LIBRARY_USE_LIB32_PATHS")) {
++    this->UseLib32Paths = true;
++  }
++
+   // Lookup whether lib64 paths should be used.
+   if (this->Makefile->PlatformIs64Bit() &&
+       this->Makefile->GetState()->GetGlobalPropertyAsBool(
+@@ -1907,6 +1915,9 @@ bool cmFindPackageCommand::SearchPrefix(std::string const& prefix_in)
+   if (!this->LibraryArchitecture.empty()) {
+     common.push_back("lib/" + this->LibraryArchitecture);
+   }
++  if (this->UseLib32Paths) {
++    common.push_back("lib32");
++  }
+   if (this->UseLib64Paths) {
+     common.push_back("lib64");
+   }
+diff --git a/Source/cmFindPackageCommand.h b/Source/cmFindPackageCommand.h
+index eff6b80..9019f1b 100644
+--- a/Source/cmFindPackageCommand.h
++++ b/Source/cmFindPackageCommand.h
+@@ -148,6 +148,7 @@ private:
+   bool NoUserRegistry;
+   bool NoSystemRegistry;
+   bool DebugMode;
++  bool UseLib32Paths;
+   bool UseLib64Paths;
+   bool PolicyScope;
+   std::string LibraryArchitecture;
+diff --git a/Source/cmMakefile.cxx b/Source/cmMakefile.cxx
+index ca30b3d..eaf6a7d 100644
+--- a/Source/cmMakefile.cxx
++++ b/Source/cmMakefile.cxx
+@@ -2076,6 +2076,14 @@ bool cmMakefile::IsSet(const std::string& name) const
+   return true;
+ }
+ 
++bool cmMakefile::PlatformIs32Bit() const
++{
++  if (const char* sizeof_dptr = this->GetDefinition("CMAKE_SIZEOF_VOID_P")) {
++    return atoi(sizeof_dptr) == 4;
++  }
++  return false;
++}
++
+ bool cmMakefile::PlatformIs64Bit() const
+ {
+   if (const char* sizeof_dptr = this->GetDefinition("CMAKE_SIZEOF_VOID_P")) {
+diff --git a/Source/cmMakefile.h b/Source/cmMakefile.h
+index c665b1f..1d9ccd0 100644
+--- a/Source/cmMakefile.h
++++ b/Source/cmMakefile.h
+@@ -437,6 +437,9 @@ public:
+   bool IsOn(const std::string& name) const;
+   bool IsSet(const std::string& name) const;
+ 
++  /** Return whether the target platform is 32-bit. */
++  bool PlatformIs32Bit() const;
++
+   /** Return whether the target platform is 64-bit.  */
+   bool PlatformIs64Bit() const;
+ 
+diff --git a/Tests/CMakeOnly/find_library/CMakeLists.txt b/Tests/CMakeOnly/find_library/CMakeLists.txt
+index 2d4ecaf..9958650 100644
+--- a/Tests/CMakeOnly/find_library/CMakeLists.txt
++++ b/Tests/CMakeOnly/find_library/CMakeLists.txt
+@@ -33,16 +33,23 @@ endmacro()
+ 
+ set(CMAKE_FIND_LIBRARY_PREFIXES "lib")
+ set(CMAKE_FIND_LIBRARY_SUFFIXES ".a")
++set_property(GLOBAL PROPERTY FIND_LIBRARY_USE_LIB32_PATHS TRUE)
+ set_property(GLOBAL PROPERTY FIND_LIBRARY_USE_LIB64_PATHS TRUE)
+ 
+ set(CMAKE_SIZEOF_VOID_P 4)
+ foreach(lib
++    lib/32/libtest5.a
+     lib/A/lib/libtest1.a
++    lib/A/lib32/libtest3.a
+     lib/A/libtest1.a
+     lib/libtest1.a
+     lib/libtest2.a
+     lib/libtest3.a
+     lib/libtest3.a
++    lib32/A/lib/libtest2.a
++    lib32/A/lib32/libtest4.a
++    lib32/A/libtest4.a
++    lib32/libtest4.a
+     )
+   test_find_library_subst(${lib})
+ endforeach()
+diff --git a/Tests/CMakeOnly/find_library/lib/32/libtest5.a b/Tests/CMakeOnly/find_library/lib/32/libtest5.a
+new file mode 100644
+index 0000000..e69de29
+diff --git a/Tests/CMakeOnly/find_library/lib/A/lib32/libtest3.a b/Tests/CMakeOnly/find_library/lib/A/lib32/libtest3.a
+new file mode 100644
+index 0000000..e69de29
+diff --git a/Tests/CMakeOnly/find_library/lib32/A/lib/libtest2.a b/Tests/CMakeOnly/find_library/lib32/A/lib/libtest2.a
+new file mode 100644
+index 0000000..e69de29
+diff --git a/Tests/CMakeOnly/find_library/lib32/A/lib32/libtest4.a b/Tests/CMakeOnly/find_library/lib32/A/lib32/libtest4.a
+new file mode 100644
+index 0000000..e69de29
+diff --git a/Tests/CMakeOnly/find_library/lib32/A/libtest4.a b/Tests/CMakeOnly/find_library/lib32/A/libtest4.a
+new file mode 100644
+index 0000000..e69de29
+diff --git a/Tests/CMakeOnly/find_library/lib32/libtest4.a b/Tests/CMakeOnly/find_library/lib32/libtest4.a
+new file mode 100644
+index 0000000..e69de29
+diff --git a/Tests/RunCMake/FindPkgConfig/FindPkgConfig_CMAKE_APPBUNDLE_PATH.cmake b/Tests/RunCMake/FindPkgConfig/FindPkgConfig_CMAKE_APPBUNDLE_PATH.cmake
+index 9d4826f..4a41533 100644
+--- a/Tests/RunCMake/FindPkgConfig/FindPkgConfig_CMAKE_APPBUNDLE_PATH.cmake
++++ b/Tests/RunCMake/FindPkgConfig/FindPkgConfig_CMAKE_APPBUNDLE_PATH.cmake
+@@ -1,4 +1,4 @@
+-# Needed for CMAKE_SYSTEM_NAME, CMAKE_LIBRARY_ARCHITECTURE and FIND_LIBRARY_USE_LIB64_PATHS
++# Needed for CMAKE_SYSTEM_NAME, CMAKE_LIBRARY_ARCHITECTURE, FIND_LIBRARY_USE_LIB32_PATHS and FIND_LIBRARY_USE_LIB64_PATHS
+ enable_language(C)
+ 
+ # Prepare environment and variables
+@@ -29,10 +29,15 @@ if(NOT DEFINED CMAKE_SYSTEM_NAME
+       set(expected_path "/baz:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/lib/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/lib/pkgconfig")
+     endif()
+   else()
+-    # not debian, chech the FIND_LIBRARY_USE_LIB64_PATHS property
++    # not debian, check the FIND_LIBRARY_USE_LIB32_PATHS and FIND_LIBRARY_USE_LIB64_PATHS properties
++    get_property(uselib32 GLOBAL PROPERTY FIND_LIBRARY_USE_LIB32_PATHS)
+     get_property(uselib64 GLOBAL PROPERTY FIND_LIBRARY_USE_LIB64_PATHS)
+-    if(uselib64)
++    if(uselib32 AND CMAKE_SIZEOF_VOID_P EQUAL 4)
++      set(expected_path "/baz:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/lib32/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/lib/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/lib32/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/lib/pkgconfig")
++    elseif(uselib64 AND CMAKE_SIZEOF_VOID_P EQUAL 8)
+       set(expected_path "/baz:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/lib64/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/lib/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/lib64/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/lib/pkgconfig")
++    else()
++      set(expected_path "/baz:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/lib/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/lib/pkgconfig")
+     endif()
+   endif()
+ else()
+diff --git a/Tests/RunCMake/FindPkgConfig/FindPkgConfig_CMAKE_FRAMEWORK_PATH.cmake b/Tests/RunCMake/FindPkgConfig/FindPkgConfig_CMAKE_FRAMEWORK_PATH.cmake
+index d9943d4..b66d02f 100644
+--- a/Tests/RunCMake/FindPkgConfig/FindPkgConfig_CMAKE_FRAMEWORK_PATH.cmake
++++ b/Tests/RunCMake/FindPkgConfig/FindPkgConfig_CMAKE_FRAMEWORK_PATH.cmake
+@@ -1,4 +1,4 @@
+-# Needed for CMAKE_SYSTEM_NAME, CMAKE_LIBRARY_ARCHITECTURE and FIND_LIBRARY_USE_LIB64_PATHS
++# Needed for CMAKE_SYSTEM_NAME, CMAKE_LIBRARY_ARCHITECTURE, FIND_LIBRARY_USE_LIB32_PATHS and FIND_LIBRARY_USE_LIB64_PATHS
+ enable_language(C)
+ 
+ # Prepare environment and variables
+@@ -29,10 +29,15 @@ if(NOT DEFINED CMAKE_SYSTEM_NAME
+       set(expected_path "/baz:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/lib/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/lib/pkgconfig")
+     endif()
+   else()
+-    # not debian, chech the FIND_LIBRARY_USE_LIB64_PATHS property
++    # not debian, check the FIND_LIBRARY_USE_LIB64_PATHS and FIND_LIBRARY_USE_LIB64_PATHS properties
++    get_property(uselib32 GLOBAL PROPERTY FIND_LIBRARY_USE_LIB32_PATHS)
+     get_property(uselib64 GLOBAL PROPERTY FIND_LIBRARY_USE_LIB64_PATHS)
+-    if(uselib64)
++    if(uselib32 AND CMAKE_SIZEOF_VOID_P EQUAL 4)
++      set(expected_path "/baz:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/lib32/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/lib/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/lib32/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/lib/pkgconfig")
++    elseif(uselib64 AND CMAKE_SIZEOF_VOID_P EQUAL 8)
+       set(expected_path "/baz:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/lib64/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/lib/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/lib64/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/lib/pkgconfig")
++    else()
++      set(expected_path "/baz:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/lib/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/lib/pkgconfig")
+     endif()
+   endif()
+ else()
+diff --git a/Tests/RunCMake/FindPkgConfig/FindPkgConfig_NO_PKGCONFIG_PATH.cmake b/Tests/RunCMake/FindPkgConfig/FindPkgConfig_NO_PKGCONFIG_PATH.cmake
+index 89ce4c6..25a775d 100644
+--- a/Tests/RunCMake/FindPkgConfig/FindPkgConfig_NO_PKGCONFIG_PATH.cmake
++++ b/Tests/RunCMake/FindPkgConfig/FindPkgConfig_NO_PKGCONFIG_PATH.cmake
+@@ -1,6 +1,3 @@
+-# Needed for CMAKE_SYSTEM_NAME, CMAKE_LIBRARY_ARCHITECTURE and FIND_LIBRARY_USE_LIB64_PATHS
+-enable_language(C)
+-
+ # Prepare environment and variables
+ set(PKG_CONFIG_USE_CMAKE_PREFIX_PATH FALSE)
+ set(CMAKE_PREFIX_PATH "${CMAKE_CURRENT_SOURCE_DIR}/pc-foo")
+diff --git a/Tests/RunCMake/FindPkgConfig/FindPkgConfig_PKGCONFIG_PATH.cmake b/Tests/RunCMake/FindPkgConfig/FindPkgConfig_PKGCONFIG_PATH.cmake
+index c903279..bdecb8a 100644
+--- a/Tests/RunCMake/FindPkgConfig/FindPkgConfig_PKGCONFIG_PATH.cmake
++++ b/Tests/RunCMake/FindPkgConfig/FindPkgConfig_PKGCONFIG_PATH.cmake
+@@ -1,4 +1,4 @@
+-# Needed for CMAKE_SYSTEM_NAME, CMAKE_LIBRARY_ARCHITECTURE and FIND_LIBRARY_USE_LIB64_PATHS
++# Needed for CMAKE_SYSTEM_NAME, CMAKE_LIBRARY_ARCHITECTURE, FIND_LIBRARY_USE_LIB32_PATHS and FIND_LIBRARY_USE_LIB64_PATHS
+ enable_language(C)
+ 
+ # Prepare environment and variables
+@@ -29,10 +29,15 @@ if(NOT DEFINED CMAKE_SYSTEM_NAME
+       set(expected_path "/baz:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/lib/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/lib/pkgconfig")
+     endif()
+   else()
+-    # not debian, chech the FIND_LIBRARY_USE_LIB64_PATHS property
++    # not debian, check the FIND_LIBRARY_USE_LIB32_PATHS and FIND_LIBRARY_USE_LIB64_PATHS propertie
++    get_property(uselib32 GLOBAL PROPERTY FIND_LIBRARY_USE_LIB32_PATHS)
+     get_property(uselib64 GLOBAL PROPERTY FIND_LIBRARY_USE_LIB64_PATHS)
+-    if(uselib64)
++    if(uselib32 AND CMAKE_SIZEOF_VOID_P EQUAL 4)
++      set(expected_path "/baz:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/lib32/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/lib/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/lib32/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/lib/pkgconfig")
++    elseif(uselib64 AND CMAKE_SIZEOF_VOID_P EQUAL 8)
+       set(expected_path "/baz:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/lib64/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/lib/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/lib64/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/lib/pkgconfig")
++    else()
++      set(expected_path "/baz:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/lib/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/lib/pkgconfig")
+     endif()
+   endif()
+ else()
+diff --git a/Tests/RunCMake/FindPkgConfig/FindPkgConfig_PKGCONFIG_PATH_NO_CMAKE_ENVIRONMENT_PATH.cmake b/Tests/RunCMake/FindPkgConfig/FindPkgConfig_PKGCONFIG_PATH_NO_CMAKE_ENVIRONMENT_PATH.cmake
+index a52bcbf..df67235 100644
+--- a/Tests/RunCMake/FindPkgConfig/FindPkgConfig_PKGCONFIG_PATH_NO_CMAKE_ENVIRONMENT_PATH.cmake
++++ b/Tests/RunCMake/FindPkgConfig/FindPkgConfig_PKGCONFIG_PATH_NO_CMAKE_ENVIRONMENT_PATH.cmake
+@@ -1,4 +1,4 @@
+-# Needed for CMAKE_SYSTEM_NAME, CMAKE_LIBRARY_ARCHITECTURE and FIND_LIBRARY_USE_LIB64_PATHS
++# Needed for CMAKE_SYSTEM_NAME, CMAKE_LIBRARY_ARCHITECTURE, FIND_LIBRARY_USE_LIB32_PATHS and FIND_LIBRARY_USE_LIB64_PATHS
+ enable_language(C)
+ 
+ # Prepare environment and variables
+@@ -29,10 +29,15 @@ if(NOT DEFINED CMAKE_SYSTEM_NAME
+       set(expected_path "/baz:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/lib/pkgconfig")
+     endif()
+   else()
+-    # not debian, chech the FIND_LIBRARY_USE_LIB64_PATHS property
++    # not debian, check the FIND_LIBRARY_USE_LIB32_PATHS and FIND_LIBRARY_USE_LIB64_PATHS properties
++    get_property(uselib32 GLOBAL PROPERTY FIND_LIBRARY_USE_LIB32_PATHS)
+     get_property(uselib64 GLOBAL PROPERTY FIND_LIBRARY_USE_LIB64_PATHS)
+-    if(uselib64)
++    if(uselib32 AND CMAKE_SIZEOF_VOID_P EQUAL 4)
++      set(expected_path "/baz:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/lib32/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/lib/pkgconfig")
++    elseif(uselib64 AND CMAKE_SIZEOF_VOID_P EQUAL 8)
+       set(expected_path "/baz:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/lib64/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/lib/pkgconfig")
++    else()
++      set(expected_path "/baz:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/lib/pkgconfig")
+     endif()
+   endif()
+ else()
+diff --git a/Tests/RunCMake/FindPkgConfig/FindPkgConfig_PKGCONFIG_PATH_NO_CMAKE_PATH.cmake b/Tests/RunCMake/FindPkgConfig/FindPkgConfig_PKGCONFIG_PATH_NO_CMAKE_PATH.cmake
+index 2fabe5b..1351b6f 100644
+--- a/Tests/RunCMake/FindPkgConfig/FindPkgConfig_PKGCONFIG_PATH_NO_CMAKE_PATH.cmake
++++ b/Tests/RunCMake/FindPkgConfig/FindPkgConfig_PKGCONFIG_PATH_NO_CMAKE_PATH.cmake
+@@ -1,4 +1,4 @@
+-# Needed for CMAKE_SYSTEM_NAME, CMAKE_LIBRARY_ARCHITECTURE and FIND_LIBRARY_USE_LIB64_PATHS
++# Needed for CMAKE_SYSTEM_NAME, CMAKE_LIBRARY_ARCHITECTURE, FIND_LIBRARY_USE_LIB32_PATHS and FIND_LIBRARY_USE_LIB64_PATHS
+ enable_language(C)
+ 
+ # Prepare environment and variables
+@@ -29,10 +29,15 @@ if(NOT DEFINED CMAKE_SYSTEM_NAME
+       set(expected_path "/baz:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/lib/pkgconfig")
+     endif()
+   else()
+-    # not debian, chech the FIND_LIBRARY_USE_LIB64_PATHS property
++    # not debian, check the FIND_LIBRARY_USE_LIB64_PATHS and FIND_LIBRARY_USE_LIB32_PATHS properties
++    get_property(uselib32 GLOBAL PROPERTY FIND_LIBRARY_USE_LIB32_PATHS)
+     get_property(uselib64 GLOBAL PROPERTY FIND_LIBRARY_USE_LIB64_PATHS)
+-    if(uselib64)
++    if(uselib32 AND CMAKE_SIZEOF_VOID_P EQUAL 4)
++      set(expected_path "/baz:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/lib32/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/lib/pkgconfig")
++    elseif(uselib64 AND CMAKE_SIZEOF_VOID_P EQUAL 8)
+       set(expected_path "/baz:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/lib64/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/lib/pkgconfig")
++    else()
++      set(expected_path "/baz:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/lib/pkgconfig")
+     endif()
+   endif()
+ else()
+diff --git a/Tests/RunCMake/FindPkgConfig/pc-bar/lib32/pkgconfig/.placeholder b/Tests/RunCMake/FindPkgConfig/pc-bar/lib32/pkgconfig/.placeholder
+new file mode 100644
+index 0000000..e69de29
+diff --git a/Tests/RunCMake/FindPkgConfig/pc-foo/lib32/pkgconfig/.placeholder b/Tests/RunCMake/FindPkgConfig/pc-foo/lib32/pkgconfig/.placeholder
+new file mode 100644
+index 0000000..e69de29
+-- 
+2.9.3
+


^ permalink raw reply related	[flat|nested] 23+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/cmake/files/, dev-util/cmake/
@ 2016-12-15 17:00 Lars Wendler
  0 siblings, 0 replies; 23+ messages in thread
From: Lars Wendler @ 2016-12-15 17:00 UTC (permalink / raw
  To: gentoo-commits

commit:     d2e40496ffd4f2bdd6c1ccf6ff76609826d7ef5d
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Thu Dec 15 16:48:13 2016 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Thu Dec 15 16:48:13 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d2e40496

dev-util/cmake: Removed last remaining 2.x version.

Package-Manager: Portage-2.3.3, Repoman-2.3.1

 dev-util/cmake/Manifest                            |   1 -
 dev-util/cmake/cmake-2.8.12.2-r1.ebuild            | 195 ---------------------
 .../files/cmake-2.6.3-fix_broken_lfs_on_aix.patch  |  39 -----
 .../files/cmake-2.6.3-no-duplicates-in-rpath.patch |  19 --
 .../cmake/files/cmake-2.8.10-darwin-isysroot.patch |  50 ------
 dev-util/cmake/files/cmake-2.8.10-desktop.patch    |  13 --
 .../files/cmake-2.8.10.2-FindPythonInterp.patch    |  22 ---
 dev-util/cmake/files/cmake-2.8.11-FindBLAS.patch   |  48 -----
 .../files/cmake-2.8.11-more-no_host_paths.patch    | 130 --------------
 .../cmake/files/cmake-2.8.12.1-FindFreetype.patch  |  43 -----
 .../files/cmake-2.8.12.2-FindBoost-python.patch    |  77 --------
 .../cmake/files/cmake-2.8.12.2-FindCurses.patch    |  42 -----
 .../files/cmake-2.8.12.2-hppa-bootstrap.patch      |  27 ---
 dev-util/cmake/files/cmake-2.8.7-FindLAPACK.patch  |  44 -----
 .../cmake/files/cmake-2.8.8-FindPkgConfig.patch    |  18 --
 15 files changed, 768 deletions(-)

diff --git a/dev-util/cmake/Manifest b/dev-util/cmake/Manifest
index 2847789..30f021a 100644
--- a/dev-util/cmake/Manifest
+++ b/dev-util/cmake/Manifest
@@ -1,4 +1,3 @@
-DIST cmake-2.8.12.2.tar.gz 6068231 SHA256 8c6574e9afabcb9fc66f463bb1f2f051958d86c85c37fccf067eb1a44a120e5e SHA512 a0fe8f6305052ba7894a7d58aa30f97b4be1f52eb7de650273a704929a6fbe81c7cebfa6e68a18c9e7d62f7ed02c944f74c2974da9aacc70e2cb186e0a1be44d WHIRLPOOL 3635651a59a93c661db4df8c248e35bfd8a9869eb74faa33fa6d56c12039ef7bb37756fd4c55fb107a9b7c38d2616dc43eb41acc0c565cfad4a24db99c361c29
 DIST cmake-3.2.2.tar.gz 6438736 SHA256 ade94e6e36038774565f2aed8866415443444fb7a362eb0ea5096e40d5407c78 SHA512 b7460733ebf81e6c0cade84c26407f474e1b0a7372d19ccadf928a8578a53043fd76c507b45a00762161aaf6938a59df6110a1eb11a7678bfbc984b020e5d68b WHIRLPOOL 7debc5ac607578feee1c322416ac132ad4ba00a40410e03ee5cba52290f2f15904e7d0f2b77da37c9e8caa379b0530339fb2cc87246209f7999f10e44637f2d2
 DIST cmake-3.3.1-FindPkgConfig_remove_variable_dereference.patch 1583 SHA256 22e6672bd9356a98a0eaf667e66d926f52c4e80e53e38cb8e5cd489993e5668f SHA512 306cf4498cbad9f9c49a63c1870e04f33b5a91032508654a691fe116ec4821da98e9a1e35b6cb186bf9367ebdd9c42ac919e6fc44d2ba6938ad3bc1131b80655 WHIRLPOOL 1d30dd99ea6dc085f64c1b02ab0708f0c033e8d98f69ca431016da17eecc29f01489e5e253446bd542a4a9b770bcaee7b7a7bfa71e7520e7900094a9350c7f8f
 DIST cmake-3.3.1.tar.gz 6577869 SHA256 cd65022c6a0707f1c7112f99e9c981677fdd5518f7ddfa0f778d4cee7113e3d6 SHA512 bc60dd58f884467d7426f73c8e3e78b7ea0a0089f2577c596f34bcfc6d38dfd5d4034589c82dd9cadf138d619dbc4f0c4519faeeeef0672b4578180de21b33f1 WHIRLPOOL 631b925dc8b60f57c573d7c220aaaf4193cb7a5fbd3537e96db6e17bbe537fa89398349763fce867b0e72af591cfcbab9b8cd570a613e7933a31788cfb771f2b

diff --git a/dev-util/cmake/cmake-2.8.12.2-r1.ebuild b/dev-util/cmake/cmake-2.8.12.2-r1.ebuild
deleted file mode 100644
index 24d7780..00000000
--- a/dev-util/cmake/cmake-2.8.12.2-r1.ebuild
+++ /dev/null
@@ -1,195 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $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}
-
-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="alpha amd64 arm arm64 hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~ppc-aix ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~hppa-hpux ~ia64-hpux ~x86-interix ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
-SLOT="0"
-IUSE="emacs ncurses qt5"
-
-DEPEND="
-	>=app-arch/libarchive-2.8.0:=
-	>=dev-libs/expat-2.0.1
-	>=net-misc/curl-7.20.0-r1[ssl]
-	sys-libs/zlib
-	virtual/pkgconfig
-	ncurses? ( sys-libs/ncurses:0= )
-	qt5? (
-		dev-qt/qtcore:5
-		dev-qt/qtgui:5
-		dev-qt/qtwidgets:5
-	)
-"
-RDEPEND="${DEPEND}
-	emacs? ( virtual/emacs )
-"
-
-S="${WORKDIR}/${MY_P}"
-
-SITEFILE="50${PN}-gentoo.el"
-
-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
-	"${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
-)
-
-cmake_src_bootstrap() {
-	# Cleanup args to extract only JOBS.
-	# Because bootstrap does not know anything else.
-	echo ${MAKEOPTS} | egrep -o '(\-j|\-\-jobs)(=?|[[:space:]]*)[[:digit:]]+' > /dev/null
-	if [ $? -eq 0 ]; then
-		par_arg=$(echo ${MAKEOPTS} | egrep -o '(\-j|\-\-jobs)(=?|[[:space:]]*)[[:digit:]]+' | tail -n1 | egrep -o '[[:digit:]]+')
-		par_arg="--parallel=${par_arg}"
-	else
-		par_arg="--parallel=1"
-	fi
-
-	# execinfo.h on Solaris isn't quite what it is on Darwin
-	if [[ ${CHOST} == *-solaris* ]] ; then
-		sed -i -e 's/execinfo\.h/blablabla.h/' Source/kwsys/CMakeLists.txt || die
-	fi
-
-	tc-export CC CXX LD
-
-	# bootstrap script isn't exactly /bin/sh compatible
-	${CONFIG_SHELL:-sh} ./bootstrap \
-		--prefix="${T}/cmakestrap/" \
-		${par_arg} \
-		|| die "Bootstrap failed"
-}
-
-cmake_src_test() {
-	# fix OutDir and SelectLibraryConfigurations tests
-	# these are altered thanks to our eclass
-	sed -i -e 's:#IGNORE ::g' \
-		"${S}"/Tests/{OutDir,CMakeOnly/SelectLibraryConfigurations}/CMakeLists.txt \
-		|| die
-
-	pushd "${BUILD_DIR}" > /dev/null
-
-	local ctestargs
-	[[ -n ${TEST_VERBOSE} ]] && ctestargs="--extra-verbose --output-on-failure"
-
-	# Excluded tests:
-	#    BootstrapTest: we actualy bootstrap it every time so why test it.
-	#    CTest.updatecvs, which fails to commit as root
-	#    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)" \
-		|| die "Tests failed"
-
-	popd > /dev/null
-}
-
-pkg_setup() {
-	# bug 387227
-	addpredict /proc/self/coredump_filter
-}
-
-src_prepare() {
-	cmake-utils_src_prepare
-
-	# disable running of cmake in boostrap command
-	sed -i \
-		-e '/"${cmake_bootstrap_dir}\/cmake"/s/^/#DONOTRUN /' \
-		bootstrap || die "sed failed"
-
-	# Add gcc libs to the default link paths
-	sed -i \
-		-e "s|@GENTOO_PORTAGE_GCCLIBDIR@|${EPREFIX}/usr/${CHOST}/lib/|g" \
-		-e "s|@GENTOO_PORTAGE_EPREFIX@|${EPREFIX}/|g" \
-		Modules/Platform/{UnixPaths,Darwin}.cmake || die "sed failed"
-
-	cmake_src_bootstrap
-}
-
-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_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)
-	)
-
-	if use qt5 ; then
-		mycmakeargs+=(
-			-DBUILD_QtDialog=ON
-			$(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
-}
-
-src_test() {
-	VIRTUALX_COMMAND="cmake_src_test" virtualmake
-}
-
-src_install() {
-	cmake-utils_src_install
-	if use emacs; then
-		elisp-install ${PN} Docs/cmake-mode.el Docs/cmake-mode.elc
-		elisp-site-file-install "${FILESDIR}/${SITEFILE}"
-	fi
-
-	insinto /usr/share/vim/vimfiles/syntax
-	doins Docs/cmake-syntax.vim
-
-	insinto /usr/share/vim/vimfiles/indent
-	doins Docs/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
-}
-
-pkg_postinst() {
-	use emacs && elisp-site-regen
-}
-
-pkg_postrm() {
-	use emacs && elisp-site-regen
-}

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..00000000
--- 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..00000000
--- 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-darwin-isysroot.patch b/dev-util/cmake/files/cmake-2.8.10-darwin-isysroot.patch
deleted file mode 100644
index 97c93aa..00000000
--- a/dev-util/cmake/files/cmake-2.8.10-darwin-isysroot.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-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()
- 
- # Ask xcode-select where to find /Developer or fall back to ancient location.
--execute_process(COMMAND xcode-select -print-path
--  OUTPUT_VARIABLE _stdout
--  OUTPUT_STRIP_TRAILING_WHITESPACE
--  ERROR_VARIABLE _stderr
--  RESULT_VARIABLE _failed)
--if(NOT _failed AND IS_DIRECTORY ${_stdout})
--  set(OSX_DEVELOPER_ROOT ${_stdout})
--elseif(IS_DIRECTORY "/Developer")
--  set(OSX_DEVELOPER_ROOT "/Developer")
--else()
-+#execute_process(COMMAND xcode-select -print-path
-+#  OUTPUT_VARIABLE _stdout
-+#  OUTPUT_STRIP_TRAILING_WHITESPACE
-+#  ERROR_VARIABLE _stderr
-+#  RESULT_VARIABLE _failed)
-+#if(NOT _failed AND IS_DIRECTORY ${_stdout})
-+#  set(OSX_DEVELOPER_ROOT ${_stdout})
-+#elseif(IS_DIRECTORY "/Developer")
-+#  set(OSX_DEVELOPER_ROOT "/Developer")
-+#else()
-   set(OSX_DEVELOPER_ROOT "")
--endif()
-+#endif()
- 
- execute_process(COMMAND sw_vers -productVersion
-   OUTPUT_VARIABLE CURRENT_OSX_VERSION
-@@ -91,10 +91,10 @@
- # CMAKE_OSX_DEPLOYMENT_TARGET
- 
- # Set cache variable - end user may change this during ccmake or cmake-gui configure.
--if(_CURRENT_OSX_VERSION VERSION_GREATER 10.3)
--  set(CMAKE_OSX_DEPLOYMENT_TARGET "$ENV{MACOSX_DEPLOYMENT_TARGET}" CACHE STRING
--    "Minimum OS X version to target for deployment (at runtime); newer APIs weak linked. Set to empty string for default value.")
--endif()
-+#if(_CURRENT_OSX_VERSION VERSION_GREATER 10.3)
-+#  set(CMAKE_OSX_DEPLOYMENT_TARGET "$ENV{MACOSX_DEPLOYMENT_TARGET}" CACHE STRING
-+#    "Minimum OS X version to target for deployment (at runtime); newer APIs weak linked. Set to empty string for default value.")
-+#endif()
- 
- #----------------------------------------------------------------------------
- # CMAKE_OSX_SYSROOT

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..00000000
--- 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.2-FindPythonInterp.patch b/dev-util/cmake/files/cmake-2.8.10.2-FindPythonInterp.patch
deleted file mode 100644
index a7e8688..00000000
--- 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.11-FindBLAS.patch b/dev-util/cmake/files/cmake-2.8.11-FindBLAS.patch
deleted file mode 100644
index 02e44fb..00000000
--- a/dev-util/cmake/files/cmake-2.8.11-FindBLAS.patch
+++ /dev/null
@@ -1,48 +0,0 @@
---- 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
-+# 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 @@
- # (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)
- 
-@@ -604,3 +630,8 @@
- 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.11-more-no_host_paths.patch b/dev-util/cmake/files/cmake-2.8.11-more-no_host_paths.patch
deleted file mode 100644
index 36f4ded..00000000
--- a/dev-util/cmake/files/cmake-2.8.11-more-no_host_paths.patch
+++ /dev/null
@@ -1,130 +0,0 @@
-From 65571942d4f19d508174f6f89aeaac5ffe380a6e Mon Sep 17 00:00:00 2001
-From: Michael Palimaka <kensington@gentoo.org>
-Date: Tue, 6 Nov 2012 23:35:34 +1100
-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)
-
---- 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>")
- 
- 
--# 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
-@@ -276,6 +276,8 @@
- 
- # 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 @@
-   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+
---- a/Modules/Platform/UnixPaths.cmake
-+++ b/Modules/Platform/UnixPaths.cmake
-@@ -33,6 +33,7 @@
- # 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
-@@ -44,43 +45,41 @@
- 
- # 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 /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
-   )
- 

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..00000000
--- 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.2-FindBoost-python.patch b/dev-util/cmake/files/cmake-2.8.12.2-FindBoost-python.patch
deleted file mode 100644
index 4a5474a..00000000
--- a/dev-util/cmake/files/cmake-2.8.12.2-FindBoost-python.patch
+++ /dev/null
@@ -1,77 +0,0 @@
---- Modules/FindBoost.cmake
-+++ Modules/FindBoost.cmake
-@@ -905,6 +905,15 @@
- 
-   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()
-+
- 
-   #
-   # 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} )
-+    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
-@@ -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} )
-+      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})
-@@ -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} )
-+    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
-@@ -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} )
-+      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})

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..00000000
--- 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..00000000
--- 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..00000000
--- 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..00000000
--- 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)


^ permalink raw reply related	[flat|nested] 23+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/cmake/files/, dev-util/cmake/
@ 2016-12-17  7:08 Johannes Huber
  0 siblings, 0 replies; 23+ messages in thread
From: Johannes Huber @ 2016-12-17  7:08 UTC (permalink / raw
  To: gentoo-commits

commit:     621bc9f987833bcaff088097cadda032ba108a0d
Author:     Johannes Huber <johu <AT> gentoo <DOT> org>
AuthorDate: Sat Dec 17 07:07:34 2016 +0000
Commit:     Johannes Huber <johu <AT> gentoo <DOT> org>
CommitDate: Sat Dec 17 07:08:28 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=621bc9f9

dev-util/cmake: Remove 3.7.0 (r1)

Package-Manager: Portage-2.3.3, Repoman-2.3.1

 dev-util/cmake/Manifest                         |   1 -
 dev-util/cmake/cmake-3.7.0-r1.ebuild            | 197 ------------------------
 dev-util/cmake/files/cmake-2.8.10-libform.patch |  51 ------
 3 files changed, 249 deletions(-)

diff --git a/dev-util/cmake/Manifest b/dev-util/cmake/Manifest
index 30f021a..f2556fd 100644
--- a/dev-util/cmake/Manifest
+++ b/dev-util/cmake/Manifest
@@ -3,5 +3,4 @@ DIST cmake-3.3.1-FindPkgConfig_remove_variable_dereference.patch 1583 SHA256 22e
 DIST cmake-3.3.1.tar.gz 6577869 SHA256 cd65022c6a0707f1c7112f99e9c981677fdd5518f7ddfa0f778d4cee7113e3d6 SHA512 bc60dd58f884467d7426f73c8e3e78b7ea0a0089f2577c596f34bcfc6d38dfd5d4034589c82dd9cadf138d619dbc4f0c4519faeeeef0672b4578180de21b33f1 WHIRLPOOL 631b925dc8b60f57c573d7c220aaaf4193cb7a5fbd3537e96db6e17bbe537fa89398349763fce867b0e72af591cfcbab9b8cd570a613e7933a31788cfb771f2b
 DIST cmake-3.5.2.tar.gz 6863498 SHA256 92d8410d3d981bb881dfff2aed466da55a58d34c7390d50449aa59b32bb5e62a SHA512 7b08eb9f1b37993553f89c03eceedc465dc52b787dec99b78c74ebff2817d0aac9764e82ad835e8fc39f61cd2d2c0a3544d3f5ae299234ed52e9a940edf30b81 WHIRLPOOL c255825aa024ba9feb51540ed2a36cfa73c6397356d18c5ff8f49258a4c30906c8ed5d7553e7d56f3c373ffff418697f056f218f30aa409debab2303b0f9fa84
 DIST cmake-3.6.3.tar.gz 6919949 SHA256 7d73ee4fae572eb2d7cd3feb48971aea903bb30a20ea5ae8b4da826d8ccad5fe SHA512 bfcb51bc01f64a6ae5fb9401c037a529e4b2c0216eef68cf862a7495560dfc80589b34af94450baf4561d217dfb8075b14fbf63e3a668943a65e36ea61c5df48 WHIRLPOOL ecf79bb1a4b18df07d15ed5cdeb513420a0b8d46f90154dbdf9a78d3294e202ade040e832f3479fca0889c4af3b3b50e0d9391120191bae390927888e6487b4a
-DIST cmake-3.7.0.tar.gz 7359368 SHA256 ed63e05c41aeb6c036e503114ab15847f29c312f9f21f5f1a7060a4b4ec2fb31 SHA512 badeb81ea5b2a765d0ae222d6c7612eba570f46b3645ac8a22e1cf5ea52648239c707e80d51c1d31f8e5b15167e37e6b4d9f6308280560b11feddc3d2fa745cd WHIRLPOOL 38bf6f2861544024282e6d1fc97824c32ebb824256ebc2513ad4b4698f66803354de75d1692a63515b2b0f587cadc52d3c9e6a1b367360b561f34f1452495566
 DIST cmake-3.7.1.tar.gz 7361172 SHA256 449a5bce64dbd4d5b9517ebd1a1248ed197add6ad27934478976fd5f1f9330e1 SHA512 0539d70ce3ac77042a45d638443b09fbf368e253622db980bc6fb15988743eacd031ab850a45c821ec3e9f0f5f886b9c9cb0668aeda184cd457b78abbfe7b629 WHIRLPOOL 8b632b4a3f44a7b56952926ad43db45ecd9f26f434816fe29a52c89542edfc2dfea72f4ec814d4faaf990ee535ad80e6238ba2e6d9ffa2ff94cfccd665b1d930

diff --git a/dev-util/cmake/cmake-3.7.0-r1.ebuild b/dev-util/cmake/cmake-3.7.0-r1.ebuild
deleted file mode 100644
index 7bda50d..00000000
--- a/dev-util/cmake/cmake-3.7.0-r1.ebuild
+++ /dev/null
@@ -1,197 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=6
-
-CMAKE_REMOVE_MODULES="no"
-inherit bash-completion-r1 elisp-common toolchain-funcs eutils versionator cmake-utils virtualx
-
-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"
-SLOT="0"
-[[ "${PV}" = *_rc* ]] || \
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~hppa-hpux ~ia64-hpux ~x86-interix ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
-IUSE="doc emacs system-jsoncpp ncurses qt5"
-
-RDEPEND="
-	>=app-arch/libarchive-3.0.0:=
-	>=dev-libs/expat-2.0.1
-	>=dev-libs/libuv-1.0.0:=
-	>=net-misc/curl-7.21.5[ssl]
-	sys-libs/zlib
-	virtual/pkgconfig
-	emacs? ( virtual/emacs )
-	ncurses? ( sys-libs/ncurses:0= )
-	qt5? (
-		dev-qt/qtcore:5
-		dev-qt/qtgui:5
-		dev-qt/qtwidgets:5
-	)
-	system-jsoncpp? ( >=dev-libs/jsoncpp-0.6.0_rc2:0= )
-"
-DEPEND="${RDEPEND}
-	doc? ( dev-python/sphinx )
-"
-
-S="${WORKDIR}/${MY_P}"
-
-SITEFILE="50${PN}-gentoo.el"
-
-PATCHES=(
-	# 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}-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() {
-	# Cleanup args to extract only JOBS.
-	# Because bootstrap does not know anything else.
-	echo ${MAKEOPTS} | egrep -o '(\-j|\-\-jobs)(=?|[[:space:]]*)[[:digit:]]+' > /dev/null
-	if [ $? -eq 0 ]; then
-		par_arg=$(echo ${MAKEOPTS} | egrep -o '(\-j|\-\-jobs)(=?|[[:space:]]*)[[:digit:]]+' | tail -n1 | egrep -o '[[:digit:]]+')
-		par_arg="--parallel=${par_arg}"
-	else
-		par_arg="--parallel=1"
-	fi
-
-	# disable running of cmake in boostrap command
-	sed -i \
-		-e '/"${cmake_bootstrap_dir}\/cmake"/s/^/#DONOTRUN /' \
-		bootstrap || die "sed failed"
-
-	# execinfo.h on Solaris isn't quite what it is on Darwin
-	if [[ ${CHOST} == *-solaris* ]] ; then
-		sed -i -e 's/execinfo\.h/blablabla.h/' Source/kwsys/CMakeLists.txt || die
-	fi
-
-	tc-export CC CXX LD
-
-	# bootstrap script isn't exactly /bin/sh compatible
-	${CONFIG_SHELL:-sh} ./bootstrap \
-		--prefix="${T}/cmakestrap/" \
-		${par_arg} \
-		|| die "Bootstrap failed"
-}
-
-cmake_src_test() {
-	# fix OutDir and SelectLibraryConfigurations tests
-	# these are altered thanks to our eclass
-	sed -i -e 's:#IGNORE ::g' \
-		"${S}"/Tests/{OutDir,CMakeOnly/SelectLibraryConfigurations}/CMakeLists.txt \
-		|| die
-
-	pushd "${BUILD_DIR}" > /dev/null
-
-	local ctestargs
-	[[ -n ${TEST_VERBOSE} ]] && ctestargs="--extra-verbose --output-on-failure"
-
-	# Excluded tests:
-	#    BootstrapTest: we actualy bootstrap it every time so why test it.
-	#    BundleUtilities: bundle creation broken
-	#    CTest.updatecvs: which fails to commit as root
-	#    Fortran: requires fortran
-	#    Qt4Deploy, which tries to break sandbox and ignores prefix
-	#    Qt5Autogen, which breaks for unknown reason
-	#    TestUpload, which requires network access
-	"${BUILD_DIR}"/bin/ctest ${ctestargs} \
-		-E "(BootstrapTest|BundleUtilities|CTest.UpdateCVS|Fortran|Qt4Deploy|Qt5Autogen|TestUpload)" \
-		|| die "Tests failed"
-
-	popd > /dev/null
-}
-
-src_prepare() {
-	cmake-utils_src_prepare
-
-	# Add gcc libs to the default link paths
-	sed -i \
-		-e "s|@GENTOO_PORTAGE_GCCLIBDIR@|${EPREFIX}/usr/${CHOST}/lib/|g" \
-		-e "s|@GENTOO_PORTAGE_EPREFIX@|${EPREFIX}/|g" \
-		Modules/Platform/{UnixPaths,Darwin}.cmake || die "sed failed"
-	if ! has_version \>=${CATEGORY}/${PN}-3.4.0_rc1 ; then
-		CMAKE_BINARY="${S}/Bootstrap.cmk/cmake"
-		cmake_src_bootstrap
-	fi
-}
-
-src_configure() {
-	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}
-		-DSPHINX_MAN=$(usex doc)
-		-DSPHINX_HTML=$(usex doc)
-		-DBUILD_CursesDialog="$(usex ncurses)"
-	)
-
-	if use qt5 ; then
-		mycmakeargs+=(
-			-DBUILD_QtDialog=ON
-			$(cmake-utils_use_find_package qt5 Qt5Widgets)
-		)
-	fi
-
-	cmake-utils_src_configure
-}
-
-src_compile() {
-	cmake-utils_src_compile
-	use emacs && elisp-compile Auxiliary/cmake-mode.el
-}
-
-src_test() {
-	virtx cmake_src_test
-}
-
-src_install() {
-	cmake-utils_src_install
-
-	if use emacs; then
-		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 Auxiliary/vim/syntax/cmake.vim
-
-	insinto /usr/share/vim/vimfiles/indent
-	doins Auxiliary/vim/indent/cmake.vim
-
-	insinto /usr/share/vim/vimfiles/ftdetect
-	doins "${FILESDIR}/${PN}.vim"
-
-	dobashcomp Auxiliary/bash-completion/{${PN},ctest,cpack}
-
-	rm -r "${ED}"/usr/share/cmake/{completions,editors} || die
-}
-
-pkg_postinst() {
-	use emacs && elisp-site-regen
-}
-
-pkg_postrm() {
-	use emacs && elisp-site-regen
-}

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..00000000
--- 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>


^ permalink raw reply related	[flat|nested] 23+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/cmake/files/, dev-util/cmake/
@ 2017-03-13 12:11 Michael Palimaka
  0 siblings, 0 replies; 23+ messages in thread
From: Michael Palimaka @ 2017-03-13 12:11 UTC (permalink / raw
  To: gentoo-commits

commit:     2ae782f68b91c67347e50dde0fd9dc0ced13746e
Author:     Michael Palimaka <kensington <AT> gentoo <DOT> org>
AuthorDate: Mon Mar 13 12:10:51 2017 +0000
Commit:     Michael Palimaka <kensington <AT> gentoo <DOT> org>
CommitDate: Mon Mar 13 12:11:13 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2ae782f6

dev-util/cmake: backport x32 support patches from upstream for testing

Gentoo-bug: 426936
Package-Manager: Portage-2.3.4, Repoman-2.3.2

 dev-util/cmake/cmake-3.7.2-r10.ebuild      | 202 +++++++
 dev-util/cmake/files/cmake-3.7.2-x32.patch | 843 +++++++++++++++++++++++++++++
 2 files changed, 1045 insertions(+)

diff --git a/dev-util/cmake/cmake-3.7.2-r10.ebuild b/dev-util/cmake/cmake-3.7.2-r10.ebuild
new file mode 100644
index 00000000000..dd1df55049b
--- /dev/null
+++ b/dev-util/cmake/cmake-3.7.2-r10.ebuild
@@ -0,0 +1,202 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+CMAKE_REMOVE_MODULES="no"
+inherit bash-completion-r1 elisp-common toolchain-funcs eutils versionator cmake-utils virtualx flag-o-matic
+
+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"
+SLOT="0"
+[[ "${PV}" = *_rc* ]] || \
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
+IUSE="doc emacs system-jsoncpp ncurses qt5"
+
+RDEPEND="
+	>=app-arch/libarchive-3.0.0:=
+	>=dev-libs/expat-2.0.1
+	>=dev-libs/libuv-1.0.0:=
+	>=net-misc/curl-7.21.5[ssl]
+	sys-libs/zlib
+	virtual/pkgconfig
+	emacs? ( virtual/emacs )
+	ncurses? ( sys-libs/ncurses:0= )
+	qt5? (
+		dev-qt/qtcore:5
+		dev-qt/qtgui:5
+		dev-qt/qtwidgets:5
+	)
+	system-jsoncpp? ( >=dev-libs/jsoncpp-0.6.0_rc2:0= )
+"
+DEPEND="${RDEPEND}
+	doc? ( dev-python/sphinx )
+"
+
+S="${WORKDIR}/${MY_P}"
+
+SITEFILE="50${PN}-gentoo.el"
+
+PATCHES=(
+	# 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}-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)
+
+	# testing 3.9 backports - bug #426936
+	"${FILESDIR}"/${PN}-3.7.2-x32.patch
+)
+
+cmake_src_bootstrap() {
+	# Cleanup args to extract only JOBS.
+	# Because bootstrap does not know anything else.
+	echo ${MAKEOPTS} | egrep -o '(\-j|\-\-jobs)(=?|[[:space:]]*)[[:digit:]]+' > /dev/null
+	if [ $? -eq 0 ]; then
+		par_arg=$(echo ${MAKEOPTS} | egrep -o '(\-j|\-\-jobs)(=?|[[:space:]]*)[[:digit:]]+' | tail -n1 | egrep -o '[[:digit:]]+')
+		par_arg="--parallel=${par_arg}"
+	else
+		par_arg="--parallel=1"
+	fi
+
+	# disable running of cmake in boostrap command
+	sed -i \
+		-e '/"${cmake_bootstrap_dir}\/cmake"/s/^/#DONOTRUN /' \
+		bootstrap || die "sed failed"
+
+	# execinfo.h on Solaris isn't quite what it is on Darwin
+	if [[ ${CHOST} == *-solaris* ]] ; then
+		sed -i -e 's/execinfo\.h/blablabla.h/' Source/kwsys/CMakeLists.txt || die
+	fi
+
+	tc-export CC CXX LD
+
+	# bootstrap script isn't exactly /bin/sh compatible
+	${CONFIG_SHELL:-sh} ./bootstrap \
+		--prefix="${T}/cmakestrap/" \
+		${par_arg} \
+		|| die "Bootstrap failed"
+}
+
+cmake_src_test() {
+	# fix OutDir and SelectLibraryConfigurations tests
+	# these are altered thanks to our eclass
+	sed -i -e 's:#IGNORE ::g' \
+		"${S}"/Tests/{OutDir,CMakeOnly/SelectLibraryConfigurations}/CMakeLists.txt \
+		|| die
+
+	pushd "${BUILD_DIR}" > /dev/null
+
+	local ctestargs
+	[[ -n ${TEST_VERBOSE} ]] && ctestargs="--extra-verbose --output-on-failure"
+
+	# Excluded tests:
+	#    BootstrapTest: we actualy bootstrap it every time so why test it.
+	#    BundleUtilities: bundle creation broken
+	#    CTest.updatecvs: which fails to commit as root
+	#    Fortran: requires fortran
+	#    Qt4Deploy, which tries to break sandbox and ignores prefix
+	#    Qt5Autogen, which breaks for unknown reason
+	#    TestUpload, which requires network access
+	"${BUILD_DIR}"/bin/ctest ${ctestargs} \
+		-E "(BootstrapTest|BundleUtilities|CTest.UpdateCVS|Fortran|Qt4Deploy|Qt5Autogen|TestUpload)" \
+		|| die "Tests failed"
+
+	popd > /dev/null
+}
+
+src_prepare() {
+	cmake-utils_src_prepare
+
+	# Add gcc libs to the default link paths
+	sed -i \
+		-e "s|@GENTOO_PORTAGE_GCCLIBDIR@|${EPREFIX}/usr/${CHOST}/lib/|g" \
+		-e "s|@GENTOO_PORTAGE_EPREFIX@|${EPREFIX}/|g" \
+		Modules/Platform/{UnixPaths,Darwin}.cmake || die "sed failed"
+	if ! has_version \>=${CATEGORY}/${PN}-3.4.0_rc1 ; then
+		CMAKE_BINARY="${S}/Bootstrap.cmk/cmake"
+		cmake_src_bootstrap
+	fi
+}
+
+src_configure() {
+	# Fix linking on Solaris
+	[[ ${CHOST} == *-solaris* ]] && append-ldflags -lsocket -lnsl
+
+	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}
+		-DSPHINX_MAN=$(usex doc)
+		-DSPHINX_HTML=$(usex doc)
+		-DBUILD_CursesDialog="$(usex ncurses)"
+	)
+
+	if use qt5 ; then
+		mycmakeargs+=(
+			-DBUILD_QtDialog=ON
+			$(cmake-utils_use_find_package qt5 Qt5Widgets)
+		)
+	fi
+
+	cmake-utils_src_configure
+}
+
+src_compile() {
+	cmake-utils_src_compile
+	use emacs && elisp-compile Auxiliary/cmake-mode.el
+}
+
+src_test() {
+	virtx cmake_src_test
+}
+
+src_install() {
+	cmake-utils_src_install
+
+	if use emacs; then
+		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 Auxiliary/vim/syntax/cmake.vim
+
+	insinto /usr/share/vim/vimfiles/indent
+	doins Auxiliary/vim/indent/cmake.vim
+
+	insinto /usr/share/vim/vimfiles/ftdetect
+	doins "${FILESDIR}/${PN}.vim"
+
+	dobashcomp Auxiliary/bash-completion/{${PN},ctest,cpack}
+
+	rm -r "${ED}"/usr/share/cmake/{completions,editors} || die
+}
+
+pkg_postinst() {
+	use emacs && elisp-site-regen
+}
+
+pkg_postrm() {
+	use emacs && elisp-site-regen
+}

diff --git a/dev-util/cmake/files/cmake-3.7.2-x32.patch b/dev-util/cmake/files/cmake-3.7.2-x32.patch
new file mode 100644
index 00000000000..0164a39d0ef
--- /dev/null
+++ b/dev-util/cmake/files/cmake-3.7.2-x32.patch
@@ -0,0 +1,843 @@
+Backports from 3.9
+
+Gentoo-bug: 426936
+
+From 503f25d490e56dfc1d3dc894e1fc1bd3e7e89e81 Mon Sep 17 00:00:00 2001
+From: Christian Schmidbauer <ch.schmidbauer@gmail.com>
+Date: Sat, 25 Feb 2017 19:47:49 +0100
+Subject: [PATCH] find_library: Allow custom lib suffix be used as find path
+
+Add a new `CMAKE_FIND_LIBRARY_CUSTOM_LIB_SUFFIX` variable to allow use
+of a custom suffix on `lib` directory names.  This is a more general
+option than that added by commit v3.7.0-rc1~504^2 (Teach find_library
+and find_package to search lib32 paths, 2016-06-10).  It allows the find
+path to be more deterministic on custom setups.
+
+See discussion in #10287 and #15994.
+---
+ Help/command/find_library.rst                      |  7 ++++++
+ Help/manual/cmake-variables.7.rst                  |  1 +
+ Help/prop_gbl/FIND_LIBRARY_USE_LIB32_PATHS.rst     |  2 ++
+ Help/prop_gbl/FIND_LIBRARY_USE_LIB64_PATHS.rst     |  2 ++
+ .../release/dev/find_library-custom-lib-suffix.rst |  6 +++++
+ .../CMAKE_FIND_LIBRARY_CUSTOM_LIB_SUFFIX.rst       | 11 +++++++++
+ Source/cmFindLibraryCommand.cxx                    | 28 ++++++++++++----------
+ Tests/CMakeOnly/find_library/CMakeLists.txt        | 15 +++++++++++-
+ .../CMakeOnly/find_library/lib/A/libXYZ/libtest2.a |  0
+ Tests/CMakeOnly/find_library/lib/XYZ/libtest1.a    |  0
+ .../CMakeOnly/find_library/libXYZ/A/lib/libtest4.a |  0
+ .../find_library/libXYZ/A/libXYZ/libtest5.a        |  0
+ Tests/CMakeOnly/find_library/libXYZ/A/libtest6.a   |  0
+ Tests/CMakeOnly/find_library/libXYZ/libtest7.a     |  0
+ 14 files changed, 58 insertions(+), 14 deletions(-)
+ create mode 100644 Help/release/dev/find_library-custom-lib-suffix.rst
+ create mode 100644 Help/variable/CMAKE_FIND_LIBRARY_CUSTOM_LIB_SUFFIX.rst
+ create mode 100644 Tests/CMakeOnly/find_library/lib/A/libXYZ/libtest2.a
+ create mode 100644 Tests/CMakeOnly/find_library/lib/XYZ/libtest1.a
+ create mode 100644 Tests/CMakeOnly/find_library/libXYZ/A/lib/libtest4.a
+ create mode 100644 Tests/CMakeOnly/find_library/libXYZ/A/libXYZ/libtest5.a
+ create mode 100644 Tests/CMakeOnly/find_library/libXYZ/A/libtest6.a
+ create mode 100644 Tests/CMakeOnly/find_library/libXYZ/libtest7.a
+
+diff --git a/Help/command/find_library.rst b/Help/command/find_library.rst
+index 1eb50f7..e912040 100644
+--- a/Help/command/find_library.rst
++++ b/Help/command/find_library.rst
+@@ -49,6 +49,13 @@ path to the framework ``<fullPath>/A.framework``.  When a full path to a
+ framework is used as a library, CMake will use a ``-framework A``, and a
+ ``-F<fullPath>`` to link the framework to the target.
+ 
++If the :variable:`CMAKE_FIND_LIBRARY_CUSTOM_LIB_SUFFIX` variable is set all
++search paths will be tested as normal, with the suffix appended, and with
++all matches of ``lib/`` replaced with
++``lib${CMAKE_FIND_LIBRARY_CUSTOM_LIB_SUFFIX}/``.  This variable overrides
++the :prop_gbl:`FIND_LIBRARY_USE_LIB32_PATHS`
++and :prop_gbl:`FIND_LIBRARY_USE_LIB64_PATHS` global properties.
++
+ If the :prop_gbl:`FIND_LIBRARY_USE_LIB32_PATHS` global property is set
+ all search paths will be tested as normal, with ``32/`` appended, and
+ with all matches of ``lib/`` replaced with ``lib32/``.  This property is
+diff --git a/Help/manual/cmake-variables.7.rst b/Help/manual/cmake-variables.7.rst
+index 259d87b..a25efe7 100644
+--- a/Help/manual/cmake-variables.7.rst
++++ b/Help/manual/cmake-variables.7.rst
+@@ -130,6 +130,7 @@ Variables that Change Behavior
+    /variable/CMAKE_SYSROOT
+    /variable/CMAKE_FIND_APPBUNDLE
+    /variable/CMAKE_FIND_FRAMEWORK
++   /variable/CMAKE_FIND_LIBRARY_CUSTOM_LIB_SUFFIX
+    /variable/CMAKE_FIND_LIBRARY_PREFIXES
+    /variable/CMAKE_FIND_LIBRARY_SUFFIXES
+    /variable/CMAKE_FIND_NO_INSTALL_PREFIX
+diff --git a/Help/prop_gbl/FIND_LIBRARY_USE_LIB32_PATHS.rst b/Help/prop_gbl/FIND_LIBRARY_USE_LIB32_PATHS.rst
+index ce18b65..8396026 100644
+--- a/Help/prop_gbl/FIND_LIBRARY_USE_LIB32_PATHS.rst
++++ b/Help/prop_gbl/FIND_LIBRARY_USE_LIB32_PATHS.rst
+@@ -8,3 +8,5 @@ Whether the :command:`find_library` command should automatically search
+ :command:`find_library` command should automatically search the ``lib32``
+ variant of directories called ``lib`` in the search path when building 32-bit
+ binaries.
++
++See also the :variable:`CMAKE_FIND_LIBRARY_CUSTOM_LIB_SUFFIX` variable.
+diff --git a/Help/prop_gbl/FIND_LIBRARY_USE_LIB64_PATHS.rst b/Help/prop_gbl/FIND_LIBRARY_USE_LIB64_PATHS.rst
+index e52f8eb..ed343ba 100644
+--- a/Help/prop_gbl/FIND_LIBRARY_USE_LIB64_PATHS.rst
++++ b/Help/prop_gbl/FIND_LIBRARY_USE_LIB64_PATHS.rst
+@@ -8,3 +8,5 @@ FIND_LIBRARY_USE_LIB64_PATHS is a boolean specifying whether the
+ :command:`find_library` command should automatically search the lib64
+ variant of directories called lib in the search path when building
+ 64-bit binaries.
++
++See also the :variable:`CMAKE_FIND_LIBRARY_CUSTOM_LIB_SUFFIX` variable.
+diff --git a/Help/release/dev/find_library-custom-lib-suffix.rst b/Help/release/dev/find_library-custom-lib-suffix.rst
+new file mode 100644
+index 0000000..824b27e
+--- /dev/null
++++ b/Help/release/dev/find_library-custom-lib-suffix.rst
+@@ -0,0 +1,6 @@
++find_library-custom-lib-suffix
++------------------------------
++
++* A :variable:`CMAKE_FIND_LIBRARY_CUSTOM_LIB_SUFFIX` variable was added to
++  tell the :command:`find_library` command to search in a ``lib<suffix>``
++  directory before each ``lib`` directory that would normally be searched.
+diff --git a/Help/variable/CMAKE_FIND_LIBRARY_CUSTOM_LIB_SUFFIX.rst b/Help/variable/CMAKE_FIND_LIBRARY_CUSTOM_LIB_SUFFIX.rst
+new file mode 100644
+index 0000000..f7c6524
+--- /dev/null
++++ b/Help/variable/CMAKE_FIND_LIBRARY_CUSTOM_LIB_SUFFIX.rst
+@@ -0,0 +1,11 @@
++CMAKE_FIND_LIBRARY_CUSTOM_LIB_SUFFIX
++------------------------------------
++
++Specify a ``<suffix>`` to tell the :command:`find_library` command to
++search in a ``lib<suffix>`` directory before each ``lib`` directory that
++would normally be searched.
++
++This overrides the behavior of related global properties:
++
++* :prop_gbl:`FIND_LIBRARY_USE_LIB32_PATHS`
++* :prop_gbl:`FIND_LIBRARY_USE_LIB64_PATHS`
+diff --git a/Source/cmFindLibraryCommand.cxx b/Source/cmFindLibraryCommand.cxx
+index 2feedf3..c506d66 100644
+--- a/Source/cmFindLibraryCommand.cxx
++++ b/Source/cmFindLibraryCommand.cxx
+@@ -43,20 +43,22 @@ bool cmFindLibraryCommand::InitialPass(std::vector<std::string> const& argsIn,
+     return true;
+   }
+ 
+-  if (this->Makefile->GetState()->GetGlobalPropertyAsBool(
+-        "FIND_LIBRARY_USE_LIB32_PATHS")) {
+-    // add special 32 bit paths if this is a 32 bit compile.
+-    if (this->Makefile->PlatformIs32Bit()) {
+-      this->AddArchitecturePaths("32");
+-    }
++  // add custom lib<qual> paths instead of using fixed lib32 or lib64
++  if (const char* customLib = this->Makefile->GetDefinition(
++        "CMAKE_FIND_LIBRARY_CUSTOM_LIB_SUFFIX")) {
++    this->AddArchitecturePaths(customLib);
+   }
+-
+-  if (this->Makefile->GetState()->GetGlobalPropertyAsBool(
+-        "FIND_LIBRARY_USE_LIB64_PATHS")) {
+-    // add special 64 bit paths if this is a 64 bit compile.
+-    if (this->Makefile->PlatformIs64Bit()) {
+-      this->AddArchitecturePaths("64");
+-    }
++  // add special 32 bit paths if this is a 32 bit compile.
++  else if (this->Makefile->PlatformIs32Bit() &&
++           this->Makefile->GetState()->GetGlobalPropertyAsBool(
++             "FIND_LIBRARY_USE_LIB32_PATHS")) {
++    this->AddArchitecturePaths("32");
++  }
++  // add special 64 bit paths if this is a 64 bit compile.
++  else if (this->Makefile->PlatformIs64Bit() &&
++           this->Makefile->GetState()->GetGlobalPropertyAsBool(
++             "FIND_LIBRARY_USE_LIB64_PATHS")) {
++    this->AddArchitecturePaths("64");
+   }
+ 
+   std::string library = this->FindLibrary();
+diff --git a/Tests/CMakeOnly/find_library/CMakeLists.txt b/Tests/CMakeOnly/find_library/CMakeLists.txt
+index 9958650..9c1aad8 100644
+--- a/Tests/CMakeOnly/find_library/CMakeLists.txt
++++ b/Tests/CMakeOnly/find_library/CMakeLists.txt
+@@ -24,7 +24,7 @@ endmacro()
+ macro(test_find_library_subst expected)
+   get_filename_component(dir ${expected} PATH)
+   get_filename_component(name ${expected} NAME)
+-  string(REGEX REPLACE "lib/?64" "lib" dir "${dir}")
++  string(REGEX REPLACE "lib/?[36X][24Y][Z]*" "lib" dir "${dir}")
+   test_find_library(", searched as ${dir}" "${expected}"
+     NAMES ${name}
+     PATHS ${CMAKE_CURRENT_SOURCE_DIR}/${dir}
+@@ -79,3 +79,16 @@ test_find_library("" A/libtestA.a
+   NAMES testB testA NAMES_PER_DIR
+   PATHS ${CMAKE_CURRENT_SOURCE_DIR}/A ${CMAKE_CURRENT_SOURCE_DIR}/B
+   )
++
++set(CMAKE_FIND_LIBRARY_CUSTOM_LIB_SUFFIX "XYZ")
++foreach(libXYZ
++    lib/XYZ/libtest1.a
++    lib/A/libXYZ/libtest2.a
++    lib/libtest3.a
++    libXYZ/A/lib/libtest4.a
++    libXYZ/A/libXYZ/libtest5.a
++    libXYZ/A/libtest6.a
++    libXYZ/libtest7.a
++    )
++  test_find_library_subst(${libXYZ})
++endforeach()
+diff --git a/Tests/CMakeOnly/find_library/lib/A/libXYZ/libtest2.a b/Tests/CMakeOnly/find_library/lib/A/libXYZ/libtest2.a
+new file mode 100644
+index 0000000..e69de29
+diff --git a/Tests/CMakeOnly/find_library/lib/XYZ/libtest1.a b/Tests/CMakeOnly/find_library/lib/XYZ/libtest1.a
+new file mode 100644
+index 0000000..e69de29
+diff --git a/Tests/CMakeOnly/find_library/libXYZ/A/lib/libtest4.a b/Tests/CMakeOnly/find_library/libXYZ/A/lib/libtest4.a
+new file mode 100644
+index 0000000..e69de29
+diff --git a/Tests/CMakeOnly/find_library/libXYZ/A/libXYZ/libtest5.a b/Tests/CMakeOnly/find_library/libXYZ/A/libXYZ/libtest5.a
+new file mode 100644
+index 0000000..e69de29
+diff --git a/Tests/CMakeOnly/find_library/libXYZ/A/libtest6.a b/Tests/CMakeOnly/find_library/libXYZ/A/libtest6.a
+new file mode 100644
+index 0000000..e69de29
+diff --git a/Tests/CMakeOnly/find_library/libXYZ/libtest7.a b/Tests/CMakeOnly/find_library/libXYZ/libtest7.a
+new file mode 100644
+index 0000000..e69de29
+-- 
+2.10.2
+
+From 462cf254270fbd56bffc73b00dc28882fdb0bdd6 Mon Sep 17 00:00:00 2001
+From: Steven Newbury <steve@snewbury.org.uk>
+Date: Mon, 27 Feb 2017 21:06:51 +0000
+Subject: [PATCH 1/4] Add support for x32-abi
+
+Detect x32-abi through CMakeCompilerABI infrastruture and use this
+information at runtime to determine the correct library paths with
+`FIND_LIBRARY_USE_LIBX32_PATHS`.
+
+Fixes: #15994
+---
+ Help/command/find_library.rst                          | 10 +++++++++-
+ Help/manual/cmake-properties.7.rst                     |  1 +
+ Help/prop_gbl/FIND_LIBRARY_USE_LIBX32_PATHS.rst        | 12 ++++++++++++
+ Help/variable/CMAKE_FIND_LIBRARY_CUSTOM_LIB_SUFFIX.rst |  1 +
+ Modules/CMakeCompilerABI.h                             |  4 ++++
+ Modules/FindPkgConfig.cmake                            |  4 ++++
+ Modules/Platform/UnixPaths.cmake                       |  1 +
+ Source/cmExportInstallFileGenerator.cxx                |  4 +++-
+ Source/cmFindLibraryCommand.cxx                        |  9 ++++++++-
+ Source/cmFindPackageCommand.cxx                        | 11 +++++++++++
+ Source/cmFindPackageCommand.h                          |  1 +
+ Source/cmMakefile.cxx                                  | 17 +++++++++++++++++
+ Source/cmMakefile.h                                    |  2 ++
+ 13 files changed, 74 insertions(+), 3 deletions(-)
+ create mode 100644 Help/prop_gbl/FIND_LIBRARY_USE_LIBX32_PATHS.rst
+
+diff --git a/Help/command/find_library.rst b/Help/command/find_library.rst
+index e912040..f774f17 100644
+--- a/Help/command/find_library.rst
++++ b/Help/command/find_library.rst
+@@ -53,7 +53,8 @@ If the :variable:`CMAKE_FIND_LIBRARY_CUSTOM_LIB_SUFFIX` variable is set all
+ search paths will be tested as normal, with the suffix appended, and with
+ all matches of ``lib/`` replaced with
+ ``lib${CMAKE_FIND_LIBRARY_CUSTOM_LIB_SUFFIX}/``.  This variable overrides
+-the :prop_gbl:`FIND_LIBRARY_USE_LIB32_PATHS`
++the :prop_gbl:`FIND_LIBRARY_USE_LIB32_PATHS`,
++:prop_gbl:`FIND_LIBRARY_USE_LIBX32_PATHS`,
+ and :prop_gbl:`FIND_LIBRARY_USE_LIB64_PATHS` global properties.
+ 
+ If the :prop_gbl:`FIND_LIBRARY_USE_LIB32_PATHS` global property is set
+@@ -63,6 +64,13 @@ automatically set for the platforms that are known to need it if at
+ least one of the languages supported by the :command:`project` command
+ is enabled.
+ 
++If the :prop_gbl:`FIND_LIBRARY_USE_LIBX32_PATHS` global property is set
++all search paths will be tested as normal, with ``x32/`` appended, and
++with all matches of ``lib/`` replaced with ``libx32/``.  This property is
++automatically set for the platforms that are known to need it if at
++least one of the languages supported by the :command:`project` command
++is enabled.
++
+ If the :prop_gbl:`FIND_LIBRARY_USE_LIB64_PATHS` global property is set
+ all search paths will be tested as normal, with ``64/`` appended, and
+ with all matches of ``lib/`` replaced with ``lib64/``.  This property is
+diff --git a/Help/manual/cmake-properties.7.rst b/Help/manual/cmake-properties.7.rst
+index 5bd6365..2157ba5 100644
+--- a/Help/manual/cmake-properties.7.rst
++++ b/Help/manual/cmake-properties.7.rst
+@@ -26,6 +26,7 @@ Properties of Global Scope
+    /prop_gbl/ENABLED_LANGUAGES
+    /prop_gbl/FIND_LIBRARY_USE_LIB32_PATHS
+    /prop_gbl/FIND_LIBRARY_USE_LIB64_PATHS
++   /prop_gbl/FIND_LIBRARY_USE_LIBX32_PATHS
+    /prop_gbl/FIND_LIBRARY_USE_OPENBSD_VERSIONING
+    /prop_gbl/GLOBAL_DEPENDS_DEBUG_MODE
+    /prop_gbl/GLOBAL_DEPENDS_NO_CYCLES
+diff --git a/Help/prop_gbl/FIND_LIBRARY_USE_LIBX32_PATHS.rst b/Help/prop_gbl/FIND_LIBRARY_USE_LIBX32_PATHS.rst
+new file mode 100644
+index 0000000..b87b09b
+--- /dev/null
++++ b/Help/prop_gbl/FIND_LIBRARY_USE_LIBX32_PATHS.rst
+@@ -0,0 +1,12 @@
++FIND_LIBRARY_USE_LIBX32_PATHS
++-----------------------------
++
++Whether the :command:`find_library` command should automatically search
++``libx32`` directories.
++
++``FIND_LIBRARY_USE_LIBX32_PATHS`` is a boolean specifying whether the
++:command:`find_library` command should automatically search the ``libx32``
++variant of directories called ``lib`` in the search path when building
++x32-abi binaries.
++
++See also the :variable:`CMAKE_FIND_LIBRARY_CUSTOM_LIB_SUFFIX` variable.
+diff --git a/Help/variable/CMAKE_FIND_LIBRARY_CUSTOM_LIB_SUFFIX.rst b/Help/variable/CMAKE_FIND_LIBRARY_CUSTOM_LIB_SUFFIX.rst
+index f7c6524..ada8955 100644
+--- a/Help/variable/CMAKE_FIND_LIBRARY_CUSTOM_LIB_SUFFIX.rst
++++ b/Help/variable/CMAKE_FIND_LIBRARY_CUSTOM_LIB_SUFFIX.rst
+@@ -9,3 +9,4 @@ This overrides the behavior of related global properties:
+ 
+ * :prop_gbl:`FIND_LIBRARY_USE_LIB32_PATHS`
+ * :prop_gbl:`FIND_LIBRARY_USE_LIB64_PATHS`
++* :prop_gbl:`FIND_LIBRARY_USE_LIBX32_PATHS`
+diff --git a/Modules/CMakeCompilerABI.h b/Modules/CMakeCompilerABI.h
+index f2714b4..ad481d6 100644
+--- a/Modules/CMakeCompilerABI.h
++++ b/Modules/CMakeCompilerABI.h
+@@ -25,6 +25,10 @@ const char info_sizeof_dptr[] = {
+ #elif defined(__GNU__) && defined(__ELF__) && defined(__ARMEL__)
+ #define ABI_ID "ELF ARM"
+ 
++#elif defined(__linux__) && defined(__ELF__) && defined(__amd64__) &&         \
++  defined(__ILP32__)
++#define ABI_ID "ELF X32"
++
+ #elif defined(__ELF__)
+ #define ABI_ID "ELF"
+ #endif
+diff --git a/Modules/FindPkgConfig.cmake b/Modules/FindPkgConfig.cmake
+index a69081f..54572f0 100644
+--- a/Modules/FindPkgConfig.cmake
++++ b/Modules/FindPkgConfig.cmake
+@@ -312,6 +312,10 @@ macro(_pkg_check_modules_internal _is_required _is_silent _no_cmake_path _no_cma
+           if(uselib64 AND CMAKE_SIZEOF_VOID_P EQUAL 8)
+             list(APPEND _lib_dirs "lib64/pkgconfig")
+           endif()
++          get_property(uselibx32 GLOBAL PROPERTY FIND_LIBRARY_USE_LIBX32_PATHS)
++          if(uselibx32 AND CMAKE_INTERNAL_PLATFORM_ABI STREQUAL "ELF X32")
++            list(APPEND _lib_dirs "libx32/pkgconfig")
++          endif()
+         endif()
+       endif()
+       list(APPEND _lib_dirs "lib/pkgconfig")
+diff --git a/Modules/Platform/UnixPaths.cmake b/Modules/Platform/UnixPaths.cmake
+index b216d03..c1d2c03 100644
+--- a/Modules/Platform/UnixPaths.cmake
++++ b/Modules/Platform/UnixPaths.cmake
+@@ -86,3 +86,4 @@ list(APPEND CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES
+ # Enable use of lib32 and lib64 search path variants by default.
+ set_property(GLOBAL PROPERTY FIND_LIBRARY_USE_LIB32_PATHS TRUE)
+ set_property(GLOBAL PROPERTY FIND_LIBRARY_USE_LIB64_PATHS TRUE)
++set_property(GLOBAL PROPERTY FIND_LIBRARY_USE_LIBX32_PATHS TRUE)
+diff --git a/Source/cmExportInstallFileGenerator.cxx b/Source/cmExportInstallFileGenerator.cxx
+index 64ea3c8..3b76a87 100644
+--- a/Source/cmExportInstallFileGenerator.cxx
++++ b/Source/cmExportInstallFileGenerator.cxx
+@@ -195,8 +195,10 @@ void cmExportInstallFileGenerator::GenerateImportPrefix(std::ostream& os)
+        << " \"${CMAKE_CURRENT_LIST_FILE}\" PATH)\n";
+     if (cmHasLiteralPrefix(absDestS.c_str(), "/lib/") ||
+         cmHasLiteralPrefix(absDestS.c_str(), "/lib64/") ||
++        cmHasLiteralPrefix(absDestS.c_str(), "/libx32/") ||
+         cmHasLiteralPrefix(absDestS.c_str(), "/usr/lib/") ||
+-        cmHasLiteralPrefix(absDestS.c_str(), "/usr/lib64/")) {
++        cmHasLiteralPrefix(absDestS.c_str(), "/usr/lib64/") ||
++        cmHasLiteralPrefix(absDestS.c_str(), "/usr/libx32/")) {
+       // Handle "/usr move" symlinks created by some Linux distros.
+       /* clang-format off */
+       os <<
+diff --git a/Source/cmFindLibraryCommand.cxx b/Source/cmFindLibraryCommand.cxx
+index 69f9078..e92d672 100644
+--- a/Source/cmFindLibraryCommand.cxx
++++ b/Source/cmFindLibraryCommand.cxx
+@@ -43,7 +43,8 @@ bool cmFindLibraryCommand::InitialPass(std::vector<std::string> const& argsIn,
+     return true;
+   }
+ 
+-  // add custom lib<qual> paths instead of using fixed lib32 or lib64
++  // add custom lib<qual> paths instead of using fixed lib32, lib64 or
++  // libx32
+   if (const char* customLib = this->Makefile->GetDefinition(
+         "CMAKE_FIND_LIBRARY_CUSTOM_LIB_SUFFIX")) {
+     this->AddArchitecturePaths(customLib);
+@@ -60,6 +61,12 @@ bool cmFindLibraryCommand::InitialPass(std::vector<std::string> const& argsIn,
+              "FIND_LIBRARY_USE_LIB64_PATHS")) {
+     this->AddArchitecturePaths("64");
+   }
++  // add special 32 bit paths if this is an x32 compile.
++  else if (this->Makefile->PlatformIsx32() &&
++           this->Makefile->GetState()->GetGlobalPropertyAsBool(
++             "FIND_LIBRARY_USE_LIBX32_PATHS")) {
++    this->AddArchitecturePaths("x32");
++  }
+ 
+   std::string library = this->FindLibrary();
+   if (library != "") {
+diff --git a/Source/cmFindPackageCommand.cxx b/Source/cmFindPackageCommand.cxx
+index 60de74f..4b29837 100644
+--- a/Source/cmFindPackageCommand.cxx
++++ b/Source/cmFindPackageCommand.cxx
+@@ -92,6 +92,7 @@ cmFindPackageCommand::cmFindPackageCommand()
+   this->DebugMode = false;
+   this->UseLib32Paths = false;
+   this->UseLib64Paths = false;
++  this->UseLibx32Paths = false;
+   this->PolicyScope = true;
+   this->VersionMajor = 0;
+   this->VersionMinor = 0;
+@@ -173,6 +174,13 @@ bool cmFindPackageCommand::InitialPass(std::vector<std::string> const& args,
+     this->UseLib64Paths = true;
+   }
+ 
++  // Lookup whether libx32 paths should be used.
++  if (this->Makefile->PlatformIsx32() &&
++      this->Makefile->GetState()->GetGlobalPropertyAsBool(
++        "FIND_LIBRARY_USE_LIBX32_PATHS")) {
++    this->UseLibx32Paths = true;
++  }
++
+   // Check if User Package Registry should be disabled
+   if (this->Makefile->IsOn("CMAKE_FIND_PACKAGE_NO_PACKAGE_REGISTRY")) {
+     this->NoUserRegistry = true;
+@@ -2002,6 +2010,9 @@ bool cmFindPackageCommand::SearchPrefix(std::string const& prefix_in)
+   if (this->UseLib64Paths) {
+     common.push_back("lib64");
+   }
++  if (this->UseLibx32Paths) {
++    common.push_back("libx32");
++  }
+   common.push_back("lib");
+   common.push_back("share");
+ 
+diff --git a/Source/cmFindPackageCommand.h b/Source/cmFindPackageCommand.h
+index d454892..61a8dd6 100644
+--- a/Source/cmFindPackageCommand.h
++++ b/Source/cmFindPackageCommand.h
+@@ -169,6 +169,7 @@ private:
+   bool DebugMode;
+   bool UseLib32Paths;
+   bool UseLib64Paths;
++  bool UseLibx32Paths;
+   bool PolicyScope;
+   std::string LibraryArchitecture;
+   std::vector<std::string> Names;
+diff --git a/Source/cmMakefile.cxx b/Source/cmMakefile.cxx
+index c75d101..da32dd7 100644
+--- a/Source/cmMakefile.cxx
++++ b/Source/cmMakefile.cxx
+@@ -2149,6 +2149,12 @@ bool cmMakefile::IsSet(const std::string& name) const
+ 
+ bool cmMakefile::PlatformIs32Bit() const
+ {
++  if (const char* plat_abi =
++        this->GetDefinition("CMAKE_INTERNAL_PLATFORM_ABI")) {
++    if (strcmp(plat_abi, "ELF X32") == 0) {
++      return false;
++    }
++  }
+   if (const char* sizeof_dptr = this->GetDefinition("CMAKE_SIZEOF_VOID_P")) {
+     return atoi(sizeof_dptr) == 4;
+   }
+@@ -2163,6 +2169,17 @@ bool cmMakefile::PlatformIs64Bit() const
+   return false;
+ }
+ 
++bool cmMakefile::PlatformIsx32() const
++{
++  if (const char* plat_abi =
++        this->GetDefinition("CMAKE_INTERNAL_PLATFORM_ABI")) {
++    if (strcmp(plat_abi, "ELF X32") == 0) {
++      return true;
++    }
++  }
++  return false;
++}
++
+ bool cmMakefile::PlatformIsAppleIos() const
+ {
+   std::string sdkRoot;
+diff --git a/Source/cmMakefile.h b/Source/cmMakefile.h
+index 4d5ce98..4e48c88 100644
+--- a/Source/cmMakefile.h
++++ b/Source/cmMakefile.h
+@@ -436,6 +436,8 @@ public:
+ 
+   /** Return whether the target platform is 64-bit.  */
+   bool PlatformIs64Bit() const;
++  /** Return whether the target platform is x32.  */
++  bool PlatformIsx32() const;
+ 
+   /** Return whether the target platform is Apple iOS.  */
+   bool PlatformIsAppleIos() const;
+-- 
+2.10.2
+
+
+From bed9c73decfcda0366984d990045e588928440ec Mon Sep 17 00:00:00 2001
+From: Steven Newbury <steve@snewbury.org.uk>
+Date: Mon, 27 Feb 2017 21:17:28 +0000
+Subject: [PATCH 2/4] Modules: Add x32-abi support to hard-coded paths
+
+Update hard-coded library paths in bundled CMake Modules for libx32 as
+used with x32-abi.
+---
+ Modules/CPackRPM.cmake         | 2 +-
+ Modules/FindDevIL.cmake        | 6 +++---
+ Modules/FindGLEW.cmake         | 2 +-
+ Modules/FindGTK2.cmake         | 2 ++
+ Modules/FindIce.cmake          | 2 +-
+ Modules/FindKDE3.cmake         | 2 ++
+ Modules/FindOpenAL.cmake       | 2 +-
+ Modules/GetPrerequisites.cmake | 2 +-
+ 8 files changed, 12 insertions(+), 8 deletions(-)
+
+diff --git a/Modules/CPackRPM.cmake b/Modules/CPackRPM.cmake
+index 722ee15..b32feb5 100644
+--- a/Modules/CPackRPM.cmake
++++ b/Modules/CPackRPM.cmake
+@@ -1044,7 +1044,7 @@ function(cpack_rpm_prepare_content_list)
+   endif()
+ 
+   if(NOT DEFINED CPACK_RPM_EXCLUDE_FROM_AUTO_FILELIST)
+-    set(CPACK_RPM_EXCLUDE_FROM_AUTO_FILELIST /etc /etc/init.d /usr /usr/share /usr/share/doc /usr/bin /usr/lib /usr/lib64 /usr/include)
++    set(CPACK_RPM_EXCLUDE_FROM_AUTO_FILELIST /etc /etc/init.d /usr /usr/share /usr/share/doc /usr/bin /usr/lib /usr/lib64 /usr/libx32 /usr/include)
+     if(CPACK_RPM_EXCLUDE_FROM_AUTO_FILELIST_ADDITION)
+       if(CPACK_RPM_PACKAGE_DEBUG)
+         message("CPackRPM:Debug: Adding ${CPACK_RPM_EXCLUDE_FROM_AUTO_FILELIST_ADDITION} to builtin omit list.")
+diff --git a/Modules/FindDevIL.cmake b/Modules/FindDevIL.cmake
+index 45fab82..4b868a2 100644
+--- a/Modules/FindDevIL.cmake
++++ b/Modules/FindDevIL.cmake
+@@ -45,7 +45,7 @@ find_path(IL_INCLUDE_DIR il.h
+ 
+ find_library(IL_LIBRARIES
+   NAMES IL DEVIL
+-  PATH_SUFFIXES lib64 lib lib32
++  PATH_SUFFIXES libx32 lib64 lib lib32
+   DOC "The file that corresponds to the base il library."
+ )
+ 
+@@ -53,7 +53,7 @@ find_library(IL_LIBRARIES
+ 
+ find_library(ILUT_LIBRARIES
+   NAMES ILUT
+-  PATH_SUFFIXES lib64 lib lib32
++  PATH_SUFFIXES libx32 lib64 lib lib32
+   DOC "The file that corresponds to the il (system?) utility library."
+ )
+ 
+@@ -61,7 +61,7 @@ find_library(ILUT_LIBRARIES
+ 
+ find_library(ILU_LIBRARIES
+   NAMES ILU
+-  PATH_SUFFIXES lib64 lib lib32
++  PATH_SUFFIXES libx32 lib64 lib lib32
+   DOC "The file that corresponds to the il utility library."
+ )
+ 
+diff --git a/Modules/FindGLEW.cmake b/Modules/FindGLEW.cmake
+index d8609e6..11e8724 100644
+--- a/Modules/FindGLEW.cmake
++++ b/Modules/FindGLEW.cmake
+@@ -27,7 +27,7 @@
+ find_path(GLEW_INCLUDE_DIR GL/glew.h)
+ 
+ if(NOT GLEW_LIBRARY)
+-  find_library(GLEW_LIBRARY_RELEASE NAMES GLEW glew32 glew glew32s PATH_SUFFIXES lib64)
++  find_library(GLEW_LIBRARY_RELEASE NAMES GLEW glew32 glew glew32s PATH_SUFFIXES lib64 libx32)
+   find_library(GLEW_LIBRARY_DEBUG NAMES GLEWd glew32d glewd PATH_SUFFIXES lib64)
+ 
+   include(${CMAKE_CURRENT_LIST_DIR}/SelectLibraryConfigurations.cmake)
+diff --git a/Modules/FindGTK2.cmake b/Modules/FindGTK2.cmake
+index 20d7924..2eca5f9 100644
+--- a/Modules/FindGTK2.cmake
++++ b/Modules/FindGTK2.cmake
+@@ -292,8 +292,10 @@ function(_GTK2_FIND_INCLUDE_DIR _var _hdr)
+     find_path(GTK2_${_var}_INCLUDE_DIR ${_hdr}
+         PATHS
+             ${_gtk2_arch_dir}
++            /usr/local/libx32
+             /usr/local/lib64
+             /usr/local/lib
++            /usr/libx32
+             /usr/lib64
+             /usr/lib
+             /usr/X11R6/include
+diff --git a/Modules/FindIce.cmake b/Modules/FindIce.cmake
+index a61d4a8..e0286ee 100644
+--- a/Modules/FindIce.cmake
++++ b/Modules/FindIce.cmake
+@@ -198,7 +198,7 @@ function(_Ice_FIND)
+   endif()
+   # Generic 64-bit and 32-bit directories
+   list(APPEND ice_binary_suffixes "bin${_x64}" "bin")
+-  list(APPEND ice_library_suffixes "${_lib64}" "lib${_x64}" "lib")
++  list(APPEND ice_library_suffixes "libx32" "${_lib64}" "lib${_x64}" "lib")
+   list(APPEND ice_include_suffixes "include")
+   list(APPEND ice_slice_suffixes "slice")
+ 
+diff --git a/Modules/FindKDE3.cmake b/Modules/FindKDE3.cmake
+index 62e2a50..03216a5 100644
+--- a/Modules/FindKDE3.cmake
++++ b/Modules/FindKDE3.cmake
+@@ -221,6 +221,8 @@ get_filename_component(KDE3_LIB_DIR ${KDE3_KDECORE_LIBRARY} PATH )
+ if(NOT KDE3_LIBTOOL_DIR)
+    if(KDE3_KDECORE_LIBRARY MATCHES lib64)
+      set(KDE3_LIBTOOL_DIR /lib64/kde3)
++   elseif(KDE3_KDECORE_LIBRARY MATCHES libx32)
++     set(KDE3_LIBTOOL_DIR /libx32/kde3)
+    else()
+      set(KDE3_LIBTOOL_DIR /lib/kde3)
+    endif()
+diff --git a/Modules/FindOpenAL.cmake b/Modules/FindOpenAL.cmake
+index 8622b4c..c3d202e 100644
+--- a/Modules/FindOpenAL.cmake
++++ b/Modules/FindOpenAL.cmake
+@@ -79,7 +79,7 @@ find_library(OPENAL_LIBRARY
+   NAMES OpenAL al openal OpenAL32
+   HINTS
+     ENV OPENALDIR
+-  PATH_SUFFIXES lib64 lib libs64 libs ${_OpenAL_ARCH_DIR}
++  PATH_SUFFIXES libx32 lib64 lib libs64 libs ${_OpenAL_ARCH_DIR}
+   PATHS
+   ~/Library/Frameworks
+   /Library/Frameworks
+diff --git a/Modules/GetPrerequisites.cmake b/Modules/GetPrerequisites.cmake
+index 417af7c..a3b97ab 100644
+--- a/Modules/GetPrerequisites.cmake
++++ b/Modules/GetPrerequisites.cmake
+@@ -521,7 +521,7 @@ function(gp_resolved_file_type original_file file exepath dirs type_var)
+     string(TOLOWER "${resolved_file}" lower)
+ 
+     if(UNIX)
+-      if(resolved_file MATCHES "^(/lib/|/lib32/|/lib64/|/usr/lib/|/usr/lib32/|/usr/lib64/|/usr/X11R6/|/usr/bin/)")
++      if(resolved_file MATCHES "^(/lib/|/lib32/|/libx32/|/lib64/|/usr/lib/|/usr/lib32/|/usr/libx32/|/usr/lib64/|/usr/X11R6/|/usr/bin/)")
+         set(is_system 1)
+       endif()
+     endif()
+-- 
+2.10.2
+
+
+From 5b6d354f70e1faddb006a7c98479f5d655a07b87 Mon Sep 17 00:00:00 2001
+From: Brad King <brad.king@kitware.com>
+Date: Mon, 6 Mar 2017 11:15:00 -0500
+Subject: [PATCH 3/4] Help: Add notes for topic 'x32-abi'
+
+---
+ Help/release/dev/x32-abi.rst | 6 ++++++
+ 1 file changed, 6 insertions(+)
+ create mode 100644 Help/release/dev/x32-abi.rst
+
+diff --git a/Help/release/dev/x32-abi.rst b/Help/release/dev/x32-abi.rst
+new file mode 100644
+index 0000000..7571fac
+--- /dev/null
++++ b/Help/release/dev/x32-abi.rst
+@@ -0,0 +1,6 @@
++x32-abi
++-------
++
++* The :command:`find_library` command learned to search ``libx32`` paths
++  when the build targets the ``x32`` ABI.  See the
++  :prop_gbl:`FIND_LIBRARY_USE_LIBX32_PATHS` global property.
+-- 
+2.10.2
+
+
+From d9bdcf34efa79dcdea4ded8e90b80a55db69fbf6 Mon Sep 17 00:00:00 2001
+From: Steven Newbury <steve@snewbury.org.uk>
+Date: Wed, 8 Mar 2017 17:13:29 +0000
+Subject: [PATCH 4/4] Tests: Add x32 tests to test suite
+
+---
+ Tests/CMakeOnly/find_library/CMakeLists.txt              | 16 ++++++++++++++++
+ Tests/CMakeOnly/find_library/lib/A/libx32/libtest3.a     |  0
+ Tests/CMakeOnly/find_library/lib/x32/libtest2.a          |  0
+ Tests/CMakeOnly/find_library/libx32/A/lib/libtest2.a     |  0
+ Tests/CMakeOnly/find_library/libx32/A/libtest1.a         |  0
+ Tests/CMakeOnly/find_library/libx32/A/libx32/libtest1.a  |  0
+ Tests/CMakeOnly/find_library/libx32/libtest1.a           |  0
+ .../FindPkgConfig_CMAKE_APPBUNDLE_PATH.cmake             |  5 ++++-
+ .../FindPkgConfig_CMAKE_FRAMEWORK_PATH.cmake             |  5 ++++-
+ .../FindPkgConfig/FindPkgConfig_PKGCONFIG_PATH.cmake     |  5 ++++-
+ ...Config_PKGCONFIG_PATH_NO_CMAKE_ENVIRONMENT_PATH.cmake |  5 ++++-
+ .../FindPkgConfig_PKGCONFIG_PATH_NO_CMAKE_PATH.cmake     |  5 ++++-
+ .../FindPkgConfig/pc-bar/libx32/pkgconfig/.placeholder   |  0
+ .../FindPkgConfig/pc-foo/libx32/pkgconfig/.placeholder   |  0
+ 14 files changed, 36 insertions(+), 5 deletions(-)
+ create mode 100644 Tests/CMakeOnly/find_library/lib/A/libx32/libtest3.a
+ create mode 100644 Tests/CMakeOnly/find_library/lib/x32/libtest2.a
+ create mode 100644 Tests/CMakeOnly/find_library/libx32/A/lib/libtest2.a
+ create mode 100644 Tests/CMakeOnly/find_library/libx32/A/libtest1.a
+ create mode 100644 Tests/CMakeOnly/find_library/libx32/A/libx32/libtest1.a
+ create mode 100644 Tests/CMakeOnly/find_library/libx32/libtest1.a
+ create mode 100644 Tests/RunCMake/FindPkgConfig/pc-bar/libx32/pkgconfig/.placeholder
+ create mode 100644 Tests/RunCMake/FindPkgConfig/pc-foo/libx32/pkgconfig/.placeholder
+
+diff --git a/Tests/CMakeOnly/find_library/CMakeLists.txt b/Tests/CMakeOnly/find_library/CMakeLists.txt
+index 9c1aad8..749cf42 100644
+--- a/Tests/CMakeOnly/find_library/CMakeLists.txt
++++ b/Tests/CMakeOnly/find_library/CMakeLists.txt
+@@ -33,9 +33,11 @@ endmacro()
+ 
+ set(CMAKE_FIND_LIBRARY_PREFIXES "lib")
+ set(CMAKE_FIND_LIBRARY_SUFFIXES ".a")
++set_property(GLOBAL PROPERTY FIND_LIBRARY_USE_LIBX32_PATHS TRUE)
+ set_property(GLOBAL PROPERTY FIND_LIBRARY_USE_LIB32_PATHS TRUE)
+ set_property(GLOBAL PROPERTY FIND_LIBRARY_USE_LIB64_PATHS TRUE)
+ 
++set(CMAKE_INTERNAL_PLATFORM_ABI "ELF")
+ set(CMAKE_SIZEOF_VOID_P 4)
+ foreach(lib
+     lib/32/libtest5.a
+@@ -67,6 +69,20 @@ foreach(lib64
+   test_find_library_subst(${lib64})
+ endforeach()
+ 
++set(CMAKE_INTERNAL_PLATFORM_ABI "ELF X32")
++set(CMAKE_SIZEOF_VOID_P 4)
++foreach(libx32
++    lib/x32/libtest2.a
++    lib/A/libx32/libtest3.a
++    lib/libtest3.a
++    libx32/A/lib/libtest2.a
++    libx32/A/libx32/libtest1.a
++    libx32/A/libtest1.a
++    libx32/libtest1.a
++    )
++  test_find_library_subst(${libx32})
++endforeach()
++
+ test_find_library("" A/libtestA.a
+   NAMES testA testB
+   PATHS ${CMAKE_CURRENT_SOURCE_DIR}/A ${CMAKE_CURRENT_SOURCE_DIR}/B
+diff --git a/Tests/CMakeOnly/find_library/lib/A/libx32/libtest3.a b/Tests/CMakeOnly/find_library/lib/A/libx32/libtest3.a
+new file mode 100644
+index 0000000..e69de29
+diff --git a/Tests/CMakeOnly/find_library/lib/x32/libtest2.a b/Tests/CMakeOnly/find_library/lib/x32/libtest2.a
+new file mode 100644
+index 0000000..e69de29
+diff --git a/Tests/CMakeOnly/find_library/libx32/A/lib/libtest2.a b/Tests/CMakeOnly/find_library/libx32/A/lib/libtest2.a
+new file mode 100644
+index 0000000..e69de29
+diff --git a/Tests/CMakeOnly/find_library/libx32/A/libtest1.a b/Tests/CMakeOnly/find_library/libx32/A/libtest1.a
+new file mode 100644
+index 0000000..e69de29
+diff --git a/Tests/CMakeOnly/find_library/libx32/A/libx32/libtest1.a b/Tests/CMakeOnly/find_library/libx32/A/libx32/libtest1.a
+new file mode 100644
+index 0000000..e69de29
+diff --git a/Tests/CMakeOnly/find_library/libx32/libtest1.a b/Tests/CMakeOnly/find_library/libx32/libtest1.a
+new file mode 100644
+index 0000000..e69de29
+diff --git a/Tests/RunCMake/FindPkgConfig/FindPkgConfig_CMAKE_APPBUNDLE_PATH.cmake b/Tests/RunCMake/FindPkgConfig/FindPkgConfig_CMAKE_APPBUNDLE_PATH.cmake
+index 4a41533..2687efe 100644
+--- a/Tests/RunCMake/FindPkgConfig/FindPkgConfig_CMAKE_APPBUNDLE_PATH.cmake
++++ b/Tests/RunCMake/FindPkgConfig/FindPkgConfig_CMAKE_APPBUNDLE_PATH.cmake
+@@ -30,9 +30,12 @@ if(NOT DEFINED CMAKE_SYSTEM_NAME
+     endif()
+   else()
+     # not debian, check the FIND_LIBRARY_USE_LIB32_PATHS and FIND_LIBRARY_USE_LIB64_PATHS properties
++    get_property(uselibx32 GLOBAL PROPERTY FIND_LIBRARY_USE_LIBX32_PATHS)
+     get_property(uselib32 GLOBAL PROPERTY FIND_LIBRARY_USE_LIB32_PATHS)
+     get_property(uselib64 GLOBAL PROPERTY FIND_LIBRARY_USE_LIB64_PATHS)
+-    if(uselib32 AND CMAKE_SIZEOF_VOID_P EQUAL 4)
++    if(uselibx32 AND CMAKE_INTERNAL_PLATFORM_ABI STREQUAL "ELF X32")
++      set(expected_path "/baz:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/libx32/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/lib/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/libx32/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/lib/pkgconfig")
++    elseif(uselib32 AND CMAKE_SIZEOF_VOID_P EQUAL 4)
+       set(expected_path "/baz:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/lib32/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/lib/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/lib32/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/lib/pkgconfig")
+     elseif(uselib64 AND CMAKE_SIZEOF_VOID_P EQUAL 8)
+       set(expected_path "/baz:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/lib64/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/lib/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/lib64/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/lib/pkgconfig")
+diff --git a/Tests/RunCMake/FindPkgConfig/FindPkgConfig_CMAKE_FRAMEWORK_PATH.cmake b/Tests/RunCMake/FindPkgConfig/FindPkgConfig_CMAKE_FRAMEWORK_PATH.cmake
+index b66d02f..74cda25 100644
+--- a/Tests/RunCMake/FindPkgConfig/FindPkgConfig_CMAKE_FRAMEWORK_PATH.cmake
++++ b/Tests/RunCMake/FindPkgConfig/FindPkgConfig_CMAKE_FRAMEWORK_PATH.cmake
+@@ -30,9 +30,12 @@ if(NOT DEFINED CMAKE_SYSTEM_NAME
+     endif()
+   else()
+     # not debian, check the FIND_LIBRARY_USE_LIB64_PATHS and FIND_LIBRARY_USE_LIB64_PATHS properties
++    get_property(uselibx32 GLOBAL PROPERTY FIND_LIBRARY_USE_LIBX32_PATHS)
+     get_property(uselib32 GLOBAL PROPERTY FIND_LIBRARY_USE_LIB32_PATHS)
+     get_property(uselib64 GLOBAL PROPERTY FIND_LIBRARY_USE_LIB64_PATHS)
+-    if(uselib32 AND CMAKE_SIZEOF_VOID_P EQUAL 4)
++    if(uselibx32 AND CMAKE_INTERNAL_PLATFORM_ABI STREQUAL "ELF X32")
++      set(expected_path "/baz:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/libx32/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/lib/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/libx32/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/lib/pkgconfig")
++    elseif(uselib32 AND CMAKE_SIZEOF_VOID_P EQUAL 4)
+       set(expected_path "/baz:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/lib32/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/lib/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/lib32/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/lib/pkgconfig")
+     elseif(uselib64 AND CMAKE_SIZEOF_VOID_P EQUAL 8)
+       set(expected_path "/baz:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/lib64/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/lib/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/lib64/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/lib/pkgconfig")
+diff --git a/Tests/RunCMake/FindPkgConfig/FindPkgConfig_PKGCONFIG_PATH.cmake b/Tests/RunCMake/FindPkgConfig/FindPkgConfig_PKGCONFIG_PATH.cmake
+index bdecb8a..1defde8 100644
+--- a/Tests/RunCMake/FindPkgConfig/FindPkgConfig_PKGCONFIG_PATH.cmake
++++ b/Tests/RunCMake/FindPkgConfig/FindPkgConfig_PKGCONFIG_PATH.cmake
+@@ -30,9 +30,12 @@ if(NOT DEFINED CMAKE_SYSTEM_NAME
+     endif()
+   else()
+     # not debian, check the FIND_LIBRARY_USE_LIB32_PATHS and FIND_LIBRARY_USE_LIB64_PATHS propertie
++    get_property(uselibx32 GLOBAL PROPERTY FIND_LIBRARY_USE_LIBX32_PATHS)
+     get_property(uselib32 GLOBAL PROPERTY FIND_LIBRARY_USE_LIB32_PATHS)
+     get_property(uselib64 GLOBAL PROPERTY FIND_LIBRARY_USE_LIB64_PATHS)
+-    if(uselib32 AND CMAKE_SIZEOF_VOID_P EQUAL 4)
++    if(uselibx32 AND CMAKE_INTERNAL_PLATFORM_ABI STREQUAL "ELF X32")
++      set(expected_path "/baz:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/libx32/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/lib/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/libx32/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/lib/pkgconfig")
++    elseif(uselib32 AND CMAKE_SIZEOF_VOID_P EQUAL 4)
+       set(expected_path "/baz:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/lib32/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/lib/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/lib32/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/lib/pkgconfig")
+     elseif(uselib64 AND CMAKE_SIZEOF_VOID_P EQUAL 8)
+       set(expected_path "/baz:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/lib64/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/lib/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/lib64/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/lib/pkgconfig")
+diff --git a/Tests/RunCMake/FindPkgConfig/FindPkgConfig_PKGCONFIG_PATH_NO_CMAKE_ENVIRONMENT_PATH.cmake b/Tests/RunCMake/FindPkgConfig/FindPkgConfig_PKGCONFIG_PATH_NO_CMAKE_ENVIRONMENT_PATH.cmake
+index df67235..166a617 100644
+--- a/Tests/RunCMake/FindPkgConfig/FindPkgConfig_PKGCONFIG_PATH_NO_CMAKE_ENVIRONMENT_PATH.cmake
++++ b/Tests/RunCMake/FindPkgConfig/FindPkgConfig_PKGCONFIG_PATH_NO_CMAKE_ENVIRONMENT_PATH.cmake
+@@ -30,9 +30,12 @@ if(NOT DEFINED CMAKE_SYSTEM_NAME
+     endif()
+   else()
+     # not debian, check the FIND_LIBRARY_USE_LIB32_PATHS and FIND_LIBRARY_USE_LIB64_PATHS properties
++    get_property(uselibx32 GLOBAL PROPERTY FIND_LIBRARY_USE_LIBX32_PATHS)
+     get_property(uselib32 GLOBAL PROPERTY FIND_LIBRARY_USE_LIB32_PATHS)
+     get_property(uselib64 GLOBAL PROPERTY FIND_LIBRARY_USE_LIB64_PATHS)
+-    if(uselib32 AND CMAKE_SIZEOF_VOID_P EQUAL 4)
++    if(uselibx32 AND CMAKE_INTERNAL_PLATFORM_ABI STREQUAL "ELF X32")
++      set(expected_path "/baz:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/libx32/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/lib/pkgconfig")
++    elseif(uselib32 AND CMAKE_SIZEOF_VOID_P EQUAL 4)
+       set(expected_path "/baz:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/lib32/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/lib/pkgconfig")
+     elseif(uselib64 AND CMAKE_SIZEOF_VOID_P EQUAL 8)
+       set(expected_path "/baz:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/lib64/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/lib/pkgconfig")
+diff --git a/Tests/RunCMake/FindPkgConfig/FindPkgConfig_PKGCONFIG_PATH_NO_CMAKE_PATH.cmake b/Tests/RunCMake/FindPkgConfig/FindPkgConfig_PKGCONFIG_PATH_NO_CMAKE_PATH.cmake
+index 1351b6f..e4673b3 100644
+--- a/Tests/RunCMake/FindPkgConfig/FindPkgConfig_PKGCONFIG_PATH_NO_CMAKE_PATH.cmake
++++ b/Tests/RunCMake/FindPkgConfig/FindPkgConfig_PKGCONFIG_PATH_NO_CMAKE_PATH.cmake
+@@ -30,9 +30,12 @@ if(NOT DEFINED CMAKE_SYSTEM_NAME
+     endif()
+   else()
+     # not debian, check the FIND_LIBRARY_USE_LIB64_PATHS and FIND_LIBRARY_USE_LIB32_PATHS properties
++    get_property(uselibx32 GLOBAL PROPERTY FIND_LIBRARY_USE_LIBX32_PATHS)
+     get_property(uselib32 GLOBAL PROPERTY FIND_LIBRARY_USE_LIB32_PATHS)
+     get_property(uselib64 GLOBAL PROPERTY FIND_LIBRARY_USE_LIB64_PATHS)
+-    if(uselib32 AND CMAKE_SIZEOF_VOID_P EQUAL 4)
++    if(uselibx32 AND CMAKE_INTERNAL_PLATFORM_ABI STREQUAL "ELF X32")
++      set(expected_path "/baz:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/libx32/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/lib/pkgconfig")
++    elseif(uselib32 AND CMAKE_SIZEOF_VOID_P EQUAL 4)
+       set(expected_path "/baz:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/lib32/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/lib/pkgconfig")
+     elseif(uselib64 AND CMAKE_SIZEOF_VOID_P EQUAL 8)
+       set(expected_path "/baz:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/lib64/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/lib/pkgconfig")
+diff --git a/Tests/RunCMake/FindPkgConfig/pc-bar/libx32/pkgconfig/.placeholder b/Tests/RunCMake/FindPkgConfig/pc-bar/libx32/pkgconfig/.placeholder
+new file mode 100644
+index 0000000..e69de29
+diff --git a/Tests/RunCMake/FindPkgConfig/pc-foo/libx32/pkgconfig/.placeholder b/Tests/RunCMake/FindPkgConfig/pc-foo/libx32/pkgconfig/.placeholder
+new file mode 100644
+index 0000000..e69de29
+-- 
+2.10.2
+


^ permalink raw reply related	[flat|nested] 23+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/cmake/files/, dev-util/cmake/
@ 2017-03-14  7:30 Michael Palimaka
  0 siblings, 0 replies; 23+ messages in thread
From: Michael Palimaka @ 2017-03-14  7:30 UTC (permalink / raw
  To: gentoo-commits

commit:     3ab2bb98c345907a62d7efeb01b904ba220992c2
Author:     Michael Palimaka <kensington <AT> gentoo <DOT> org>
AuthorDate: Tue Mar 14 07:29:53 2017 +0000
Commit:     Michael Palimaka <kensington <AT> gentoo <DOT> org>
CommitDate: Tue Mar 14 07:30:02 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3ab2bb98

dev-util/cmake: move large patch to devspace

Package-Manager: Portage-2.3.4, Repoman-2.3.2

 dev-util/cmake/Manifest                    |   1 +
 dev-util/cmake/cmake-3.7.2-r10.ebuild      |   5 +-
 dev-util/cmake/files/cmake-3.7.2-x32.patch | 843 -----------------------------
 3 files changed, 4 insertions(+), 845 deletions(-)

diff --git a/dev-util/cmake/Manifest b/dev-util/cmake/Manifest
index d1a1ada4ad0..04af972112a 100644
--- a/dev-util/cmake/Manifest
+++ b/dev-util/cmake/Manifest
@@ -1,3 +1,4 @@
 DIST cmake-3.6.3.tar.gz 6919949 SHA256 7d73ee4fae572eb2d7cd3feb48971aea903bb30a20ea5ae8b4da826d8ccad5fe SHA512 bfcb51bc01f64a6ae5fb9401c037a529e4b2c0216eef68cf862a7495560dfc80589b34af94450baf4561d217dfb8075b14fbf63e3a668943a65e36ea61c5df48 WHIRLPOOL ecf79bb1a4b18df07d15ed5cdeb513420a0b8d46f90154dbdf9a78d3294e202ade040e832f3479fca0889c4af3b3b50e0d9391120191bae390927888e6487b4a
+DIST cmake-3.7.2-x32.patch.xz 7204 SHA256 d04cc6dc7ffbb8e16426e85f50e3f3c3037fb42a0e746d0604a412a00d31444e SHA512 36140132ecbe05d07b167e2895c2909ed545371af0962cb8246beb61a400fad14f56394c90cc2319e4581d5e97116069bebe466b87451a9a83f04095ce9b0510 WHIRLPOOL 07f49188fc6d7f6eb005f8e82526c33401b7ee8ff7839c4620280774650f9be9af9aafefb6a1f9ff2648316123aa1232b53924ef9dda3ce2268f01560d53606a
 DIST cmake-3.7.2.tar.gz 7361593 SHA256 dc1246c4e6d168ea4d6e042cfba577c1acd65feea27e56f5ff37df920c30cae0 SHA512 b2ed0192e12267de19eb178c2dedc69d06fc33dfadd47efbe0ccf6969ad72d290fa4bff02861c379a8752337d67d2485d7e1ba947cb219f2e4041a53a195e88d WHIRLPOOL 1861fe2887f4483856e1964ff1492e196624d3072ad1e21910fba29d0c0d654e7d5035571648386a77cd6cbe895f8cdfbb1f4cc1ad60d14015a01a22494456f7
 DIST cmake-3.8.0-rc2.tar.gz 7504498 SHA256 f6302ec906eeddd9d5bc1bb4cfc06ffeb49fe9f6cf7d25d64a3acfa05a577b9a SHA512 4ca4ea7f941e3fa9c80614e9873044425b9b5970e94885deace6750d3e0eb19c4e6b82c6d82e3c666971e523311584814e95d0787c978238b17b3d8138aaa3ee WHIRLPOOL d9446a1162477b5a575671c682af28069208dd6c516aaa1ef7daf62cb72862a8ec6012c0b40b72eebcbd1b9d3664ea830d63dfd585e2a4391cd703d3cb9c3e88

diff --git a/dev-util/cmake/cmake-3.7.2-r10.ebuild b/dev-util/cmake/cmake-3.7.2-r10.ebuild
index dd1df55049b..d706bdb8a29 100644
--- a/dev-util/cmake/cmake-3.7.2-r10.ebuild
+++ b/dev-util/cmake/cmake-3.7.2-r10.ebuild
@@ -10,7 +10,8 @@ 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"
+SRC_URI="http://www.cmake.org/files/v$(get_version_component_range 1-2)/${MY_P}.tar.gz
+https://dev.gentoo.org/~kensington/distfiles/${PN}-3.7.2-x32.patch.xz"
 
 LICENSE="CMake"
 SLOT="0"
@@ -62,7 +63,7 @@ PATCHES=(
 	# upstream fixes (can usually be removed with a version bump)
 
 	# testing 3.9 backports - bug #426936
-	"${FILESDIR}"/${PN}-3.7.2-x32.patch
+	"${WORKDIR}"/${PN}-3.7.2-x32.patch
 )
 
 cmake_src_bootstrap() {

diff --git a/dev-util/cmake/files/cmake-3.7.2-x32.patch b/dev-util/cmake/files/cmake-3.7.2-x32.patch
deleted file mode 100644
index 0164a39d0ef..00000000000
--- a/dev-util/cmake/files/cmake-3.7.2-x32.patch
+++ /dev/null
@@ -1,843 +0,0 @@
-Backports from 3.9
-
-Gentoo-bug: 426936
-
-From 503f25d490e56dfc1d3dc894e1fc1bd3e7e89e81 Mon Sep 17 00:00:00 2001
-From: Christian Schmidbauer <ch.schmidbauer@gmail.com>
-Date: Sat, 25 Feb 2017 19:47:49 +0100
-Subject: [PATCH] find_library: Allow custom lib suffix be used as find path
-
-Add a new `CMAKE_FIND_LIBRARY_CUSTOM_LIB_SUFFIX` variable to allow use
-of a custom suffix on `lib` directory names.  This is a more general
-option than that added by commit v3.7.0-rc1~504^2 (Teach find_library
-and find_package to search lib32 paths, 2016-06-10).  It allows the find
-path to be more deterministic on custom setups.
-
-See discussion in #10287 and #15994.
----
- Help/command/find_library.rst                      |  7 ++++++
- Help/manual/cmake-variables.7.rst                  |  1 +
- Help/prop_gbl/FIND_LIBRARY_USE_LIB32_PATHS.rst     |  2 ++
- Help/prop_gbl/FIND_LIBRARY_USE_LIB64_PATHS.rst     |  2 ++
- .../release/dev/find_library-custom-lib-suffix.rst |  6 +++++
- .../CMAKE_FIND_LIBRARY_CUSTOM_LIB_SUFFIX.rst       | 11 +++++++++
- Source/cmFindLibraryCommand.cxx                    | 28 ++++++++++++----------
- Tests/CMakeOnly/find_library/CMakeLists.txt        | 15 +++++++++++-
- .../CMakeOnly/find_library/lib/A/libXYZ/libtest2.a |  0
- Tests/CMakeOnly/find_library/lib/XYZ/libtest1.a    |  0
- .../CMakeOnly/find_library/libXYZ/A/lib/libtest4.a |  0
- .../find_library/libXYZ/A/libXYZ/libtest5.a        |  0
- Tests/CMakeOnly/find_library/libXYZ/A/libtest6.a   |  0
- Tests/CMakeOnly/find_library/libXYZ/libtest7.a     |  0
- 14 files changed, 58 insertions(+), 14 deletions(-)
- create mode 100644 Help/release/dev/find_library-custom-lib-suffix.rst
- create mode 100644 Help/variable/CMAKE_FIND_LIBRARY_CUSTOM_LIB_SUFFIX.rst
- create mode 100644 Tests/CMakeOnly/find_library/lib/A/libXYZ/libtest2.a
- create mode 100644 Tests/CMakeOnly/find_library/lib/XYZ/libtest1.a
- create mode 100644 Tests/CMakeOnly/find_library/libXYZ/A/lib/libtest4.a
- create mode 100644 Tests/CMakeOnly/find_library/libXYZ/A/libXYZ/libtest5.a
- create mode 100644 Tests/CMakeOnly/find_library/libXYZ/A/libtest6.a
- create mode 100644 Tests/CMakeOnly/find_library/libXYZ/libtest7.a
-
-diff --git a/Help/command/find_library.rst b/Help/command/find_library.rst
-index 1eb50f7..e912040 100644
---- a/Help/command/find_library.rst
-+++ b/Help/command/find_library.rst
-@@ -49,6 +49,13 @@ path to the framework ``<fullPath>/A.framework``.  When a full path to a
- framework is used as a library, CMake will use a ``-framework A``, and a
- ``-F<fullPath>`` to link the framework to the target.
- 
-+If the :variable:`CMAKE_FIND_LIBRARY_CUSTOM_LIB_SUFFIX` variable is set all
-+search paths will be tested as normal, with the suffix appended, and with
-+all matches of ``lib/`` replaced with
-+``lib${CMAKE_FIND_LIBRARY_CUSTOM_LIB_SUFFIX}/``.  This variable overrides
-+the :prop_gbl:`FIND_LIBRARY_USE_LIB32_PATHS`
-+and :prop_gbl:`FIND_LIBRARY_USE_LIB64_PATHS` global properties.
-+
- If the :prop_gbl:`FIND_LIBRARY_USE_LIB32_PATHS` global property is set
- all search paths will be tested as normal, with ``32/`` appended, and
- with all matches of ``lib/`` replaced with ``lib32/``.  This property is
-diff --git a/Help/manual/cmake-variables.7.rst b/Help/manual/cmake-variables.7.rst
-index 259d87b..a25efe7 100644
---- a/Help/manual/cmake-variables.7.rst
-+++ b/Help/manual/cmake-variables.7.rst
-@@ -130,6 +130,7 @@ Variables that Change Behavior
-    /variable/CMAKE_SYSROOT
-    /variable/CMAKE_FIND_APPBUNDLE
-    /variable/CMAKE_FIND_FRAMEWORK
-+   /variable/CMAKE_FIND_LIBRARY_CUSTOM_LIB_SUFFIX
-    /variable/CMAKE_FIND_LIBRARY_PREFIXES
-    /variable/CMAKE_FIND_LIBRARY_SUFFIXES
-    /variable/CMAKE_FIND_NO_INSTALL_PREFIX
-diff --git a/Help/prop_gbl/FIND_LIBRARY_USE_LIB32_PATHS.rst b/Help/prop_gbl/FIND_LIBRARY_USE_LIB32_PATHS.rst
-index ce18b65..8396026 100644
---- a/Help/prop_gbl/FIND_LIBRARY_USE_LIB32_PATHS.rst
-+++ b/Help/prop_gbl/FIND_LIBRARY_USE_LIB32_PATHS.rst
-@@ -8,3 +8,5 @@ Whether the :command:`find_library` command should automatically search
- :command:`find_library` command should automatically search the ``lib32``
- variant of directories called ``lib`` in the search path when building 32-bit
- binaries.
-+
-+See also the :variable:`CMAKE_FIND_LIBRARY_CUSTOM_LIB_SUFFIX` variable.
-diff --git a/Help/prop_gbl/FIND_LIBRARY_USE_LIB64_PATHS.rst b/Help/prop_gbl/FIND_LIBRARY_USE_LIB64_PATHS.rst
-index e52f8eb..ed343ba 100644
---- a/Help/prop_gbl/FIND_LIBRARY_USE_LIB64_PATHS.rst
-+++ b/Help/prop_gbl/FIND_LIBRARY_USE_LIB64_PATHS.rst
-@@ -8,3 +8,5 @@ FIND_LIBRARY_USE_LIB64_PATHS is a boolean specifying whether the
- :command:`find_library` command should automatically search the lib64
- variant of directories called lib in the search path when building
- 64-bit binaries.
-+
-+See also the :variable:`CMAKE_FIND_LIBRARY_CUSTOM_LIB_SUFFIX` variable.
-diff --git a/Help/release/dev/find_library-custom-lib-suffix.rst b/Help/release/dev/find_library-custom-lib-suffix.rst
-new file mode 100644
-index 0000000..824b27e
---- /dev/null
-+++ b/Help/release/dev/find_library-custom-lib-suffix.rst
-@@ -0,0 +1,6 @@
-+find_library-custom-lib-suffix
-+------------------------------
-+
-+* A :variable:`CMAKE_FIND_LIBRARY_CUSTOM_LIB_SUFFIX` variable was added to
-+  tell the :command:`find_library` command to search in a ``lib<suffix>``
-+  directory before each ``lib`` directory that would normally be searched.
-diff --git a/Help/variable/CMAKE_FIND_LIBRARY_CUSTOM_LIB_SUFFIX.rst b/Help/variable/CMAKE_FIND_LIBRARY_CUSTOM_LIB_SUFFIX.rst
-new file mode 100644
-index 0000000..f7c6524
---- /dev/null
-+++ b/Help/variable/CMAKE_FIND_LIBRARY_CUSTOM_LIB_SUFFIX.rst
-@@ -0,0 +1,11 @@
-+CMAKE_FIND_LIBRARY_CUSTOM_LIB_SUFFIX
-+------------------------------------
-+
-+Specify a ``<suffix>`` to tell the :command:`find_library` command to
-+search in a ``lib<suffix>`` directory before each ``lib`` directory that
-+would normally be searched.
-+
-+This overrides the behavior of related global properties:
-+
-+* :prop_gbl:`FIND_LIBRARY_USE_LIB32_PATHS`
-+* :prop_gbl:`FIND_LIBRARY_USE_LIB64_PATHS`
-diff --git a/Source/cmFindLibraryCommand.cxx b/Source/cmFindLibraryCommand.cxx
-index 2feedf3..c506d66 100644
---- a/Source/cmFindLibraryCommand.cxx
-+++ b/Source/cmFindLibraryCommand.cxx
-@@ -43,20 +43,22 @@ bool cmFindLibraryCommand::InitialPass(std::vector<std::string> const& argsIn,
-     return true;
-   }
- 
--  if (this->Makefile->GetState()->GetGlobalPropertyAsBool(
--        "FIND_LIBRARY_USE_LIB32_PATHS")) {
--    // add special 32 bit paths if this is a 32 bit compile.
--    if (this->Makefile->PlatformIs32Bit()) {
--      this->AddArchitecturePaths("32");
--    }
-+  // add custom lib<qual> paths instead of using fixed lib32 or lib64
-+  if (const char* customLib = this->Makefile->GetDefinition(
-+        "CMAKE_FIND_LIBRARY_CUSTOM_LIB_SUFFIX")) {
-+    this->AddArchitecturePaths(customLib);
-   }
--
--  if (this->Makefile->GetState()->GetGlobalPropertyAsBool(
--        "FIND_LIBRARY_USE_LIB64_PATHS")) {
--    // add special 64 bit paths if this is a 64 bit compile.
--    if (this->Makefile->PlatformIs64Bit()) {
--      this->AddArchitecturePaths("64");
--    }
-+  // add special 32 bit paths if this is a 32 bit compile.
-+  else if (this->Makefile->PlatformIs32Bit() &&
-+           this->Makefile->GetState()->GetGlobalPropertyAsBool(
-+             "FIND_LIBRARY_USE_LIB32_PATHS")) {
-+    this->AddArchitecturePaths("32");
-+  }
-+  // add special 64 bit paths if this is a 64 bit compile.
-+  else if (this->Makefile->PlatformIs64Bit() &&
-+           this->Makefile->GetState()->GetGlobalPropertyAsBool(
-+             "FIND_LIBRARY_USE_LIB64_PATHS")) {
-+    this->AddArchitecturePaths("64");
-   }
- 
-   std::string library = this->FindLibrary();
-diff --git a/Tests/CMakeOnly/find_library/CMakeLists.txt b/Tests/CMakeOnly/find_library/CMakeLists.txt
-index 9958650..9c1aad8 100644
---- a/Tests/CMakeOnly/find_library/CMakeLists.txt
-+++ b/Tests/CMakeOnly/find_library/CMakeLists.txt
-@@ -24,7 +24,7 @@ endmacro()
- macro(test_find_library_subst expected)
-   get_filename_component(dir ${expected} PATH)
-   get_filename_component(name ${expected} NAME)
--  string(REGEX REPLACE "lib/?64" "lib" dir "${dir}")
-+  string(REGEX REPLACE "lib/?[36X][24Y][Z]*" "lib" dir "${dir}")
-   test_find_library(", searched as ${dir}" "${expected}"
-     NAMES ${name}
-     PATHS ${CMAKE_CURRENT_SOURCE_DIR}/${dir}
-@@ -79,3 +79,16 @@ test_find_library("" A/libtestA.a
-   NAMES testB testA NAMES_PER_DIR
-   PATHS ${CMAKE_CURRENT_SOURCE_DIR}/A ${CMAKE_CURRENT_SOURCE_DIR}/B
-   )
-+
-+set(CMAKE_FIND_LIBRARY_CUSTOM_LIB_SUFFIX "XYZ")
-+foreach(libXYZ
-+    lib/XYZ/libtest1.a
-+    lib/A/libXYZ/libtest2.a
-+    lib/libtest3.a
-+    libXYZ/A/lib/libtest4.a
-+    libXYZ/A/libXYZ/libtest5.a
-+    libXYZ/A/libtest6.a
-+    libXYZ/libtest7.a
-+    )
-+  test_find_library_subst(${libXYZ})
-+endforeach()
-diff --git a/Tests/CMakeOnly/find_library/lib/A/libXYZ/libtest2.a b/Tests/CMakeOnly/find_library/lib/A/libXYZ/libtest2.a
-new file mode 100644
-index 0000000..e69de29
-diff --git a/Tests/CMakeOnly/find_library/lib/XYZ/libtest1.a b/Tests/CMakeOnly/find_library/lib/XYZ/libtest1.a
-new file mode 100644
-index 0000000..e69de29
-diff --git a/Tests/CMakeOnly/find_library/libXYZ/A/lib/libtest4.a b/Tests/CMakeOnly/find_library/libXYZ/A/lib/libtest4.a
-new file mode 100644
-index 0000000..e69de29
-diff --git a/Tests/CMakeOnly/find_library/libXYZ/A/libXYZ/libtest5.a b/Tests/CMakeOnly/find_library/libXYZ/A/libXYZ/libtest5.a
-new file mode 100644
-index 0000000..e69de29
-diff --git a/Tests/CMakeOnly/find_library/libXYZ/A/libtest6.a b/Tests/CMakeOnly/find_library/libXYZ/A/libtest6.a
-new file mode 100644
-index 0000000..e69de29
-diff --git a/Tests/CMakeOnly/find_library/libXYZ/libtest7.a b/Tests/CMakeOnly/find_library/libXYZ/libtest7.a
-new file mode 100644
-index 0000000..e69de29
--- 
-2.10.2
-
-From 462cf254270fbd56bffc73b00dc28882fdb0bdd6 Mon Sep 17 00:00:00 2001
-From: Steven Newbury <steve@snewbury.org.uk>
-Date: Mon, 27 Feb 2017 21:06:51 +0000
-Subject: [PATCH 1/4] Add support for x32-abi
-
-Detect x32-abi through CMakeCompilerABI infrastruture and use this
-information at runtime to determine the correct library paths with
-`FIND_LIBRARY_USE_LIBX32_PATHS`.
-
-Fixes: #15994
----
- Help/command/find_library.rst                          | 10 +++++++++-
- Help/manual/cmake-properties.7.rst                     |  1 +
- Help/prop_gbl/FIND_LIBRARY_USE_LIBX32_PATHS.rst        | 12 ++++++++++++
- Help/variable/CMAKE_FIND_LIBRARY_CUSTOM_LIB_SUFFIX.rst |  1 +
- Modules/CMakeCompilerABI.h                             |  4 ++++
- Modules/FindPkgConfig.cmake                            |  4 ++++
- Modules/Platform/UnixPaths.cmake                       |  1 +
- Source/cmExportInstallFileGenerator.cxx                |  4 +++-
- Source/cmFindLibraryCommand.cxx                        |  9 ++++++++-
- Source/cmFindPackageCommand.cxx                        | 11 +++++++++++
- Source/cmFindPackageCommand.h                          |  1 +
- Source/cmMakefile.cxx                                  | 17 +++++++++++++++++
- Source/cmMakefile.h                                    |  2 ++
- 13 files changed, 74 insertions(+), 3 deletions(-)
- create mode 100644 Help/prop_gbl/FIND_LIBRARY_USE_LIBX32_PATHS.rst
-
-diff --git a/Help/command/find_library.rst b/Help/command/find_library.rst
-index e912040..f774f17 100644
---- a/Help/command/find_library.rst
-+++ b/Help/command/find_library.rst
-@@ -53,7 +53,8 @@ If the :variable:`CMAKE_FIND_LIBRARY_CUSTOM_LIB_SUFFIX` variable is set all
- search paths will be tested as normal, with the suffix appended, and with
- all matches of ``lib/`` replaced with
- ``lib${CMAKE_FIND_LIBRARY_CUSTOM_LIB_SUFFIX}/``.  This variable overrides
--the :prop_gbl:`FIND_LIBRARY_USE_LIB32_PATHS`
-+the :prop_gbl:`FIND_LIBRARY_USE_LIB32_PATHS`,
-+:prop_gbl:`FIND_LIBRARY_USE_LIBX32_PATHS`,
- and :prop_gbl:`FIND_LIBRARY_USE_LIB64_PATHS` global properties.
- 
- If the :prop_gbl:`FIND_LIBRARY_USE_LIB32_PATHS` global property is set
-@@ -63,6 +64,13 @@ automatically set for the platforms that are known to need it if at
- least one of the languages supported by the :command:`project` command
- is enabled.
- 
-+If the :prop_gbl:`FIND_LIBRARY_USE_LIBX32_PATHS` global property is set
-+all search paths will be tested as normal, with ``x32/`` appended, and
-+with all matches of ``lib/`` replaced with ``libx32/``.  This property is
-+automatically set for the platforms that are known to need it if at
-+least one of the languages supported by the :command:`project` command
-+is enabled.
-+
- If the :prop_gbl:`FIND_LIBRARY_USE_LIB64_PATHS` global property is set
- all search paths will be tested as normal, with ``64/`` appended, and
- with all matches of ``lib/`` replaced with ``lib64/``.  This property is
-diff --git a/Help/manual/cmake-properties.7.rst b/Help/manual/cmake-properties.7.rst
-index 5bd6365..2157ba5 100644
---- a/Help/manual/cmake-properties.7.rst
-+++ b/Help/manual/cmake-properties.7.rst
-@@ -26,6 +26,7 @@ Properties of Global Scope
-    /prop_gbl/ENABLED_LANGUAGES
-    /prop_gbl/FIND_LIBRARY_USE_LIB32_PATHS
-    /prop_gbl/FIND_LIBRARY_USE_LIB64_PATHS
-+   /prop_gbl/FIND_LIBRARY_USE_LIBX32_PATHS
-    /prop_gbl/FIND_LIBRARY_USE_OPENBSD_VERSIONING
-    /prop_gbl/GLOBAL_DEPENDS_DEBUG_MODE
-    /prop_gbl/GLOBAL_DEPENDS_NO_CYCLES
-diff --git a/Help/prop_gbl/FIND_LIBRARY_USE_LIBX32_PATHS.rst b/Help/prop_gbl/FIND_LIBRARY_USE_LIBX32_PATHS.rst
-new file mode 100644
-index 0000000..b87b09b
---- /dev/null
-+++ b/Help/prop_gbl/FIND_LIBRARY_USE_LIBX32_PATHS.rst
-@@ -0,0 +1,12 @@
-+FIND_LIBRARY_USE_LIBX32_PATHS
-+-----------------------------
-+
-+Whether the :command:`find_library` command should automatically search
-+``libx32`` directories.
-+
-+``FIND_LIBRARY_USE_LIBX32_PATHS`` is a boolean specifying whether the
-+:command:`find_library` command should automatically search the ``libx32``
-+variant of directories called ``lib`` in the search path when building
-+x32-abi binaries.
-+
-+See also the :variable:`CMAKE_FIND_LIBRARY_CUSTOM_LIB_SUFFIX` variable.
-diff --git a/Help/variable/CMAKE_FIND_LIBRARY_CUSTOM_LIB_SUFFIX.rst b/Help/variable/CMAKE_FIND_LIBRARY_CUSTOM_LIB_SUFFIX.rst
-index f7c6524..ada8955 100644
---- a/Help/variable/CMAKE_FIND_LIBRARY_CUSTOM_LIB_SUFFIX.rst
-+++ b/Help/variable/CMAKE_FIND_LIBRARY_CUSTOM_LIB_SUFFIX.rst
-@@ -9,3 +9,4 @@ This overrides the behavior of related global properties:
- 
- * :prop_gbl:`FIND_LIBRARY_USE_LIB32_PATHS`
- * :prop_gbl:`FIND_LIBRARY_USE_LIB64_PATHS`
-+* :prop_gbl:`FIND_LIBRARY_USE_LIBX32_PATHS`
-diff --git a/Modules/CMakeCompilerABI.h b/Modules/CMakeCompilerABI.h
-index f2714b4..ad481d6 100644
---- a/Modules/CMakeCompilerABI.h
-+++ b/Modules/CMakeCompilerABI.h
-@@ -25,6 +25,10 @@ const char info_sizeof_dptr[] = {
- #elif defined(__GNU__) && defined(__ELF__) && defined(__ARMEL__)
- #define ABI_ID "ELF ARM"
- 
-+#elif defined(__linux__) && defined(__ELF__) && defined(__amd64__) &&         \
-+  defined(__ILP32__)
-+#define ABI_ID "ELF X32"
-+
- #elif defined(__ELF__)
- #define ABI_ID "ELF"
- #endif
-diff --git a/Modules/FindPkgConfig.cmake b/Modules/FindPkgConfig.cmake
-index a69081f..54572f0 100644
---- a/Modules/FindPkgConfig.cmake
-+++ b/Modules/FindPkgConfig.cmake
-@@ -312,6 +312,10 @@ macro(_pkg_check_modules_internal _is_required _is_silent _no_cmake_path _no_cma
-           if(uselib64 AND CMAKE_SIZEOF_VOID_P EQUAL 8)
-             list(APPEND _lib_dirs "lib64/pkgconfig")
-           endif()
-+          get_property(uselibx32 GLOBAL PROPERTY FIND_LIBRARY_USE_LIBX32_PATHS)
-+          if(uselibx32 AND CMAKE_INTERNAL_PLATFORM_ABI STREQUAL "ELF X32")
-+            list(APPEND _lib_dirs "libx32/pkgconfig")
-+          endif()
-         endif()
-       endif()
-       list(APPEND _lib_dirs "lib/pkgconfig")
-diff --git a/Modules/Platform/UnixPaths.cmake b/Modules/Platform/UnixPaths.cmake
-index b216d03..c1d2c03 100644
---- a/Modules/Platform/UnixPaths.cmake
-+++ b/Modules/Platform/UnixPaths.cmake
-@@ -86,3 +86,4 @@ list(APPEND CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES
- # Enable use of lib32 and lib64 search path variants by default.
- set_property(GLOBAL PROPERTY FIND_LIBRARY_USE_LIB32_PATHS TRUE)
- set_property(GLOBAL PROPERTY FIND_LIBRARY_USE_LIB64_PATHS TRUE)
-+set_property(GLOBAL PROPERTY FIND_LIBRARY_USE_LIBX32_PATHS TRUE)
-diff --git a/Source/cmExportInstallFileGenerator.cxx b/Source/cmExportInstallFileGenerator.cxx
-index 64ea3c8..3b76a87 100644
---- a/Source/cmExportInstallFileGenerator.cxx
-+++ b/Source/cmExportInstallFileGenerator.cxx
-@@ -195,8 +195,10 @@ void cmExportInstallFileGenerator::GenerateImportPrefix(std::ostream& os)
-        << " \"${CMAKE_CURRENT_LIST_FILE}\" PATH)\n";
-     if (cmHasLiteralPrefix(absDestS.c_str(), "/lib/") ||
-         cmHasLiteralPrefix(absDestS.c_str(), "/lib64/") ||
-+        cmHasLiteralPrefix(absDestS.c_str(), "/libx32/") ||
-         cmHasLiteralPrefix(absDestS.c_str(), "/usr/lib/") ||
--        cmHasLiteralPrefix(absDestS.c_str(), "/usr/lib64/")) {
-+        cmHasLiteralPrefix(absDestS.c_str(), "/usr/lib64/") ||
-+        cmHasLiteralPrefix(absDestS.c_str(), "/usr/libx32/")) {
-       // Handle "/usr move" symlinks created by some Linux distros.
-       /* clang-format off */
-       os <<
-diff --git a/Source/cmFindLibraryCommand.cxx b/Source/cmFindLibraryCommand.cxx
-index 69f9078..e92d672 100644
---- a/Source/cmFindLibraryCommand.cxx
-+++ b/Source/cmFindLibraryCommand.cxx
-@@ -43,7 +43,8 @@ bool cmFindLibraryCommand::InitialPass(std::vector<std::string> const& argsIn,
-     return true;
-   }
- 
--  // add custom lib<qual> paths instead of using fixed lib32 or lib64
-+  // add custom lib<qual> paths instead of using fixed lib32, lib64 or
-+  // libx32
-   if (const char* customLib = this->Makefile->GetDefinition(
-         "CMAKE_FIND_LIBRARY_CUSTOM_LIB_SUFFIX")) {
-     this->AddArchitecturePaths(customLib);
-@@ -60,6 +61,12 @@ bool cmFindLibraryCommand::InitialPass(std::vector<std::string> const& argsIn,
-              "FIND_LIBRARY_USE_LIB64_PATHS")) {
-     this->AddArchitecturePaths("64");
-   }
-+  // add special 32 bit paths if this is an x32 compile.
-+  else if (this->Makefile->PlatformIsx32() &&
-+           this->Makefile->GetState()->GetGlobalPropertyAsBool(
-+             "FIND_LIBRARY_USE_LIBX32_PATHS")) {
-+    this->AddArchitecturePaths("x32");
-+  }
- 
-   std::string library = this->FindLibrary();
-   if (library != "") {
-diff --git a/Source/cmFindPackageCommand.cxx b/Source/cmFindPackageCommand.cxx
-index 60de74f..4b29837 100644
---- a/Source/cmFindPackageCommand.cxx
-+++ b/Source/cmFindPackageCommand.cxx
-@@ -92,6 +92,7 @@ cmFindPackageCommand::cmFindPackageCommand()
-   this->DebugMode = false;
-   this->UseLib32Paths = false;
-   this->UseLib64Paths = false;
-+  this->UseLibx32Paths = false;
-   this->PolicyScope = true;
-   this->VersionMajor = 0;
-   this->VersionMinor = 0;
-@@ -173,6 +174,13 @@ bool cmFindPackageCommand::InitialPass(std::vector<std::string> const& args,
-     this->UseLib64Paths = true;
-   }
- 
-+  // Lookup whether libx32 paths should be used.
-+  if (this->Makefile->PlatformIsx32() &&
-+      this->Makefile->GetState()->GetGlobalPropertyAsBool(
-+        "FIND_LIBRARY_USE_LIBX32_PATHS")) {
-+    this->UseLibx32Paths = true;
-+  }
-+
-   // Check if User Package Registry should be disabled
-   if (this->Makefile->IsOn("CMAKE_FIND_PACKAGE_NO_PACKAGE_REGISTRY")) {
-     this->NoUserRegistry = true;
-@@ -2002,6 +2010,9 @@ bool cmFindPackageCommand::SearchPrefix(std::string const& prefix_in)
-   if (this->UseLib64Paths) {
-     common.push_back("lib64");
-   }
-+  if (this->UseLibx32Paths) {
-+    common.push_back("libx32");
-+  }
-   common.push_back("lib");
-   common.push_back("share");
- 
-diff --git a/Source/cmFindPackageCommand.h b/Source/cmFindPackageCommand.h
-index d454892..61a8dd6 100644
---- a/Source/cmFindPackageCommand.h
-+++ b/Source/cmFindPackageCommand.h
-@@ -169,6 +169,7 @@ private:
-   bool DebugMode;
-   bool UseLib32Paths;
-   bool UseLib64Paths;
-+  bool UseLibx32Paths;
-   bool PolicyScope;
-   std::string LibraryArchitecture;
-   std::vector<std::string> Names;
-diff --git a/Source/cmMakefile.cxx b/Source/cmMakefile.cxx
-index c75d101..da32dd7 100644
---- a/Source/cmMakefile.cxx
-+++ b/Source/cmMakefile.cxx
-@@ -2149,6 +2149,12 @@ bool cmMakefile::IsSet(const std::string& name) const
- 
- bool cmMakefile::PlatformIs32Bit() const
- {
-+  if (const char* plat_abi =
-+        this->GetDefinition("CMAKE_INTERNAL_PLATFORM_ABI")) {
-+    if (strcmp(plat_abi, "ELF X32") == 0) {
-+      return false;
-+    }
-+  }
-   if (const char* sizeof_dptr = this->GetDefinition("CMAKE_SIZEOF_VOID_P")) {
-     return atoi(sizeof_dptr) == 4;
-   }
-@@ -2163,6 +2169,17 @@ bool cmMakefile::PlatformIs64Bit() const
-   return false;
- }
- 
-+bool cmMakefile::PlatformIsx32() const
-+{
-+  if (const char* plat_abi =
-+        this->GetDefinition("CMAKE_INTERNAL_PLATFORM_ABI")) {
-+    if (strcmp(plat_abi, "ELF X32") == 0) {
-+      return true;
-+    }
-+  }
-+  return false;
-+}
-+
- bool cmMakefile::PlatformIsAppleIos() const
- {
-   std::string sdkRoot;
-diff --git a/Source/cmMakefile.h b/Source/cmMakefile.h
-index 4d5ce98..4e48c88 100644
---- a/Source/cmMakefile.h
-+++ b/Source/cmMakefile.h
-@@ -436,6 +436,8 @@ public:
- 
-   /** Return whether the target platform is 64-bit.  */
-   bool PlatformIs64Bit() const;
-+  /** Return whether the target platform is x32.  */
-+  bool PlatformIsx32() const;
- 
-   /** Return whether the target platform is Apple iOS.  */
-   bool PlatformIsAppleIos() const;
--- 
-2.10.2
-
-
-From bed9c73decfcda0366984d990045e588928440ec Mon Sep 17 00:00:00 2001
-From: Steven Newbury <steve@snewbury.org.uk>
-Date: Mon, 27 Feb 2017 21:17:28 +0000
-Subject: [PATCH 2/4] Modules: Add x32-abi support to hard-coded paths
-
-Update hard-coded library paths in bundled CMake Modules for libx32 as
-used with x32-abi.
----
- Modules/CPackRPM.cmake         | 2 +-
- Modules/FindDevIL.cmake        | 6 +++---
- Modules/FindGLEW.cmake         | 2 +-
- Modules/FindGTK2.cmake         | 2 ++
- Modules/FindIce.cmake          | 2 +-
- Modules/FindKDE3.cmake         | 2 ++
- Modules/FindOpenAL.cmake       | 2 +-
- Modules/GetPrerequisites.cmake | 2 +-
- 8 files changed, 12 insertions(+), 8 deletions(-)
-
-diff --git a/Modules/CPackRPM.cmake b/Modules/CPackRPM.cmake
-index 722ee15..b32feb5 100644
---- a/Modules/CPackRPM.cmake
-+++ b/Modules/CPackRPM.cmake
-@@ -1044,7 +1044,7 @@ function(cpack_rpm_prepare_content_list)
-   endif()
- 
-   if(NOT DEFINED CPACK_RPM_EXCLUDE_FROM_AUTO_FILELIST)
--    set(CPACK_RPM_EXCLUDE_FROM_AUTO_FILELIST /etc /etc/init.d /usr /usr/share /usr/share/doc /usr/bin /usr/lib /usr/lib64 /usr/include)
-+    set(CPACK_RPM_EXCLUDE_FROM_AUTO_FILELIST /etc /etc/init.d /usr /usr/share /usr/share/doc /usr/bin /usr/lib /usr/lib64 /usr/libx32 /usr/include)
-     if(CPACK_RPM_EXCLUDE_FROM_AUTO_FILELIST_ADDITION)
-       if(CPACK_RPM_PACKAGE_DEBUG)
-         message("CPackRPM:Debug: Adding ${CPACK_RPM_EXCLUDE_FROM_AUTO_FILELIST_ADDITION} to builtin omit list.")
-diff --git a/Modules/FindDevIL.cmake b/Modules/FindDevIL.cmake
-index 45fab82..4b868a2 100644
---- a/Modules/FindDevIL.cmake
-+++ b/Modules/FindDevIL.cmake
-@@ -45,7 +45,7 @@ find_path(IL_INCLUDE_DIR il.h
- 
- find_library(IL_LIBRARIES
-   NAMES IL DEVIL
--  PATH_SUFFIXES lib64 lib lib32
-+  PATH_SUFFIXES libx32 lib64 lib lib32
-   DOC "The file that corresponds to the base il library."
- )
- 
-@@ -53,7 +53,7 @@ find_library(IL_LIBRARIES
- 
- find_library(ILUT_LIBRARIES
-   NAMES ILUT
--  PATH_SUFFIXES lib64 lib lib32
-+  PATH_SUFFIXES libx32 lib64 lib lib32
-   DOC "The file that corresponds to the il (system?) utility library."
- )
- 
-@@ -61,7 +61,7 @@ find_library(ILUT_LIBRARIES
- 
- find_library(ILU_LIBRARIES
-   NAMES ILU
--  PATH_SUFFIXES lib64 lib lib32
-+  PATH_SUFFIXES libx32 lib64 lib lib32
-   DOC "The file that corresponds to the il utility library."
- )
- 
-diff --git a/Modules/FindGLEW.cmake b/Modules/FindGLEW.cmake
-index d8609e6..11e8724 100644
---- a/Modules/FindGLEW.cmake
-+++ b/Modules/FindGLEW.cmake
-@@ -27,7 +27,7 @@
- find_path(GLEW_INCLUDE_DIR GL/glew.h)
- 
- if(NOT GLEW_LIBRARY)
--  find_library(GLEW_LIBRARY_RELEASE NAMES GLEW glew32 glew glew32s PATH_SUFFIXES lib64)
-+  find_library(GLEW_LIBRARY_RELEASE NAMES GLEW glew32 glew glew32s PATH_SUFFIXES lib64 libx32)
-   find_library(GLEW_LIBRARY_DEBUG NAMES GLEWd glew32d glewd PATH_SUFFIXES lib64)
- 
-   include(${CMAKE_CURRENT_LIST_DIR}/SelectLibraryConfigurations.cmake)
-diff --git a/Modules/FindGTK2.cmake b/Modules/FindGTK2.cmake
-index 20d7924..2eca5f9 100644
---- a/Modules/FindGTK2.cmake
-+++ b/Modules/FindGTK2.cmake
-@@ -292,8 +292,10 @@ function(_GTK2_FIND_INCLUDE_DIR _var _hdr)
-     find_path(GTK2_${_var}_INCLUDE_DIR ${_hdr}
-         PATHS
-             ${_gtk2_arch_dir}
-+            /usr/local/libx32
-             /usr/local/lib64
-             /usr/local/lib
-+            /usr/libx32
-             /usr/lib64
-             /usr/lib
-             /usr/X11R6/include
-diff --git a/Modules/FindIce.cmake b/Modules/FindIce.cmake
-index a61d4a8..e0286ee 100644
---- a/Modules/FindIce.cmake
-+++ b/Modules/FindIce.cmake
-@@ -198,7 +198,7 @@ function(_Ice_FIND)
-   endif()
-   # Generic 64-bit and 32-bit directories
-   list(APPEND ice_binary_suffixes "bin${_x64}" "bin")
--  list(APPEND ice_library_suffixes "${_lib64}" "lib${_x64}" "lib")
-+  list(APPEND ice_library_suffixes "libx32" "${_lib64}" "lib${_x64}" "lib")
-   list(APPEND ice_include_suffixes "include")
-   list(APPEND ice_slice_suffixes "slice")
- 
-diff --git a/Modules/FindKDE3.cmake b/Modules/FindKDE3.cmake
-index 62e2a50..03216a5 100644
---- a/Modules/FindKDE3.cmake
-+++ b/Modules/FindKDE3.cmake
-@@ -221,6 +221,8 @@ get_filename_component(KDE3_LIB_DIR ${KDE3_KDECORE_LIBRARY} PATH )
- if(NOT KDE3_LIBTOOL_DIR)
-    if(KDE3_KDECORE_LIBRARY MATCHES lib64)
-      set(KDE3_LIBTOOL_DIR /lib64/kde3)
-+   elseif(KDE3_KDECORE_LIBRARY MATCHES libx32)
-+     set(KDE3_LIBTOOL_DIR /libx32/kde3)
-    else()
-      set(KDE3_LIBTOOL_DIR /lib/kde3)
-    endif()
-diff --git a/Modules/FindOpenAL.cmake b/Modules/FindOpenAL.cmake
-index 8622b4c..c3d202e 100644
---- a/Modules/FindOpenAL.cmake
-+++ b/Modules/FindOpenAL.cmake
-@@ -79,7 +79,7 @@ find_library(OPENAL_LIBRARY
-   NAMES OpenAL al openal OpenAL32
-   HINTS
-     ENV OPENALDIR
--  PATH_SUFFIXES lib64 lib libs64 libs ${_OpenAL_ARCH_DIR}
-+  PATH_SUFFIXES libx32 lib64 lib libs64 libs ${_OpenAL_ARCH_DIR}
-   PATHS
-   ~/Library/Frameworks
-   /Library/Frameworks
-diff --git a/Modules/GetPrerequisites.cmake b/Modules/GetPrerequisites.cmake
-index 417af7c..a3b97ab 100644
---- a/Modules/GetPrerequisites.cmake
-+++ b/Modules/GetPrerequisites.cmake
-@@ -521,7 +521,7 @@ function(gp_resolved_file_type original_file file exepath dirs type_var)
-     string(TOLOWER "${resolved_file}" lower)
- 
-     if(UNIX)
--      if(resolved_file MATCHES "^(/lib/|/lib32/|/lib64/|/usr/lib/|/usr/lib32/|/usr/lib64/|/usr/X11R6/|/usr/bin/)")
-+      if(resolved_file MATCHES "^(/lib/|/lib32/|/libx32/|/lib64/|/usr/lib/|/usr/lib32/|/usr/libx32/|/usr/lib64/|/usr/X11R6/|/usr/bin/)")
-         set(is_system 1)
-       endif()
-     endif()
--- 
-2.10.2
-
-
-From 5b6d354f70e1faddb006a7c98479f5d655a07b87 Mon Sep 17 00:00:00 2001
-From: Brad King <brad.king@kitware.com>
-Date: Mon, 6 Mar 2017 11:15:00 -0500
-Subject: [PATCH 3/4] Help: Add notes for topic 'x32-abi'
-
----
- Help/release/dev/x32-abi.rst | 6 ++++++
- 1 file changed, 6 insertions(+)
- create mode 100644 Help/release/dev/x32-abi.rst
-
-diff --git a/Help/release/dev/x32-abi.rst b/Help/release/dev/x32-abi.rst
-new file mode 100644
-index 0000000..7571fac
---- /dev/null
-+++ b/Help/release/dev/x32-abi.rst
-@@ -0,0 +1,6 @@
-+x32-abi
-+-------
-+
-+* The :command:`find_library` command learned to search ``libx32`` paths
-+  when the build targets the ``x32`` ABI.  See the
-+  :prop_gbl:`FIND_LIBRARY_USE_LIBX32_PATHS` global property.
--- 
-2.10.2
-
-
-From d9bdcf34efa79dcdea4ded8e90b80a55db69fbf6 Mon Sep 17 00:00:00 2001
-From: Steven Newbury <steve@snewbury.org.uk>
-Date: Wed, 8 Mar 2017 17:13:29 +0000
-Subject: [PATCH 4/4] Tests: Add x32 tests to test suite
-
----
- Tests/CMakeOnly/find_library/CMakeLists.txt              | 16 ++++++++++++++++
- Tests/CMakeOnly/find_library/lib/A/libx32/libtest3.a     |  0
- Tests/CMakeOnly/find_library/lib/x32/libtest2.a          |  0
- Tests/CMakeOnly/find_library/libx32/A/lib/libtest2.a     |  0
- Tests/CMakeOnly/find_library/libx32/A/libtest1.a         |  0
- Tests/CMakeOnly/find_library/libx32/A/libx32/libtest1.a  |  0
- Tests/CMakeOnly/find_library/libx32/libtest1.a           |  0
- .../FindPkgConfig_CMAKE_APPBUNDLE_PATH.cmake             |  5 ++++-
- .../FindPkgConfig_CMAKE_FRAMEWORK_PATH.cmake             |  5 ++++-
- .../FindPkgConfig/FindPkgConfig_PKGCONFIG_PATH.cmake     |  5 ++++-
- ...Config_PKGCONFIG_PATH_NO_CMAKE_ENVIRONMENT_PATH.cmake |  5 ++++-
- .../FindPkgConfig_PKGCONFIG_PATH_NO_CMAKE_PATH.cmake     |  5 ++++-
- .../FindPkgConfig/pc-bar/libx32/pkgconfig/.placeholder   |  0
- .../FindPkgConfig/pc-foo/libx32/pkgconfig/.placeholder   |  0
- 14 files changed, 36 insertions(+), 5 deletions(-)
- create mode 100644 Tests/CMakeOnly/find_library/lib/A/libx32/libtest3.a
- create mode 100644 Tests/CMakeOnly/find_library/lib/x32/libtest2.a
- create mode 100644 Tests/CMakeOnly/find_library/libx32/A/lib/libtest2.a
- create mode 100644 Tests/CMakeOnly/find_library/libx32/A/libtest1.a
- create mode 100644 Tests/CMakeOnly/find_library/libx32/A/libx32/libtest1.a
- create mode 100644 Tests/CMakeOnly/find_library/libx32/libtest1.a
- create mode 100644 Tests/RunCMake/FindPkgConfig/pc-bar/libx32/pkgconfig/.placeholder
- create mode 100644 Tests/RunCMake/FindPkgConfig/pc-foo/libx32/pkgconfig/.placeholder
-
-diff --git a/Tests/CMakeOnly/find_library/CMakeLists.txt b/Tests/CMakeOnly/find_library/CMakeLists.txt
-index 9c1aad8..749cf42 100644
---- a/Tests/CMakeOnly/find_library/CMakeLists.txt
-+++ b/Tests/CMakeOnly/find_library/CMakeLists.txt
-@@ -33,9 +33,11 @@ endmacro()
- 
- set(CMAKE_FIND_LIBRARY_PREFIXES "lib")
- set(CMAKE_FIND_LIBRARY_SUFFIXES ".a")
-+set_property(GLOBAL PROPERTY FIND_LIBRARY_USE_LIBX32_PATHS TRUE)
- set_property(GLOBAL PROPERTY FIND_LIBRARY_USE_LIB32_PATHS TRUE)
- set_property(GLOBAL PROPERTY FIND_LIBRARY_USE_LIB64_PATHS TRUE)
- 
-+set(CMAKE_INTERNAL_PLATFORM_ABI "ELF")
- set(CMAKE_SIZEOF_VOID_P 4)
- foreach(lib
-     lib/32/libtest5.a
-@@ -67,6 +69,20 @@ foreach(lib64
-   test_find_library_subst(${lib64})
- endforeach()
- 
-+set(CMAKE_INTERNAL_PLATFORM_ABI "ELF X32")
-+set(CMAKE_SIZEOF_VOID_P 4)
-+foreach(libx32
-+    lib/x32/libtest2.a
-+    lib/A/libx32/libtest3.a
-+    lib/libtest3.a
-+    libx32/A/lib/libtest2.a
-+    libx32/A/libx32/libtest1.a
-+    libx32/A/libtest1.a
-+    libx32/libtest1.a
-+    )
-+  test_find_library_subst(${libx32})
-+endforeach()
-+
- test_find_library("" A/libtestA.a
-   NAMES testA testB
-   PATHS ${CMAKE_CURRENT_SOURCE_DIR}/A ${CMAKE_CURRENT_SOURCE_DIR}/B
-diff --git a/Tests/CMakeOnly/find_library/lib/A/libx32/libtest3.a b/Tests/CMakeOnly/find_library/lib/A/libx32/libtest3.a
-new file mode 100644
-index 0000000..e69de29
-diff --git a/Tests/CMakeOnly/find_library/lib/x32/libtest2.a b/Tests/CMakeOnly/find_library/lib/x32/libtest2.a
-new file mode 100644
-index 0000000..e69de29
-diff --git a/Tests/CMakeOnly/find_library/libx32/A/lib/libtest2.a b/Tests/CMakeOnly/find_library/libx32/A/lib/libtest2.a
-new file mode 100644
-index 0000000..e69de29
-diff --git a/Tests/CMakeOnly/find_library/libx32/A/libtest1.a b/Tests/CMakeOnly/find_library/libx32/A/libtest1.a
-new file mode 100644
-index 0000000..e69de29
-diff --git a/Tests/CMakeOnly/find_library/libx32/A/libx32/libtest1.a b/Tests/CMakeOnly/find_library/libx32/A/libx32/libtest1.a
-new file mode 100644
-index 0000000..e69de29
-diff --git a/Tests/CMakeOnly/find_library/libx32/libtest1.a b/Tests/CMakeOnly/find_library/libx32/libtest1.a
-new file mode 100644
-index 0000000..e69de29
-diff --git a/Tests/RunCMake/FindPkgConfig/FindPkgConfig_CMAKE_APPBUNDLE_PATH.cmake b/Tests/RunCMake/FindPkgConfig/FindPkgConfig_CMAKE_APPBUNDLE_PATH.cmake
-index 4a41533..2687efe 100644
---- a/Tests/RunCMake/FindPkgConfig/FindPkgConfig_CMAKE_APPBUNDLE_PATH.cmake
-+++ b/Tests/RunCMake/FindPkgConfig/FindPkgConfig_CMAKE_APPBUNDLE_PATH.cmake
-@@ -30,9 +30,12 @@ if(NOT DEFINED CMAKE_SYSTEM_NAME
-     endif()
-   else()
-     # not debian, check the FIND_LIBRARY_USE_LIB32_PATHS and FIND_LIBRARY_USE_LIB64_PATHS properties
-+    get_property(uselibx32 GLOBAL PROPERTY FIND_LIBRARY_USE_LIBX32_PATHS)
-     get_property(uselib32 GLOBAL PROPERTY FIND_LIBRARY_USE_LIB32_PATHS)
-     get_property(uselib64 GLOBAL PROPERTY FIND_LIBRARY_USE_LIB64_PATHS)
--    if(uselib32 AND CMAKE_SIZEOF_VOID_P EQUAL 4)
-+    if(uselibx32 AND CMAKE_INTERNAL_PLATFORM_ABI STREQUAL "ELF X32")
-+      set(expected_path "/baz:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/libx32/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/lib/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/libx32/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/lib/pkgconfig")
-+    elseif(uselib32 AND CMAKE_SIZEOF_VOID_P EQUAL 4)
-       set(expected_path "/baz:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/lib32/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/lib/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/lib32/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/lib/pkgconfig")
-     elseif(uselib64 AND CMAKE_SIZEOF_VOID_P EQUAL 8)
-       set(expected_path "/baz:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/lib64/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/lib/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/lib64/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/lib/pkgconfig")
-diff --git a/Tests/RunCMake/FindPkgConfig/FindPkgConfig_CMAKE_FRAMEWORK_PATH.cmake b/Tests/RunCMake/FindPkgConfig/FindPkgConfig_CMAKE_FRAMEWORK_PATH.cmake
-index b66d02f..74cda25 100644
---- a/Tests/RunCMake/FindPkgConfig/FindPkgConfig_CMAKE_FRAMEWORK_PATH.cmake
-+++ b/Tests/RunCMake/FindPkgConfig/FindPkgConfig_CMAKE_FRAMEWORK_PATH.cmake
-@@ -30,9 +30,12 @@ if(NOT DEFINED CMAKE_SYSTEM_NAME
-     endif()
-   else()
-     # not debian, check the FIND_LIBRARY_USE_LIB64_PATHS and FIND_LIBRARY_USE_LIB64_PATHS properties
-+    get_property(uselibx32 GLOBAL PROPERTY FIND_LIBRARY_USE_LIBX32_PATHS)
-     get_property(uselib32 GLOBAL PROPERTY FIND_LIBRARY_USE_LIB32_PATHS)
-     get_property(uselib64 GLOBAL PROPERTY FIND_LIBRARY_USE_LIB64_PATHS)
--    if(uselib32 AND CMAKE_SIZEOF_VOID_P EQUAL 4)
-+    if(uselibx32 AND CMAKE_INTERNAL_PLATFORM_ABI STREQUAL "ELF X32")
-+      set(expected_path "/baz:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/libx32/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/lib/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/libx32/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/lib/pkgconfig")
-+    elseif(uselib32 AND CMAKE_SIZEOF_VOID_P EQUAL 4)
-       set(expected_path "/baz:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/lib32/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/lib/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/lib32/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/lib/pkgconfig")
-     elseif(uselib64 AND CMAKE_SIZEOF_VOID_P EQUAL 8)
-       set(expected_path "/baz:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/lib64/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/lib/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/lib64/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/lib/pkgconfig")
-diff --git a/Tests/RunCMake/FindPkgConfig/FindPkgConfig_PKGCONFIG_PATH.cmake b/Tests/RunCMake/FindPkgConfig/FindPkgConfig_PKGCONFIG_PATH.cmake
-index bdecb8a..1defde8 100644
---- a/Tests/RunCMake/FindPkgConfig/FindPkgConfig_PKGCONFIG_PATH.cmake
-+++ b/Tests/RunCMake/FindPkgConfig/FindPkgConfig_PKGCONFIG_PATH.cmake
-@@ -30,9 +30,12 @@ if(NOT DEFINED CMAKE_SYSTEM_NAME
-     endif()
-   else()
-     # not debian, check the FIND_LIBRARY_USE_LIB32_PATHS and FIND_LIBRARY_USE_LIB64_PATHS propertie
-+    get_property(uselibx32 GLOBAL PROPERTY FIND_LIBRARY_USE_LIBX32_PATHS)
-     get_property(uselib32 GLOBAL PROPERTY FIND_LIBRARY_USE_LIB32_PATHS)
-     get_property(uselib64 GLOBAL PROPERTY FIND_LIBRARY_USE_LIB64_PATHS)
--    if(uselib32 AND CMAKE_SIZEOF_VOID_P EQUAL 4)
-+    if(uselibx32 AND CMAKE_INTERNAL_PLATFORM_ABI STREQUAL "ELF X32")
-+      set(expected_path "/baz:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/libx32/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/lib/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/libx32/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/lib/pkgconfig")
-+    elseif(uselib32 AND CMAKE_SIZEOF_VOID_P EQUAL 4)
-       set(expected_path "/baz:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/lib32/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/lib/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/lib32/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/lib/pkgconfig")
-     elseif(uselib64 AND CMAKE_SIZEOF_VOID_P EQUAL 8)
-       set(expected_path "/baz:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/lib64/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/lib/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/lib64/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/lib/pkgconfig")
-diff --git a/Tests/RunCMake/FindPkgConfig/FindPkgConfig_PKGCONFIG_PATH_NO_CMAKE_ENVIRONMENT_PATH.cmake b/Tests/RunCMake/FindPkgConfig/FindPkgConfig_PKGCONFIG_PATH_NO_CMAKE_ENVIRONMENT_PATH.cmake
-index df67235..166a617 100644
---- a/Tests/RunCMake/FindPkgConfig/FindPkgConfig_PKGCONFIG_PATH_NO_CMAKE_ENVIRONMENT_PATH.cmake
-+++ b/Tests/RunCMake/FindPkgConfig/FindPkgConfig_PKGCONFIG_PATH_NO_CMAKE_ENVIRONMENT_PATH.cmake
-@@ -30,9 +30,12 @@ if(NOT DEFINED CMAKE_SYSTEM_NAME
-     endif()
-   else()
-     # not debian, check the FIND_LIBRARY_USE_LIB32_PATHS and FIND_LIBRARY_USE_LIB64_PATHS properties
-+    get_property(uselibx32 GLOBAL PROPERTY FIND_LIBRARY_USE_LIBX32_PATHS)
-     get_property(uselib32 GLOBAL PROPERTY FIND_LIBRARY_USE_LIB32_PATHS)
-     get_property(uselib64 GLOBAL PROPERTY FIND_LIBRARY_USE_LIB64_PATHS)
--    if(uselib32 AND CMAKE_SIZEOF_VOID_P EQUAL 4)
-+    if(uselibx32 AND CMAKE_INTERNAL_PLATFORM_ABI STREQUAL "ELF X32")
-+      set(expected_path "/baz:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/libx32/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/lib/pkgconfig")
-+    elseif(uselib32 AND CMAKE_SIZEOF_VOID_P EQUAL 4)
-       set(expected_path "/baz:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/lib32/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/lib/pkgconfig")
-     elseif(uselib64 AND CMAKE_SIZEOF_VOID_P EQUAL 8)
-       set(expected_path "/baz:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/lib64/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-foo/lib/pkgconfig")
-diff --git a/Tests/RunCMake/FindPkgConfig/FindPkgConfig_PKGCONFIG_PATH_NO_CMAKE_PATH.cmake b/Tests/RunCMake/FindPkgConfig/FindPkgConfig_PKGCONFIG_PATH_NO_CMAKE_PATH.cmake
-index 1351b6f..e4673b3 100644
---- a/Tests/RunCMake/FindPkgConfig/FindPkgConfig_PKGCONFIG_PATH_NO_CMAKE_PATH.cmake
-+++ b/Tests/RunCMake/FindPkgConfig/FindPkgConfig_PKGCONFIG_PATH_NO_CMAKE_PATH.cmake
-@@ -30,9 +30,12 @@ if(NOT DEFINED CMAKE_SYSTEM_NAME
-     endif()
-   else()
-     # not debian, check the FIND_LIBRARY_USE_LIB64_PATHS and FIND_LIBRARY_USE_LIB32_PATHS properties
-+    get_property(uselibx32 GLOBAL PROPERTY FIND_LIBRARY_USE_LIBX32_PATHS)
-     get_property(uselib32 GLOBAL PROPERTY FIND_LIBRARY_USE_LIB32_PATHS)
-     get_property(uselib64 GLOBAL PROPERTY FIND_LIBRARY_USE_LIB64_PATHS)
--    if(uselib32 AND CMAKE_SIZEOF_VOID_P EQUAL 4)
-+    if(uselibx32 AND CMAKE_INTERNAL_PLATFORM_ABI STREQUAL "ELF X32")
-+      set(expected_path "/baz:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/libx32/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/lib/pkgconfig")
-+    elseif(uselib32 AND CMAKE_SIZEOF_VOID_P EQUAL 4)
-       set(expected_path "/baz:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/lib32/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/lib/pkgconfig")
-     elseif(uselib64 AND CMAKE_SIZEOF_VOID_P EQUAL 8)
-       set(expected_path "/baz:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/lib64/pkgconfig:${CMAKE_CURRENT_SOURCE_DIR}/pc-bar/lib/pkgconfig")
-diff --git a/Tests/RunCMake/FindPkgConfig/pc-bar/libx32/pkgconfig/.placeholder b/Tests/RunCMake/FindPkgConfig/pc-bar/libx32/pkgconfig/.placeholder
-new file mode 100644
-index 0000000..e69de29
-diff --git a/Tests/RunCMake/FindPkgConfig/pc-foo/libx32/pkgconfig/.placeholder b/Tests/RunCMake/FindPkgConfig/pc-foo/libx32/pkgconfig/.placeholder
-new file mode 100644
-index 0000000..e69de29
--- 
-2.10.2
-


^ permalink raw reply related	[flat|nested] 23+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/cmake/files/, dev-util/cmake/
@ 2017-09-07 12:09 Michael Palimaka
  0 siblings, 0 replies; 23+ messages in thread
From: Michael Palimaka @ 2017-09-07 12:09 UTC (permalink / raw
  To: gentoo-commits

commit:     adf272995594c38a66c95a15c6d52b31f24db023
Author:     Michael Palimaka <kensington <AT> gentoo <DOT> org>
AuthorDate: Thu Sep  7 12:06:11 2017 +0000
Commit:     Michael Palimaka <kensington <AT> gentoo <DOT> org>
CommitDate: Thu Sep  7 12:09:11 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=adf27299

dev-util/cmake: backport patch from upstream solving failure to find boost-1.65.0

Bug: https://bugs.gentoo.org/629972
Package-Manager: Portage-2.3.6, Repoman-2.3.3

 dev-util/cmake/cmake-3.9.1-r1.ebuild               | 205 +++++++++++++++++++++
 .../cmake/files/cmake-3.9.1-boost-1.65.0.patch     |  74 ++++++++
 2 files changed, 279 insertions(+)

diff --git a/dev-util/cmake/cmake-3.9.1-r1.ebuild b/dev-util/cmake/cmake-3.9.1-r1.ebuild
new file mode 100644
index 00000000000..5aa69e31bfc
--- /dev/null
+++ b/dev-util/cmake/cmake-3.9.1-r1.ebuild
@@ -0,0 +1,205 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+CMAKE_MAKEFILE_GENERATOR="emake"
+CMAKE_REMOVE_MODULES="no"
+inherit bash-completion-r1 elisp-common toolchain-funcs eutils versionator cmake-utils virtualx flag-o-matic
+
+MY_P="${P/_/-}"
+
+DESCRIPTION="Cross platform Make"
+HOMEPAGE="https://cmake.org/"
+SRC_URI="https://cmake.org/files/v$(get_version_component_range 1-2)/${MY_P}.tar.gz"
+
+LICENSE="CMake"
+SLOT="0"
+[[ "${PV}" = *_rc* ]] || \
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
+IUSE="doc emacs server system-jsoncpp ncurses qt5"
+
+RDEPEND="
+	app-crypt/rhash
+	>=app-arch/libarchive-3.0.0:=
+	>=dev-libs/expat-2.0.1
+	>=net-misc/curl-7.21.5[ssl]
+	sys-libs/zlib
+	virtual/pkgconfig
+	emacs? ( virtual/emacs )
+	ncurses? ( sys-libs/ncurses:0= )
+	qt5? (
+		dev-qt/qtcore:5
+		dev-qt/qtgui:5
+		dev-qt/qtwidgets:5
+	)
+	server? ( >=dev-libs/libuv-1.0.0:= )
+	system-jsoncpp? ( >=dev-libs/jsoncpp-0.6.0_rc2:0= )
+"
+DEPEND="${RDEPEND}
+	doc? ( dev-python/sphinx )
+"
+
+S="${WORKDIR}/${MY_P}"
+
+SITEFILE="50${PN}-gentoo.el"
+
+PATCHES=(
+	# prefix
+	"${FILESDIR}"/${PN}-3.4.0_rc1-darwin-bundle.patch
+	"${FILESDIR}"/${PN}-3.9.0_rc2-prefix-dirs.patch
+	"${FILESDIR}"/${PN}-3.1.0-darwin-isysroot.patch
+
+	# handle gentoo packaging in find modules
+	"${FILESDIR}"/${PN}-3.9.0_rc2-FindImageMagick.patch
+	"${FILESDIR}"/${PN}-3.0.0-FindBLAS.patch
+	"${FILESDIR}"/${PN}-3.8.0_rc2-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.9.0_rc2-FindPythonInterp.patch
+
+	# upstream fixes (can usually be removed with a version bump)
+	"${FILESDIR}"/${PN}-3.9.1-boost-1.65.0.patch
+)
+
+cmake_src_bootstrap() {
+	# Cleanup args to extract only JOBS.
+	# Because bootstrap does not know anything else.
+	echo ${MAKEOPTS} | egrep -o '(\-j|\-\-jobs)(=?|[[:space:]]*)[[:digit:]]+' > /dev/null
+	if [ $? -eq 0 ]; then
+		par_arg=$(echo ${MAKEOPTS} | egrep -o '(\-j|\-\-jobs)(=?|[[:space:]]*)[[:digit:]]+' | tail -n1 | egrep -o '[[:digit:]]+')
+		par_arg="--parallel=${par_arg}"
+	else
+		par_arg="--parallel=1"
+	fi
+
+	# disable running of cmake in boostrap command
+	sed -i \
+		-e '/"${cmake_bootstrap_dir}\/cmake"/s/^/#DONOTRUN /' \
+		bootstrap || die "sed failed"
+
+	# execinfo.h on Solaris isn't quite what it is on Darwin
+	if [[ ${CHOST} == *-solaris* ]] ; then
+		sed -i -e 's/execinfo\.h/blablabla.h/' Source/kwsys/CMakeLists.txt || die
+	fi
+
+	tc-export CC CXX LD
+
+	# bootstrap script isn't exactly /bin/sh compatible
+	${CONFIG_SHELL:-sh} ./bootstrap \
+		--prefix="${T}/cmakestrap/" \
+		${par_arg} \
+		|| die "Bootstrap failed"
+}
+
+cmake_src_test() {
+	# fix OutDir and SelectLibraryConfigurations tests
+	# these are altered thanks to our eclass
+	sed -i -e 's:#IGNORE ::g' \
+		"${S}"/Tests/{OutDir,CMakeOnly/SelectLibraryConfigurations}/CMakeLists.txt \
+		|| die
+
+	pushd "${BUILD_DIR}" > /dev/null
+
+	local ctestargs
+	[[ -n ${TEST_VERBOSE} ]] && ctestargs="--extra-verbose --output-on-failure"
+
+	# Excluded tests:
+	#    BootstrapTest: we actualy bootstrap it every time so why test it.
+	#    BundleUtilities: bundle creation broken
+	#    CTest.updatecvs: which fails to commit as root
+	#    Fortran: requires fortran
+	#    Qt4Deploy, which tries to break sandbox and ignores prefix
+	#    RunCMake.CPack_RPM: breaks if app-arch/rpm is installed because
+	#        debugedit binary is not in the expected location
+	#    TestUpload, which requires network access
+	"${BUILD_DIR}"/bin/ctest ${ctestargs} \
+		-E "(BootstrapTest|BundleUtilities|CTest.UpdateCVS|Fortran|Qt4Deploy|RunCMake.CPack_RPM|TestUpload)" \
+		|| die "Tests failed"
+
+	popd > /dev/null
+}
+
+src_prepare() {
+	cmake-utils_src_prepare
+
+	# Add gcc libs to the default link paths
+	sed -i \
+		-e "s|@GENTOO_PORTAGE_GCCLIBDIR@|${EPREFIX}/usr/${CHOST}/lib/|g" \
+		-e "s|@GENTOO_PORTAGE_EPREFIX@|${EPREFIX}/|g" \
+		Modules/Platform/{UnixPaths,Darwin}.cmake || die "sed failed"
+	if ! has_version \>=${CATEGORY}/${PN}-3.4.0_rc1 ; then
+		CMAKE_BINARY="${S}/Bootstrap.cmk/cmake"
+		cmake_src_bootstrap
+	fi
+}
+
+src_configure() {
+	# Fix linking on Solaris
+	[[ ${CHOST} == *-solaris* ]] && append-ldflags -lsocket -lnsl
+
+	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}
+		-DSPHINX_MAN=$(usex doc)
+		-DSPHINX_HTML=$(usex doc)
+		-DBUILD_CursesDialog="$(usex ncurses)"
+		-DCMake_ENABLE_SERVER_MODE="$(usex server)"
+		-DCMAKE_USE_LIBUV="$(usex server)"
+	)
+
+	if use qt5 ; then
+		mycmakeargs+=(
+			-DBUILD_QtDialog=ON
+			$(cmake-utils_use_find_package qt5 Qt5Widgets)
+		)
+	fi
+
+	cmake-utils_src_configure
+}
+
+src_compile() {
+	cmake-utils_src_compile
+	use emacs && elisp-compile Auxiliary/cmake-mode.el
+}
+
+src_test() {
+	virtx cmake_src_test
+}
+
+src_install() {
+	cmake-utils_src_install
+
+	if use emacs; then
+		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 Auxiliary/vim/syntax/cmake.vim
+
+	insinto /usr/share/vim/vimfiles/indent
+	doins Auxiliary/vim/indent/cmake.vim
+
+	insinto /usr/share/vim/vimfiles/ftdetect
+	doins "${FILESDIR}/${PN}.vim"
+
+	dobashcomp Auxiliary/bash-completion/{${PN},ctest,cpack}
+
+	rm -r "${ED}"/usr/share/cmake/{completions,editors} || die
+}
+
+pkg_postinst() {
+	use emacs && elisp-site-regen
+}
+
+pkg_postrm() {
+	use emacs && elisp-site-regen
+}

diff --git a/dev-util/cmake/files/cmake-3.9.1-boost-1.65.0.patch b/dev-util/cmake/files/cmake-3.9.1-boost-1.65.0.patch
new file mode 100644
index 00000000000..098f5f70f3f
--- /dev/null
+++ b/dev-util/cmake/files/cmake-3.9.1-boost-1.65.0.patch
@@ -0,0 +1,74 @@
+From fa114e7d708b76f33878f6f82a6c2a2e50c1c10f Mon Sep 17 00:00:00 2001
+From: Roger Leigh <rleigh@dundee.ac.uk>
+Date: Tue, 22 Aug 2017 16:09:06 +0100
+Subject: [PATCH] FindBoost: Add Boost 1.65 dependencies
+
+---
+ Modules/FindBoost.cmake | 30 +++++++++++++++++++++++++++---
+ 1 file changed, 27 insertions(+), 3 deletions(-)
+
+diff --git a/Modules/FindBoost.cmake b/Modules/FindBoost.cmake
+index b4abf75..b28f2b8 100644
+--- a/Modules/FindBoost.cmake
++++ b/Modules/FindBoost.cmake
+@@ -554,7 +554,10 @@ function(_Boost_COMPONENT_DEPENDENCIES component _ret)
+   # The addition of a new release should only require it to be run
+   # against the new release.
+   set(_Boost_IMPORTED_TARGETS TRUE)
+-  if(NOT Boost_VERSION VERSION_LESS 103300 AND Boost_VERSION VERSION_LESS 103500)
++  if(Boost_VERSION VERSION_LESS 103300)
++    message(WARNING "Imported targets and dependency information not available for Boost version ${Boost_VERSION} (all versions older than 1.33)")
++    set(_Boost_IMPORTED_TARGETS FALSE)
++  elseif(NOT Boost_VERSION VERSION_LESS 103300 AND Boost_VERSION VERSION_LESS 103500)
+     set(_Boost_IOSTREAMS_DEPENDENCIES regex thread)
+     set(_Boost_REGEX_DEPENDENCIES thread)
+     set(_Boost_WAVE_DEPENDENCIES filesystem thread)
+@@ -768,8 +771,27 @@ function(_Boost_COMPONENT_DEPENDENCIES component _ret)
+     set(_Boost_WAVE_DEPENDENCIES filesystem system serialization thread chrono date_time atomic)
+     set(_Boost_WSERIALIZATION_DEPENDENCIES serialization)
+   else()
+-    message(WARNING "Imported targets not available for Boost version ${Boost_VERSION}")
+-    set(_Boost_IMPORTED_TARGETS FALSE)
++    if(NOT Boost_VERSION VERSION_LESS 106500)
++      set(_Boost_CHRONO_DEPENDENCIES system)
++      set(_Boost_CONTEXT_DEPENDENCIES thread chrono system date_time)
++      set(_Boost_COROUTINE_DEPENDENCIES context system)
++      set(_Boost_FIBER_DEPENDENCIES context thread chrono system date_time)
++      set(_Boost_FILESYSTEM_DEPENDENCIES system)
++      set(_Boost_IOSTREAMS_DEPENDENCIES regex)
++      set(_Boost_LOG_DEPENDENCIES date_time log_setup system filesystem thread regex chrono atomic)
++      set(_Boost_MATH_DEPENDENCIES math_c99 math_c99f math_c99l math_tr1 math_tr1f math_tr1l atomic)
++      set(_Boost_MPI_DEPENDENCIES serialization)
++      set(_Boost_MPI_PYTHON_DEPENDENCIES python mpi serialization)
++      set(_Boost_NUMPY_DEPENDENCIES python)
++      set(_Boost_RANDOM_DEPENDENCIES system)
++      set(_Boost_THREAD_DEPENDENCIES chrono system date_time atomic)
++      set(_Boost_WAVE_DEPENDENCIES filesystem system serialization thread chrono date_time atomic)
++      set(_Boost_WSERIALIZATION_DEPENDENCIES serialization)
++    endif()
++    if(NOT Boost_VERSION VERSION_LESS 106600)
++      message(WARNING "New Boost version may have incorrect or missing dependencies and imported targets")
++      set(_Boost_IMPORTED_TARGETS FALSE)
++    endif()
+   endif()
+ 
+   string(TOUPPER ${component} uppercomponent)
+@@ -819,6 +841,7 @@ function(_Boost_COMPONENT_HEADERS component _hdrs)
+   set(_Boost_MATH_TR1L_HEADERS           "boost/math/tr1.hpp")
+   set(_Boost_MPI_HEADERS                 "boost/mpi.hpp")
+   set(_Boost_MPI_PYTHON_HEADERS          "boost/mpi/python/config.hpp")
++  set(_Boost_NUMPY_HEADERS               "boost/python/numpy.hpp")
+   set(_Boost_PRG_EXEC_MONITOR_HEADERS    "boost/test/prg_exec_monitor.hpp")
+   set(_Boost_PROGRAM_OPTIONS_HEADERS     "boost/program_options.hpp")
+   set(_Boost_PYTHON_HEADERS              "boost/python.hpp")
+@@ -1000,6 +1023,7 @@ else()
+   # _Boost_COMPONENT_HEADERS.  See the instructions at the top of
+   # _Boost_COMPONENT_DEPENDENCIES.
+   set(_Boost_KNOWN_VERSIONS ${Boost_ADDITIONAL_VERSIONS}
++    "1.65.0" "1.65"
+     "1.64.0" "1.64" "1.63.0" "1.63" "1.62.0" "1.62" "1.61.0" "1.61" "1.60.0" "1.60"
+     "1.59.0" "1.59" "1.58.0" "1.58" "1.57.0" "1.57" "1.56.0" "1.56" "1.55.0" "1.55"
+     "1.54.0" "1.54" "1.53.0" "1.53" "1.52.0" "1.52" "1.51.0" "1.51"
+--
+libgit2 0.26.0
+


^ permalink raw reply related	[flat|nested] 23+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/cmake/files/, dev-util/cmake/
@ 2017-10-05  8:46 Lars Wendler
  0 siblings, 0 replies; 23+ messages in thread
From: Lars Wendler @ 2017-10-05  8:46 UTC (permalink / raw
  To: gentoo-commits

commit:     50718920c31ffd682eeac840c4a4ff42bc971114
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Thu Oct  5 08:46:25 2017 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Thu Oct  5 08:46:41 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=50718920

dev-util/cmake: Removed old.

Package-Manager: Portage-2.3.11, Repoman-2.3.3

 dev-util/cmake/Manifest                            |   1 -
 dev-util/cmake/cmake-3.9.2.ebuild                  | 215 ---------------------
 .../cmake/files/cmake-3.9.1-boost-1.65.0.patch     |  74 -------
 3 files changed, 290 deletions(-)

diff --git a/dev-util/cmake/Manifest b/dev-util/cmake/Manifest
index 021161714cb..423fafaa539 100644
--- a/dev-util/cmake/Manifest
+++ b/dev-util/cmake/Manifest
@@ -1,5 +1,4 @@
 DIST cmake-3.7.2.tar.gz 7361593 SHA256 dc1246c4e6d168ea4d6e042cfba577c1acd65feea27e56f5ff37df920c30cae0 SHA512 b2ed0192e12267de19eb178c2dedc69d06fc33dfadd47efbe0ccf6969ad72d290fa4bff02861c379a8752337d67d2485d7e1ba947cb219f2e4041a53a195e88d WHIRLPOOL 1861fe2887f4483856e1964ff1492e196624d3072ad1e21910fba29d0c0d654e7d5035571648386a77cd6cbe895f8cdfbb1f4cc1ad60d14015a01a22494456f7
 DIST cmake-3.8.2.tar.gz 7504706 SHA256 da3072794eb4c09f2d782fcee043847b99bb4cf8d4573978d9b2024214d6e92d SHA512 49ea6f74a81dfa8ed8336c94ed50e0a483b796132c260f4bef159f9c389d99cc7b26ecfcccdd8b0a8f5b52fddd277c17c547d2a2e8848da9912c464ada1cbe3f WHIRLPOOL 8768bffb365852414eda0349d71e59517c8047689303d7873a5889cb8b28c72cd636982a18b039f26daae33023f7e0ad91c3a9ab2d30c30e4b3a9b3cc525b78e
-DIST cmake-3.9.2.tar.gz 7703777 SHA256 954a5801a456ee48e76f01107c9a4961677dd0f3e115275bbd18410dc22ba3c1 SHA512 9528d9f39d00bb282cf36b4126c09f6884751ac68ab924893884eecbb77ea99b0e560b30e30d46faaa89417e7386f4b376e6c7c61ccf2f23948765f8607f943c WHIRLPOOL 49d7ca2875c404b5783fda1785304ec04328a4cf8531bd8c2aefa85d485a20f287aeeba6533fd35d0d47057349322844e5ec980e19750da65f7b306931a74785
 DIST cmake-3.9.3.tar.gz 7705238 SHA256 8eaf75e1e932159aae98ab5e7491499545554be62a08cbcbc7c75c84b999f28a SHA512 30058cf4c154221846d1cd22eaf44a297d2a2d020a443f3e6f40384dfb86ee9a639a1299aa9f187f230505b2a6ee0fe69fbf5e80410711a6ac3d7a07b37f8dfc WHIRLPOOL 68d85783cf880984ce912e873f31500c87352cce69bad6da5a6086ce5bad2dd3d4a75ef2eae485649af7c380205aac9411f1dbdff155763d0e69d12d1eba4784
 DIST cmake-3.9.4.tar.gz 7705052 SHA256 b5d86f12ae0072db520fdbdad67405f799eb728b610ed66043c20a92b4906ca1 SHA512 d9172f86df7ddefd0ecf1cd271add8b8af2d712a47ded530e9ff2c26e39087bc11a099125f17add6b563d176f27a68f4998bb53ae390b3f12894d658dfc8eee5 WHIRLPOOL c1cc16977ce1c1a4ac58692694a608bb5996c19db677bb6d25db1e017586ad1d676bb1f086af4016b8017cfe845ed7c6795fad7f1e7b5ab0b4d9b414452d661f

diff --git a/dev-util/cmake/cmake-3.9.2.ebuild b/dev-util/cmake/cmake-3.9.2.ebuild
deleted file mode 100644
index 5ff11523d79..00000000000
--- a/dev-util/cmake/cmake-3.9.2.ebuild
+++ /dev/null
@@ -1,215 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-CMAKE_MAKEFILE_GENERATOR="emake"
-CMAKE_REMOVE_MODULES="no"
-inherit bash-completion-r1 elisp-common eutils flag-o-matic gnome2-utils toolchain-funcs versionator virtualx xdg-utils cmake-utils
-
-MY_P="${P/_/-}"
-
-DESCRIPTION="Cross platform Make"
-HOMEPAGE="https://cmake.org/"
-SRC_URI="https://cmake.org/files/v$(get_version_component_range 1-2)/${MY_P}.tar.gz"
-
-LICENSE="CMake"
-SLOT="0"
-[[ "${PV}" = *_rc* ]] || \
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
-IUSE="doc emacs server system-jsoncpp ncurses qt5"
-
-RDEPEND="
-	app-crypt/rhash
-	>=app-arch/libarchive-3.0.0:=
-	>=dev-libs/expat-2.0.1
-	>=net-misc/curl-7.21.5[ssl]
-	sys-libs/zlib
-	virtual/pkgconfig
-	emacs? ( virtual/emacs )
-	ncurses? ( sys-libs/ncurses:0= )
-	qt5? (
-		dev-qt/qtcore:5
-		dev-qt/qtgui:5
-		dev-qt/qtwidgets:5
-	)
-	server? ( >=dev-libs/libuv-1.0.0:= )
-	system-jsoncpp? ( >=dev-libs/jsoncpp-0.6.0_rc2:0= )
-"
-DEPEND="${RDEPEND}
-	doc? ( dev-python/sphinx )
-"
-
-S="${WORKDIR}/${MY_P}"
-
-SITEFILE="50${PN}-gentoo.el"
-
-PATCHES=(
-	# prefix
-	"${FILESDIR}"/${PN}-3.4.0_rc1-darwin-bundle.patch
-	"${FILESDIR}"/${PN}-3.9.0_rc2-prefix-dirs.patch
-	"${FILESDIR}"/${PN}-3.1.0-darwin-isysroot.patch
-
-	# handle gentoo packaging in find modules
-	"${FILESDIR}"/${PN}-3.9.0_rc2-FindImageMagick.patch
-	"${FILESDIR}"/${PN}-3.0.0-FindBLAS.patch
-	"${FILESDIR}"/${PN}-3.8.0_rc2-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.9.0_rc2-FindPythonInterp.patch
-
-	# upstream fixes (can usually be removed with a version bump)
-	"${FILESDIR}"/${PN}-3.9.1-boost-1.65.0.patch
-)
-
-cmake_src_bootstrap() {
-	# Cleanup args to extract only JOBS.
-	# Because bootstrap does not know anything else.
-	echo ${MAKEOPTS} | egrep -o '(\-j|\-\-jobs)(=?|[[:space:]]*)[[:digit:]]+' > /dev/null
-	if [ $? -eq 0 ]; then
-		par_arg=$(echo ${MAKEOPTS} | egrep -o '(\-j|\-\-jobs)(=?|[[:space:]]*)[[:digit:]]+' | tail -n1 | egrep -o '[[:digit:]]+')
-		par_arg="--parallel=${par_arg}"
-	else
-		par_arg="--parallel=1"
-	fi
-
-	# disable running of cmake in boostrap command
-	sed -i \
-		-e '/"${cmake_bootstrap_dir}\/cmake"/s/^/#DONOTRUN /' \
-		bootstrap || die "sed failed"
-
-	# execinfo.h on Solaris isn't quite what it is on Darwin
-	if [[ ${CHOST} == *-solaris* ]] ; then
-		sed -i -e 's/execinfo\.h/blablabla.h/' Source/kwsys/CMakeLists.txt || die
-	fi
-
-	tc-export CC CXX LD
-
-	# bootstrap script isn't exactly /bin/sh compatible
-	${CONFIG_SHELL:-sh} ./bootstrap \
-		--prefix="${T}/cmakestrap/" \
-		${par_arg} \
-		|| die "Bootstrap failed"
-}
-
-cmake_src_test() {
-	# fix OutDir and SelectLibraryConfigurations tests
-	# these are altered thanks to our eclass
-	sed -i -e 's:#IGNORE ::g' \
-		"${S}"/Tests/{OutDir,CMakeOnly/SelectLibraryConfigurations}/CMakeLists.txt \
-		|| die
-
-	pushd "${BUILD_DIR}" > /dev/null
-
-	local ctestargs
-	[[ -n ${TEST_VERBOSE} ]] && ctestargs="--extra-verbose --output-on-failure"
-
-	# Excluded tests:
-	#    BootstrapTest: we actualy bootstrap it every time so why test it.
-	#    BundleUtilities: bundle creation broken
-	#    CTest.updatecvs: which fails to commit as root
-	#    Fortran: requires fortran
-	#    Qt4Deploy, which tries to break sandbox and ignores prefix
-	#    RunCMake.CPack_RPM: breaks if app-arch/rpm is installed because
-	#        debugedit binary is not in the expected location
-	#    TestUpload, which requires network access
-	"${BUILD_DIR}"/bin/ctest ${ctestargs} \
-		-E "(BootstrapTest|BundleUtilities|CTest.UpdateCVS|Fortran|Qt4Deploy|RunCMake.CPack_RPM|TestUpload)" \
-		|| die "Tests failed"
-
-	popd > /dev/null
-}
-
-src_prepare() {
-	cmake-utils_src_prepare
-
-	# Add gcc libs to the default link paths
-	sed -i \
-		-e "s|@GENTOO_PORTAGE_GCCLIBDIR@|${EPREFIX}/usr/${CHOST}/lib/|g" \
-		-e "s|@GENTOO_PORTAGE_EPREFIX@|${EPREFIX}/|g" \
-		Modules/Platform/{UnixPaths,Darwin}.cmake || die "sed failed"
-	if ! has_version \>=${CATEGORY}/${PN}-3.4.0_rc1 ; then
-		CMAKE_BINARY="${S}/Bootstrap.cmk/cmake"
-		cmake_src_bootstrap
-	fi
-}
-
-src_configure() {
-	# Fix linking on Solaris
-	[[ ${CHOST} == *-solaris* ]] && append-ldflags -lsocket -lnsl
-
-	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}
-		-DSPHINX_MAN=$(usex doc)
-		-DSPHINX_HTML=$(usex doc)
-		-DBUILD_CursesDialog="$(usex ncurses)"
-		-DCMake_ENABLE_SERVER_MODE="$(usex server)"
-		-DCMAKE_USE_LIBUV="$(usex server)"
-	)
-
-	if use qt5 ; then
-		mycmakeargs+=(
-			-DBUILD_QtDialog=ON
-			$(cmake-utils_use_find_package qt5 Qt5Widgets)
-		)
-	fi
-
-	cmake-utils_src_configure
-}
-
-src_compile() {
-	cmake-utils_src_compile
-	use emacs && elisp-compile Auxiliary/cmake-mode.el
-}
-
-src_test() {
-	virtx cmake_src_test
-}
-
-src_install() {
-	cmake-utils_src_install
-
-	if use emacs; then
-		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 Auxiliary/vim/syntax/cmake.vim
-
-	insinto /usr/share/vim/vimfiles/indent
-	doins Auxiliary/vim/indent/cmake.vim
-
-	insinto /usr/share/vim/vimfiles/ftdetect
-	doins "${FILESDIR}/${PN}.vim"
-
-	dobashcomp Auxiliary/bash-completion/{${PN},ctest,cpack}
-
-	rm -r "${ED}"/usr/share/cmake/{completions,editors} || die
-}
-
-pkg_postinst() {
-	use emacs && elisp-site-regen
-	if use qt5; then
-		gnome2_icon_cache_update
-		xdg_desktop_database_update
-		xdg_mimeinfo_database_update
-	fi
-}
-
-pkg_postrm() {
-	use emacs && elisp-site-regen
-	if use qt5; then
-		gnome2_icon_cache_update
-		xdg_desktop_database_update
-		xdg_mimeinfo_database_update
-	fi
-}

diff --git a/dev-util/cmake/files/cmake-3.9.1-boost-1.65.0.patch b/dev-util/cmake/files/cmake-3.9.1-boost-1.65.0.patch
deleted file mode 100644
index 098f5f70f3f..00000000000
--- a/dev-util/cmake/files/cmake-3.9.1-boost-1.65.0.patch
+++ /dev/null
@@ -1,74 +0,0 @@
-From fa114e7d708b76f33878f6f82a6c2a2e50c1c10f Mon Sep 17 00:00:00 2001
-From: Roger Leigh <rleigh@dundee.ac.uk>
-Date: Tue, 22 Aug 2017 16:09:06 +0100
-Subject: [PATCH] FindBoost: Add Boost 1.65 dependencies
-
----
- Modules/FindBoost.cmake | 30 +++++++++++++++++++++++++++---
- 1 file changed, 27 insertions(+), 3 deletions(-)
-
-diff --git a/Modules/FindBoost.cmake b/Modules/FindBoost.cmake
-index b4abf75..b28f2b8 100644
---- a/Modules/FindBoost.cmake
-+++ b/Modules/FindBoost.cmake
-@@ -554,7 +554,10 @@ function(_Boost_COMPONENT_DEPENDENCIES component _ret)
-   # The addition of a new release should only require it to be run
-   # against the new release.
-   set(_Boost_IMPORTED_TARGETS TRUE)
--  if(NOT Boost_VERSION VERSION_LESS 103300 AND Boost_VERSION VERSION_LESS 103500)
-+  if(Boost_VERSION VERSION_LESS 103300)
-+    message(WARNING "Imported targets and dependency information not available for Boost version ${Boost_VERSION} (all versions older than 1.33)")
-+    set(_Boost_IMPORTED_TARGETS FALSE)
-+  elseif(NOT Boost_VERSION VERSION_LESS 103300 AND Boost_VERSION VERSION_LESS 103500)
-     set(_Boost_IOSTREAMS_DEPENDENCIES regex thread)
-     set(_Boost_REGEX_DEPENDENCIES thread)
-     set(_Boost_WAVE_DEPENDENCIES filesystem thread)
-@@ -768,8 +771,27 @@ function(_Boost_COMPONENT_DEPENDENCIES component _ret)
-     set(_Boost_WAVE_DEPENDENCIES filesystem system serialization thread chrono date_time atomic)
-     set(_Boost_WSERIALIZATION_DEPENDENCIES serialization)
-   else()
--    message(WARNING "Imported targets not available for Boost version ${Boost_VERSION}")
--    set(_Boost_IMPORTED_TARGETS FALSE)
-+    if(NOT Boost_VERSION VERSION_LESS 106500)
-+      set(_Boost_CHRONO_DEPENDENCIES system)
-+      set(_Boost_CONTEXT_DEPENDENCIES thread chrono system date_time)
-+      set(_Boost_COROUTINE_DEPENDENCIES context system)
-+      set(_Boost_FIBER_DEPENDENCIES context thread chrono system date_time)
-+      set(_Boost_FILESYSTEM_DEPENDENCIES system)
-+      set(_Boost_IOSTREAMS_DEPENDENCIES regex)
-+      set(_Boost_LOG_DEPENDENCIES date_time log_setup system filesystem thread regex chrono atomic)
-+      set(_Boost_MATH_DEPENDENCIES math_c99 math_c99f math_c99l math_tr1 math_tr1f math_tr1l atomic)
-+      set(_Boost_MPI_DEPENDENCIES serialization)
-+      set(_Boost_MPI_PYTHON_DEPENDENCIES python mpi serialization)
-+      set(_Boost_NUMPY_DEPENDENCIES python)
-+      set(_Boost_RANDOM_DEPENDENCIES system)
-+      set(_Boost_THREAD_DEPENDENCIES chrono system date_time atomic)
-+      set(_Boost_WAVE_DEPENDENCIES filesystem system serialization thread chrono date_time atomic)
-+      set(_Boost_WSERIALIZATION_DEPENDENCIES serialization)
-+    endif()
-+    if(NOT Boost_VERSION VERSION_LESS 106600)
-+      message(WARNING "New Boost version may have incorrect or missing dependencies and imported targets")
-+      set(_Boost_IMPORTED_TARGETS FALSE)
-+    endif()
-   endif()
- 
-   string(TOUPPER ${component} uppercomponent)
-@@ -819,6 +841,7 @@ function(_Boost_COMPONENT_HEADERS component _hdrs)
-   set(_Boost_MATH_TR1L_HEADERS           "boost/math/tr1.hpp")
-   set(_Boost_MPI_HEADERS                 "boost/mpi.hpp")
-   set(_Boost_MPI_PYTHON_HEADERS          "boost/mpi/python/config.hpp")
-+  set(_Boost_NUMPY_HEADERS               "boost/python/numpy.hpp")
-   set(_Boost_PRG_EXEC_MONITOR_HEADERS    "boost/test/prg_exec_monitor.hpp")
-   set(_Boost_PROGRAM_OPTIONS_HEADERS     "boost/program_options.hpp")
-   set(_Boost_PYTHON_HEADERS              "boost/python.hpp")
-@@ -1000,6 +1023,7 @@ else()
-   # _Boost_COMPONENT_HEADERS.  See the instructions at the top of
-   # _Boost_COMPONENT_DEPENDENCIES.
-   set(_Boost_KNOWN_VERSIONS ${Boost_ADDITIONAL_VERSIONS}
-+    "1.65.0" "1.65"
-     "1.64.0" "1.64" "1.63.0" "1.63" "1.62.0" "1.62" "1.61.0" "1.61" "1.60.0" "1.60"
-     "1.59.0" "1.59" "1.58.0" "1.58" "1.57.0" "1.57" "1.56.0" "1.56" "1.55.0" "1.55"
-     "1.54.0" "1.54" "1.53.0" "1.53" "1.52.0" "1.52" "1.51.0" "1.51"
---
-libgit2 0.26.0
-


^ permalink raw reply related	[flat|nested] 23+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/cmake/files/, dev-util/cmake/
@ 2017-12-14 19:38 Lars Wendler
  0 siblings, 0 replies; 23+ messages in thread
From: Lars Wendler @ 2017-12-14 19:38 UTC (permalink / raw
  To: gentoo-commits

commit:     ed193001e830fd646c085303e659032d1cb43922
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Thu Dec 14 19:38:11 2017 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Thu Dec 14 19:38:21 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ed193001

dev-util/cmake: Removed old.

Package-Manager: Portage-2.3.18, Repoman-2.3.6

 dev-util/cmake/Manifest                            |   2 -
 dev-util/cmake/cmake-3.7.2.ebuild                  | 200 -------------------
 dev-util/cmake/cmake-3.9.5.ebuild                  | 214 ---------------------
 .../cmake/files/cmake-3.0.0-FindBoost-python.patch |  93 ---------
 4 files changed, 509 deletions(-)

diff --git a/dev-util/cmake/Manifest b/dev-util/cmake/Manifest
index f76ac8b7799..8c40fb1dc29 100644
--- a/dev-util/cmake/Manifest
+++ b/dev-util/cmake/Manifest
@@ -1,6 +1,4 @@
 DIST cmake-3.10.0.tar.gz 7822668 BLAKE2B 8d649924281b68add8120c8f8a4871e0a0671316ce51cc9dcc557d06e696e6f08cf90c253c3edaa902fabc7a9b121ce095e9eaf37478feac1a1cf25555dbc503 SHA512 0bf05f5aacb17007d5beb0909263e31717102b685701eef45c20408895cc9dfd54c96ebc8eee148845c8ffb1d3db687e68a58d4e08395425e14ca0413ee84765
 DIST cmake-3.10.1.tar.gz 7824043 BLAKE2B 004149841b128288845c2a3987b38e6d90b3dcc5ccb2002bc2915f9d8f30496ebf43d9a70fa6e26c7b64c0f41d85c753bd1bac8c1b5d7148b1d592dc98de189a SHA512 14e9a7f01747b369cad3c4e4e83bc777c0c98ce69209456f60d086d2471302f66dc1c1d22fd04e11dcb64de4bfc7dacd9aca70ee0e5f006abd1df79ef642eeed
-DIST cmake-3.7.2.tar.gz 7361593 BLAKE2B 92d406236488028ba4a75d8935c66f2e11cc45a81786bd53bdcab039a8174f5dea44553646c18d4c2a840e66695b94b6f5524bed8ce4b8a28f6fcf69b2a08d8f SHA512 b2ed0192e12267de19eb178c2dedc69d06fc33dfadd47efbe0ccf6969ad72d290fa4bff02861c379a8752337d67d2485d7e1ba947cb219f2e4041a53a195e88d
 DIST cmake-3.8.2.tar.gz 7504706 BLAKE2B a2ba30370a41dabcba40a967aa58eb7a4ed4151371394eff436866b09fd040b5483d2dcc2dc588a75288a65aff979806d15016a5395db2b25db844b9e942cac1 SHA512 49ea6f74a81dfa8ed8336c94ed50e0a483b796132c260f4bef159f9c389d99cc7b26ecfcccdd8b0a8f5b52fddd277c17c547d2a2e8848da9912c464ada1cbe3f
-DIST cmake-3.9.5.tar.gz 7705155 BLAKE2B d2d723574bff80e481ccbbe279ebce3d84a7049163d401a8dc965bd2f9e32dc3a9eb97e55721368d4edbd1b9d6db3ca4fd459dc9b2094f6aee8bf10c6cff273c SHA512 71a0848a0c7048c210fe16fbd2b0c2870bd4c2140098225e94fac13a53059f4ae610139115ab8c153989886baa087d506b9ffbc7b91ddc157b0c85e3223828a0
 DIST cmake-3.9.6.tar.gz 7705400 BLAKE2B e0a5307af0a34863c50ea6aa9323025ef588b27e648107c3a81c362ee7ae4a1d2a07cc335d816b286ce4ddb249f9c6c08c3e8cf99856c7113f3724f47c62da43 SHA512 9fda2c9ac054ef8fb1bf3885fbdec02c518da89ade220eba06b5502ac3ff300f635ec0922e61f3b2d090644fb743b8f71a04c532ab66b2d890a180cc7da54e6c

diff --git a/dev-util/cmake/cmake-3.7.2.ebuild b/dev-util/cmake/cmake-3.7.2.ebuild
deleted file mode 100644
index c6248dac592..00000000000
--- a/dev-util/cmake/cmake-3.7.2.ebuild
+++ /dev/null
@@ -1,200 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-CMAKE_MAKEFILE_GENERATOR="emake"
-CMAKE_REMOVE_MODULES="no"
-inherit bash-completion-r1 elisp-common toolchain-funcs eutils versionator cmake-utils virtualx flag-o-matic
-
-MY_P="${P/_/-}"
-
-DESCRIPTION="Cross platform Make"
-HOMEPAGE="https://cmake.org/"
-SRC_URI="https://cmake.org/files/v$(get_version_component_range 1-2)/${MY_P}.tar.gz"
-
-LICENSE="CMake"
-SLOT="0"
-[[ "${PV}" = *_rc* ]] || \
-KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
-IUSE="doc emacs system-jsoncpp ncurses qt5"
-
-RDEPEND="
-	>=app-arch/libarchive-3.0.0:=
-	>=dev-libs/expat-2.0.1
-	>=dev-libs/libuv-1.0.0:=
-	>=net-misc/curl-7.21.5[ssl]
-	sys-libs/zlib
-	virtual/pkgconfig
-	emacs? ( virtual/emacs )
-	ncurses? ( sys-libs/ncurses:0= )
-	qt5? (
-		dev-qt/qtcore:5
-		dev-qt/qtgui:5
-		dev-qt/qtwidgets:5
-	)
-	system-jsoncpp? ( >=dev-libs/jsoncpp-0.6.0_rc2:0= )
-"
-DEPEND="${RDEPEND}
-	doc? ( dev-python/sphinx )
-"
-
-S="${WORKDIR}/${MY_P}"
-
-SITEFILE="50${PN}-gentoo.el"
-
-PATCHES=(
-	# 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}-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() {
-	# Cleanup args to extract only JOBS.
-	# Because bootstrap does not know anything else.
-	echo ${MAKEOPTS} | egrep -o '(\-j|\-\-jobs)(=?|[[:space:]]*)[[:digit:]]+' > /dev/null
-	if [ $? -eq 0 ]; then
-		par_arg=$(echo ${MAKEOPTS} | egrep -o '(\-j|\-\-jobs)(=?|[[:space:]]*)[[:digit:]]+' | tail -n1 | egrep -o '[[:digit:]]+')
-		par_arg="--parallel=${par_arg}"
-	else
-		par_arg="--parallel=1"
-	fi
-
-	# disable running of cmake in boostrap command
-	sed -i \
-		-e '/"${cmake_bootstrap_dir}\/cmake"/s/^/#DONOTRUN /' \
-		bootstrap || die "sed failed"
-
-	# execinfo.h on Solaris isn't quite what it is on Darwin
-	if [[ ${CHOST} == *-solaris* ]] ; then
-		sed -i -e 's/execinfo\.h/blablabla.h/' Source/kwsys/CMakeLists.txt || die
-	fi
-
-	tc-export CC CXX LD
-
-	# bootstrap script isn't exactly /bin/sh compatible
-	${CONFIG_SHELL:-sh} ./bootstrap \
-		--prefix="${T}/cmakestrap/" \
-		${par_arg} \
-		|| die "Bootstrap failed"
-}
-
-cmake_src_test() {
-	# fix OutDir and SelectLibraryConfigurations tests
-	# these are altered thanks to our eclass
-	sed -i -e 's:#IGNORE ::g' \
-		"${S}"/Tests/{OutDir,CMakeOnly/SelectLibraryConfigurations}/CMakeLists.txt \
-		|| die
-
-	pushd "${BUILD_DIR}" > /dev/null
-
-	local ctestargs
-	[[ -n ${TEST_VERBOSE} ]] && ctestargs="--extra-verbose --output-on-failure"
-
-	# Excluded tests:
-	#    BootstrapTest: we actualy bootstrap it every time so why test it.
-	#    BundleUtilities: bundle creation broken
-	#    CTest.updatecvs: which fails to commit as root
-	#    Fortran: requires fortran
-	#    Qt4Deploy, which tries to break sandbox and ignores prefix
-	#    Qt5Autogen, which breaks for unknown reason
-	#    TestUpload, which requires network access
-	"${BUILD_DIR}"/bin/ctest ${ctestargs} \
-		-E "(BootstrapTest|BundleUtilities|CTest.UpdateCVS|Fortran|Qt4Deploy|Qt5Autogen|TestUpload)" \
-		|| die "Tests failed"
-
-	popd > /dev/null
-}
-
-src_prepare() {
-	cmake-utils_src_prepare
-
-	# Add gcc libs to the default link paths
-	sed -i \
-		-e "s|@GENTOO_PORTAGE_GCCLIBDIR@|${EPREFIX}/usr/${CHOST}/lib/|g" \
-		-e "s|@GENTOO_PORTAGE_EPREFIX@|${EPREFIX}/|g" \
-		Modules/Platform/{UnixPaths,Darwin}.cmake || die "sed failed"
-	if ! has_version \>=${CATEGORY}/${PN}-3.4.0_rc1 ; then
-		CMAKE_BINARY="${S}/Bootstrap.cmk/cmake"
-		cmake_src_bootstrap
-	fi
-}
-
-src_configure() {
-	# Fix linking on Solaris
-	[[ ${CHOST} == *-solaris* ]] && append-ldflags -lsocket -lnsl
-
-	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}
-		-DSPHINX_MAN=$(usex doc)
-		-DSPHINX_HTML=$(usex doc)
-		-DBUILD_CursesDialog="$(usex ncurses)"
-	)
-
-	if use qt5 ; then
-		mycmakeargs+=(
-			-DBUILD_QtDialog=ON
-			$(cmake-utils_use_find_package qt5 Qt5Widgets)
-		)
-	fi
-
-	cmake-utils_src_configure
-}
-
-src_compile() {
-	cmake-utils_src_compile
-	use emacs && elisp-compile Auxiliary/cmake-mode.el
-}
-
-src_test() {
-	virtx cmake_src_test
-}
-
-src_install() {
-	cmake-utils_src_install
-
-	if use emacs; then
-		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 Auxiliary/vim/syntax/cmake.vim
-
-	insinto /usr/share/vim/vimfiles/indent
-	doins Auxiliary/vim/indent/cmake.vim
-
-	insinto /usr/share/vim/vimfiles/ftdetect
-	doins "${FILESDIR}/${PN}.vim"
-
-	dobashcomp Auxiliary/bash-completion/{${PN},ctest,cpack}
-
-	rm -r "${ED}"/usr/share/cmake/{completions,editors} || die
-}
-
-pkg_postinst() {
-	use emacs && elisp-site-regen
-}
-
-pkg_postrm() {
-	use emacs && elisp-site-regen
-}

diff --git a/dev-util/cmake/cmake-3.9.5.ebuild b/dev-util/cmake/cmake-3.9.5.ebuild
deleted file mode 100644
index 48cd86d3877..00000000000
--- a/dev-util/cmake/cmake-3.9.5.ebuild
+++ /dev/null
@@ -1,214 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-CMAKE_MAKEFILE_GENERATOR="emake"
-CMAKE_REMOVE_MODULES="no"
-inherit bash-completion-r1 elisp-common eutils flag-o-matic gnome2-utils toolchain-funcs versionator virtualx xdg-utils cmake-utils
-
-MY_P="${P/_/-}"
-
-DESCRIPTION="Cross platform Make"
-HOMEPAGE="https://cmake.org/"
-SRC_URI="https://cmake.org/files/v$(get_version_component_range 1-2)/${MY_P}.tar.gz"
-
-LICENSE="CMake"
-SLOT="0"
-[[ "${PV}" = *_rc* ]] || \
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
-IUSE="doc emacs server system-jsoncpp ncurses qt5"
-
-RDEPEND="
-	app-crypt/rhash
-	>=app-arch/libarchive-3.0.0:=
-	>=dev-libs/expat-2.0.1
-	>=net-misc/curl-7.21.5[ssl]
-	sys-libs/zlib
-	virtual/pkgconfig
-	emacs? ( virtual/emacs )
-	ncurses? ( sys-libs/ncurses:0= )
-	qt5? (
-		dev-qt/qtcore:5
-		dev-qt/qtgui:5
-		dev-qt/qtwidgets:5
-	)
-	server? ( >=dev-libs/libuv-1.0.0:= )
-	system-jsoncpp? ( >=dev-libs/jsoncpp-0.6.0_rc2:0= )
-"
-DEPEND="${RDEPEND}
-	doc? ( dev-python/sphinx )
-"
-
-S="${WORKDIR}/${MY_P}"
-
-SITEFILE="50${PN}-gentoo.el"
-
-PATCHES=(
-	# prefix
-	"${FILESDIR}"/${PN}-3.4.0_rc1-darwin-bundle.patch
-	"${FILESDIR}"/${PN}-3.9.0_rc2-prefix-dirs.patch
-	"${FILESDIR}"/${PN}-3.1.0-darwin-isysroot.patch
-
-	# handle gentoo packaging in find modules
-	"${FILESDIR}"/${PN}-3.9.0_rc2-FindImageMagick.patch
-	"${FILESDIR}"/${PN}-3.0.0-FindBLAS.patch
-	"${FILESDIR}"/${PN}-3.8.0_rc2-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.9.0_rc2-FindPythonInterp.patch
-
-	# upstream fixes (can usually be removed with a version bump)
-)
-
-cmake_src_bootstrap() {
-	# Cleanup args to extract only JOBS.
-	# Because bootstrap does not know anything else.
-	echo ${MAKEOPTS} | egrep -o '(\-j|\-\-jobs)(=?|[[:space:]]*)[[:digit:]]+' > /dev/null
-	if [ $? -eq 0 ]; then
-		par_arg=$(echo ${MAKEOPTS} | egrep -o '(\-j|\-\-jobs)(=?|[[:space:]]*)[[:digit:]]+' | tail -n1 | egrep -o '[[:digit:]]+')
-		par_arg="--parallel=${par_arg}"
-	else
-		par_arg="--parallel=1"
-	fi
-
-	# disable running of cmake in boostrap command
-	sed -i \
-		-e '/"${cmake_bootstrap_dir}\/cmake"/s/^/#DONOTRUN /' \
-		bootstrap || die "sed failed"
-
-	# execinfo.h on Solaris isn't quite what it is on Darwin
-	if [[ ${CHOST} == *-solaris* ]] ; then
-		sed -i -e 's/execinfo\.h/blablabla.h/' Source/kwsys/CMakeLists.txt || die
-	fi
-
-	tc-export CC CXX LD
-
-	# bootstrap script isn't exactly /bin/sh compatible
-	${CONFIG_SHELL:-sh} ./bootstrap \
-		--prefix="${T}/cmakestrap/" \
-		${par_arg} \
-		|| die "Bootstrap failed"
-}
-
-cmake_src_test() {
-	# fix OutDir and SelectLibraryConfigurations tests
-	# these are altered thanks to our eclass
-	sed -i -e 's:#IGNORE ::g' \
-		"${S}"/Tests/{OutDir,CMakeOnly/SelectLibraryConfigurations}/CMakeLists.txt \
-		|| die
-
-	pushd "${BUILD_DIR}" > /dev/null
-
-	local ctestargs
-	[[ -n ${TEST_VERBOSE} ]] && ctestargs="--extra-verbose --output-on-failure"
-
-	# Excluded tests:
-	#    BootstrapTest: we actualy bootstrap it every time so why test it.
-	#    BundleUtilities: bundle creation broken
-	#    CTest.updatecvs: which fails to commit as root
-	#    Fortran: requires fortran
-	#    Qt4Deploy, which tries to break sandbox and ignores prefix
-	#    RunCMake.CPack_RPM: breaks if app-arch/rpm is installed because
-	#        debugedit binary is not in the expected location
-	#    TestUpload, which requires network access
-	"${BUILD_DIR}"/bin/ctest ${ctestargs} \
-		-E "(BootstrapTest|BundleUtilities|CTest.UpdateCVS|Fortran|Qt4Deploy|RunCMake.CPack_RPM|TestUpload)" \
-		|| die "Tests failed"
-
-	popd > /dev/null
-}
-
-src_prepare() {
-	cmake-utils_src_prepare
-
-	# Add gcc libs to the default link paths
-	sed -i \
-		-e "s|@GENTOO_PORTAGE_GCCLIBDIR@|${EPREFIX}/usr/${CHOST}/lib/|g" \
-		-e "s|@GENTOO_PORTAGE_EPREFIX@|${EPREFIX}/|g" \
-		Modules/Platform/{UnixPaths,Darwin}.cmake || die "sed failed"
-	if ! has_version \>=${CATEGORY}/${PN}-3.4.0_rc1 ; then
-		CMAKE_BINARY="${S}/Bootstrap.cmk/cmake"
-		cmake_src_bootstrap
-	fi
-}
-
-src_configure() {
-	# Fix linking on Solaris
-	[[ ${CHOST} == *-solaris* ]] && append-ldflags -lsocket -lnsl
-
-	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}
-		-DSPHINX_MAN=$(usex doc)
-		-DSPHINX_HTML=$(usex doc)
-		-DBUILD_CursesDialog="$(usex ncurses)"
-		-DCMake_ENABLE_SERVER_MODE="$(usex server)"
-		-DCMAKE_USE_LIBUV="$(usex server)"
-	)
-
-	if use qt5 ; then
-		mycmakeargs+=(
-			-DBUILD_QtDialog=ON
-			$(cmake-utils_use_find_package qt5 Qt5Widgets)
-		)
-	fi
-
-	cmake-utils_src_configure
-}
-
-src_compile() {
-	cmake-utils_src_compile
-	use emacs && elisp-compile Auxiliary/cmake-mode.el
-}
-
-src_test() {
-	virtx cmake_src_test
-}
-
-src_install() {
-	cmake-utils_src_install
-
-	if use emacs; then
-		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 Auxiliary/vim/syntax/cmake.vim
-
-	insinto /usr/share/vim/vimfiles/indent
-	doins Auxiliary/vim/indent/cmake.vim
-
-	insinto /usr/share/vim/vimfiles/ftdetect
-	doins "${FILESDIR}/${PN}.vim"
-
-	dobashcomp Auxiliary/bash-completion/{${PN},ctest,cpack}
-
-	rm -r "${ED}"/usr/share/cmake/{completions,editors} || die
-}
-
-pkg_postinst() {
-	use emacs && elisp-site-regen
-	if use qt5; then
-		gnome2_icon_cache_update
-		xdg_desktop_database_update
-		xdg_mimeinfo_database_update
-	fi
-}
-
-pkg_postrm() {
-	use emacs && elisp-site-regen
-	if use qt5; then
-		gnome2_icon_cache_update
-		xdg_desktop_database_update
-		xdg_mimeinfo_database_update
-	fi
-}

diff --git a/dev-util/cmake/files/cmake-3.0.0-FindBoost-python.patch b/dev-util/cmake/files/cmake-3.0.0-FindBoost-python.patch
deleted file mode 100644
index a6291d2b850..00000000000
--- a/dev-util/cmake/files/cmake-3.0.0-FindBoost-python.patch
+++ /dev/null
@@ -1,93 +0,0 @@
-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)
-+      #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
-


^ permalink raw reply related	[flat|nested] 23+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/cmake/files/, dev-util/cmake/
@ 2018-02-27 10:06 Lars Wendler
  0 siblings, 0 replies; 23+ messages in thread
From: Lars Wendler @ 2018-02-27 10:06 UTC (permalink / raw
  To: gentoo-commits

commit:     65187c84488d7759ccd0be31071d3425efc02a6e
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Tue Feb 27 10:06:07 2018 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Tue Feb 27 10:06:07 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=65187c84

dev-util/cmake: Replaced pthread patch with official upstream fix.

Package-Manager: Portage-2.3.24, Repoman-2.3.6

 dev-util/cmake/cmake-3.11.0_rc1.ebuild             |  2 +-
 .../cmake-3.11.0_rc1-add_missing_pthread.patch     | 21 -----------
 .../files/cmake-3.11.0_rc1-system_thread.patch     | 44 ++++++++++++++++++++++
 3 files changed, 45 insertions(+), 22 deletions(-)

diff --git a/dev-util/cmake/cmake-3.11.0_rc1.ebuild b/dev-util/cmake/cmake-3.11.0_rc1.ebuild
index a1fdde41672..85d191ee0dc 100644
--- a/dev-util/cmake/cmake-3.11.0_rc1.ebuild
+++ b/dev-util/cmake/cmake-3.11.0_rc1.ebuild
@@ -60,9 +60,9 @@ PATCHES=(
 	"${FILESDIR}"/${PN}-2.8.10.2-FindPythonLibs.patch
 	"${FILESDIR}"/${PN}-3.9.0_rc2-FindPythonInterp.patch
 
-	"${FILESDIR}"/${PN}-3.11.0_rc1-add_missing_pthread.patch
 
 	# upstream fixes (can usually be removed with a version bump)
+	"${FILESDIR}"/${PN}-3.11.0_rc1-system_thread.patch
 )
 
 cmake_src_bootstrap() {

diff --git a/dev-util/cmake/files/cmake-3.11.0_rc1-add_missing_pthread.patch b/dev-util/cmake/files/cmake-3.11.0_rc1-add_missing_pthread.patch
deleted file mode 100644
index 3a4c4352c6f..00000000000
--- a/dev-util/cmake/files/cmake-3.11.0_rc1-add_missing_pthread.patch
+++ /dev/null
@@ -1,21 +0,0 @@
---- cmake-3.11.0-rc1/Source/CMakeLists.txt
-+++ cmake-3.11.0-rc1/Source/CMakeLists.txt
-@@ -765,6 +765,7 @@
-   ${CMAKE_LIBUV_LIBRARIES}
-   ${CMAKE_LIBRHASH_LIBRARIES}
-   ${CMake_KWIML_LIBRARIES}
-+  pthread
-   )
- 
- if(CMAKE_SYSTEM_NAME STREQUAL "Linux" AND CMAKE_SYSTEM_PROCESSOR MATCHES "sparc")
---- cmake-3.11.0-rc1/Tests/CMakeLib/CMakeLists.txt
-+++ cmake-3.11.0-rc1/Tests/CMakeLib/CMakeLists.txt
-@@ -30,7 +30,7 @@
- 
- create_test_sourcelist(CMakeLib_TEST_SRCS CMakeLibTests.cxx ${CMakeLib_TESTS})
- add_executable(CMakeLibTests ${CMakeLib_TEST_SRCS})
--target_link_libraries(CMakeLibTests CMakeLib)
-+target_link_libraries(CMakeLibTests CMakeLib pthread)
- 
- set_property(TARGET CMakeLibTests PROPERTY C_CLANG_TIDY "")
- set_property(TARGET CMakeLibTests PROPERTY CXX_CLANG_TIDY "")

diff --git a/dev-util/cmake/files/cmake-3.11.0_rc1-system_thread.patch b/dev-util/cmake/files/cmake-3.11.0_rc1-system_thread.patch
new file mode 100644
index 00000000000..b2ac2be99d4
--- /dev/null
+++ b/dev-util/cmake/files/cmake-3.11.0_rc1-system_thread.patch
@@ -0,0 +1,44 @@
+From 94eee5e683b80e0ffd8e0c4fd3a45b03f0f37b18 Mon Sep 17 00:00:00 2001
+From: Brad King <brad.king@kitware.com>
+Date: Thu, 22 Feb 2018 12:57:29 -0500
+Subject: [PATCH] CMakeLib: Link to system thread libraries to support std::thread
+
+Some environments require linking to thread libraries for `std::thread`.
+Express this direct dependency of CMakeLib explicitly.  Previously this
+was done indirectly through our bundled libuv, but that does not work
+when using a system libuv.
+
+Fixes: #17757
+---
+ CMakeLists.txt        | 2 ++
+ Source/CMakeLists.txt | 1 +
+ 2 files changed, 3 insertions(+)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index e4d2a9a..6623959 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -310,6 +310,8 @@ endmacro()
+ # Simply to improve readability of the main script.
+ #-----------------------------------------------------------------------
+ macro (CMAKE_BUILD_UTILITIES)
++  find_package(Threads)
++
+   #---------------------------------------------------------------------
+   # Create the kwsys library for CMake.
+   set(KWSYS_NAMESPACE cmsys)
+diff --git a/Source/CMakeLists.txt b/Source/CMakeLists.txt
+index e7c0732..a0010a2 100644
+--- a/Source/CMakeLists.txt
++++ b/Source/CMakeLists.txt
+@@ -765,6 +765,7 @@ target_link_libraries(CMakeLib cmsys
+   ${CMAKE_LIBUV_LIBRARIES}
+   ${CMAKE_LIBRHASH_LIBRARIES}
+   ${CMake_KWIML_LIBRARIES}
++  ${CMAKE_THREAD_LIBS_INIT}
+   )
+ 
+ if(CMAKE_SYSTEM_NAME STREQUAL "Linux" AND CMAKE_SYSTEM_PROCESSOR MATCHES "sparc")
+--
+libgit2 0.26.0
+


^ permalink raw reply related	[flat|nested] 23+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/cmake/files/, dev-util/cmake/
@ 2018-02-28  9:29 Lars Wendler
  0 siblings, 0 replies; 23+ messages in thread
From: Lars Wendler @ 2018-02-28  9:29 UTC (permalink / raw
  To: gentoo-commits

commit:     4f0c647821840622bc6461cef29935ef609eb9d5
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Wed Feb 28 09:05:32 2018 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Wed Feb 28 09:28:47 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4f0c6478

dev-util/cmake: Bump to version 3.11.0_rc2. Removed old.

Package-Manager: Portage-2.3.24, Repoman-2.3.6

 dev-util/cmake/Manifest                            |  2 +-
 ...e-3.11.0_rc1.ebuild => cmake-3.11.0_rc2.ebuild} |  1 -
 .../files/cmake-3.11.0_rc1-system_thread.patch     | 44 ----------------------
 3 files changed, 1 insertion(+), 46 deletions(-)

diff --git a/dev-util/cmake/Manifest b/dev-util/cmake/Manifest
index caa381b5c4d..34bb5f2785a 100644
--- a/dev-util/cmake/Manifest
+++ b/dev-util/cmake/Manifest
@@ -1,4 +1,4 @@
 DIST cmake-3.10.2.tar.gz 7824452 BLAKE2B cc579f27d7d5668d1f375e7263e0b62212be1191735189d34b1f0aa921861ead5d3872388eebbb5136a72e3dec3920f1ebfb0bf45b642cf92eef02e4c8665d49 SHA512 f58fdd025285c9ff5396c0bd0d9573fc8a498fcbe5c11b336cb8ad6154ca6bc875c1a5e22d6654ba98596791ecf89ae8adffb83450839fa1275756b0af5bf82b
-DIST cmake-3.11.0-rc1.tar.gz 7945667 BLAKE2B d2f36d20105eda2eddadcc0cc93d3de081fa7e41dfe3c9ecbc1d15ef658cd713894abdb300e34f5055ea37848339c0f1bce5952654fdd2525ed7a0405d7fb825 SHA512 0baa40a04184c33a04735e70ff782c76d0453baa00087480640c6e28c1461032b96bd3a3fa07bedc2855eea83349ef50ee2652ec810ad3314b86e80df8df62fb
+DIST cmake-3.11.0-rc2.tar.gz 7946761 BLAKE2B 7ef3df8bd1e356a43f71e806f4b63bf3d2ed9363782a1224846ad8c710ff01695ae2391db400d0f2d29ec12e20ee36da2e8019300bcb6e14d051b2e21c83d663 SHA512 4b91455f787c04e4b792129d6168d9c45d74b50582eaf3f738a9a0ddd690c0e359bbd3ad218470c2acbdfd09f4465dd9084433b0a20c033c3177abfb8af381ef
 DIST cmake-3.8.2.tar.gz 7504706 BLAKE2B a2ba30370a41dabcba40a967aa58eb7a4ed4151371394eff436866b09fd040b5483d2dcc2dc588a75288a65aff979806d15016a5395db2b25db844b9e942cac1 SHA512 49ea6f74a81dfa8ed8336c94ed50e0a483b796132c260f4bef159f9c389d99cc7b26ecfcccdd8b0a8f5b52fddd277c17c547d2a2e8848da9912c464ada1cbe3f
 DIST cmake-3.9.6.tar.gz 7705400 BLAKE2B e0a5307af0a34863c50ea6aa9323025ef588b27e648107c3a81c362ee7ae4a1d2a07cc335d816b286ce4ddb249f9c6c08c3e8cf99856c7113f3724f47c62da43 SHA512 9fda2c9ac054ef8fb1bf3885fbdec02c518da89ade220eba06b5502ac3ff300f635ec0922e61f3b2d090644fb743b8f71a04c532ab66b2d890a180cc7da54e6c

diff --git a/dev-util/cmake/cmake-3.11.0_rc1.ebuild b/dev-util/cmake/cmake-3.11.0_rc2.ebuild
similarity index 99%
rename from dev-util/cmake/cmake-3.11.0_rc1.ebuild
rename to dev-util/cmake/cmake-3.11.0_rc2.ebuild
index 85d191ee0dc..e6c5395608b 100644
--- a/dev-util/cmake/cmake-3.11.0_rc1.ebuild
+++ b/dev-util/cmake/cmake-3.11.0_rc2.ebuild
@@ -62,7 +62,6 @@ PATCHES=(
 
 
 	# upstream fixes (can usually be removed with a version bump)
-	"${FILESDIR}"/${PN}-3.11.0_rc1-system_thread.patch
 )
 
 cmake_src_bootstrap() {

diff --git a/dev-util/cmake/files/cmake-3.11.0_rc1-system_thread.patch b/dev-util/cmake/files/cmake-3.11.0_rc1-system_thread.patch
deleted file mode 100644
index b2ac2be99d4..00000000000
--- a/dev-util/cmake/files/cmake-3.11.0_rc1-system_thread.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-From 94eee5e683b80e0ffd8e0c4fd3a45b03f0f37b18 Mon Sep 17 00:00:00 2001
-From: Brad King <brad.king@kitware.com>
-Date: Thu, 22 Feb 2018 12:57:29 -0500
-Subject: [PATCH] CMakeLib: Link to system thread libraries to support std::thread
-
-Some environments require linking to thread libraries for `std::thread`.
-Express this direct dependency of CMakeLib explicitly.  Previously this
-was done indirectly through our bundled libuv, but that does not work
-when using a system libuv.
-
-Fixes: #17757
----
- CMakeLists.txt        | 2 ++
- Source/CMakeLists.txt | 1 +
- 2 files changed, 3 insertions(+)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index e4d2a9a..6623959 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -310,6 +310,8 @@ endmacro()
- # Simply to improve readability of the main script.
- #-----------------------------------------------------------------------
- macro (CMAKE_BUILD_UTILITIES)
-+  find_package(Threads)
-+
-   #---------------------------------------------------------------------
-   # Create the kwsys library for CMake.
-   set(KWSYS_NAMESPACE cmsys)
-diff --git a/Source/CMakeLists.txt b/Source/CMakeLists.txt
-index e7c0732..a0010a2 100644
---- a/Source/CMakeLists.txt
-+++ b/Source/CMakeLists.txt
-@@ -765,6 +765,7 @@ target_link_libraries(CMakeLib cmsys
-   ${CMAKE_LIBUV_LIBRARIES}
-   ${CMAKE_LIBRHASH_LIBRARIES}
-   ${CMake_KWIML_LIBRARIES}
-+  ${CMAKE_THREAD_LIBS_INIT}
-   )
- 
- if(CMAKE_SYSTEM_NAME STREQUAL "Linux" AND CMAKE_SYSTEM_PROCESSOR MATCHES "sparc")
---
-libgit2 0.26.0
-


^ permalink raw reply related	[flat|nested] 23+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/cmake/files/, dev-util/cmake/
@ 2018-03-12 15:32 Lars Wendler
  0 siblings, 0 replies; 23+ messages in thread
From: Lars Wendler @ 2018-03-12 15:32 UTC (permalink / raw
  To: gentoo-commits

commit:     e92084cc3d3ce917eee875e3e16da54cc6f329a5
Author:     Rolf Eike Beer <eike <AT> sf-mail <DOT> de>
AuthorDate: Fri Mar  9 20:05:35 2018 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Mon Mar 12 15:32:27 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e92084cc

dev-util/cmake: simplify FindBLAS patch

Most of the previous Gentoo patch has been upstreamed.
Closes: https://github.com/gentoo/gentoo/pull/7409

 dev-util/cmake/cmake-3.11.0_rc3.ebuild             |  2 +-
 .../cmake/files/cmake-3.11.0_rc2-FindBLAS.patch    | 23 ++++++++++++++++++++++
 2 files changed, 24 insertions(+), 1 deletion(-)

diff --git a/dev-util/cmake/cmake-3.11.0_rc3.ebuild b/dev-util/cmake/cmake-3.11.0_rc3.ebuild
index ebda7cc29dd..61e5d006511 100644
--- a/dev-util/cmake/cmake-3.11.0_rc3.ebuild
+++ b/dev-util/cmake/cmake-3.11.0_rc3.ebuild
@@ -51,7 +51,7 @@ PATCHES=(
 	"${FILESDIR}"/${PN}-3.1.0-darwin-isysroot.patch
 
 	# handle gentoo packaging in find modules
-	"${FILESDIR}"/${PN}-3.0.0-FindBLAS.patch
+	"${FILESDIR}"/${PN}-3.11.0_rc2-FindBLAS.patch
 	"${FILESDIR}"/${PN}-3.8.0_rc2-FindBoost-python.patch
 	"${FILESDIR}"/${PN}-3.0.2-FindLAPACK.patch
 	"${FILESDIR}"/${PN}-3.5.2-FindQt4.patch

diff --git a/dev-util/cmake/files/cmake-3.11.0_rc2-FindBLAS.patch b/dev-util/cmake/files/cmake-3.11.0_rc2-FindBLAS.patch
new file mode 100644
index 00000000000..6bad45b2087
--- /dev/null
+++ b/dev-util/cmake/files/cmake-3.11.0_rc2-FindBLAS.patch
@@ -0,0 +1,23 @@
+--- 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.
++#
+ # 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,9 @@
+ # (To distribute this file outside of CMake, substitute the full
+ #  License text for the above reference.)
+ 
++# first, try PkgConfig
++set(BLA_PREFER_PKGCONFIG On)
++
+ include(${CMAKE_CURRENT_LIST_DIR}/CheckFunctionExists.cmake)
+ include(${CMAKE_CURRENT_LIST_DIR}/CheckFortranFunctionExists.cmake)
+ 


^ permalink raw reply related	[flat|nested] 23+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/cmake/files/, dev-util/cmake/
@ 2018-06-24  9:34 Andreas Sturmlechner
  0 siblings, 0 replies; 23+ messages in thread
From: Andreas Sturmlechner @ 2018-06-24  9:34 UTC (permalink / raw
  To: gentoo-commits

commit:     71da15f49a47695ddcb668170a7fbacae924e49b
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Sun Jun 24 09:33:04 2018 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sun Jun 24 09:34:30 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=71da15f4

dev-util/cmake: Fix src_configure with >=libuv-1.21

Thanks-to: Thomas Deutschmann <whissi <AT> gentoo.org>
Closes: https://bugs.gentoo.org/658898
Package-Manager: Portage-2.3.40, Repoman-2.3.9

 dev-util/cmake/cmake-3.11.4.ebuild                 |  1 +
 dev-util/cmake/cmake-3.12.0_rc1.ebuild             |  1 +
 dev-util/cmake/files/cmake-3.11.4-libuv-1.21.patch | 28 ++++++++++++++++++++++
 3 files changed, 30 insertions(+)

diff --git a/dev-util/cmake/cmake-3.11.4.ebuild b/dev-util/cmake/cmake-3.11.4.ebuild
index 050883851f5..b9e25d10709 100644
--- a/dev-util/cmake/cmake-3.11.4.ebuild
+++ b/dev-util/cmake/cmake-3.11.4.ebuild
@@ -60,6 +60,7 @@ PATCHES=(
 	"${FILESDIR}"/${PN}-3.9.0_rc2-FindPythonInterp.patch
 
 	# upstream fixes (can usually be removed with a version bump)
+	"${FILESDIR}"/${P}-libuv-1.21.patch
 )
 
 cmake_src_bootstrap() {

diff --git a/dev-util/cmake/cmake-3.12.0_rc1.ebuild b/dev-util/cmake/cmake-3.12.0_rc1.ebuild
index 050883851f5..2cc5baaef0e 100644
--- a/dev-util/cmake/cmake-3.12.0_rc1.ebuild
+++ b/dev-util/cmake/cmake-3.12.0_rc1.ebuild
@@ -60,6 +60,7 @@ PATCHES=(
 	"${FILESDIR}"/${PN}-3.9.0_rc2-FindPythonInterp.patch
 
 	# upstream fixes (can usually be removed with a version bump)
+	"${FILESDIR}"/${PN}-3.11.4-libuv-1.21.patch
 )
 
 cmake_src_bootstrap() {

diff --git a/dev-util/cmake/files/cmake-3.11.4-libuv-1.21.patch b/dev-util/cmake/files/cmake-3.11.4-libuv-1.21.patch
new file mode 100644
index 00000000000..664c39aae90
--- /dev/null
+++ b/dev-util/cmake/files/cmake-3.11.4-libuv-1.21.patch
@@ -0,0 +1,28 @@
+From 92c4b3d900a24512967a960f108d985c819fdf00 Mon Sep 17 00:00:00 2001
+From: Raphael Kubo da Costa <rakuco@FreeBSD.org>
+Date: Sat, 23 Jun 2018 20:30:07 +0200
+Subject: [PATCH] FindLibUV: Also check uv/version.h for version detection
+
+Starting with libuv 1.21.0, libuv's headers were moved into a uv/ directory.
+Make FindLibUV aware of the file's new location for configuration to work.
+
+Upstream change: https://github.com/libuv/libuv/pull/1429
+---
+ Source/Modules/FindLibUV.cmake | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/Source/Modules/FindLibUV.cmake b/Source/Modules/FindLibUV.cmake
+index ba13d75..0554d62 100644
+--- a/Source/Modules/FindLibUV.cmake
++++ b/Source/Modules/FindLibUV.cmake
+@@ -63,6 +63,8 @@ mark_as_advanced(LibUV_INCLUDE_DIR)
+ set(_LibUV_H_REGEX "#[ \t]*define[ \t]+UV_VERSION_(MAJOR|MINOR|PATCH)[ \t]+[0-9]+")
+ if(LibUV_INCLUDE_DIR AND EXISTS "${LibUV_INCLUDE_DIR}/uv-version.h")
+   file(STRINGS "${LibUV_INCLUDE_DIR}/uv-version.h" _LibUV_H REGEX "${_LibUV_H_REGEX}")
++elseif(LibUV_INCLUDE_DIR AND EXISTS "${LibUV_INCLUDE_DIR}/uv/version.h")
++  file(STRINGS "${LibUV_INCLUDE_DIR}/uv/version.h" _LibUV_H REGEX "${_LibUV_H_REGEX}")
+ elseif(LibUV_INCLUDE_DIR AND EXISTS "${LibUV_INCLUDE_DIR}/uv.h")
+   file(STRINGS "${LibUV_INCLUDE_DIR}/uv.h" _LibUV_H REGEX "${_LibUV_H_REGEX}")
+ else()
+--
+libgit2 0.27.0


^ permalink raw reply related	[flat|nested] 23+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/cmake/files/, dev-util/cmake/
@ 2019-06-22 14:49 Lars Wendler
  0 siblings, 0 replies; 23+ messages in thread
From: Lars Wendler @ 2019-06-22 14:49 UTC (permalink / raw
  To: gentoo-commits

commit:     674ddc76cad685d358e7129404244beb9be75135
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Sat Jun 22 14:48:48 2019 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Sat Jun 22 14:49:41 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=674ddc76

dev-util/cmake: Bump to version 3.15.0_rc2

Package-Manager: Portage-2.3.67, Repoman-2.3.15
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 dev-util/cmake/Manifest                            |   1 +
 dev-util/cmake/cmake-3.15.0_rc2.ebuild             | 224 +++++++++++++++++++++
 .../cmake/files/cmake-3.15.0_rc2-FindBLAS.patch    |  37 ++++
 3 files changed, 262 insertions(+)

diff --git a/dev-util/cmake/Manifest b/dev-util/cmake/Manifest
index a0243d340bd..204d0c8adf4 100644
--- a/dev-util/cmake/Manifest
+++ b/dev-util/cmake/Manifest
@@ -1,2 +1,3 @@
 DIST cmake-3.14.3.tar.gz 8851085 BLAKE2B 92da2c563f7ddc3b12457f63eead850eb99b123298632b5a9e8f80f3e32db20e2b25bc60778855400261d13d4ef42600162248f4a92907a0c581e202fc6620eb SHA512 e257a96334f21f2b2f17e8d43aa32c2b069d13194604393c5ac9d3da193000d5328181c6cf861696186d022aba57679ee2d08073d8a7112727746b2b145a47e2
 DIST cmake-3.14.5.tar.gz 8854929 BLAKE2B 3e783de1ce541039c80228a56fed4fd28e9ef2ea48f274995f6f26f8b149f1684aab6da518f27106f364a4f0a6f370334f3a85dd61f1bcce22c34337ef4afdaa SHA512 9acd2de17db86052801194cac570bfc104320c249b83058aa59554b42c3d5af9c9293d1c069f3fe8512a80103d511186d840168cbc190ce9584ca99cb9b11e46
+DIST cmake-3.15.0-rc2.tar.gz 9253778 BLAKE2B 141fa60dcf18cb2ea0d97eca88da61ffdf5e0551172ab01c87e2637dc543218f19edd156e0d288458d2797474523b34830d70d38daa759e7b15aaaa318ca86e4 SHA512 397232f6d9742df9fd11fa02f5377613039bf62c6782e835a06a0c0e3a4da0742d608a2bf110d750336ce68b19fed1482b5df14ab9bef933c2054468d9488387

diff --git a/dev-util/cmake/cmake-3.15.0_rc2.ebuild b/dev-util/cmake/cmake-3.15.0_rc2.ebuild
new file mode 100644
index 00000000000..b8f071ece70
--- /dev/null
+++ b/dev-util/cmake/cmake-3.15.0_rc2.ebuild
@@ -0,0 +1,224 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CMAKE_MAKEFILE_GENERATOR="emake"
+CMAKE_REMOVE_MODULES="no"
+inherit bash-completion-r1 elisp-common flag-o-matic toolchain-funcs virtualx xdg cmake-utils
+
+MY_P="${P/_/-}"
+
+DESCRIPTION="Cross platform Make"
+HOMEPAGE="https://cmake.org/"
+SRC_URI="https://cmake.org/files/v$(ver_cut 1-2)/${MY_P}.tar.gz"
+
+LICENSE="CMake"
+SLOT="0"
+[[ "${PV}" = *_rc* ]] || \
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
+IUSE="doc emacs system-jsoncpp ncurses qt5 test"
+
+RDEPEND="
+	app-crypt/rhash
+	>=app-arch/libarchive-3.0.0:=
+	>=dev-libs/expat-2.0.1
+	>=dev-libs/libuv-1.10.0:=
+	>=net-misc/curl-7.21.5[ssl]
+	sys-libs/zlib
+	virtual/pkgconfig
+	emacs? ( virtual/emacs )
+	ncurses? ( sys-libs/ncurses:0= )
+	qt5? (
+		dev-qt/qtcore:5
+		dev-qt/qtgui:5
+		dev-qt/qtwidgets:5
+	)
+	system-jsoncpp? ( >=dev-libs/jsoncpp-0.6.0_rc2:0= )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+	doc? (
+		dev-python/requests
+		dev-python/sphinx
+	)
+"
+
+S="${WORKDIR}/${MY_P}"
+
+SITEFILE="50${PN}-gentoo.el"
+
+PATCHES=(
+	# prefix
+	"${FILESDIR}"/${PN}-3.4.0_rc1-darwin-bundle.patch
+	"${FILESDIR}"/${PN}-3.14.0_rc3-prefix-dirs.patch
+	# Next patch requires new work from prefix people
+	#"${FILESDIR}"/${PN}-3.1.0-darwin-isysroot.patch
+
+	# handle gentoo packaging in find modules
+	"${FILESDIR}"/${PN}-3.15.0_rc2-FindBLAS.patch
+	"${FILESDIR}"/${PN}-3.14.0_rc1-FindLAPACK.patch
+	"${FILESDIR}"/${PN}-3.5.2-FindQt4.patch
+
+	# respect python eclasses
+	"${FILESDIR}"/${PN}-2.8.10.2-FindPythonLibs.patch
+	"${FILESDIR}"/${PN}-3.9.0_rc2-FindPythonInterp.patch
+
+	# upstream fixes (can usually be removed with a version bump)
+)
+
+cmake_src_bootstrap() {
+	# Cleanup args to extract only JOBS.
+	# Because bootstrap does not know anything else.
+	grep -Eo '(\-j|\-\-jobs)(=?|[[:space:]]*)[[:digit:]]+' <<< "${MAKEOPTS}" > /dev/null
+	if [[ $? -eq 0 ]] ; then
+		par_arg=$(grep -Eo '(\-j|\-\-jobs)(=?|[[:space:]]*)[[:digit:]]+' <<< "${MAKEOPTS}" | tail -n1 | grep -o '[[:digit:]]+')
+		par_arg="--parallel=${par_arg}"
+	else
+		par_arg="--parallel=1"
+	fi
+
+	# disable running of cmake in boostrap command
+	sed -i \
+		-e '/"${cmake_bootstrap_dir}\/cmake"/s/^/#DONOTRUN /' \
+		bootstrap || die "sed failed"
+
+	# execinfo.h on Solaris isn't quite what it is on Darwin
+	if [[ ${CHOST} == *-solaris* ]] ; then
+		sed -i -e 's/execinfo\.h/blablabla.h/' \
+			Source/kwsys/CMakeLists.txt || die
+	fi
+
+	tc-export CC CXX LD
+
+	# bootstrap script isn't exactly /bin/sh compatible
+	${CONFIG_SHELL:-sh} ./bootstrap \
+		--prefix="${T}/cmakestrap/" \
+		${par_arg} \
+		|| die "Bootstrap failed"
+}
+
+cmake_src_test() {
+	# fix OutDir and SelectLibraryConfigurations tests
+	# these are altered thanks to our eclass
+	sed -i -e 's:#IGNORE ::g' \
+		"${S}"/Tests/{OutDir,CMakeOnly/SelectLibraryConfigurations}/CMakeLists.txt \
+		|| die
+
+	pushd "${BUILD_DIR}" > /dev/null
+
+	local ctestargs
+	[[ -n ${TEST_VERBOSE} ]] && ctestargs="--extra-verbose --output-on-failure"
+
+	# Excluded tests:
+	#    BootstrapTest: we actualy bootstrap it every time so why test it.
+	#    BundleUtilities: bundle creation broken
+	#    CMakeOnly.AllFindModules: pthread issues
+	#    CTest.updatecvs: which fails to commit as root
+	#    Fortran: requires fortran
+	#    RunCMake.CompilerLauncher: also requires fortran
+	#    RunCMake.CPack_RPM: breaks if app-arch/rpm is installed because
+	#        debugedit binary is not in the expected location
+	#    TestUpload, which requires network access
+	"${BUILD_DIR}"/bin/ctest \
+		-j "$(makeopts_jobs)" \
+		--test-load "$(makeopts_loadavg)" \
+		${ctestargs} \
+		-E "(BootstrapTest|BundleUtilities|CMakeOnly.AllFindModules|CompileOptions|CTest.UpdateCVS|Fortran|RunCMake.CompilerLauncher|RunCMake.CPack_RPM|TestUpload)" \
+		|| die "Tests failed"
+
+	popd > /dev/null
+}
+
+src_prepare() {
+	cmake-utils_src_prepare
+
+	# disable Xcode hooks, bug #652134
+	if [[ ${CHOST} == *-darwin* ]] ; then
+		sed -i -e 's/__APPLE__/__DISABLED_APPLE__/' \
+			Source/cmGlobalXCodeGenerator.cxx || die
+	fi
+
+	# Add gcc libs to the default link paths
+	sed -i \
+		-e "s|@GENTOO_PORTAGE_GCCLIBDIR@|${EPREFIX}/usr/${CHOST}/lib/|g" \
+		-e "$(usex prefix-guest "s|@GENTOO_HOST@||" "/@GENTOO_HOST@/d")" \
+		-e "s|@GENTOO_PORTAGE_EPREFIX@|${EPREFIX}/|g" \
+		Modules/Platform/{UnixPaths,Darwin}.cmake || die "sed failed"
+	if ! has_version \>=${CATEGORY}/${PN}-3.4.0_rc1 ; then
+		CMAKE_BINARY="${S}/Bootstrap.cmk/cmake"
+		cmake_src_bootstrap
+	fi
+}
+
+src_configure() {
+	# Fix linking on Solaris
+	[[ ${CHOST} == *-solaris* ]] && append-ldflags -lsocket -lnsl
+
+	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}
+		-DSPHINX_MAN=$(usex doc)
+		-DSPHINX_HTML=$(usex doc)
+		-DBUILD_CursesDialog="$(usex ncurses)"
+		-DBUILD_TESTING=$(usex test)
+	)
+
+	if use qt5 ; then
+		mycmakeargs+=(
+			-DBUILD_QtDialog=ON
+			$(cmake-utils_use_find_package qt5 Qt5Widgets)
+		)
+	fi
+
+	cmake-utils_src_configure
+}
+
+src_compile() {
+	cmake-utils_src_compile
+	use emacs && elisp-compile Auxiliary/cmake-mode.el
+}
+
+src_test() {
+	virtx cmake_src_test
+}
+
+src_install() {
+	cmake-utils_src_install
+
+	if use emacs; then
+		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 Auxiliary/vim/syntax/cmake.vim
+
+	insinto /usr/share/vim/vimfiles/indent
+	doins Auxiliary/vim/indent/cmake.vim
+
+	insinto /usr/share/vim/vimfiles/ftdetect
+	doins "${FILESDIR}/${PN}.vim"
+
+	dobashcomp Auxiliary/bash-completion/{${PN},ctest,cpack}
+
+	rm -r "${ED}"/usr/share/cmake/{completions,editors} || die
+}
+
+pkg_preinst() {
+	use qt5 && xdg_pkg_preinst
+}
+
+pkg_postinst() {
+	use emacs && elisp-site-regen
+	use qt5 && xdg_pkg_postinst
+}
+
+pkg_postrm() {
+	use emacs && elisp-site-regen
+	use qt5 && xdg_pkg_postrm
+}

diff --git a/dev-util/cmake/files/cmake-3.15.0_rc2-FindBLAS.patch b/dev-util/cmake/files/cmake-3.15.0_rc2-FindBLAS.patch
new file mode 100644
index 00000000000..64ab5612b86
--- /dev/null
+++ b/dev-util/cmake/files/cmake-3.15.0_rc2-FindBLAS.patch
@@ -0,0 +1,37 @@
+From 4de8287ce3b098ea579a28155d442eb589db8617 Mon Sep 17 00:00:00 2001
+From: Lars Wendler <polynomial-c@gentoo.org>
+Date: Sat, 22 Jun 2019 16:09:05 +0200
+Subject: [PATCH] Prefer pkgconfig in FindBLAS
+
+---
+ Modules/FindBLAS.cmake | 7 +++++++
+ 1 file changed, 7 insertions(+)
+
+diff --git a/Modules/FindBLAS.cmake b/Modules/FindBLAS.cmake
+index 77f9d0e40c..bbe155caa9 100644
+--- a/Modules/FindBLAS.cmake
++++ b/Modules/FindBLAS.cmake
+@@ -7,6 +7,10 @@ FindBLAS
+ 
+ Find Basic Linear Algebra Subprograms (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,
+@@ -92,6 +96,9 @@ installation.
+ 
+ #]=======================================================================]
+ 
++# first, try PkgConfig
++set(BLA_PREFER_PKGCONFIG On)
++
+ include(${CMAKE_CURRENT_LIST_DIR}/CheckFunctionExists.cmake)
+ include(${CMAKE_CURRENT_LIST_DIR}/CheckFortranFunctionExists.cmake)
+ include(${CMAKE_CURRENT_LIST_DIR}/CMakePushCheckState.cmake)
+-- 
+2.22.0
+


^ permalink raw reply related	[flat|nested] 23+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/cmake/files/, dev-util/cmake/
@ 2019-11-19 12:43 Lars Wendler
  0 siblings, 0 replies; 23+ messages in thread
From: Lars Wendler @ 2019-11-19 12:43 UTC (permalink / raw
  To: gentoo-commits

commit:     9d483abb28d8c4c794652234a48230e8691f896e
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Tue Nov 19 12:42:40 2019 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Tue Nov 19 12:42:57 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9d483abb

dev-util/cmake: Bump to version 3.16.0_rc4. Removed old

Package-Manager: Portage-2.3.79, Repoman-2.3.18
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 dev-util/cmake/Manifest                            |  2 +-
 ...e-3.16.0_rc3.ebuild => cmake-3.16.0_rc4.ebuild} |  2 +-
 .../files/cmake-3.16.0_rc4-darwin-bundle.patch     | 41 ++++++++++++++++++++++
 3 files changed, 43 insertions(+), 2 deletions(-)

diff --git a/dev-util/cmake/Manifest b/dev-util/cmake/Manifest
index 2ae2af3874b..c07984d761f 100644
--- a/dev-util/cmake/Manifest
+++ b/dev-util/cmake/Manifest
@@ -3,4 +3,4 @@ DIST cmake-3.14.6.tar.gz 8861359 BLAKE2B 257a9a89fe880f8945f47a4bb1980e66f0f28ee
 DIST cmake-3.14.7.tar.gz 8861587 BLAKE2B c1aa136fde8cd22592f15318a8ad7c37ef6e8895df3e097362077e8e1bf2125ba8f1a431a11ec40e7ab0d9e818452460f516aafac46cef4cc3b184bea12dbb09 SHA512 2f0e37cab2bde521452a30fffebf24429cea8a68c675f6970b0ea46dae5743fb80c0fe1d3ad174d226d968ac0760ecd33710232740a9b4b2f071df9e648cfec4
 DIST cmake-3.15.4.tar.gz 9270648 BLAKE2B b1c46ce76a549c78caa5c95be38fdbdcca685b1fade0a1687971d3b1cbb10953ec62b12401f67c389b096c87a6fa895ff339e1646e449472df76660b76e7d1ed SHA512 4058b89d35d243146f4f521356d483a850cbade316b60cf896c90da5d6b6504bc35224c0702fa525d90fe97a5311c7a895466e5eb2edb4cd4306a3cc45182650
 DIST cmake-3.15.5.tar.gz 9271925 BLAKE2B 9e30227600542edb4dc3dbafc1874db718816270d045fafe140037b8eb39e5d066d1ccd5b2f6c817babfa43a0e3ff7c5d58d243b97f616ec504cafc428872b67 SHA512 c71a50fe864772dbef16ef472c1ead88e8e322c8451bc395c454af9baa7c7eb6e1bd9abdca0745f979fbacf97f1e1ceaa84c0fcc412cf1e3bcd835aff32199b6
-DIST cmake-3.16.0-rc3.tar.gz 9102878 BLAKE2B af0a74ec617804c0a8680f0325274927dbcea5aa375223dccd3ce43f6b6c77ef0c456b89bb4f5e4e22e856f7dd9f3e1dead62d2b029749e2252e2a9898647283 SHA512 137faa9c4b90ec23b95660b12310f5a11374c461b9149fb93e5ce8ed319d453f10e12ff5a3c9df2cfc3408998bdeddf4ffb3d3b62702575a740ddd5b650905a4
+DIST cmake-3.16.0-rc4.tar.gz 9107275 BLAKE2B 659210919781883e3c40f0b5ecb638a2c50b302f10a8dd3d2d79d850f1edcaf58387fde0e151f7f71a33e75dd8636e8bfa88751739f3e1c0a5c4f21c7d05f4f4 SHA512 833c2aec8d19b8402bff2c7790914d2be325c3ae334038d554435214b3f702b4501cc0942e1894b745261e4932dd74ade4a790ccd917bad83bbb2435b9395572

diff --git a/dev-util/cmake/cmake-3.16.0_rc3.ebuild b/dev-util/cmake/cmake-3.16.0_rc4.ebuild
similarity index 99%
rename from dev-util/cmake/cmake-3.16.0_rc3.ebuild
rename to dev-util/cmake/cmake-3.16.0_rc4.ebuild
index d9456163e0e..7380a3a30f8 100644
--- a/dev-util/cmake/cmake-3.16.0_rc3.ebuild
+++ b/dev-util/cmake/cmake-3.16.0_rc4.ebuild
@@ -51,7 +51,7 @@ SITEFILE="50${PN}-gentoo.el"
 
 PATCHES=(
 	# prefix
-	"${FILESDIR}"/${PN}-3.4.0_rc1-darwin-bundle.patch
+	"${FILESDIR}"/${PN}-3.16.0_rc4-darwin-bundle.patch
 	"${FILESDIR}"/${PN}-3.14.0_rc3-prefix-dirs.patch
 	# Next patch requires new work from prefix people
 	#"${FILESDIR}"/${PN}-3.1.0-darwin-isysroot.patch

diff --git a/dev-util/cmake/files/cmake-3.16.0_rc4-darwin-bundle.patch b/dev-util/cmake/files/cmake-3.16.0_rc4-darwin-bundle.patch
new file mode 100644
index 00000000000..5aac1be55da
--- /dev/null
+++ b/dev-util/cmake/files/cmake-3.16.0_rc4-darwin-bundle.patch
@@ -0,0 +1,41 @@
+From ce929588adf61ee24bb6850f4b9a58cc7ea224c7 Mon Sep 17 00:00:00 2001
+From: Lars Wendler <polynomial-c@gentoo.org>
+Date: Tue, 19 Nov 2019 12:28:53 +0100
+Subject: [PATCH] Don't use .so for modules on darwin/macos. Use .bundle
+ instead.
+
+Patch by Heiko Przybyl
+
+Forward-ported from 2.8.10 to 3.4.0-rc1
+Forward-ported from 3.4.0-rc1 to 3.16.0-rc4
+
+Signed-off-by: Lars Wendler <polynomial-c@gentoo.org>
+---
+ Modules/Platform/Darwin.cmake | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/Modules/Platform/Darwin.cmake b/Modules/Platform/Darwin.cmake
+index 1482d76ae6..6a432963b6 100644
+--- a/Modules/Platform/Darwin.cmake
++++ b/Modules/Platform/Darwin.cmake
+@@ -43,7 +43,7 @@ endif()
+ set(CMAKE_SHARED_LIBRARY_PREFIX "lib")
+ set(CMAKE_SHARED_LIBRARY_SUFFIX ".dylib")
+ set(CMAKE_SHARED_MODULE_PREFIX "lib")
+-set(CMAKE_SHARED_MODULE_SUFFIX ".so")
++set(CMAKE_SHARED_MODULE_SUFFIX ".bundle")
+ set(CMAKE_MODULE_EXISTS 1)
+ set(CMAKE_DL_LIBS "")
+ 
+@@ -67,7 +67,7 @@ foreach(lang C CXX OBJC OBJCXX)
+ endforeach()
+ 
+ set(CMAKE_PLATFORM_HAS_INSTALLNAME 1)
+-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
+-- 
+2.24.0
+


^ permalink raw reply related	[flat|nested] 23+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/cmake/files/, dev-util/cmake/
@ 2020-09-06 16:46 Andreas Sturmlechner
  0 siblings, 0 replies; 23+ messages in thread
From: Andreas Sturmlechner @ 2020-09-06 16:46 UTC (permalink / raw
  To: gentoo-commits

commit:     756046b3193fbc055435914b252bed4eabf3c766
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Sat Sep  5 16:10:47 2020 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sun Sep  6 16:45:36 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=756046b3

dev-util/cmake: Tolerate nullptr from uv_default_loop

See also: https://discourse.cmake.org/t/cmake-3-16-5-segmentation-violation/1316

Thanks-to: <tedheadster <AT> gmail.com>
Bug: https://bugs.gentoo.org/726962
Package-Manager: Portage-3.0.5, Repoman-3.0.1
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 ...{cmake-3.17.4.ebuild => cmake-3.17.4-r1.ebuild} |  1 +
 .../cmake/files/cmake-3.17.4-uv-check-return.patch | 46 ++++++++++++++++++++++
 2 files changed, 47 insertions(+)

diff --git a/dev-util/cmake/cmake-3.17.4.ebuild b/dev-util/cmake/cmake-3.17.4-r1.ebuild
similarity index 99%
rename from dev-util/cmake/cmake-3.17.4.ebuild
rename to dev-util/cmake/cmake-3.17.4-r1.ebuild
index a65d699eeb8..3af2be355a2 100644
--- a/dev-util/cmake/cmake-3.17.4.ebuild
+++ b/dev-util/cmake/cmake-3.17.4-r1.ebuild
@@ -67,6 +67,7 @@ PATCHES=(
 	"${FILESDIR}"/${PN}-3.9.0_rc2-FindPythonInterp.patch
 
 	# upstream fixes (can usually be removed with a version bump)
+	"${FILESDIR}"/${P}-uv-check-return.patch # bug 726962
 )
 
 cmake_src_bootstrap() {

diff --git a/dev-util/cmake/files/cmake-3.17.4-uv-check-return.patch b/dev-util/cmake/files/cmake-3.17.4-uv-check-return.patch
new file mode 100644
index 00000000000..ab4a45a3ec1
--- /dev/null
+++ b/dev-util/cmake/files/cmake-3.17.4-uv-check-return.patch
@@ -0,0 +1,46 @@
+From 0fddcc1e5bd8e4672b09e2478edb72e5c0338f1b Mon Sep 17 00:00:00 2001
+From: Brad King <brad.king@kitware.com>
+Date: Wed, 1 Jul 2020 16:23:56 -0400
+Subject: [PATCH] cmake: Tolerate nullptr from uv_default_loop
+
+`uv_default_loop()` can return `nullptr` when running on a Linux kernel
+configured without `CONFIG_EVENTFD`.
+
+Fixes: #20899
+---
+ Source/cmSystemTools.cxx | 4 +++-
+ Source/cmakemain.cxx     | 4 +++-
+ 2 files changed, 6 insertions(+), 2 deletions(-)
+
+diff --git a/Source/cmSystemTools.cxx b/Source/cmSystemTools.cxx
+index be799b0402..2f08b840cd 100644
+--- a/Source/cmSystemTools.cxx
++++ b/Source/cmSystemTools.cxx
+@@ -823,7 +823,9 @@ void cmSystemTools::InitializeLibUV()
+   // Perform libuv one-time initialization now, and then un-do its
+   // global _fmode setting so that using libuv does not change the
+   // default file text/binary mode.  See libuv issue 840.
+-  uv_loop_close(uv_default_loop());
++  if (uv_loop_t* loop = uv_default_loop()) {
++    uv_loop_close(loop);
++  }
+ #  ifdef _MSC_VER
+   _set_fmode(_O_TEXT);
+ #  else
+diff --git a/Source/cmakemain.cxx b/Source/cmakemain.cxx
+index 75280fb8a5..e0c17f8d54 100644
+--- a/Source/cmakemain.cxx
++++ b/Source/cmakemain.cxx
+@@ -717,6 +717,8 @@ int main(int ac, char const* const* av)
+ #ifndef CMAKE_BOOTSTRAP
+   cmDynamicLoader::FlushCache();
+ #endif
+-  uv_loop_close(uv_default_loop());
++  if (uv_loop_t* loop = uv_default_loop()) {
++    uv_loop_close(loop);
++  }
+   return ret;
+ }
+-- 
+GitLab
+


^ permalink raw reply related	[flat|nested] 23+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/cmake/files/, dev-util/cmake/
@ 2020-11-28 15:22 Fabian Groffen
  0 siblings, 0 replies; 23+ messages in thread
From: Fabian Groffen @ 2020-11-28 15:22 UTC (permalink / raw
  To: gentoo-commits

commit:     88ae28941466e41fff5dbb2c2a8a35e7625a681c
Author:     Fabian Groffen <grobian <AT> gentoo <DOT> org>
AuthorDate: Sat Nov 28 15:22:11 2020 +0000
Commit:     Fabian Groffen <grobian <AT> gentoo <DOT> org>
CommitDate: Sat Nov 28 15:22:24 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=88ae2894

dev-util/cmake-3.19.1: fix compilation for Darwin GCC

Package-Manager: Portage-3.0.9, Repoman-3.0.2
Signed-off-by: Fabian Groffen <grobian <AT> gentoo.org>

 dev-util/cmake/cmake-3.19.1.ebuild                 |  7 +++++--
 dev-util/cmake/files/cmake-3.19.1-darwin-gcc.patch | 14 ++++++++++++++
 2 files changed, 19 insertions(+), 2 deletions(-)

diff --git a/dev-util/cmake/cmake-3.19.1.ebuild b/dev-util/cmake/cmake-3.19.1.ebuild
index 5dc94575a14..09d448bde37 100644
--- a/dev-util/cmake/cmake-3.19.1.ebuild
+++ b/dev-util/cmake/cmake-3.19.1.ebuild
@@ -54,8 +54,7 @@ PATCHES=(
 	# prefix
 	"${FILESDIR}"/${PN}-3.16.0_rc4-darwin-bundle.patch
 	"${FILESDIR}"/${PN}-3.14.0_rc3-prefix-dirs.patch
-	# Next patch requires new work from prefix people
-	#"${FILESDIR}"/${PN}-3.1.0-darwin-isysroot.patch
+	"${FILESDIR}"/${PN}-3.19.1-darwin-gcc.patch
 
 	# handle gentoo packaging in find modules
 	"${FILESDIR}"/${PN}-3.17.0_rc1-FindBLAS.patch
@@ -134,6 +133,10 @@ src_prepare() {
 	if [[ ${CHOST} == *-darwin* ]] ; then
 		sed -i -e 's/__APPLE__/__DISABLED_APPLE__/' \
 			Source/cmGlobalXCodeGenerator.cxx || die
+		# disable isysroot usage with GCC, we've properly instructed
+		# where things are via GCC configuration and ldwrapper
+		sed -i -e '/cmake_gnu_set_sysroot_flag/d' \
+			Modules/Platform/Apple-GNU-C{,XX}.cmake || die
 	fi
 
 	# Add gcc libs to the default link paths

diff --git a/dev-util/cmake/files/cmake-3.19.1-darwin-gcc.patch b/dev-util/cmake/files/cmake-3.19.1-darwin-gcc.patch
new file mode 100644
index 00000000000..0f0a6b681bc
--- /dev/null
+++ b/dev-util/cmake/files/cmake-3.19.1-darwin-gcc.patch
@@ -0,0 +1,14 @@
+grobian@gentoo.org: fix compilation on macOS using GCC
+
+compiler says it all: include memory if you use unique_ptr
+
+--- a/Source/cmMachO.h.orig	2020-11-24 14:50:26.000000000 +0100
++++ b/Source/cmMachO.h	2020-11-28 16:05:11.509620124 +0100
+@@ -6,6 +6,7 @@
+ 
+ #include <iosfwd>
+ #include <string>
++#include <memory>
+ 
+ #if !defined(CMAKE_USE_MACH_PARSER)
+ #  error "This file may be included only if CMAKE_USE_MACH_PARSER is enabled."


^ permalink raw reply related	[flat|nested] 23+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/cmake/files/, dev-util/cmake/
@ 2020-12-12 18:02 Andreas Sturmlechner
  0 siblings, 0 replies; 23+ messages in thread
From: Andreas Sturmlechner @ 2020-12-12 18:02 UTC (permalink / raw
  To: gentoo-commits

commit:     814b6b0d056d858c629720ca1a97400688d2542f
Author:     Adrian Grigo <agrigo2001 <AT> yahoo <DOT> com <DOT> au>
AuthorDate: Tue Dec  8 03:19:22 2020 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sat Dec 12 17:58:23 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=814b6b0d

dev-util/cmake: Backport FPHSA fix

Changes to Find Package Handle Standard Args in 3.19.0 result in
an error when compiling openvdb-7.1.0.

This is a known problem in cmake and the fix has been merged into
3.19.2 upstream.

See https://gitlab.kitware.com/cmake/cmake/-/issues/21505

To produce the bug:
emerge dev-util/cmake-3.19.0 or 3.19.1 (the bug not exist in <= 3.18)
emerge media-gfx/openvdb-7.1.0-r1

Compilation fails with
find_package_check_version(): Cannot be used outside a 'Find Module'

To fix the bug:
Apply the patch provided in this bug fix to cmake, then repeat the
above steps and compilation of openvdb succeeds.

The patch ensures that the CMAKE_FPHSA_PACKAGE_NAME package is made
available outside find_package.

Thanks to Dennis Schridde for finding the upstream fix, produced by
Marc Chevrier.

* committer-comment: use Gentoo bug ref; git format-patch 14ecf9c2f

Signed-off-by: Adrian Grigo <agrigo2001 <AT> yahoo.com.au>
Closes: https://bugs.gentoo.org/755743
Package-Manager: Portage-3.0.9, Repoman-3.0.2
Closes: https://github.com/gentoo/gentoo/pull/18560
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 dev-util/cmake/cmake-3.19.1-r1.ebuild              |  1 +
 ...ake-3.19.1-use-FPHSA-outside-find_package.patch | 40 ++++++++++++++++++++++
 2 files changed, 41 insertions(+)

diff --git a/dev-util/cmake/cmake-3.19.1-r1.ebuild b/dev-util/cmake/cmake-3.19.1-r1.ebuild
index 97f173f95a8..2726694149e 100644
--- a/dev-util/cmake/cmake-3.19.1-r1.ebuild
+++ b/dev-util/cmake/cmake-3.19.1-r1.ebuild
@@ -70,6 +70,7 @@ PATCHES=(
 
 	# upstream fixes (can usually be removed with a version bump)
 	"${FILESDIR}"/${P}-fix-spurious-include-target.patch # bug 759271
+	"${FILESDIR}"/${P}-use-FPHSA-outside-find_package.patch # bug 755743
 )
 
 cmake_src_bootstrap() {

diff --git a/dev-util/cmake/files/cmake-3.19.1-use-FPHSA-outside-find_package.patch b/dev-util/cmake/files/cmake-3.19.1-use-FPHSA-outside-find_package.patch
new file mode 100644
index 00000000000..8cde769ce8f
--- /dev/null
+++ b/dev-util/cmake/files/cmake-3.19.1-use-FPHSA-outside-find_package.patch
@@ -0,0 +1,40 @@
+From 14ecf9c2f6edfae4033d9311f79d79d0d07fc1cf Mon Sep 17 00:00:00 2001
+From: Marc Chevrier <marc.chevrier@gmail.com>
+Date: Wed, 25 Nov 2020 16:36:12 +0100
+Subject: [PATCH] FPHSA: ensure it can be used outside 'find_package'
+
+Fixes: #21505
+---
+ Modules/FindPackageHandleStandardArgs.cmake | 9 +++++++--
+ 1 file changed, 7 insertions(+), 2 deletions(-)
+
+diff --git a/Modules/FindPackageHandleStandardArgs.cmake b/Modules/FindPackageHandleStandardArgs.cmake
+index 7af017136d..7e172779e4 100644
+--- a/Modules/FindPackageHandleStandardArgs.cmake
++++ b/Modules/FindPackageHandleStandardArgs.cmake
+@@ -275,8 +275,10 @@ function(FIND_PACKAGE_CHECK_VERSION version result)
+     unset (${FPCV_RESULT_MESSAGE_VARIABLE} PARENT_SCOPE)
+   endif()
+ 
+-  if (CMAKE_FIND_PACKAGE_NAME)
+-    set (package ${CMAKE_FIND_PACKAGE_NAME})
++  if (_CMAKE_FPHSA_PACKAGE_NAME)
++    set (package "${_CMAKE_FPHSA_PACKAGE_NAME}")
++  elseif (CMAKE_FIND_PACKAGE_NAME)
++    set (package "${CMAKE_FIND_PACKAGE_NAME}")
+   else()
+     message (FATAL_ERROR "find_package_check_version(): Cannot be used outside a 'Find Module'")
+   endif()
+@@ -436,6 +438,9 @@ function(FIND_PACKAGE_HANDLE_STANDARD_ARGS _NAME _FIRST_ARG)
+       "will be used.")
+   endif()
+ 
++  # to propagate package name to FIND_PACKAGE_CHECK_VERSION
++  set(_CMAKE_FPHSA_PACKAGE_NAME "${_NAME}")
++
+   # now that we collected all arguments, process them
+ 
+   if("x${FPHSA_FAIL_MESSAGE}" STREQUAL "xDEFAULT_MSG")
+-- 
+GitLab
+


^ permalink raw reply related	[flat|nested] 23+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/cmake/files/, dev-util/cmake/
@ 2021-05-14 18:22 Andreas Sturmlechner
  0 siblings, 0 replies; 23+ messages in thread
From: Andreas Sturmlechner @ 2021-05-14 18:22 UTC (permalink / raw
  To: gentoo-commits

commit:     6296367630f611bfbdcb389afd9e13141dcaa1d8
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Fri May 14 18:17:10 2021 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Fri May 14 18:22:30 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=62963676

dev-util/cmake: Fix IUSE=doc with >=dev-python/sphinx-4.0.0

Closes: https://bugs.gentoo.org/789375
Package-Manager: Portage-3.0.18, Repoman-3.0.3
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 dev-util/cmake/cmake-3.20.2.ebuild               |  1 +
 dev-util/cmake/files/cmake-3.20.2-sphinx-4.patch | 29 ++++++++++++++++++++++++
 2 files changed, 30 insertions(+)

diff --git a/dev-util/cmake/cmake-3.20.2.ebuild b/dev-util/cmake/cmake-3.20.2.ebuild
index b1cc1455ac6..95de22ba838 100644
--- a/dev-util/cmake/cmake-3.20.2.ebuild
+++ b/dev-util/cmake/cmake-3.20.2.ebuild
@@ -70,6 +70,7 @@ PATCHES=(
 	"${FILESDIR}"/${PN}-3.18.0-filter_distcc_warning.patch # bug 691544
 
 	# upstream fixes (can usually be removed with a version bump)
+	"${FILESDIR}"/${P}-sphinx-4.patch # bug 789375
 )
 
 cmake_src_bootstrap() {

diff --git a/dev-util/cmake/files/cmake-3.20.2-sphinx-4.patch b/dev-util/cmake/files/cmake-3.20.2-sphinx-4.patch
new file mode 100644
index 00000000000..dabe39e0b37
--- /dev/null
+++ b/dev-util/cmake/files/cmake-3.20.2-sphinx-4.patch
@@ -0,0 +1,29 @@
+From bb9c69ed7052614546d34d98a9cf1218e4a45bdc Mon Sep 17 00:00:00 2001
+From: Brad King <brad.king@kitware.com>
+Date: Fri, 14 May 2021 10:26:11 -0400
+Subject: [PATCH] Utilities/Sphinx: Update man page config for Sphinx 4
+
+Sphinx 4 by default generates `man/#/foo.#`, but older versions generate
+`man/foo.#` as our install rules expect.  Update our Sphinx config file
+to tell Sphinx 4 to use the old layout.
+
+Fixes: #22192
+---
+ Utilities/Sphinx/conf.py.in | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/Utilities/Sphinx/conf.py.in b/Utilities/Sphinx/conf.py.in
+index 5def681dc4..c383828bd7 100644
+--- a/Utilities/Sphinx/conf.py.in
++++ b/Utilities/Sphinx/conf.py.in
+@@ -53,6 +53,7 @@ for fpath in cmake_manuals:
+     except Exception as e:
+         sys.stderr.write("ERROR: %s\n" % str(e))
+ man_show_urls = False
++man_make_section_directory = False
+ 
+ html_show_sourcelink = True
+ html_static_path = ['@conf_path@/static']
+-- 
+GitLab
+


^ permalink raw reply related	[flat|nested] 23+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/cmake/files/, dev-util/cmake/
@ 2021-05-26 11:32 Lars Wendler
  0 siblings, 0 replies; 23+ messages in thread
From: Lars Wendler @ 2021-05-26 11:32 UTC (permalink / raw
  To: gentoo-commits

commit:     2358d1d626fc0d6dbaf3ddab9932671498d27099
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Wed May 26 11:30:59 2021 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Wed May 26 11:32:35 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2358d1d6

dev-util/cmake: Revbump to add boost-1.76 support

Bug: https://bugs.gentoo.org/791712
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 ...{cmake-3.20.2.ebuild => cmake-3.20.2-r1.ebuild} |  1 +
 dev-util/cmake/files/cmake-3.20.2-boost-1.76.patch | 46 ++++++++++++++++++++++
 2 files changed, 47 insertions(+)

diff --git a/dev-util/cmake/cmake-3.20.2.ebuild b/dev-util/cmake/cmake-3.20.2-r1.ebuild
similarity index 99%
rename from dev-util/cmake/cmake-3.20.2.ebuild
rename to dev-util/cmake/cmake-3.20.2-r1.ebuild
index 95de22ba838..627ca4f7a02 100644
--- a/dev-util/cmake/cmake-3.20.2.ebuild
+++ b/dev-util/cmake/cmake-3.20.2-r1.ebuild
@@ -71,6 +71,7 @@ PATCHES=(
 
 	# upstream fixes (can usually be removed with a version bump)
 	"${FILESDIR}"/${P}-sphinx-4.patch # bug 789375
+	"${FILESDIR}"/${P}-boost-1.76.patch # bug 791712
 )
 
 cmake_src_bootstrap() {

diff --git a/dev-util/cmake/files/cmake-3.20.2-boost-1.76.patch b/dev-util/cmake/files/cmake-3.20.2-boost-1.76.patch
new file mode 100644
index 00000000000..898f8a75d7e
--- /dev/null
+++ b/dev-util/cmake/files/cmake-3.20.2-boost-1.76.patch
@@ -0,0 +1,46 @@
+From 79be37b94e7353ec056e6343ba293ce1b60627d4 Mon Sep 17 00:00:00 2001
+From: Brad King <brad.king@kitware.com>
+Date: Fri, 7 May 2021 08:51:40 -0400
+Subject: [PATCH] FindBoost: Add support for Boost 1.76
+
+Update the list of known versions.
+
+Run the command
+
+    cmake -DBOOST_DIR=/path/to/boost_1_76_0 \
+      -P Utilities/Scripts/BoostScanDeps.cmake
+
+to extract dependencies from the 1.76.0 source tree.
+They are the same as 1.75's dependencies, so just update
+the version check for warning about newer versions.
+
+Fixes: #22167
+---
+ Modules/FindBoost.cmake | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/Modules/FindBoost.cmake b/Modules/FindBoost.cmake
+index f8887ad2be..d31f925cb6 100644
+--- a/Modules/FindBoost.cmake
++++ b/Modules/FindBoost.cmake
+@@ -1350,7 +1350,7 @@ function(_Boost_COMPONENT_DEPENDENCIES component _ret)
+       set(_Boost_TIMER_DEPENDENCIES chrono)
+       set(_Boost_WAVE_DEPENDENCIES filesystem serialization thread chrono date_time atomic)
+       set(_Boost_WSERIALIZATION_DEPENDENCIES serialization)
+-      if(Boost_VERSION_STRING VERSION_GREATER_EQUAL 1.76.0 AND NOT Boost_NO_WARN_NEW_VERSIONS)
++      if(Boost_VERSION_STRING VERSION_GREATER_EQUAL 1.77.0 AND NOT Boost_NO_WARN_NEW_VERSIONS)
+         message(WARNING "New Boost version may have incorrect or missing dependencies and imported targets")
+       endif()
+     endif()
+@@ -1622,7 +1622,7 @@ else()
+   # _Boost_COMPONENT_HEADERS.  See the instructions at the top of
+   # _Boost_COMPONENT_DEPENDENCIES.
+   set(_Boost_KNOWN_VERSIONS ${Boost_ADDITIONAL_VERSIONS}
+-    "1.75.0" "1.75" "1.74.0" "1.74"
++    "1.76.0" "1.76" "1.75.0" "1.75" "1.74.0" "1.74"
+     "1.73.0" "1.73" "1.72.0" "1.72" "1.71.0" "1.71" "1.70.0" "1.70" "1.69.0" "1.69"
+     "1.68.0" "1.68" "1.67.0" "1.67" "1.66.0" "1.66" "1.65.1" "1.65.0" "1.65"
+     "1.64.0" "1.64" "1.63.0" "1.63" "1.62.0" "1.62" "1.61.0" "1.61" "1.60.0" "1.60"
+-- 
+GitLab
+


^ permalink raw reply related	[flat|nested] 23+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/cmake/files/, dev-util/cmake/
@ 2023-09-11 23:54 Sam James
  0 siblings, 0 replies; 23+ messages in thread
From: Sam James @ 2023-09-11 23:54 UTC (permalink / raw
  To: gentoo-commits

commit:     6e764dd986e19eeb65e440de5b1b8734f5b3adc5
Author:     Paul Zander <negril.nx+gentoo <AT> gmail <DOT> com>
AuthorDate: Sat Sep  9 12:15:51 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Sep 11 23:53:06 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6e764dd9

dev-util/cmake: remove extra whitespaces from pkg-config call

Due to poor parsing cmake adds extra whitespaces to the package name and
package version, breaking pkgconf-2.0.3.

This fixes this incorrect behaviour.

Upstream merge request is at https://gitlab.kitware.com/cmake/cmake/-/merge_requests/8789.

Closes: https://bugs.gentoo.org/913644
Signed-off-by: Paul Zander <negril.nx+gentoo <AT> gmail.com>
Closes: https://github.com/gentoo/gentoo/pull/32700
Signed-off-by: Sam James <sam <AT> gentoo.org>

 dev-util/cmake/cmake-3.27.4-r1.ebuild              | 291 +++++++++++++++++++++
 ...ig-ignore-whitespace-separators-in-versio.patch |  38 +++
 2 files changed, 329 insertions(+)

diff --git a/dev-util/cmake/cmake-3.27.4-r1.ebuild b/dev-util/cmake/cmake-3.27.4-r1.ebuild
new file mode 100644
index 000000000000..f89c4e78a7d9
--- /dev/null
+++ b/dev-util/cmake/cmake-3.27.4-r1.ebuild
@@ -0,0 +1,291 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Generate using https://github.com/thesamesam/sam-gentoo-scripts/blob/main/niche/generate-cmake-docs
+# Set to 1 if prebuilt, 0 if not
+# (the construct below is to allow overriding from env for script)
+: ${CMAKE_DOCS_PREBUILT:=1}
+
+CMAKE_DOCS_PREBUILT_DEV=sam
+#CMAKE_DOCS_VERSION=$(ver_cut 1-3)
+CMAKE_DOCS_VERSION=3.27.0
+# Default to generating docs (inc. man pages) if no prebuilt; overridden later
+# See bug #784815
+CMAKE_DOCS_USEFLAG="+doc"
+
+# TODO RunCMake.LinkWhatYouUse fails consistently w/ ninja
+# ... but seems fine as of 3.22.3?
+# TODO ... but bootstrap sometimes(?) fails with ninja now. bug #834759.
+CMAKE_MAKEFILE_GENERATOR="emake"
+CMAKE_REMOVE_MODULES_LIST=( none )
+inherit bash-completion-r1 cmake elisp-common flag-o-matic multiprocessing \
+	toolchain-funcs virtualx xdg-utils
+
+MY_P="${P/_/-}"
+
+DESCRIPTION="Cross platform Make"
+HOMEPAGE="https://cmake.org/"
+if [[ ${PV} == 9999 ]] ; then
+	CMAKE_DOCS_PREBUILT=0
+
+	EGIT_REPO_URI="https://gitlab.kitware.com/cmake/cmake.git"
+	inherit git-r3
+else
+	SRC_URI="https://cmake.org/files/v$(ver_cut 1-2)/${MY_P}.tar.gz"
+
+	if [[ ${CMAKE_DOCS_PREBUILT} == 1 ]] ; then
+		SRC_URI+=" !doc? ( https://dev.gentoo.org/~${CMAKE_DOCS_PREBUILT_DEV}/distfiles/${CATEGORY}/${PN}/${PN}-${CMAKE_DOCS_VERSION}-docs.tar.xz )"
+	fi
+
+	if [[ ${PV} != *_rc* ]] ; then
+		VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/bradking.asc
+		inherit verify-sig
+
+		SRC_URI+=" verify-sig? (
+			https://github.com/Kitware/CMake/releases/download/v$(ver_cut 1-3)/${MY_P}-SHA-256.txt
+			https://github.com/Kitware/CMake/releases/download/v$(ver_cut 1-3)/${MY_P}-SHA-256.txt.asc
+		)"
+
+		KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+
+		BDEPEND="verify-sig? ( >=sec-keys/openpgp-keys-bradking-20230817 )"
+	fi
+fi
+
+[[ ${CMAKE_DOCS_PREBUILT} == 1 ]] && CMAKE_DOCS_USEFLAG="doc"
+
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="BSD"
+SLOT="0"
+IUSE="${CMAKE_DOCS_USEFLAG} dap emacs ncurses qt5 test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+	>=app-arch/libarchive-3.3.3:=
+	app-crypt/rhash:0=
+	>=dev-libs/expat-2.0.1
+	>=dev-libs/jsoncpp-1.9.2-r2:0=
+	>=dev-libs/libuv-1.10.0:=
+	>=net-misc/curl-7.21.5[ssl]
+	sys-libs/zlib
+	virtual/pkgconfig
+	dap? ( dev-cpp/cppdap )
+	emacs? ( >=app-editors/emacs-23.1:* )
+	ncurses? ( sys-libs/ncurses:0= )
+	qt5? (
+		dev-qt/qtcore:5
+		dev-qt/qtgui:5
+		dev-qt/qtwidgets:5
+	)
+"
+DEPEND="${RDEPEND}"
+BDEPEND+="
+	doc? (
+		dev-python/requests
+		dev-python/sphinx
+	)
+	test? ( app-arch/libarchive[zstd] )
+"
+
+SITEFILE="50${PN}-gentoo.el"
+
+PATCHES=(
+	# Prefix
+	"${FILESDIR}"/${PN}-3.27.0_rc1-0001-Don-t-use-.so-for-modules-on-darwin-macos.-Use-.bund.patch
+	"${FILESDIR}"/${PN}-3.27.0_rc1-0002-Set-some-proper-paths-to-make-cmake-find-our-tools.patch
+	# Misc
+	"${FILESDIR}"/${PN}-3.27.0_rc1-0003-Prefer-pkgconfig-in-FindBLAS.patch
+	"${FILESDIR}"/${PN}-3.27.0_rc1-0004-Ensure-that-the-correct-version-of-Qt-is-always-used.patch
+	"${FILESDIR}"/${PN}-3.27.0_rc1-0005-Respect-Gentoo-s-Python-eclasses.patch
+	"${FILESDIR}"/${PN}-3.27.0_rc1-0006-Filter-out-distcc-warnings-to-avoid-confusing-CMake.patch
+	# pkgconf
+	# fixes https://github.com/pkgconf/pkgconf/issues/317
+	"${FILESDIR}/${P}-0001-FindPkgConfig-ignore-whitespace-separators-in-versio.patch"
+
+	# Upstream fixes (can usually be removed with a version bump)
+)
+
+cmake_src_bootstrap() {
+	# disable running of cmake in bootstrap command
+	sed -i \
+		-e '/"${cmake_bootstrap_dir}\/cmake"/s/^/#DONOTRUN /' \
+		bootstrap || die "sed failed"
+
+	# execinfo.h on Solaris isn't quite what it is on Darwin
+	if [[ ${CHOST} == *-solaris* ]] ; then
+		sed -i -e 's/execinfo\.h/blablabla.h/' \
+			Source/kwsys/CMakeLists.txt || die
+	fi
+
+	# bootstrap script isn't exactly /bin/sh compatible
+	tc-env_build ${CONFIG_SHELL:-sh} ./bootstrap \
+		--prefix="${T}/cmakestrap/" \
+		--parallel=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)") \
+		|| die "Bootstrap failed"
+}
+
+src_unpack() {
+	if [[ ${PV} == 9999 ]] ; then
+		git-r3_src_unpack
+	elif [[ ${PV} == *_rc* ]] || ! use verify-sig ; then
+		default
+	else
+		cd "${DISTDIR}" || die
+
+		# See https://mgorny.pl/articles/verify-sig-by-example.html#verifying-using-a-checksum-file-with-a-detached-signature
+		verify-sig_verify_detached ${MY_P}-SHA-256.txt{,.asc}
+		verify-sig_verify_unsigned_checksums ${MY_P}-SHA-256.txt sha256 ${MY_P}.tar.gz
+
+		cd "${WORKDIR}" || die
+
+		default
+	fi
+}
+
+src_prepare() {
+	cmake_src_prepare
+
+	if [[ ${CHOST} == *-darwin* ]] ; then
+		# Disable Xcode hooks, bug #652134
+		sed -i -e 's/cm\(\|Global\|Local\)XCode[^.]\+\.\(cxx\|h\)//' \
+			Source/CMakeLists.txt || die
+		sed -i -e '/define CMAKE_USE_XCODE/s/XCODE/NO_XCODE/' \
+			-e '/cmGlobalXCodeGenerator.h/d' \
+			Source/cmake.cxx || die
+
+		# Disable isysroot usage with GCC, we've properly instructed
+		# where things are via GCC configuration and ldwrapper
+		sed -i -e '/cmake_gnu_set_sysroot_flag/d' \
+			Modules/Platform/Apple-GNU-*.cmake || die
+		# Disable isysroot usage with clang as well
+		sed -i -e '/_SYSROOT_FLAG/d' \
+			Modules/Platform/Apple-Clang.cmake || die
+		# Don't set a POSIX standard, system headers don't like that, #757426
+		sed -i -e 's/^#if !defined(_WIN32) && !defined(__sun)/& \&\& !defined(__APPLE__)/' \
+			Source/cmLoadCommandCommand.cxx \
+			Source/cmStandardLexer.h \
+			Source/cmSystemTools.cxx \
+			Source/cmTimestamp.cxx
+		sed -i -e 's/^#if !defined(_POSIX_C_SOURCE) && !defined(_WIN32) && !defined(__sun)/& \&\& !defined(__APPLE__)/' \
+			Source/cmStandardLexer.h
+	fi
+
+	# Add gcc libs to the default link paths
+	sed -i \
+		-e "s|@GENTOO_PORTAGE_GCCLIBDIR@|${EPREFIX}/usr/${CHOST}/lib/|g" \
+		-e "$(usex prefix-guest "s|@GENTOO_HOST@||" "/@GENTOO_HOST@/d")" \
+		-e "s|@GENTOO_PORTAGE_EPREFIX@|${EPREFIX}/|g" \
+		Modules/Platform/{UnixPaths,Darwin}.cmake || die "sed failed"
+
+	if ! has_version -b \>=${CATEGORY}/${PN}-3.13 || ! cmake --version &>/dev/null ; then
+		CMAKE_BINARY="${S}/Bootstrap.cmk/cmake"
+		cmake_src_bootstrap
+	fi
+}
+
+src_configure() {
+	# Fix linking on Solaris
+	[[ ${CHOST} == *-solaris* ]] && append-ldflags -lsocket -lnsl
+
+	# ODR warnings, bug #858335
+	# https://gitlab.kitware.com/cmake/cmake/-/issues/20740
+	filter-lto
+
+	local mycmakeargs=(
+		-DCMAKE_USE_SYSTEM_LIBRARIES=ON
+		-DCMake_ENABLE_DEBUGGER=$(usex dap)
+		-DCMAKE_DOC_DIR=/share/doc/${PF}
+		-DCMAKE_MAN_DIR=/share/man
+		-DCMAKE_DATA_DIR=/share/${PN}
+		-DSPHINX_MAN=$(usex doc)
+		-DSPHINX_HTML=$(usex doc)
+		-DBUILD_CursesDialog="$(usex ncurses)"
+		-DBUILD_TESTING=$(usex test)
+	)
+	use qt5 && mycmakeargs+=( -DBUILD_QtDialog=ON )
+
+	cmake_src_configure
+}
+
+src_compile() {
+	cmake_src_compile
+	use emacs && elisp-compile Auxiliary/cmake-mode.el
+}
+
+src_test() {
+	# Fix OutDir and SelectLibraryConfigurations tests
+	# these are altered thanks to our eclass
+	sed -i -e 's:^#_cmake_modify_IGNORE ::g' \
+		"${S}"/Tests/{OutDir,CMakeOnly/SelectLibraryConfigurations}/CMakeLists.txt \
+		|| die
+
+	pushd "${BUILD_DIR}" > /dev/null || die
+
+	# Excluded tests:
+	#    BootstrapTest: we actualy bootstrap it every time so why test it.
+	#    BundleUtilities: bundle creation broken
+	#    CMakeOnly.AllFindModules: pthread issues
+	#    CTest.updatecvs: which fails to commit as root
+	#    Fortran: requires fortran
+	#    RunCMake.CompilerLauncher: also requires fortran
+	#    RunCMake.CPack_RPM: breaks if app-arch/rpm is installed because
+	#        debugedit binary is not in the expected location
+	#    RunCMake.CPack_DEB: breaks if app-arch/dpkg is installed because
+	#        it can't find a deb package that owns libc
+	#    TestUpload, which requires network access
+	#    RunCMake.CMP0125, known failure reported upstream (bug #829414)
+	local myctestargs=(
+		--output-on-failure
+		-E "(BootstrapTest|BundleUtilities|CMakeOnly.AllFindModules|CompileOptions|CTest.UpdateCVS|Fortran|RunCMake.CompilerLauncher|RunCMake.CPack_(DEB|RPM)|TestUpload|RunCMake.CMP0125)" \
+	)
+
+	virtx cmake_src_test
+}
+
+src_install() {
+	cmake_src_install
+
+	# If USE=doc, there'll be newly generated docs which we install instead.
+	if ! use doc && [[ ${CMAKE_DOCS_PREBUILT} == 1 ]] ; then
+		doman "${WORKDIR}"/${PN}-${CMAKE_DOCS_VERSION}-docs/man*/*.[0-8]
+	fi
+
+	if use emacs; then
+		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 Auxiliary/vim/syntax/cmake.vim
+
+	insinto /usr/share/vim/vimfiles/indent
+	doins Auxiliary/vim/indent/cmake.vim
+
+	insinto /usr/share/vim/vimfiles/ftdetect
+	doins "${FILESDIR}/${PN}.vim"
+
+	dobashcomp Auxiliary/bash-completion/{${PN},ctest,cpack}
+}
+
+pkg_postinst() {
+	use emacs && elisp-site-regen
+
+	if use qt5; then
+		xdg_icon_cache_update
+		xdg_desktop_database_update
+		xdg_mimeinfo_database_update
+	fi
+}
+
+pkg_postrm() {
+	use emacs && elisp-site-regen
+
+	if use qt5; then
+		xdg_icon_cache_update
+		xdg_desktop_database_update
+		xdg_mimeinfo_database_update
+	fi
+}

diff --git a/dev-util/cmake/files/cmake-3.27.4-0001-FindPkgConfig-ignore-whitespace-separators-in-versio.patch b/dev-util/cmake/files/cmake-3.27.4-0001-FindPkgConfig-ignore-whitespace-separators-in-versio.patch
new file mode 100644
index 000000000000..9ee8a1c9fcbf
--- /dev/null
+++ b/dev-util/cmake/files/cmake-3.27.4-0001-FindPkgConfig-ignore-whitespace-separators-in-versio.patch
@@ -0,0 +1,38 @@
+https://gitlab.kitware.com/cmake/cmake/-/merge_requests/8789
+
+From d47771bbb96a8435401950fb504b06003ec0babb Mon Sep 17 00:00:00 2001
+From: Paul Zander <negril.nx+gentoo@gmail.com>
+Date: Sat, 9 Sep 2023 13:45:19 +0200
+Subject: [PATCH] FindPkgConfig: ignore whitespace separators in version check
+
+The regex used to split up the version if it contains an operator fails
+if the string contains whitespaces. Resulting in an extra whitespace
+after the package name and before the package version leading to
+breakage in pkgconf and thus webkit-gtk.
+
+See:
+https://github.com/pkgconf/pkgconf/issues/317
+https://bugs.webkit.org/show_bug.cgi?id=261125
+https://bugs.gentoo.org/913644
+---
+ Modules/FindPkgConfig.cmake | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/Modules/FindPkgConfig.cmake b/Modules/FindPkgConfig.cmake
+index 4d29f4505..6e8b78441 100644
+--- a/Modules/FindPkgConfig.cmake
++++ b/Modules/FindPkgConfig.cmake
+@@ -563,8 +563,8 @@ macro(_pkg_check_modules_internal _is_required _is_silent _no_cmake_path _no_cma
+     foreach (_pkg_check_modules_pkg ${_pkg_check_modules_list})
+       set(_pkg_check_modules_exist_query)
+ 
+-      # check whether version is given
+-      if (_pkg_check_modules_pkg MATCHES "(.*[^><])(=|[><]=?)(.*)")
++      # check whether version is given while ignoring whitespace
++      if (_pkg_check_modules_pkg MATCHES "(.*[^>< \t])[ \t]*(=|[><]=?)[ \t]*(.*)")
+         set(_pkg_check_modules_pkg_name "${CMAKE_MATCH_1}")
+         set(_pkg_check_modules_pkg_op "${CMAKE_MATCH_2}")
+         set(_pkg_check_modules_pkg_ver "${CMAKE_MATCH_3}")
+-- 
+2.42.0
+


^ permalink raw reply related	[flat|nested] 23+ messages in thread

end of thread, other threads:[~2023-09-11 23:54 UTC | newest]

Thread overview: 23+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-03-09 20:20 [gentoo-commits] repo/gentoo:master commit in: dev-util/cmake/files/, dev-util/cmake/ Lars Wendler
  -- strict thread matches above, loose matches on Subject: below --
2023-09-11 23:54 Sam James
2021-05-26 11:32 Lars Wendler
2021-05-14 18:22 Andreas Sturmlechner
2020-12-12 18:02 Andreas Sturmlechner
2020-11-28 15:22 Fabian Groffen
2020-09-06 16:46 Andreas Sturmlechner
2019-11-19 12:43 Lars Wendler
2019-06-22 14:49 Lars Wendler
2018-06-24  9:34 Andreas Sturmlechner
2018-03-12 15:32 Lars Wendler
2018-02-28  9:29 Lars Wendler
2018-02-27 10:06 Lars Wendler
2017-12-14 19:38 Lars Wendler
2017-10-05  8:46 Lars Wendler
2017-09-07 12:09 Michael Palimaka
2017-03-14  7:30 Michael Palimaka
2017-03-13 12:11 Michael Palimaka
2016-12-17  7:08 Johannes Huber
2016-12-15 17:00 Lars Wendler
2016-08-28 16:19 Michał Górny
2016-07-15  5:44 Johannes Huber
2015-10-10 17:36 Michael Palimaka

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox