/[gentoo-x86]/dev-util/cmake/cmake-2.8.8-r3.ebuild
Gentoo

Contents of /dev-util/cmake/cmake-2.8.8-r3.ebuild

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.10 - (show annotations) (download)
Mon Oct 1 11:28:38 2012 UTC (7 months, 2 weeks ago) by johu
Branch: MAIN
CVS Tags: HEAD
Changes since 1.9: +1 -1 lines
FILE REMOVED
Remove old.

(Portage version: 2.2.0_alpha133/cvs/Linux x86_64)

1 # Copyright 1999-2012 Gentoo Foundation
2 # Distributed under the terms of the GNU General Public License v2
3 # $Header: /var/cvsroot/gentoo-x86/dev-util/cmake/cmake-2.8.8-r3.ebuild,v 1.9 2012/09/09 17:34:26 armin76 Exp $
4
5 EAPI=4
6
7 CMAKE_REMOVE_MODULES="no"
8 inherit elisp-common toolchain-funcs eutils versionator flag-o-matic base cmake-utils virtualx
9
10 MY_P="${PN}-$(replace_version_separator 3 - ${MY_PV})"
11
12 DESCRIPTION="Cross platform Make"
13 HOMEPAGE="http://www.cmake.org/"
14 SRC_URI="http://www.cmake.org/files/v$(get_version_component_range 1-2)/${MY_P}.tar.gz"
15
16 LICENSE="CMake"
17 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 ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
18 SLOT="0"
19 IUSE="emacs ncurses qt4 vim-syntax"
20
21 DEPEND="
22 >=app-arch/libarchive-2.8.0
23 >=net-misc/curl-7.20.0-r1[ssl]
24 >=dev-libs/expat-2.0.1
25 virtual/pkgconfig
26 sys-libs/zlib
27 ncurses? ( sys-libs/ncurses )
28 qt4? ( x11-libs/qt-gui:4 )
29 "
30 RDEPEND="${DEPEND}
31 emacs? ( virtual/emacs )
32 vim-syntax? (
33 || (
34 app-editors/vim
35 app-editors/gvim
36 )
37 )
38 "
39
40 SITEFILE="50${PN}-gentoo.el"
41 VIMFILE="${PN}.vim"
42
43 S="${WORKDIR}/${MY_P}"
44
45 CMAKE_BINARY="${S}/Bootstrap.cmk/cmake"
46
47 PATCHES=(
48 "${FILESDIR}"/${PN}-2.6.3-darwin-bundle.patch
49 "${FILESDIR}"/${PN}-2.6.3-no-duplicates-in-rpath.patch
50 "${FILESDIR}"/${PN}-2.6.3-fix_broken_lfs_on_aix.patch
51 "${FILESDIR}"/${PN}-2.8.0-darwin-default-install_name.patch
52 "${FILESDIR}"/${PN}-2.8.1-libform.patch
53 "${FILESDIR}"/${PN}-2.8.4-FindPythonLibs.patch
54 "${FILESDIR}"/${PN}-2.8.7-FindBoost-python.patch
55 "${FILESDIR}"/${PN}-2.8.7-FindBLAS.patch
56 "${FILESDIR}"/${PN}-2.8.7-FindLAPACK.patch
57 "${FILESDIR}"/${PN}-2.8.8-FindPkgConfig.patch
58 "${FILESDIR}"/${PN}-2.8.8-more-no_host_paths.patch
59 "${FILESDIR}"/${PN}-2.8.8-tests.patch
60 "${FILESDIR}"/${PN}-2.8.8-pkgconfig.patch
61 )
62
63 cmake_src_bootstrap() {
64 # Cleanup args to extract only JOBS.
65 # Because bootstrap does not know anything else.
66 echo ${MAKEOPTS} | egrep -o '(\-j|\-\-jobs)(=?|[[:space:]]*)[[:digit:]]+' > /dev/null
67 if [ $? -eq 0 ]; then
68 par_arg=$(echo ${MAKEOPTS} | egrep -o '(\-j|\-\-jobs)(=?|[[:space:]]*)[[:digit:]]+' | egrep -o '[[:digit:]]+')
69 par_arg="--parallel=${par_arg}"
70 else
71 par_arg="--parallel=1"
72 fi
73
74 tc-export CC CXX LD
75
76 # bootstrap script isn't exactly /bin/sh compatible
77 ${CONFIG_SHELL:-sh} ./bootstrap \
78 --prefix="${T}/cmakestrap/" \
79 ${par_arg} \
80 || die "Bootstrap failed"
81 }
82
83 cmake_src_test() {
84 # fix OutDir test
85 # this is altered thanks to our eclass
86 sed -i -e 's:#IGNORE ::g' "${S}"/Tests/OutDir/CMakeLists.txt || die
87
88 pushd "${CMAKE_BUILD_DIR}" > /dev/null
89
90 local ctestargs
91 [[ -n ${TEST_VERBOSE} ]] && ctestargs="--extra-verbose --output-on-failure"
92
93 # Excluded tests:
94 # BootstrapTest: we actualy bootstrap it every time so why test it.
95 # SimpleCOnly_sdcc: sdcc choke on global cflags so just skip the test
96 # as it was never intended to be used this way.
97 "${CMAKE_BUILD_DIR}"/bin/ctest ${ctestargs} \
98 -E BootstrapTest SimpleCOnly_sdcc \
99 || die "Tests failed"
100
101 popd > /dev/null
102 }
103
104 pkg_setup() {
105 einfo "Fixing java access violations ..."
106 # bug 387227
107 addpredict /proc/self/coredump_filter
108 }
109
110 src_prepare() {
111 base_src_prepare
112
113 # disable running of cmake in boostrap command
114 sed -i \
115 -e '/"${cmake_bootstrap_dir}\/cmake"/s/^/#DONOTRUN /' \
116 bootstrap || die "sed failed"
117
118 # Add gcc libs to the default link paths
119 sed -i \
120 -e "s|@GENTOO_PORTAGE_GCCLIBDIR@|${EPREFIX}/usr/${CHOST}/lib/|g" \
121 -e "s|@GENTOO_PORTAGE_EPREFIX@|${EPREFIX}/|g" \
122 Modules/Platform/{UnixPaths,Darwin}.cmake || die "sed failed"
123
124 cmake_src_bootstrap
125 }
126
127 src_configure() {
128 # make things work with gentoo java setup
129 # in case java-config cannot be run, the variable just becomes unset
130 # per bug #315229
131 export JAVA_HOME=$(java-config -g JAVA_HOME 2> /dev/null)
132
133 local mycmakeargs=(
134 -DCMAKE_USE_SYSTEM_LIBRARIES=ON
135 -DCMAKE_INSTALL_PREFIX="${EPREFIX}"/usr
136 -DCMAKE_DOC_DIR=/share/doc/${PF}
137 -DCMAKE_MAN_DIR=/share/man
138 -DCMAKE_DATA_DIR=/share/${PN}
139 $(cmake-utils_use_build ncurses CursesDialog)
140 $(cmake-utils_use_build qt4 QtDialog)
141 )
142 cmake-utils_src_configure
143 }
144
145 src_compile() {
146 cmake-utils_src_compile
147 use emacs && elisp-compile Docs/cmake-mode.el
148 }
149
150 src_test() {
151 VIRTUALX_COMMAND="cmake_src_test" virtualmake
152 }
153
154 src_install() {
155 cmake-utils_src_install
156 if use emacs; then
157 elisp-install ${PN} Docs/cmake-mode.el Docs/cmake-mode.elc
158 elisp-site-file-install "${FILESDIR}/${SITEFILE}"
159 fi
160 if use vim-syntax; then
161 insinto /usr/share/vim/vimfiles/syntax
162 doins Docs/cmake-syntax.vim
163
164 insinto /usr/share/vim/vimfiles/indent
165 doins Docs/cmake-indent.vim
166
167 insinto /usr/share/vim/vimfiles/ftdetect
168 doins "${FILESDIR}/${VIMFILE}"
169 fi
170 }
171
172 pkg_postinst() {
173 use emacs && elisp-site-regen
174 }
175
176 pkg_postrm() {
177 use emacs && elisp-site-regen
178 }

  ViewVC Help
Powered by ViewVC 1.1.13