From 79599515788b85b18aa655e7b7f8cc05c1bbddd8 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Sat, 16 Feb 2019 12:59:29 +0000 Subject: gentoo resync : 16.02.1018 --- dev-util/cmake/Manifest | 7 +- dev-util/cmake/cmake-3.13.3.ebuild | 226 -------------------- dev-util/cmake/cmake-3.14.0_rc1.ebuild | 229 +++++++++++++++++++++ .../cmake/files/cmake-3.14.0_rc1-FindBLAS.patch | 37 ++++ .../cmake/files/cmake-3.14.0_rc1-FindLAPACK.patch | 55 +++++ .../cmake/files/cmake-3.14.0_rc1-prefix-dirs.patch | 144 +++++++++++++ 6 files changed, 470 insertions(+), 228 deletions(-) delete mode 100644 dev-util/cmake/cmake-3.13.3.ebuild create mode 100644 dev-util/cmake/cmake-3.14.0_rc1.ebuild create mode 100644 dev-util/cmake/files/cmake-3.14.0_rc1-FindBLAS.patch create mode 100644 dev-util/cmake/files/cmake-3.14.0_rc1-FindLAPACK.patch create mode 100644 dev-util/cmake/files/cmake-3.14.0_rc1-prefix-dirs.patch (limited to 'dev-util/cmake') diff --git a/dev-util/cmake/Manifest b/dev-util/cmake/Manifest index 8ea4b5b8cc45..971fd3a1182e 100644 --- a/dev-util/cmake/Manifest +++ b/dev-util/cmake/Manifest @@ -7,6 +7,9 @@ AUX cmake-3.11.0_rc2-FindBLAS.patch 775 BLAKE2B 89249b37ca44cc9068a5fd81350637da AUX cmake-3.11.4-fix-boost-detection.patch 996 BLAKE2B 195ade40e279ca85ee55b1d46353f8809f68e405a6c914c34340825f7f77ec5cb78ebee3f7aa12cc6f026a802db4bc893ac8570a03b76af708ea2df7a3ecadb1 SHA512 66da91fb39286d1745af733a806f60db313ddb0a506b29509aba66259a57cf8abf65fcc871114c5a2cff91eb8c27ca346dd75fbd29f773fb2d31cfead827f250 AUX cmake-3.11.4-libuv-1.21.patch 1333 BLAKE2B 685edbc90e59ddf3f5d430d50edba040703958db0bc57cfc3a5359b2aa71beb8600b2d4232225612036d00bcb9b9cbbdbb5f357f4fae492b6ed960c1a2a59bac SHA512 ea9ec5fcebd5a5988f5588b20cbf7e547065db6616476500c1d2d89c8585cf2276f7ba4fb06e85aa85ed435f81ca276c44518ce8f9f0efb6fc363f82f3b1aba4 AUX cmake-3.13.4-prefix-dirs.patch 4239 BLAKE2B 470de3626a9f6edf65e5ec597b1de36697e6c2038ec5f435dd5a89ec69ac32227663f0eb5f86c9d5d89a1c809e1092b5e901c52dcab9f2a7d3bc8f7bdca110a7 SHA512 b1801d0f0ec8963181460a8b939a26e791295d6a45fb78135dce5684507689cb44cab7a536d5f85c26f51deda19e95b40500aba026f43920fa7eee686ad3869c +AUX cmake-3.14.0_rc1-FindBLAS.patch 1247 BLAKE2B ca3b9e1515569b1dcf4692480233aa149c4846f0767c872a25ab0f9fe411ab09348b441f17319abf1c06fd3275e3db7d8bb8f25eba83bab7fb800fff115d06a0 SHA512 425dffe59dc7ec6383579d2ad5bb7a7607e4446804ceb6c698c34ad4615fffd552051dbe6ab21450fa769cb7b25a0184ce9204841e2ab98a738b786c93bb90ae +AUX cmake-3.14.0_rc1-FindLAPACK.patch 1798 BLAKE2B f372fd920abaf85ab3106385d45e193c2c0fba1ca9fb5c14cf53bdee9a29602b7db0078676c90f65f3f3eccddfbb1f6b9964d26f90aef38cbc0c197a4b243ac5 SHA512 dcc970561f54d862f2124512bfc28ab25e66b1fa5e6a7a6138faae7f1e3a4136320ad4d4942153ac9505035b74f3e8442dddb62af6fb1486fcfec08fcf3e3743 +AUX cmake-3.14.0_rc1-prefix-dirs.patch 4767 BLAKE2B ddc95ae9beb8dacc14bfdb54be2369564b81f054f406bc5207252ef98a8bd8b3c62f7c1191f8f08e4a348c9ab66152b90681032251d1a049136f79798c55b5f0 SHA512 5ed9d2d4e32075e5c52766a55209a3f6c5df089abfe6d2c07fedfdac2dc65e3552679b62d43988b2dc4b7ca0503d984b1f8a87539360a81a4d3b7806206bf5b0 AUX cmake-3.4.0_rc1-darwin-bundle.patch 1043 BLAKE2B 99fc8061352b6a503f472e11045f9a99c2b980f08e9c1406722eacdd438617dccc394f53bdcaa4d93c4aa499b4615185c3ec99ccad8be3504972001498b02c48 SHA512 8c6297bf824d5a911e14004ac4c4e62d1a1528e44199d8860ca885bb1b8dd3d66a73c3db32664b830c3c635bdb498abbd5196be92ed2571cb22828d7186ff9f9 AUX cmake-3.5.2-FindQt4.patch 1585 BLAKE2B 8cfda84c419515be57f65be7b4b22d7937b656eb7f58d61c7d9e30db9dac36e934f2a529b4ea20d69c5f8a653c727bae34374ebcb7f5017fd70df41abd538164 SHA512 bab8960bfea3c29416bdc8f39c7dee59b89bd7951752401f24eeb9161ac7bc2c6dd200cb62c6b9f964d763b5d257a94d8b04dc7090d6fa947a04f2d0c2e8c479 AUX cmake-3.8.0_rc2-FindBoost-python.patch 6575 BLAKE2B 4a169862e81b053ea8077ed61001434ba2619230ab4a4d75a11e2ea2c18ad704792d6d37a3cfa78cb54a6bf6cd71bc9b0d6a7a1bba004a92212746001874f385 SHA512 bb156cc2b47f9928f2e6bae909e90866f4442e42d7357744aa2b00903a02a27cf8af4a788a74858bc51874c442c40788717c86e77690b91def80abaa38b90163 @@ -17,13 +20,13 @@ AUX cmake.vim 217 BLAKE2B 5d2cf8b4101a7204fd27a9f21d82fea4d86fc4eeed54e062b54345 DIST cmake-3.10.3.tar.gz 7825559 BLAKE2B 1db8c21abdcfac2612fa914d49f9edcf199240b714104dba1d470c8e1e487d8e6cc5d486febae88d4a71eb9419064bcf94f9bb2c779771323221c1f117baa693 SHA512 1ba6381321cb34c3c050548a1346d3b92d590a196d8aff7435c079cd485d01f7a6cd650ad97d00931aff424fcdc195bbaa6d9d7db679bf02f72f586c7b528ae4 DIST cmake-3.11.4.tar.gz 7955301 BLAKE2B 2bad70e9e8b1a4081daf79fbec46d7389f685920d3158d05eae51fb24a0ecaad722c3e8a2eab1bcc75d599bee7a8202d432176e6ac1d87ed8815c84a7a8bb925 SHA512 c5d03ad66a004292038e49e391c390ebc328fbb089ea699742a9b75f0ada9398c3dc971b868f75d8438bf437ecbeaa62541beb53cae14a699bf244ad101a2290 DIST cmake-3.12.3.tar.gz 8388552 BLAKE2B 3e4150461f0d03ddaec790c7aa701bdb84b7f22b9e948262214d363d8457a9e2986470e7a0237f46e8a72109b61dc05d657516bb19c42d63c951af92055dd4d9 SHA512 2b5b006bd0fa09431eb525a7f419c64b811afbe1cc81d34e6167e04112966d9f48f28652b21b5a04c889de6227315db57dd2099a17ea6329e27f3e97eac9051c -DIST cmake-3.13.3.tar.gz 8616403 BLAKE2B 1c0df89a8cbed3fe94e9fb1491d77b9b87b3ce4d4dad6e90cf7bd3a259ab4839f941f4f52fb8d1cd89711a2f022d72a638a6e907f8d047419508aebe5bd8255d SHA512 3033c434b6880d76a1496c9b1a32835307296a68e4c677acbe09cadb6562088dc9b04fb314d28b4611a1f4ea4d5a1e41c94e7ccf135f21c372a0eadc25aba585 DIST cmake-3.13.4.tar.gz 8617881 BLAKE2B c6bc47c79ea16f975def31ee4a85b795fc2adf96f9af1d99f702519f0bae6adf531fb5abe3e1e23a6b00226c6cb22719d3d58e8caa5b178acfa4de8d01b42b8a SHA512 5a2cc092109652ced5a3a6ae00fe0c7d134efa7d90d59f376368408bb684343db9e144ee53b184f3437f8a86cf9976a130a1e1676c993d56b278a6640a418c93 +DIST cmake-3.14.0-rc1.tar.gz 8844963 BLAKE2B 1bb600c4fda4da411d3897f55696025d0ff14f80154eeb968c67a1e8dbb308f55d38a4a5a9c420038a1aef1fc181778801f954178d3b625faedd3fc51a18b5c7 SHA512 a7f1881100e1c4ca4944fca1f87ed2caac450983fda4b930954f0d25bf39091e28080e49862060d87ec86e61251c712056d8accddaeedb71715cb9fb01aa4559 DIST cmake-3.9.6.tar.gz 7705400 BLAKE2B e0a5307af0a34863c50ea6aa9323025ef588b27e648107c3a81c362ee7ae4a1d2a07cc335d816b286ce4ddb249f9c6c08c3e8cf99856c7113f3724f47c62da43 SHA512 9fda2c9ac054ef8fb1bf3885fbdec02c518da89ade220eba06b5502ac3ff300f635ec0922e61f3b2d090644fb743b8f71a04c532ab66b2d890a180cc7da54e6c EBUILD cmake-3.10.3.ebuild 5850 BLAKE2B ac06e0efaf6b8cf93617c2690ee19313df282e7707c1b313eb69b5a0e0d40d2e1431cb62fca9539281fa15cd63268e84d0f5bece3d9217334724cb9689f98bbe SHA512 721359c13d244b30fa47a9b9c30a91225fe25eab866a5d3b9b7230f4127be30b77749a90bcbbef768ad709ef3bf5b0f13c4ddb862c293207bb534a7f4ba3e87f EBUILD cmake-3.11.4-r1.ebuild 6220 BLAKE2B 0490388c4d5a698062592e86cb6fd3b83468f4822964459a8b7d540817b0b0863264e1c0b565f8de8b820f142d1e976b8a67d4e2ccb6c04f920cb06cd2ae4fda SHA512 14a6655444822ad8099b259bf9082042eafb4fb3fcfee83ead4677f22b7ff1a2b916ed38b6e691daae17467f45b0b468b82c35febdf9118853fe3faf999d58c0 EBUILD cmake-3.12.3.ebuild 6000 BLAKE2B d62e6c9766e7acbe5f8b080489c3d543ed257c1c06d87ea0f2ae0d5c033860622777cf1c4a2849c26a8f630158c78f47b531752eb32723379111f19533b0e3d1 SHA512 f50e7eca076cb7f8e4ae8214a404fb885cfc9a617456a1f6c7fd79a0a91323b7501ab2e03234210305a77f3d86cd52a6edef5b52d16c98160aab1fce6d726947 -EBUILD cmake-3.13.3.ebuild 6068 BLAKE2B 75fa07de61d106ec70d895eef49435570fad01389f2cd42e5efd42c7ba5c23cc5ff59e9fb4ab1b33f561da9ce98acaf7060914aa855579426ffdf0b97a0a648a SHA512 f798f93d2594883f93c7a51a76eb01856594646606a5160552621af032140705984b4a316203a04799ddad090a994e8caca22c4b8b92aec5cafe5fdd5651a859 EBUILD cmake-3.13.4.ebuild 6207 BLAKE2B a2a7aaac70aa184f7da025954664f2a6a688a6f90bedbce965187953c3b8fedf984dcc7bf467171170857f1d1e6d350fb3a5dff2a53c90904ba262bb0c38ec6f SHA512 748e7e64d4a3dd96afe5ffe2981a79e5d4f380559fc9ef48a232360989a5cb01bde48aa014888a176042474c9d53c0eab9bd35adb03c04e28bfc990736de86b8 +EBUILD cmake-3.14.0_rc1.ebuild 6268 BLAKE2B e578c06dd59640f8b97b6968beb26e026b3f3aea46b17370b02ab5e016afea4df55e07ba84ba818d3b1d4dfd516529cb391e8f294948567b9be9f9ff33b0a08f SHA512 85d052a18ef8e0fe2ff7fdcab242ec03838b929d5d11e8cf379b302e111a6652216e16f8aa31a7a276ffa9e9577ba467259f94af952ff59015c19d8c698d1396 EBUILD cmake-3.9.6.ebuild 5941 BLAKE2B 6fb4f6d9adae179fae54b1e5745db1b584464c19483ea450b04f3dbf47e8d5ef45800fcc8a33f1dce1c139e0acf302aaa4fb190e097e521cec14540aa8ae9c49 SHA512 cb45d92c42aaf89ac39fd786442c2cd5d8f1316d591323fe7ea23bf6c4a27fe18424d55a02093333abf851cbae7f965c0c2c899118464b51a567738a5d6cfd25 MISC metadata.xml 430 BLAKE2B af8a9e9fbd898224f970f38c42b07ab2a3f31da674056af30a8059d4378c80d201d9fa98fceffed15a5f2130767a782ea72fce642e9c4f6b5709ecf1533455e6 SHA512 9a71665c1654c038746d4cdd8217382d38493a7064cf4b6a6b12aef632b05e40e530ceb923fc389b182e1b513cbe4c149921d8036565ad8247b948640d5fa015 diff --git a/dev-util/cmake/cmake-3.13.3.ebuild b/dev-util/cmake/cmake-3.13.3.ebuild deleted file mode 100644 index 758e6f4742db..000000000000 --- a/dev-util/cmake/cmake-3.13.3.ebuild +++ /dev/null @@ -1,226 +0,0 @@ -# Copyright 1999-2019 Gentoo Authors -# 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 eapi7-ver virtualx xdg-utils 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" - -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} - 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.9.0_rc2-prefix-dirs.patch - "${FILESDIR}"/${PN}-3.1.0-darwin-isysroot.patch - - # handle gentoo packaging in find modules - "${FILESDIR}"/${PN}-3.11.0_rc2-FindBLAS.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 - - # boost (#660980) - "${FILESDIR}"/${PN}-3.11.4-fix-boost-detection.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 \ - -j "$(makeopts_jobs)" \ - --test-load "$(makeopts_loadavg)" \ - ${ctestargs} \ - -E "(BootstrapTest|BundleUtilities|CTest.UpdateCVS|Fortran|Qt4Deploy|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 "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 - 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/cmake-3.14.0_rc1.ebuild b/dev-util/cmake/cmake-3.14.0_rc1.ebuild new file mode 100644 index 000000000000..a35142fe0720 --- /dev/null +++ b/dev-util/cmake/cmake-3.14.0_rc1.ebuild @@ -0,0 +1,229 @@ +# Copyright 1999-2019 Gentoo Authors +# 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 flag-o-matic gnome2-utils toolchain-funcs eapi7-ver virtualx xdg-utils 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" + +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} + 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_rc1-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.14.0_rc1-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 + + # boost (#660980) + "${FILESDIR}"/${PN}-3.11.4-fix-boost-detection.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|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)" + ) + + 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.14.0_rc1-FindBLAS.patch b/dev-util/cmake/files/cmake-3.14.0_rc1-FindBLAS.patch new file mode 100644 index 000000000000..3a308f57cea1 --- /dev/null +++ b/dev-util/cmake/files/cmake-3.14.0_rc1-FindBLAS.patch @@ -0,0 +1,37 @@ +From 12b2c3ad6a5c5c7f67afe87fec3f81761de0b909 Mon Sep 17 00:00:00 2001 +From: Lars Wendler +Date: Sun, 10 Feb 2019 22:54:51 +0100 +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 0aa4f5035b..7b67c95f1f 100644 +--- a/Modules/FindBLAS.cmake ++++ b/Modules/FindBLAS.cmake +@@ -7,6 +7,10 @@ FindBLAS + + 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, +@@ -85,6 +89,9 @@ This module defines the following variables: + find_package(BLAS) + #]=======================================================================] + ++# 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.20.1 + diff --git a/dev-util/cmake/files/cmake-3.14.0_rc1-FindLAPACK.patch b/dev-util/cmake/files/cmake-3.14.0_rc1-FindLAPACK.patch new file mode 100644 index 000000000000..ebd83f38d187 --- /dev/null +++ b/dev-util/cmake/files/cmake-3.14.0_rc1-FindLAPACK.patch @@ -0,0 +1,55 @@ +From 6d4d97b328f48862923bb55c1c0976b1d532dcc3 Mon Sep 17 00:00:00 2001 +From: Lars Wendler +Date: Sun, 10 Feb 2019 23:01:53 +0100 +Subject: [PATCH] Prefer pkgconfig in FindLAPACK + +--- + Modules/FindLAPACK.cmake | 21 +++++++++++++++++++++ + 1 file changed, 21 insertions(+) + +diff --git a/Modules/FindLAPACK.cmake b/Modules/FindLAPACK.cmake +index d6646eaacf..ef5f324670 100644 +--- a/Modules/FindLAPACK.cmake ++++ b/Modules/FindLAPACK.cmake +@@ -7,6 +7,10 @@ FindLAPACK + + Find LAPACK library + ++Version modified for Gentoo Linux. ++If a valid PkgConfig configuration is found, this overrides and cancels ++all further checks. ++ + This module finds an installed fortran library that implements the + LAPACK linear-algebra interface (see http://www.netlib.org/lapack/). + +@@ -181,6 +185,21 @@ endif() + + endmacro() + ++# first, try PkgConfig ++find_package(PkgConfig REQUIRED) ++pkg_check_modules(PC_LAPACK lapack) ++if(PC_LAPACK_FOUND) ++ foreach(PC_LIB ${PC_LAPACK_LIBRARIES}) ++ find_library(${PC_LIB}_LIBRARY NAMES ${PC_LIB} HINTS ${PC_LAPACK_LIBRARY_DIRS} ) ++ if (NOT ${PC_LIB}_LIBRARY) ++ message(FATAL_ERROR "Something is wrong in your pkg-config file - lib ${PC_LIB} not found in ${PC_LAPACK_LIBRARY_DIRS}") ++ endif (NOT ${PC_LIB}_LIBRARY) ++ list(APPEND LAPACK_LIBRARIES ${${PC_LIB}_LIBRARY}) ++ endforeach(PC_LIB) ++ find_package_handle_standard_args(LAPACK DEFAULT_MSG LAPACK_LIBRARIES) ++ mark_as_advanced(LAPACK_LIBRARIES) ++else(PC_LAPACK_FOUND) ++message(STATUS "No PkgConfig configuration for LAPACK found; starting more extensive search.") + + set(LAPACK_LINKER_FLAGS) + set(LAPACK_LIBRARIES) +@@ -428,3 +447,5 @@ endif() + + cmake_pop_check_state() + set(CMAKE_FIND_LIBRARY_SUFFIXES ${_lapack_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES}) ++ ++endif(PC_LAPACK_FOUND) +-- +2.20.1 + diff --git a/dev-util/cmake/files/cmake-3.14.0_rc1-prefix-dirs.patch b/dev-util/cmake/files/cmake-3.14.0_rc1-prefix-dirs.patch new file mode 100644 index 000000000000..a4890ffbb2fa --- /dev/null +++ b/dev-util/cmake/files/cmake-3.14.0_rc1-prefix-dirs.patch @@ -0,0 +1,144 @@ +From c5d74cb5b1cf87ee933f7547f62dbbb96134964d Mon Sep 17 00:00:00 2001 +From: Lars Wendler +Date: Sun, 10 Feb 2019 22:40:33 +0100 +Subject: [PATCH] Set some proper paths to make cmake find our tools. + +The ebuild now adds an extra / at the end of $EPREFIX so that it is +never the empty string (so that CMAKE_SYSTEM_PREFIX_PATH remains +correct) + +Original patch by Heiko Przybyl. +Updated by Chris Reffett (cmake-2.8.8) +Updated by Johannes Huber (cmake-2.8.9) +Updated by Michael Palimaka (cmake-2.8.10) +Updated by Chris Reffett (cmake-2.8.11) +Updated by Michael Palimaka (cmake-3.0.0) +Updated by Lars Wendler (cmake-3.9.0_rc2) +Updated by Benda Xu (cmake-3.13.4) +Updated by Lars Wendler (cmake-3.14.0_rc1) +--- + Modules/Platform/Darwin.cmake | 12 ++++++---- + Modules/Platform/UnixPaths.cmake | 38 ++++++++++++++++++++++++-------- + 2 files changed, 37 insertions(+), 13 deletions(-) + +diff --git a/Modules/Platform/Darwin.cmake b/Modules/Platform/Darwin.cmake +index a73ffbae75..d00eac4ca4 100644 +--- a/Modules/Platform/Darwin.cmake ++++ b/Modules/Platform/Darwin.cmake +@@ -116,9 +116,9 @@ set(CMAKE_C_FRAMEWORK_SEARCH_FLAG -F) + set(CMAKE_CXX_FRAMEWORK_SEARCH_FLAG -F) + set(CMAKE_Fortran_FRAMEWORK_SEARCH_FLAG -F) + +-# default to searching for frameworks first ++# default to searching for frameworks last + if(NOT DEFINED CMAKE_FIND_FRAMEWORK) +- set(CMAKE_FIND_FRAMEWORK FIRST) ++ set(CMAKE_FIND_FRAMEWORK LAST) + endif() + + # Older OS X linkers do not report their framework search path +@@ -140,6 +140,8 @@ endif() + + # set up the default search directories for frameworks + set(CMAKE_SYSTEM_FRAMEWORK_PATH ++ @GENTOO_PORTAGE_EPREFIX@Frameworks ++ @GENTOO_PORTAGE_EPREFIX@usr/lib + ~/Library/Frameworks + ) + if(_CMAKE_OSX_SYSROOT_PATH) +@@ -186,13 +188,15 @@ if(CMAKE_OSX_SYSROOT) + endif() + endif() + +-# default to searching for application bundles first ++# default to searching for application bundles last + if(NOT DEFINED CMAKE_FIND_APPBUNDLE) +- set(CMAKE_FIND_APPBUNDLE FIRST) ++ set(CMAKE_FIND_APPBUNDLE LAST) + endif() + # set up the default search directories for application bundles + set(_apps_paths) + foreach(_path ++ @GENTOO_PORTAGE_EPREFIX@Applications ++ @GENTOO_PORTAGE_EPREFIX@usr/bin + "~/Applications" + "/Applications" + "${OSX_DEVELOPER_ROOT}/../Applications" # Xcode 4.3+ +diff --git a/Modules/Platform/UnixPaths.cmake b/Modules/Platform/UnixPaths.cmake +index 4ae451472b..aa34bd9a31 100644 +--- a/Modules/Platform/UnixPaths.cmake ++++ b/Modules/Platform/UnixPaths.cmake +@@ -23,7 +23,8 @@ get_filename_component(_CMAKE_INSTALL_DIR "${_CMAKE_INSTALL_DIR}" PATH) + # search types. + list(APPEND CMAKE_SYSTEM_PREFIX_PATH + # Standard +- /usr/local /usr / ++ @GENTOO_PORTAGE_EPREFIX@usr/local @GENTOO_PORTAGE_EPREFIX@usr @GENTOO_PORTAGE_EPREFIX@ ++ @GENTOO_HOST@/usr/local /usr / + + # CMake install location + "${_CMAKE_INSTALL_DIR}" +@@ -50,33 +51,52 @@ list(APPEND CMAKE_SYSTEM_PREFIX_PATH + + # List common include file locations not under the common prefixes. + list(APPEND CMAKE_SYSTEM_INCLUDE_PATH +- # X11 +- /usr/include/X11 ++ @GENTOO_PORTAGE_EPREFIX@usr/include + ) + + list(APPEND CMAKE_SYSTEM_LIBRARY_PATH +- # X11 +- /usr/lib/X11 ++ @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 ++ @GENTOO_PORTAGE_EPREFIX@usr/bin ++ @GENTOO_PORTAGE_EPREFIX@bin + ) + + list(APPEND CMAKE_PLATFORM_IMPLICIT_LINK_DIRECTORIES +- /lib /lib32 /lib64 /usr/lib /usr/lib32 /usr/lib64 ++ @GENTOO_PORTAGE_GCCLIBDIR@/gcc ++ @GENTOO_PORTAGE_GCCLIBDIR@ ++ @GENTOO_PORTAGE_EPREFIX@usr/lib64 ++ @GENTOO_PORTAGE_EPREFIX@usr/libx32 ++ @GENTOO_PORTAGE_EPREFIX@usr/lib32 ++ @GENTOO_PORTAGE_EPREFIX@usr/lib ++ @GENTOO_PORTAGE_EPREFIX@lib ++ @GENTOO_HOST@/lib /usr/lib /usr/lib32 /usr/lib64 /usr/libx32 + ) + + # Platform-wide directories to avoid adding via -I. + list(APPEND CMAKE_PLATFORM_IMPLICIT_INCLUDE_DIRECTORIES +- /usr/include ++ @GENTOO_PORTAGE_EPREFIX@usr/include ++ @GENTOO_HOST@/usr/include + ) + + # Default per-language values. These may be later replaced after + # parsing the implicit directory information from compiler output. + set(_CMAKE_C_IMPLICIT_INCLUDE_DIRECTORIES_INIT + ${CMAKE_C_IMPLICIT_INCLUDE_DIRECTORIES} +- /usr/include ++ @GENTOO_PORTAGE_EPREFIX@usr/include ++ @GENTOO_HOST@/usr/include + ) + set(_CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES_INIT + ${CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES} +- /usr/include ++ @GENTOO_PORTAGE_EPREFIX@usr/include ++ @GENTOO_HOST@/usr/include + ) + set(_CMAKE_CUDA_IMPLICIT_INCLUDE_DIRECTORIES_INIT + ${CMAKE_CUDA_IMPLICIT_INCLUDE_DIRECTORIES} +-- +2.20.1 + -- cgit v1.2.3