1 |
< |
### RPM external lapack 3.3.0 |
2 |
< |
# NB: based on http://www.netlib.org/lapack/rpms |
3 |
< |
Source0: http://www.netlib.org/lapack/lapack.tgz |
4 |
< |
Source1: http://www.netlib.org/lapack/manpages.tgz |
5 |
< |
Source2: lapack-makefile-blas |
6 |
< |
Source3: lapack-makefile-lapack |
7 |
< |
#Source4: lapack-BLAS_cgbmv_x-f2c |
1 |
> |
### RPM external lapack 3.3.1 |
2 |
> |
Source0: http://www.netlib.org/lapack/lapack-%realversion.tgz |
3 |
> |
|
4 |
> |
Requires: cmake |
5 |
> |
|
6 |
> |
%if "%(case %cmsplatf in (osx*_*_gcc421) echo true ;; (*) echo false ;; esac)" == "true" |
7 |
> |
Requires: gfortran-macosx |
8 |
> |
%endif |
9 |
|
|
10 |
|
%prep |
11 |
|
%setup -q -n lapack-%{realversion} |
11 |
– |
%setup -q -D -T -a 1 -n lapack-%{realversion} |
12 |
– |
cp %{_sourcedir}/lapack-makefile-blas BLAS/SRC/Makefile |
13 |
– |
cp %{_sourcedir}/lapack-makefile-lapack SRC/Makefile |
14 |
– |
#cp %{_sourcedir}/lapack-BLAS_cgbmv_x-f2c BLAS/SRC/BLAS_cgbmv_x-f2c.c |
15 |
– |
|
16 |
– |
cp make.inc.example make.inc |
17 |
– |
perl -p -i -e 's|^OPTS =|OPTS = -fPIC|' make.inc |
12 |
|
|
13 |
|
%build |
14 |
< |
cd BLAS/SRC |
15 |
< |
FFLAGS="$RPM_OPT_FLAGS" make static |
16 |
< |
cp libblas.a ../.. |
17 |
< |
make clean |
18 |
< |
FFLAGS="$RPM_OPT_FLAGS -fPIC" make static shared |
19 |
< |
cp libblas.a ../../libblas_pic.a |
26 |
< |
cp libblas.so.2.0.1 ../.. |
27 |
< |
cd ../.. |
28 |
< |
ln -s libblas.so.2.0.1 libblas.so |
29 |
< |
cd SRC |
30 |
< |
FFLAGS="$RPM_OPT_FLAGS" make static |
31 |
< |
cp liblapack.a .. |
32 |
< |
make clean |
33 |
< |
FFLAGS="$RPM_OPT_FLAGS -fPIC" make static shared |
34 |
< |
cp liblapack.a ../liblapack_pic.a |
35 |
< |
cp liblapack.so.2.0.1 .. |
14 |
> |
# We remove the testing directory because it seems |
15 |
> |
# to not build correctly on the mac. |
16 |
> |
rm -rf TESTING |
17 |
> |
perl -p -i -e 's|add_subdirectory[(]TESTING[)]||' CMakeLists.txt |
18 |
> |
cmake . -DBUILD_SHARED_LIBS=YES -DCMAKE_Fortran_COMPILER="`which gfortran`" -DCMAKE_INSTALL_PREFIX="%i" |
19 |
> |
make %{makeprocesses} |
20 |
|
|
21 |
|
%install |
22 |
< |
mkdir -p %i/lib |
23 |
< |
cp -f lib*.so* lib*.a %i/lib |
24 |
< |
|
25 |
< |
cd %i/lib |
26 |
< |
ln -sf liblapack.so.2.0.1 liblapack.so |
27 |
< |
ln -sf liblapack.so.2.0.1 liblapack.so.2 |
28 |
< |
ln -sf liblapack.so.2.0.1 liblapack.so.2.0 |
29 |
< |
ln -sf libblas.so.2.0.1 libblas.so |
30 |
< |
ln -sf libblas.so.2.0.1 libblas.so.2 |
47 |
< |
ln -sf libblas.so.2.0.1 libblas.so.2.0 |
48 |
< |
|
49 |
< |
mkdir -p %i/etc/scram.d |
50 |
< |
cat << \EOF_TOOLFILE >%i/etc/scram.d/lapack.xml |
51 |
< |
<tool name="lapack" version="%v"> |
52 |
< |
<client> |
53 |
< |
<environment name="LAPACK_BASE" default="%i"/> |
54 |
< |
<environment name="LIBDIR" default="$LAPACK_BASE/lib"/> |
55 |
< |
</client> |
56 |
< |
</tool> |
57 |
< |
EOF_TOOLFILE |
22 |
> |
make install |
23 |
> |
# We remove pkg-config files for two reasons: |
24 |
> |
# * it's actually not required (macosx does not even have it). |
25 |
> |
# * rpm 4.8 adds a dependency on the system /usr/bin/pkg-config |
26 |
> |
# on linux. |
27 |
> |
# In the case at some point we build a package that can be build |
28 |
> |
# only via pkg-config we have to think on how to ship our own |
29 |
> |
# version. |
30 |
> |
rm -rf %i/lib/pkgconfig |