Gentoo Archives: gentoo-commits

From: "Markus Dittrich (markusle)" <markusle@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in sci-libs/vtk: ChangeLog vtk-5.2.0-r1.ebuild vtk-5.2.0.ebuild
Date: Sun, 05 Oct 2008 16:42:05
Message-Id: E1KmWgE-0003hr-LV@stork.gentoo.org
1 markusle 08/10/05 16:42:02
2
3 Modified: ChangeLog
4 Added: vtk-5.2.0-r1.ebuild
5 Removed: vtk-5.2.0.ebuild
6 Log:
7 Fixed improper install location of support files (see bug #239553).
8 (Portage version: 2.2_rc11/cvs/Linux 2.6.26-SENTINEL-2 i686)
9
10 Revision Changes Path
11 1.51 sci-libs/vtk/ChangeLog
12
13 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/sci-libs/vtk/ChangeLog?rev=1.51&view=markup
14 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/sci-libs/vtk/ChangeLog?rev=1.51&content-type=text/plain
15 diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/sci-libs/vtk/ChangeLog?r1=1.50&r2=1.51
16
17 Index: ChangeLog
18 ===================================================================
19 RCS file: /var/cvsroot/gentoo-x86/sci-libs/vtk/ChangeLog,v
20 retrieving revision 1.50
21 retrieving revision 1.51
22 diff -u -r1.50 -r1.51
23 --- ChangeLog 2 Oct 2008 23:37:56 -0000 1.50
24 +++ ChangeLog 5 Oct 2008 16:42:02 -0000 1.51
25 @@ -1,6 +1,13 @@
26 # ChangeLog for sci-libs/vtk
27 # Copyright 1999-2008 Gentoo Foundation; Distributed under the GPL v2
28 -# $Header: /var/cvsroot/gentoo-x86/sci-libs/vtk/ChangeLog,v 1.50 2008/10/02 23:37:56 markusle Exp $
29 +# $Header: /var/cvsroot/gentoo-x86/sci-libs/vtk/ChangeLog,v 1.51 2008/10/05 16:42:02 markusle Exp $
30 +
31 +*vtk-5.2.0-r1 (05 Oct 2008)
32 +
33 + 05 Oct 2008; Markus Dittrich <markusle@g.o>
34 + +files/vtk-5.2.0-tcl-install.patch, -vtk-5.2.0.ebuild,
35 + +vtk-5.2.0-r1.ebuild:
36 + Fixed improper install location of support files (see bug #239553).
37
38 *vtk-5.2.0 (01 Oct 2008)
39
40
41
42
43 1.1 sci-libs/vtk/vtk-5.2.0-r1.ebuild
44
45 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/sci-libs/vtk/vtk-5.2.0-r1.ebuild?rev=1.1&view=markup
46 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/sci-libs/vtk/vtk-5.2.0-r1.ebuild?rev=1.1&content-type=text/plain
47
48 Index: vtk-5.2.0-r1.ebuild
49 ===================================================================
50 # Copyright 1999-2008 Gentoo Foundation
51 # Distributed under the terms of the GNU General Public License v2
52 # $Header: /var/cvsroot/gentoo-x86/sci-libs/vtk/vtk-5.2.0-r1.ebuild,v 1.1 2008/10/05 16:42:02 markusle Exp $
53
54 EAPI="1"
55 inherit distutils eutils flag-o-matic toolchain-funcs versionator java-pkg-opt-2 python qt3 qt4
56
57 # Short package version
58 SPV="$(get_version_component_range 1-2)"
59
60 DESCRIPTION="The Visualization Toolkit"
61 HOMEPAGE="http://www.vtk.org"
62 SRC_URI="http://www.${PN}.org/files/release/${SPV}/${P}.tar.gz
63 examples? ( http://www.${PN}.org/files/release/${SPV}/${PN}data-${PV}.tar.gz )
64 doc? ( http://www.${PN}.org/files/release/${SPV}/${PN}DocHtml-${PV}.tar.gz )"
65
66 LICENSE="BSD LGPL-2"
67 KEYWORDS="~amd64 ~x86"
68 SLOT="0"
69 IUSE="boost cg doc examples mpi patented python tcl tk threads qt3 qt4"
70 RDEPEND="mpi? ( || (
71 sys-cluster/openmpi
72 sys-cluster/lam-mpi
73 sys-cluster/mpich2 ) )
74 python? ( >=dev-lang/python-2.0 )
75 boost? ( dev-libs/boost )
76 cg? ( media-gfx/nvidia-cg-toolkit )
77 tcl? ( >=dev-lang/tcl-8.2.3 )
78 tk? ( >=dev-lang/tk-8.2.3 )
79 java? ( >=virtual/jre-1.5 )
80 !qt4? ( qt3? ( >=x11-libs/qt-3.3.4:3 ) )
81 qt4? (
82 || ( ( x11-libs/qt-core:4 x11-libs/qt-gui:4 ) =x11-libs/qt-4.3*:4 ) )
83 dev-libs/expat
84 dev-libs/libxml2
85 media-libs/freetype
86 media-libs/jpeg
87 media-libs/libpng
88 media-libs/tiff
89 virtual/opengl
90 x11-libs/libXmu"
91
92 DEPEND="${RDEPEND}
93 java? ( >=virtual/jdk-1.5 )
94 >=dev-util/cmake-2.2.3"
95
96 S="${WORKDIR}"/VTK
97
98 pkg_setup() {
99 java-pkg-opt-2_pkg_setup
100 if use qt3 && use qt4; then
101 echo
102 ewarn "qt3 and qt4 support for vtk are mutually exclusive and"
103 ewarn "qt4 support has therefore been enabled by default."
104 echo
105 fi
106
107 if use mpi && has_version sys-cluster/mpich2; then
108 append-flags -DMPICH_IGNORE_CXX_SEEK
109 if ! built_with_use sys-cluster/mpich2 cxx; then
110 die "Please re-emerge sys-cluster/mpich2 with USE=\"cxx\""
111 fi
112 fi
113
114 if use qt4 && use examples; then
115 QT4_BUILT_WITH_USE_CHECK="qt3support"
116 qt4_pkg_setup
117 fi
118 }
119
120 src_unpack() {
121 unpack ${A}
122 cd "${S}"
123 epatch "${FILESDIR}"/${P}-tcl-install.patch
124 sed -e "s:@VTK_TCL_LIBRARY_DIR@:/usr/$(get_libdir):" \
125 -i Wrapping/Tcl/pkgIndex.tcl.in \
126 || die "Failed to fix tcl pkgIndex file"
127 }
128
129 src_compile() {
130 # gcc versions 3.2.x seem to have sse-related bugs that are
131 # triggered by VTK when compiling for pentium3/4
132 if [ "$(gcc-major-version)" -eq 3 -a "$(gcc-minor-version)" -eq 2 -a \
133 "$(get-flag -march)" == "-march=pentium4" ]; then
134 filter-mfpmath sse
135 filter-flags "-msse -msse2"
136 echo "$(get-flag -march)"
137 fi
138
139 # Fix Examples cmake file
140 sed -e "s/MAKEPROGRAM/CMAKE_MAKE_PROGRAM/g" \
141 -i "${S}"/Examples/CMakeLists.txt || \
142 die "Failed to fix examples CMakeList.txt"
143
144 # build list of config variable define's to pass to cmake
145 local CMAKE_VARIABLES=""
146 CMAKE_VARIABLES="${CMAKE_VARIABLES} -DVTK_INSTALL_PACKAGE_DIR:PATH=/$(get_libdir)/${PN}-${SPV}"
147 CMAKE_VARIABLES="${CMAKE_VARIABLES} -DCMAKE_SKIP_RPATH:BOOL=YES"
148 CMAKE_VARIABLES="${CMAKE_VARIABLES} -DVTK_DIR:PATH=${S}"
149 CMAKE_VARIABLES="${CMAKE_VARIABLES} -DVTK_INSTALL_LIB_DIR:PATH=/$(get_libdir)/"
150 CMAKE_VARIABLES="${CMAKE_VARIABLES} -DCMAKE_INSTALL_PREFIX:PATH=/usr"
151 CMAKE_VARIABLES="${CMAKE_VARIABLES} -DBUILD_SHARED_LIBS:BOOL=ON"
152 CMAKE_VARIABLES="${CMAKE_VARIABLES} -DVTK_USE_SYSTEM_FREETYPE:BOOL=ON"
153 CMAKE_VARIABLES="${CMAKE_VARIABLES} -DVTK_USE_SYSTEM_JPEG:BOOL=ON"
154 CMAKE_VARIABLES="${CMAKE_VARIABLES} -DVTK_USE_SYSTEM_PNG:BOOL=ON"
155 CMAKE_VARIABLES="${CMAKE_VARIABLES} -DVTK_USE_SYSTEM_TIFF:BOOL=ON"
156 CMAKE_VARIABLES="${CMAKE_VARIABLES} -DVTK_USE_SYSTEM_ZLIB:BOOL=ON"
157 CMAKE_VARIABLES="${CMAKE_VARIABLES} -DVTK_USE_SYSTEM_EXPAT:BOOL=ON"
158 CMAKE_VARIABLES="${CMAKE_VARIABLES} -DVTK_USE_SYSTEM_LIBXML2:BOOL=ON"
159 CMAKE_VARIABLES="${CMAKE_VARIABLES} -DBUILD_TESTING:BOOL=OFF"
160 CMAKE_VARIABLES="${CMAKE_VARIABLES} -DVTK_USE_HYBRID:BOOL=ON"
161 CMAKE_VARIABLES="${CMAKE_VARIABLES} -DVTK_USE_GL2PS:BOOL=ON"
162 CMAKE_VARIABLES="${CMAKE_VARIABLES} -DVTK_USE_RENDERING:BOOL=ON"
163
164 use boost && CMAKE_VARIABLES="${CMAKE_VARIABLES} -DVTK_USE_BOOST:BOOL=ON"
165 use cg && CMAKE_VARIABLES="${CMAKE_VARIABLES} -DVTK_USE_CG_SHADERS:BOOL=ON"
166
167 use examples && CMAKE_VARIABLES="${CMAKE_VARIABLES} -DVTK_DATA_ROOT:PATH=/usr/share/${PN}/data -DBUILD_EXAMPLES:BOOL=ON"
168 if use java; then
169 CMAKE_VARIABLES="${CMAKE_VARIABLES} -DVTK_WRAP_JAVA:BOOL=ON"
170 CMAKE_VARIABLES="${CMAKE_VARIABLES} -DJAVA_AWT_INCLUDE_PATH:PATH=`java-config -O`/include"
171 CMAKE_VARIABLES="${CMAKE_VARIABLES} -DJAVA_INCLUDE_PATH:PATH=`java-config -O`/include"
172 CMAKE_VARIABLES="${CMAKE_VARIABLES} -DJAVA_INCLUDE_PATH2:PATH=`java-config -O`/include/linux"
173 if [ "${ARCH}" == "amd64" ]; then
174 CMAKE_VARIABLES="${CMAKE_VARIABLES} -DJAVA_AWT_LIBRARY:PATH=`java-config -O`/jre/lib/${ARCH}/libjawt.so"
175 else
176 CMAKE_VARIABLES="${CMAKE_VARIABLES} -DJAVA_AWT_LIBRARY:PATH=`java-config -O`/jre/lib/i386/libjawt.so"
177 fi
178 fi
179
180 if use mpi; then
181 CMAKE_VARIABLES="${CMAKE_VARIABLES} -DVTK_USE_MPI:BOOL=ON"
182 use !threads && CMAKE_VARIABLES="${CMAKE_VARIABLES} -DVTK_USE_PARALLEL:BOOL=ON"
183 fi
184
185 if use python; then
186 python_version
187 CMAKE_VARIABLES="${CMAKE_VARIABLES} -DVTK_WRAP_PYTHON:BOOL=ON"
188 CMAKE_VARIABLES="${CMAKE_VARIABLES} -DPYTHON_INCLUDE_PATH:PATH=/usr/include/python${PYVER}"
189 CMAKE_VARIABLES="${CMAKE_VARIABLES} -DPYTHON_LIBRARY:PATH=/usr/$(get_libdir)/libpython${PYVER}.so"
190 fi
191
192 if use qt3 || use qt4 ; then
193 CMAKE_VARIABLES="${CMAKE_VARIABLES} -DVTK_USE_GUISUPPORT:BOOL=ON"
194 CMAKE_VARIABLES="${CMAKE_VARIABLES} -DVTK_USE_QVTK:BOOL=ON"
195 CMAKE_VARIABLES="${CMAKE_VARIABLES} -DQT_WRAP_CPP:BOOL=ON"
196 CMAKE_VARIABLES="${CMAKE_VARIABLES} -DQT_WRAP_UI:BOOL=ON"
197 fi
198
199 if use qt3; then
200 CMAKE_VARIABLES="${CMAKE_VARIABLES} -DVTK_INSTALL_QT_DIR:PATH=/qt/3/plugins/${PN}"
201 CMAKE_VARIABLES="${CMAKE_VARIABLES} -DDESIRED_QT_VERSION:STRING=3"
202 CMAKE_VARIABLES="${CMAKE_VARIABLES} -DQT_MOC_EXECUTABLE:FILEPATH=/usr/qt/3/bin/moc"
203 CMAKE_VARIABLES="${CMAKE_VARIABLES} -DQT_UIC_EXECUTABLE:FILEPATH=/usr/qt/3/bin/uic"
204 CMAKE_VARIABLES="${CMAKE_VARIABLES} -DQT_INCLUDE_DIR:PATH=/usr/qt/3/include"
205 CMAKE_VARIABLES="${CMAKE_VARIABLES} -DQT_QMAKE_EXECUTABLE:PATH=/usr/qt/3/bin/qmake"
206 fi
207
208 if use qt4; then
209 CMAKE_VARIABLES="${CMAKE_VARIABLES} -DVTK_INSTALL_QT_DIR:PATH=/$(get_libdir)/qt4/plugins/${PN}"
210 CMAKE_VARIABLES="${CMAKE_VARIABLES} -DDESIRED_QT_VERSION:STRING=4"
211 CMAKE_VARIABLES="${CMAKE_VARIABLES} -DQT_MOC_EXECUTABLE:FILEPATH=/usr/bin/moc"
212 CMAKE_VARIABLES="${CMAKE_VARIABLES} -DQT_UIC_EXECUTABLE:FILEPATH=/usr/bin/uic"
213 CMAKE_VARIABLES="${CMAKE_VARIABLES} -DQT_INCLUDE_DIR:PATH=/usr/include/qt4"
214 CMAKE_VARIABLES="${CMAKE_VARIABLES} -DQT_QMAKE_EXECUTABLE:PATH=/usr/bin/qmake"
215 fi
216
217 if use tcl; then
218 CMAKE_VARIABLES="${CMAKE_VARIABLES} -DVTK_WRAP_TCL:BOOL=ON"
219 else
220 CMAKE_VARIABLES="${CMAKE_VARIABLES} -DVTK_WRAP_TCL:BOOL=OFF"
221 fi
222
223 if use tk; then
224 CMAKE_VARIABLES="${CMAKE_VARIABLES} -DVTK_USE_TK:BOOL=ON"
225 else
226 CMAKE_VARIABLES="${CMAKE_VARIABLES} -DVTK_USE_TK:BOOL=OFF"
227 fi
228
229 use threads && CMAKE_VARIABLES="${CMAKE_VARIABLES} -DVTK_USE_PARALLEL:BOOL=ON"
230 use patented && CMAKE_VARIABLES="${CMAKE_VARIABLES} -DVTK_USE_PATENTED:BOOL=ON"
231 use doc && CMAKE_VARIABLES="${CMAKE_VARIABLES} -DDOCUMENTATION_HTML_HELP:BOOL=ON -DBUILD_DOCUMENTATION:BOOL=ON"
232
233 # run cmake twice to achieve proper
234 # configuration with cmake 2.2.x
235 cmake ${CMAKE_VARIABLES} . && cmake ${CMAKE_VARIABLES} . \
236 || die "cmake configuration failed"
237
238 # fix java.lang.OutOfMemoryError on amd64 (see bug #123178)
239 if use java && [ "${ARCH}" == "amd64" ]; then
240 sed -e "s/javac/javac -J-Xmx256m/" \
241 -i "${S}"/Wrapping/Java/CMakeFiles/VTKBuildAll.dir/build.make \
242 || die "Failed to patch javac"
243 fi
244
245 emake || die "emake failed"
246 }
247
248 src_install() {
249 # remove portage paths from dynamically created Type
250 # headers
251 sed -e "s:${S}/Common/::" \
252 -e "s:${S}/Rendering/::" \
253 -i "${S}"/Utilities/InstallOnly/*.cmake || \
254 die "Failed to fix cmake files"
255
256 make DESTDIR="${D}" install || die "make install failed"
257
258 # install docs
259 dohtml "${S}"/README.html || die "Failed to install docs"
260
261 # install python modules
262 if use python; then
263 cd "${S}"/Wrapping/Python
264 docinto vtk_python
265 distutils_src_install
266 fi
267
268 # install jar
269 use java && java-pkg_dojar "${S}"/bin/vtk.jar
270
271 # install Tcl docs
272 docinto vtk_tcl
273 dodoc "${S}"/Wrapping/Tcl/README || \
274 die "Failed to install Tcl docs"
275
276 # install examples
277 if use examples; then
278 dodir /usr/share/${PN} || \
279 die "Failed to create examples directory"
280 cp -pPR "${S}"/Examples "${D}"/usr/share/${PN}/examples || \
281 die "Failed to copy example files"
282
283 # fix example's permissions
284 find "${D}"/usr/share/${PN}/examples -type d -exec \
285 chmod 0755 {} \; || \
286 die "Failed to fix example directories permissions"
287 find "${D}"/usr/share/${PN}/examples -type f -exec \
288 chmod 0644 {} \; || \
289 die "Failed to fix example files permissions"
290
291 cp -pPR "${WORKDIR}"/VTKData "${D}"/usr/share/${PN}/data || \
292 die "Failed to copy data files"
293
294 # fix data's permissions
295 find "${D}"/usr/share/${PN}/data -type d -exec \
296 chmod 0755 {} \; || \
297 die "Failed to fix data directories permissions"
298 find "${D}"/usr/share/${PN}/data -type f -exec \
299 chmod 0644 {} \; || \
300 die "Failed to fix data files permissions"
301 fi
302
303 #install big docs
304 if use doc; then
305 cd "${WORKDIR}"/html
306 rm -f *.md5 || die "Failed to remove superfluous hashes"
307 einfo "Installing API docs. This may take some time."
308 insinto "/usr/share/doc/${PF}/api-docs"
309 doins -r ./* || die "Failed to install docs"
310 fi
311
312 # environment
313 echo "VTK_DATA_ROOT=/usr/share/${PN}/data" >> "${T}"/40${PN}
314 echo "VTK_DIR=/usr/$(get_libdir)/${PN}-${SPV}" >> "${T}"/40${PN}
315 echo "VTKHOME=/usr" >> "${T}"/40${PN}
316 doenvd "${T}"/40${PN}
317 }
318
319 pkg_postinst() {
320 if use patented; then
321 ewarn "Using patented code in VTK may require a license."
322 ewarn "For more information, please read:"
323 ewarn "http://public.kitware.com/cgi-bin/vtkfaq?req=show&file=faq07.005.htp"
324 fi
325 }