Files
@ 108c31962f10
Branch filter:
Location: ohnobinki_overlay/dev-util/cmake/cmake-2.8.1-r3.ebuild
108c31962f10
4.2 KiB
application/vnd.gentoo.ebuild
Actually enable the FIND_LIBRARY_USE_LIB32_PATHS cmake property by default in my patch... somehow I left it disabled by default which doesn't help fixing compilation problems ;-).
(Portage version: 2.2_rc96-r1/hg/Linux x86_64, signed Manifest commit with key 6BA81050)
(Portage version: 2.2_rc96-r1/hg/Linux x86_64, signed Manifest commit with key 6BA81050)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 | # 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
"${FILESDIR}"/${PN}-2.8.1-portage-multilib-lib32.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
# make things work with gentoo java setup
# in case java-config cannot be run, the variable just becomes unset
export JAVA_HOME=$(java-config -g JAVA_HOME 2> /dev/null)
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
use test && bootstrap=1 #315223
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
}
|