Gentoo Archives: gentoo-commits

From: "Justin Lecher (jlec)" <jlec@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in sci-libs/fftw: ChangeLog fftw-3.2.2-r1.ebuild
Date: Thu, 02 Dec 2010 21:51:01
Message-Id: 20101202215049.6C84920054@flycatcher.gentoo.org
1 jlec 10/12/02 21:50:49
2
3 Modified: ChangeLog
4 Added: fftw-3.2.2-r1.ebuild
5 Log:
6 Install pc files for threads
7
8 (Portage version: 2.2.0_alpha6/cvs/Linux x86_64)
9
10 Revision Changes Path
11 1.106 sci-libs/fftw/ChangeLog
12
13 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sci-libs/fftw/ChangeLog?rev=1.106&view=markup
14 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sci-libs/fftw/ChangeLog?rev=1.106&content-type=text/plain
15 diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sci-libs/fftw/ChangeLog?r1=1.105&r2=1.106
16
17 Index: ChangeLog
18 ===================================================================
19 RCS file: /var/cvsroot/gentoo-x86/sci-libs/fftw/ChangeLog,v
20 retrieving revision 1.105
21 retrieving revision 1.106
22 diff -u -r1.105 -r1.106
23 --- ChangeLog 3 Nov 2010 07:02:32 -0000 1.105
24 +++ ChangeLog 2 Dec 2010 21:50:49 -0000 1.106
25 @@ -1,6 +1,12 @@
26 # ChangeLog for sci-libs/fftw
27 # Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
28 -# $Header: /var/cvsroot/gentoo-x86/sci-libs/fftw/ChangeLog,v 1.105 2010/11/03 07:02:32 jer Exp $
29 +# $Header: /var/cvsroot/gentoo-x86/sci-libs/fftw/ChangeLog,v 1.106 2010/12/02 21:50:49 jlec Exp $
30 +
31 +*fftw-3.2.2-r1 (02 Dec 2010)
32 +
33 + 02 Dec 2010; Justin Lecher <jlec@g.o> +fftw-3.2.2-r1.ebuild,
34 + +files/fftw-3.2.2-pc-threads.patch:
35 + Install pc files for threads
36
37 *fftw-2.1.5-r7 (03 Nov 2010)
38
39
40
41
42 1.1 sci-libs/fftw/fftw-3.2.2-r1.ebuild
43
44 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sci-libs/fftw/fftw-3.2.2-r1.ebuild?rev=1.1&view=markup
45 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sci-libs/fftw/fftw-3.2.2-r1.ebuild?rev=1.1&content-type=text/plain
46
47 Index: fftw-3.2.2-r1.ebuild
48 ===================================================================
49 # Copyright 1999-2010 Gentoo Foundation
50 # Distributed under the terms of the GNU General Public License v2
51 # $Header: /var/cvsroot/gentoo-x86/sci-libs/fftw/fftw-3.2.2-r1.ebuild,v 1.1 2010/12/02 21:50:49 jlec Exp $
52
53 EAPI=2
54
55 inherit autotools eutils flag-o-matic toolchain-funcs
56
57 DESCRIPTION="Fast C library for the Discrete Fourier Transform"
58 HOMEPAGE="http://www.fftw.org/"
59 SRC_URI="http://www.fftw.org/${P}.tar.gz"
60
61 LICENSE="GPL-2"
62 SLOT="3.0"
63 KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
64 IUSE="altivec doc fortran openmp sse sse2 threads"
65
66 pkg_setup() {
67 FFTW_THREADS="--disable-threads --disable-openmp"
68 if use openmp; then
69 FFTW_THREADS="--disable-threads --enable-openmp"
70 elif use threads; then
71 FFTW_THREADS="--enable-threads --disable-openmp"
72 fi
73 if use openmp && ! tc-has-openmp; then
74 ewarn "You are using gcc and OpenMP is only available with gcc >= 4.2 "
75 ewarn "If you want to build fftw with OpenMP, abort now,"
76 ewarn "and switch CC to an OpenMP capable compiler"
77 ewarn "Otherwise, we will build using POSIX threads."
78 epause 5
79 FFTW_THREADS="--enable-threads --disable-openmp"
80 fi
81 FFTW_DIRS="single double longdouble"
82 use openmp && [[ $(tc-getCC)$ == icc* ]] && append-ldflags $(no-as-needed)
83 }
84
85 src_prepare() {
86 use threads && epatch "${FILESDIR}"/${P}-pc-threads.patch
87 epatch "${FILESDIR}"/${PN}-3.2.1-as-needed.patch
88
89 # fix info file for category directory
90 sed -i \
91 -e 's/Texinfo documentation system/Libraries/' \
92 doc/fftw3.info || die "failed to fix info file"
93
94 rm m4/lt* m4/libtool.m4
95
96 AT_M4DIR=m4 eautoreconf
97 for x in ${FFTW_DIRS}; do
98 mkdir "${S}-${x}" || die
99 done
100 }
101
102 src_configure() {
103 # filter -Os according to docs
104 replace-flags -Os -O2
105
106 local myconfcommon="--enable-shared
107 $(use_enable fortran)
108 ${FFTW_THREADS}"
109
110 local myconfsingle="${myconfcommon} --enable-single"
111 local myconfdouble="${myconfcommon}"
112 local myconflongdouble="${myconfcommon} --enable-long-double"
113 if use sse2; then
114 myconfsingle="${myconfsingle} --enable-sse"
115 myconfdouble="${myconfdouble} --enable-sse2"
116 elif use sse; then
117 myconfsingle="${myconfsingle} --enable-sse"
118 fi
119 # altivec only helps singles, not doubles
120 if use altivec; then
121 myconfsingle="${myconfsingle} --enable-altivec"
122 fi
123
124 for x in ${FFTW_DIRS}; do
125 cd "${S}-${x}"
126 einfo "Configuring for ${x} precision"
127 local p=myconf${x}
128 ECONF_SOURCE="${S}" econf ${!p}
129 done
130 }
131
132 src_compile() {
133 for x in ${FFTW_DIRS}; do
134 cd "${S}-${x}"
135 einfo "Compiling for ${x} precision"
136 emake || die "emake for ${x} precision failed"
137 done
138 }
139
140 src_test () {
141 # We want this to be a reasonably quick test, but that is still hard...
142 ewarn "This test series will take 30 minutes on a modern 2.5Ghz machine"
143 # Do not increase the number of threads, it will not help your performance
144 #local testbase="perl check.pl --nthreads=1 --estimate"
145 # ${testbase} -${p}d || die "Failure: $n"
146 for x in ${FFTW_DIRS}; do
147 cd "${S}-${x}/tests"
148 einfo "Testing ${x} precision"
149 emake -j1 check || die "emake test ${x} failed"
150 done
151 }
152
153 src_install () {
154 # all builds are installed in the same place
155 # libs have distinuguished names; include files, docs etc. identical.
156 for x in ${FFTW_DIRS}; do
157 cd "${S}-${x}"
158 emake DESTDIR="${D}" install || die "emake install for ${x} failed"
159 done
160
161 cd "${S}"
162 dodoc AUTHORS ChangeLog NEWS README TODO COPYRIGHT CONVENTIONS
163 if use doc; then
164 cd doc
165 insinto /usr/share/doc/${PF}
166 doins -r html fftw3.pdf || die "doc install failed"
167 insinto /usr/share/doc/${PF}/faq
168 doins FAQ/fftw-faq.html/*
169 fi
170 }