diff options
author | Justin Lecher <jlec@gentoo.org> | 2010-05-27 09:27:53 +0000 |
---|---|---|
committer | Justin Lecher <jlec@gentoo.org> | 2010-05-27 09:27:53 +0000 |
commit | 3c8cccaebdaefc1c264211ec8f8335ea48321f32 (patch) | |
tree | 80de88c2330652d2d4dde7dc2b568496db67ac41 /dev-util | |
parent | Initial version 0.4 of dev-libs/luasec. (diff) | |
download | historical-3c8cccaebdaefc1c264211ec8f8335ea48321f32.tar.gz historical-3c8cccaebdaefc1c264211ec8f8335ea48321f32.tar.bz2 historical-3c8cccaebdaefc1c264211ec8f8335ea48321f32.zip |
Fix problem with detecting mpi libs through FindMPI module, commited on permission of scarabeus
Package-Manager: portage-2.2_rc67/cvs/Linux x86_64
Diffstat (limited to 'dev-util')
-rw-r--r-- | dev-util/cmake/ChangeLog | 8 | ||||
-rw-r--r-- | dev-util/cmake/Manifest | 12 | ||||
-rw-r--r-- | dev-util/cmake/cmake-2.8.1-r2.ebuild | 158 | ||||
-rw-r--r-- | dev-util/cmake/files/cmake-2.8.1-mpi.patch | 20 |
4 files changed, 192 insertions, 6 deletions
diff --git a/dev-util/cmake/ChangeLog b/dev-util/cmake/ChangeLog index b806383c1b07..85e3f0816009 100644 --- a/dev-util/cmake/ChangeLog +++ b/dev-util/cmake/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for dev-util/cmake # Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/dev-util/cmake/ChangeLog,v 1.133 2010/04/13 09:21:44 scarabeus Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-util/cmake/ChangeLog,v 1.134 2010/05/27 09:27:52 jlec Exp $ + +*cmake-2.8.1-r2 (27 May 2010) + + 27 May 2010; Justin Lecher <jlec@gentoo.org> cmake-2.8.1-r1.ebuild, + +cmake-2.8.1-r2.ebuild, +files/cmake-2.8.1-mpi.patch: + Fixing problem with detecting mpi libs through FindMPI module *cmake-2.8.1-r1 (13 Apr 2010) diff --git a/dev-util/cmake/Manifest b/dev-util/cmake/Manifest index f7d31a4da3c9..7ce4ffe25e66 100644 --- a/dev-util/cmake/Manifest +++ b/dev-util/cmake/Manifest @@ -13,6 +13,7 @@ AUX cmake-2.8.0-more-no_host_paths.patch 2981 RMD160 4a6de86385e6bc0c42d49c48603 AUX cmake-2.8.1-FindBoost.patch 714 RMD160 8f7d2be9cc63289a3e4f79b43f4b8baa6d980810 SHA1 37925b584dc471148f756bd41158740704dbec37 SHA256 f110d2387c362c518480d804bf1ce9f4881af67755cafd41bb639b09a8afca88 AUX cmake-2.8.1-libform.patch 1818 RMD160 ca954dfe966cd73836ef9e01ffe8f0eda85f2f91 SHA1 8f8e9a0002b4a95cea7dcfc36c2df16c47008bec SHA256 3b4ee03c7733b3fb468c5d4c6b139358be751b2398b56ca4ecdbf8a86b1f1ed5 AUX cmake-2.8.1-more-no_host_paths.patch 2981 RMD160 fea9f1d96d8c29f55e424389fb4f2471dfe514d8 SHA1 90fdc2ad69aeb54530d1faf4867e40c233caf084 SHA256 0c3fbe76684851ee444be92a99f91e5a5e8dfef02d7426722e10025aeca03412 +AUX cmake-2.8.1-mpi.patch 857 RMD160 d41e4dd445b1a79d0a82619a8ad7371e80d937a8 SHA1 0192124d023953d35cb5fb0da148c914525099e6 SHA256 64092fbf637bfe625cf58abe93844aab2e75ba22a00e5ffdb05188961b7f51d7 AUX cmake-FindJNI.patch 2020 RMD160 4fcb9714de65eb146a2696cd6613357684515b2d SHA1 c463daa6e7d3a1d7065607f97993b5da3486e7e1 SHA256 c5390550c192aea18415087ed891f7e5192b2a385c9c72f4cda0c19b13f6bfbb AUX cmake-FindPythonInterp.patch 498 RMD160 a4113724d0c2bdb53e7c947790d8a7e337759c84 SHA1 abd7754549fef5aae515361acd6a509c98227bf5 SHA256 8c3d4dc1898eae4adaa392b556286076594470277bc7c1bddbe2a28213fff7c0 AUX cmake-FindPythonLibs.patch 546 RMD160 429021001f1b464d8321703052890a34141a34ec SHA1 e5d62feab16058f123e1399e0504a50f50ee5a88 SHA256 86a5e78ff4e62cf8987401255197f7ba4ae70d00c257df3048372c5dcc035bdd @@ -21,13 +22,14 @@ DIST cmake-2.6.4.tar.gz 3285371 RMD160 e4217067537f76e52317514cb5bb0cf38733d16a DIST cmake-2.8.1.tar.gz 3605611 RMD160 38b0876597def32a535d5305fb8f706ff29beabe SHA1 fb93c8766a3bd71f2a824291717700c118d29be5 SHA256 4b65b819c00874c34196640411f6f9e877abf23733ba0ef68f73b4fafd3b3022 EBUILD cmake-2.6.4-r3.ebuild 3476 RMD160 e20f6f85b5291ced7e3ee53ff933a0da704b8f14 SHA1 72bb72aeea2261d1c5c5642018234803c35c32c5 SHA256 1c4a2f60dffb72d1134932b580e46d07a7784420a0c786f204d4b71dbfd928f0 EBUILD cmake-2.8.1-r1.ebuild 4047 RMD160 5d68604c2c9ffb76ef400058a61f73ab6de73643 SHA1 b36f343d961b0b030e142b63fb5c4b7f60ed7830 SHA256 c8cb7c23043afddaa9ae646eba211d226ab8f1bb8f9b56be69167acb6383251f +EBUILD cmake-2.8.1-r2.ebuild 4084 RMD160 8d9b8ccbc44223517500ed1da9f9735ada387db6 SHA1 0b75d03914848f3ab909f64d4b45e70217e49d3d SHA256 289b4ee0efb1577ca80f1c90f74095c128873aa65a1123a0107d0ebf31a90cf7 EBUILD cmake-2.8.1.ebuild 4060 RMD160 9b0fc37214b5368b83fe922736deb17838fe9557 SHA1 19927fd33f4671558cfd4086b3e83a0d71ef7c7c SHA256 713f767eb2017664b46b4c215f04516b1eaf17e932c8b5f8d988ccfdfaf619ee -MISC ChangeLog 20849 RMD160 f8f07f81a59bcd58cb814dd290679bff6a9ebaa0 SHA1 5e4176be721b86d117adab76d997bee4779884e7 SHA256 da456053179314d1076e595c93ee261673b7a1df00758dcb741f1fba3d22146e +MISC ChangeLog 21066 RMD160 bc9368257bb5b74c1a24f903b3685f296ed811e5 SHA1 bc0ae6755b3dd670f63b2f28c18cbeeb061341e0 SHA256 3c8b649daa21cad4aa20b33c574cbb8122f0a8001c97a05aff0bc7a164017544 MISC metadata.xml 157 RMD160 09fb7b798f3f68127626e97c69e5215a0513ecbb SHA1 d5ffebb2f4248fc8f65ab21c3af6e4f5dbf8bf6e SHA256 01f6fa4357ce08e8b0f7900a51fa78c7f060fefc7c7da98acaec1e283dd59892 -----BEGIN PGP SIGNATURE----- -Version: GnuPG v2.0.14 (GNU/Linux) +Version: GnuPG v2.0.15 (GNU/Linux) -iEYEARECAAYFAkvEN6gACgkQHB6c3gNBRYcL1ACfUiJE9mVuxs6Lx0aknm8bJWMB -IGcAnRv7cc5cSa+MI8KVBcWG7jKiLUlN -=2/de +iEYEARECAAYFAkv+Ox4ACgkQgAnW8HDreRYNewCgt45djO7NDOVWi9ETnmweLFZI +/BsAnim4jEl24WDOSSCyEsMdvyZx/viH +=D7UK -----END PGP SIGNATURE----- diff --git a/dev-util/cmake/cmake-2.8.1-r2.ebuild b/dev-util/cmake/cmake-2.8.1-r2.ebuild new file mode 100644 index 000000000000..05c705741614 --- /dev/null +++ b/dev-util/cmake/cmake-2.8.1-r2.ebuild @@ -0,0 +1,158 @@ +# Copyright 1999-2010 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header $ + +EAPI="3" + +inherit elisp-common toolchain-funcs eutils versionator flag-o-matic base cmake-utils + +MY_P="${PN}-$(replace_version_separator 3 - ${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 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~sparc-fbsd ~x86-fbsd ~hppa-hpux ~ia64-hpux ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris" +SLOT="0" +IUSE="emacs ncurses qt4 vim-syntax" + +DEPEND=" + >=net-misc/curl-7.20.0-r1[ssl] + >=dev-libs/expat-2.0.1 + sys-libs/zlib + ncurses? ( sys-libs/ncurses ) + qt4? ( x11-libs/qt-gui:4 ) +" +RDEPEND="${DEPEND} + emacs? ( virtual/emacs ) + vim-syntax? ( + || ( + app-editors/vim + app-editors/gvim + ) + ) +" + +SITEFILE="50${PN}-gentoo.el" +VIMFILE="${PN}.vim" + +S="${WORKDIR}/${MY_P}" + +CMAKE_IN_SOURCE_BUILD=1 + +PATCHES=( + "${FILESDIR}"/${PN}-FindPythonLibs.patch + "${FILESDIR}"/${PN}-FindPythonInterp.patch + "${FILESDIR}"/${PN}-2.6.0-interix.patch + "${FILESDIR}"/${PN}-2.6.3-darwin-bundle.patch + "${FILESDIR}"/${PN}-2.6.3-no-duplicates-in-rpath.patch + "${FILESDIR}"/${PN}-2.6.3-fix_broken_lfs_on_aix.patch + "${FILESDIR}"/${PN}-2.8.0-darwin-default-install_name.patch + "${FILESDIR}"/${PN}-2.8.0-darwin-no-app-with-qt.patch + "${FILESDIR}"/${PN}-2.8.1-more-no_host_paths.patch + "${FILESDIR}"/${PN}-2.8.1-FindBoost.patch + "${FILESDIR}"/${PN}-2.8.1-libform.patch + "${FILESDIR}"/${PN}-2.8.1-mpi.patch +) + +src_prepare() { + base_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" +} + +src_configure() { + if [[ "$(gcc-major-version)" -eq "3" ]] ; then + append-flags "-fno-stack-protector" + fi + + bootstrap=0 + has_version ">=dev-util/cmake-2.6.1" || bootstrap=1 + if [[ ${bootstrap} = 0 ]]; then + # Required version of CMake found, now test if it works + cmake --version &> /dev/null || bootstrap=1 + fi + + if [[ ${bootstrap} = 1 ]]; then + local qt_arg par_arg + tc-export CC CXX LD + + if use qt4; then + qt_arg="--qt-gui" + else + qt_arg="--no-qt-gui" + fi + + echo $MAKEOPTS | egrep -o '(\-j|\-\-jobs)(=?|[[:space:]]*)[[:digit:]]+' > /dev/null + if [ $? -eq 0 ]; then + par_arg=$(echo $MAKEOPTS | egrep -o '(\-j|\-\-jobs)(=?|[[:space:]]*)[[:digit:]]+' | egrep -o '[[:digit:]]+') + par_arg="--parallel=${par_arg}" + else + par_arg="--parallel=1" + fi + + ./bootstrap \ + --system-libs \ + --prefix="${EPREFIX}"/usr \ + --docdir=/share/doc/${PF} \ + --datadir=/share/${PN} \ + --mandir=/share/man \ + "$qt_arg" \ + "$par_arg" || die "./bootstrap failed" + else + # this is way much faster so we should prefer it if some cmake is + # around. + 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) + $(cmake-utils_use_build qt4 QtDialog) + ) + cmake-utils_src_configure + fi +} + +src_compile() { + cmake-utils_src_compile + if use emacs; then + elisp-compile Docs/cmake-mode.el || die "elisp compile failed" + fi +} + +src_test() { + emake test || die "Tests failed" +} + +src_install() { + cmake-utils_src_install + if use emacs; then + elisp-install ${PN} Docs/cmake-mode.el Docs/cmake-mode.elc || die "elisp-install failed" + elisp-site-file-install "${FILESDIR}/${SITEFILE}" + fi + if use vim-syntax; then + 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}/${VIMFILE}" + fi +} + +pkg_postinst() { + use emacs && elisp-site-regen +} + +pkg_postrm() { + use emacs && elisp-site-regen +} diff --git a/dev-util/cmake/files/cmake-2.8.1-mpi.patch b/dev-util/cmake/files/cmake-2.8.1-mpi.patch new file mode 100644 index 000000000000..67f1001464dc --- /dev/null +++ b/dev-util/cmake/files/cmake-2.8.1-mpi.patch @@ -0,0 +1,20 @@ +diff --git a/Modules/FindMPI.cmake b/Modules/FindMPI.cmake +index 481b0e9..43e97e8 100644 +--- a/Modules/FindMPI.cmake ++++ b/Modules/FindMPI.cmake +@@ -263,13 +263,13 @@ elseif (MPI_COMPILE_CMDLINE) + + # Extract the set of libraries to link against from the link command + # line +- string(REGEX MATCHALL "-l([^\" ]+|\"[^\"]+\")" MPI_LIBNAMES "${MPI_LINK_CMDLINE}") ++ string(REGEX MATCHALL " -l([^\" ]+|\"[^\"]+\")" MPI_LIBNAMES "${MPI_LINK_CMDLINE}") + + # Determine full path names for all of the libraries that one needs + # to link against in an MPI program + set(MPI_LIBRARIES) + foreach(LIB ${MPI_LIBNAMES}) +- string(REGEX REPLACE "^-l" "" LIB ${LIB}) ++ string(REGEX REPLACE "^ -l" "" LIB ${LIB}) + set(MPI_LIB "MPI_LIB-NOTFOUND" CACHE FILEPATH "Cleared" FORCE) + find_library(MPI_LIB ${LIB} HINTS ${MPI_LINK_PATH}) + if (MPI_LIB) |