summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Palimaka <kensington@gentoo.org>2013-04-14 17:41:44 +0000
committerMichael Palimaka <kensington@gentoo.org>2013-04-14 17:41:44 +0000
commitf7e5f271ce16b2008cfdbae9865decbd62898507 (patch)
tree222576c3d38f11dfb8556b5d835d17eb00977fe9 /dev-util/cmake
parentDrop old version, wrt bug #460598 (diff)
downloadgentoo-2-f7e5f271ce16b2008cfdbae9865decbd62898507.tar.gz
gentoo-2-f7e5f271ce16b2008cfdbae9865decbd62898507.tar.bz2
gentoo-2-f7e5f271ce16b2008cfdbae9865decbd62898507.zip
Revision bump to fix detection of python (bug #405181) and newer imagemagic (bug #465898).
(Portage version: 2.1.11.62/cvs/Linux x86_64, signed Manifest commit with key 675D0D2C)
Diffstat (limited to 'dev-util/cmake')
-rw-r--r--dev-util/cmake/ChangeLog11
-rw-r--r--dev-util/cmake/cmake-2.8.10.2-r2.ebuild180
-rw-r--r--dev-util/cmake/files/cmake-2.8.10.2-FindImageMagick.patch34
-rw-r--r--dev-util/cmake/files/cmake-2.8.10.2-FindPythonInterp.patch22
-rw-r--r--dev-util/cmake/files/cmake-2.8.10.2-FindPythonLibs.patch24
5 files changed, 270 insertions, 1 deletions
diff --git a/dev-util/cmake/ChangeLog b/dev-util/cmake/ChangeLog
index c073549d2e3a..b21c29068826 100644
--- a/dev-util/cmake/ChangeLog
+++ b/dev-util/cmake/ChangeLog
@@ -1,6 +1,15 @@
# ChangeLog for dev-util/cmake
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-util/cmake/ChangeLog,v 1.232 2013/03/02 20:20:59 hwoarang Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-util/cmake/ChangeLog,v 1.233 2013/04/14 17:41:44 kensington Exp $
+
+*cmake-2.8.10.2-r2 (14 Apr 2013)
+
+ 14 Apr 2013; Michael Palimaka <kensington@gentoo.org>
+ +cmake-2.8.10.2-r2.ebuild, +files/cmake-2.8.10.2-FindImageMagick.patch,
+ +files/cmake-2.8.10.2-FindPythonInterp.patch,
+ +files/cmake-2.8.10.2-FindPythonLibs.patch:
+ Revision bump to fix detection of python (bug #405181) and newer imagemagic
+ (bug #465898).
02 Mar 2013; Markos Chandras <hwoarang@gentoo.org> cmake-2.8.10.2-r1.ebuild,
cmake-2.8.9.ebuild:
diff --git a/dev-util/cmake/cmake-2.8.10.2-r2.ebuild b/dev-util/cmake/cmake-2.8.10.2-r2.ebuild
new file mode 100644
index 000000000000..c0819d88acc8
--- /dev/null
+++ b/dev-util/cmake/cmake-2.8.10.2-r2.ebuild
@@ -0,0 +1,180 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-util/cmake/cmake-2.8.10.2-r2.ebuild,v 1.1 2013/04/14 17:41:44 kensington Exp $
+
+EAPI=5
+
+CMAKE_REMOVE_MODULES="no"
+inherit elisp-common toolchain-funcs eutils versionator cmake-utils virtualx
+
+DESCRIPTION="Cross platform Make"
+HOMEPAGE="http://www.cmake.org/"
+SRC_URI="http://www.cmake.org/files/v$(get_version_component_range 1-2)/${P}.tar.gz"
+
+LICENSE="CMake"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~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 qt4 vim-syntax"
+
+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 )
+ qt4? (
+ dev-qt/qtcore:4
+ dev-qt/qtgui:4
+ )
+"
+RDEPEND="${DEPEND}
+ emacs? ( virtual/emacs )
+ vim-syntax? (
+ || (
+ app-editors/vim
+ app-editors/gvim
+ )
+ )
+"
+
+SITEFILE="50${PN}-gentoo.el"
+VIMFILE="${PN}.vim"
+
+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.0-darwin-default-install_name.patch
+ "${FILESDIR}"/${PN}-2.8.7-FindBLAS.patch
+ "${FILESDIR}"/${PN}-2.8.7-FindBoost-python.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-desktop.patch
+ "${FILESDIR}"/${PN}-2.8.10-libform.patch
+ "${FILESDIR}"/${PN}-2.8.10-more-no_host_paths.patch
+ "${FILESDIR}"/${PN}-2.8.10.2-FindPythonInterp.patch
+ "${FILESDIR}"/${PN}-2.8.10.2-FindPythonLibs.patch
+ "${FILESDIR}"/${PN}-2.8.10.2-implicit-include.patch
+ "${FILESDIR}"/${PN}-2.8.10.2-FindImageMagick.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
+
+ 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 test
+ # this is altered thanks to our eclass
+ sed -i -e 's:#IGNORE ::g' "${S}"/Tests/OutDir/CMakeLists.txt || die
+
+ pushd "${CMAKE_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
+ "${CMAKE_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)
+ $(cmake-utils_use_build qt4 QtDialog)
+ )
+
+ 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
+ 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.10.2-FindImageMagick.patch b/dev-util/cmake/files/cmake-2.8.10.2-FindImageMagick.patch
new file mode 100644
index 000000000000..6a79a58d70c7
--- /dev/null
+++ b/dev-util/cmake/files/cmake-2.8.10.2-FindImageMagick.patch
@@ -0,0 +1,34 @@
+http://bugs.gentoo.org/465898
+
+--- Modules/FindImageMagick.cmake
++++ Modules/FindImageMagick.cmake
+@@ -81,7 +81,7 @@
+ ${ImageMagick_INCLUDE_DIRS}
+ "[HKEY_LOCAL_MACHINE\\SOFTWARE\\ImageMagick\\Current;BinPath]/include"
+ PATH_SUFFIXES
+- ImageMagick
++ ImageMagick ImageMagick-6
+ DOC "Path to the ImageMagick include dir."
+ )
+ find_library(ImageMagick_${component}_LIBRARY
+@@ -147,17 +147,17 @@
+ )
+ if(component STREQUAL "Magick++")
+ FIND_IMAGEMAGICK_API(Magick++ Magick++.h
+- Magick++ CORE_RL_Magick++_
++ Magick++ CORE_RL_Magick++_ Magick++.Q8 Magick++-Q8 Magick++.Q8HDRI Magick++-Q8HDRI Magick++.Q16 Magick++-Q16 Magick++.Q16HDRI Magick++-Q16HDRI Magick++.Q32 Magick++-Q32 Magick++.Q32HDRI Magick++-Q32HDRI Magick++.Q64 Magick++-Q64 Magick++.Q64HDRI Magick++-Q64HDRI Magick++-6.Q8 Magick++-6-Q8 Magick++-6.Q8HDRI Magick++-6-Q8HDRI Magick++-6.Q16 Magick++-6-Q16 Magick++-6.Q16HDRI Magick++-6-Q16HDRI Magick++-6.Q32 Magick++-6-Q32 Magick++-6.Q32HDRI Magick++-6-Q32HDRI Magick++-6.Q64 Magick++-6-Q64 Magick++-6.Q64HDRI Magick++-6-Q64HDRI
+ )
+ list(APPEND ImageMagick_REQUIRED_VARS ImageMagick_Magick++_LIBRARY)
+ elseif(component STREQUAL "MagickWand")
+ FIND_IMAGEMAGICK_API(MagickWand wand/MagickWand.h
+- Wand MagickWand CORE_RL_wand_
++ Wand MagickWand CORE_RL_wand_ MagickWand.Q8 MagickWand-Q8 MagickWand.Q8HDRI MagickWand-Q8HDRI MagickWand.Q16 MagickWand-Q16 MagickWand.Q16HDRI MagickWand-Q16HDRI MagickWand.Q32 MagickWand-Q32 MagickWand.Q32HDRI MagickWand-Q32HDRI MagickWand.Q64 MagickWand-Q64 MagickWand.Q64HDRI MagickWand-Q64HDRI MagickWand-6.Q8 MagickWand-6-Q8 MagickWand-6.Q8HDRI MagickWand-6-Q8HDRI MagickWand-6.Q16 MagickWand-6-Q16 MagickWand-6.Q16HDRI MagickWand-6-Q16HDRI MagickWand-6.Q32 MagickWand-6-Q32 MagickWand-6.Q32HDRI MagickWand-6-Q32HDRI MagickWand-6.Q64 MagickWand-6-Q64 MagickWand-6.Q64HDRI MagickWand-6-Q64HDRI
+ )
+ list(APPEND ImageMagick_REQUIRED_VARS ImageMagick_MagickWand_LIBRARY)
+ elseif(component STREQUAL "MagickCore")
+ FIND_IMAGEMAGICK_API(MagickCore magick/MagickCore.h
+- Magick MagickCore CORE_RL_magick_
++ Magick MagickCore CORE_RL_magick_ MagickCore.Q8 MagickCore-Q8 MagickCore.Q8HDRI MagickCore-Q8HDRI MagickCore.Q16 MagickCore-Q16 MagickCore.Q16HDRI MagickCore-Q16HDRI MagickCore.Q32 MagickCore-Q32 MagickCore.Q32HDRI MagickCore-Q32HDRI MagickCore.Q64 MagickCore-Q64 MagickCore.Q64HDRI MagickCore-Q64HDRI MagickCore-6.Q8 MagickCore-6-Q8 MagickCore-6.Q8HDRI MagickCore-6-Q8HDRI MagickCore-6.Q16 MagickCore-6-Q16 MagickCore-6.Q16HDRI MagickCore-6-Q16HDRI MagickCore-6.Q32 MagickCore-6-Q32 MagickCore-6.Q32HDRI MagickCore-6-Q32HDRI MagickCore-6.Q64 MagickCore-6-Q64 MagickCore-6.Q64HDRI MagickCore-6-Q64HDRI
+ )
+ list(APPEND ImageMagick_REQUIRED_VARS ImageMagick_MagickCore_LIBRARY)
+ else()
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
new file mode 100644
index 000000000000..a7e8688ec872
--- /dev/null
+++ b/dev-util/cmake/files/cmake-2.8.10.2-FindPythonInterp.patch
@@ -0,0 +1,22 @@
+--- 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.10.2-FindPythonLibs.patch b/dev-util/cmake/files/cmake-2.8.10.2-FindPythonLibs.patch
new file mode 100644
index 000000000000..80cc4d38873f
--- /dev/null
+++ b/dev-util/cmake/files/cmake-2.8.10.2-FindPythonLibs.patch
@@ -0,0 +1,24 @@
+diff --git a/Modules/FindPythonLibs.cmake b/Modules/FindPythonLibs.cmake
+index bffa9fb..8fc90ee 100644
+--- a/Modules/FindPythonLibs.cmake
++++ b/Modules/FindPythonLibs.cmake
+@@ -74,6 +74,19 @@ set(_Python_VERSIONS
+ ${_PYTHON_FIND_OTHER_VERSIONS}
+ )
+
++# Gentoo portage requires that you use exactly the given python version
++if (CMAKE_BUILD_TYPE STREQUAL Gentoo)
++ execute_process(COMMAND python -c "import sys; sys.stdout.write('.'.join([str(x) for x in sys.version_info[:2]]))"
++ OUTPUT_VARIABLE _Gentoo_Python_VERSION)
++ list(FIND _Python_VERSIONS "${_Gentoo_Python_VERSION}" _Gentoo_Python_INDEX)
++ if (_Gentoo_Python_INDEX EQUAL -1)
++ # the current Gentoo python version is not compatible with what is requested
++ set(_Python_VERSIONS)
++ else ()
++ set(_Python_VERSIONS "${_Gentoo_Python_VERSION}")
++ endif ()
++endif()
++
+ unset(_PYTHON_FIND_OTHER_VERSIONS)
+ unset(_PYTHON1_VERSIONS)
+ unset(_PYTHON2_VERSIONS)