sci-mathematics/boolector: Fix manifest
[shuber-gentoo-overlay.git] / sci-libs / itk / itk-4.4.2-r1.ebuild
1 # Copyright 2013 Gentoo Foundation
2 # Distributed under the terms of the GNU General Public License v2
3 # $Header: $
4
5 EAPI=5
6
7 PYTHON_COMPAT=( python{2_5,2_6,2_7} )
8
9 inherit eutils toolchain-funcs cmake-utils python-single-r1
10
11 MYPN=InsightToolkit
12 MYP=${MYPN}-${PV}
13
14 DESCRIPTION="NLM Insight Segmentation and Registration Toolkit"
15 HOMEPAGE="http://www.itk.org"
16 SRC_URI="
17 mirror://sourceforge/${PN}/${MYP}.tar.gz
18 doc? ( mirror://sourceforge/${PN}/Doxygen${MYPN}-4.4.0.tar.gz )"
19 RESTRICT="primaryuri"
20
21 LICENSE="Apache-2.0"
22 SLOT="0"
23 KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
24 IUSE="debug doc examples fftw itkv3compat python review sse2 test vtkglue"
25
26 RDEPEND="
27 sci-libs/hdf5[cxx]
28 virtual/jpeg
29 media-libs/libpng
30 media-libs/tiff:0
31 sys-libs/zlib
32 fftw? ( sci-libs/fftw:3.0 )
33 vtkglue? ( sci-libs/vtk )
34 "
35 DEPEND="${RDEPEND}
36 python? ( ${PYTHON_DEPS}
37 >=dev-lang/swig-2.0
38 >=dev-cpp/gccxml-0.9.0_pre20120309 )
39 doc? ( app-doc/doxygen )
40 "
41
42 S="${WORKDIR}/${MYP}"
43
44 pkg_pretend() {
45 if [[ -z ${ITK_COMPUTER_MEMORY_SIZE} ]]; then
46 elog "To tune ITK to make the best use ouf working memory you can set"
47 elog " ITK_COMPUTER_MEMORY_SIZE=XX"
48 elog "in make.conf, default is 1 (unit is GB)"
49 fi
50 if use python && [[ -z ${ITK_WRAP_DIMS} ]]; then
51 elog "For Python language bindings, you can define the dimensions"
52 elog "you want to create bindings for by setting"
53 elog " ITK_WRAP_DIMS=X;Y;Z..."
54 elog "in make.conf, default is 2;3 for 2D and 3D data"
55 fi
56 }
57
58 src_configure() {
59 local mycmakeargs=(
60 -DWRAP_ITK_JAVA=OFF
61 -DWRAP_ITK_TCL=OFF
62 -DITK_USE_SYSTEM_HDF5=ON
63 -DITK_USE_SYSTEM_JPEG=ON
64 -DITK_USE_SYSTEM_PNG=ON
65 -DITK_USE_SYSTEM_TIFF=ON
66 -DITK_USE_SYSTEM_ZLIB=ON
67 -DITK_USE_SYSTEM_GCCXML=ON
68 -DITK_USE_SYSTEM_SWIG=ON
69 -DITK_BUILD_ALL_MODULES=ON
70 -DBUILD_SHARED_LIBS=ON
71 -DBUILD_EXAMPLES=OFF
72 -DITK_COMPUTER_MEMORY_SIZE="${ITK_COMPUTER_MEMORY_SIZE:-1}"
73 $(cmake-utils_use_build test TESTING)
74 $(cmake-utils_use review ITK_USE_REVIEW)
75 $(cmake-utils_use itkv3compat ITKV3_COMPATIBILITY)
76 $(cmake-utils_use sse2 VNL_CONFIG_ENABLE_SSE2)
77 )
78 if use fftw; then
79 mycmakeargs+=(
80 -DUSE_FFTWD=ON
81 -DUSE_FFTWF=ON
82 -DUSE_SYSTEM_FFTW=ON
83 -DITK_WRAP_double=ON
84 -DITK_WRAP_vector_double=ON
85 -DITK_WRAP_covariant_vector_double=ON
86 -DITK_WRAP_complex_double=ON
87 )
88 fi
89 if use vtkglue; then
90 mycmakeargs+=(
91 -DModule_ITKVtkGlue=ON
92 )
93 fi
94 if use python; then
95 mycmakeargs+=(
96 -DITK_WRAP_PYTHON=ON
97 -DITK_WRAP_DIMS="${ITK_WRAP_DIMS:-2;3}"
98 )
99 else
100 mycmakeargs+=(
101 -DITK_WRAP_PYTHON=OFF
102 )
103 fi
104 cmake-utils_src_configure
105 }
106
107 src_install() {
108 cmake-utils_src_install
109
110 if use examples; then
111 insinto /usr/share/doc/${PF}/examples
112 docompress -x /usr/share/doc/${PF}/examples
113 doins -r "${S}"/Examples/*
114 fi
115
116 echo "ITK_DATA_ROOT=${EROOT}/usr/share/${PN}/data" > ${T}/40${PN}
117 local ldpath="${EROOT}/usr/$(get_libdir)/InsightToolkit"
118 if use python; then
119 echo "PYTHONPATH=${EROOT}/usr/$(get_libdir)/InsightToolkit/WrapITK/Python" >> ${T}/40${PN}
120 ldpath="${ldpath}:${EROOT}/usr/$(get_libdir)/InsightToolkit/WrapITK/lib"
121 fi
122 echo "LDPATH=${ldpath}" >> ${T}/40${PN}
123
124 if use doc; then
125 insinto "/usr/share/doc/${PF}/api-docs"
126 cd "${WORKDIR}"/html
127 rm -f *.md5 || die "Failed to remove superfluous hashes"
128 einfo "Installing API docs. This may take some time."
129 insinto "/usr/share/doc/${PF}/api-docs"
130 doins -r ./* || die "Failed to install docs"
131 fi
132
133 doenvd "${T}"/40${PN}
134 }