* [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