1 |
lenzip |
1.33 |
### RPM external thepeg 1.7.0
|
2 |
eulisse |
1.24 |
## INITENV +PATH LD_LIBRARY_PATH %i/lib/ThePEG
|
3 |
|
|
## INITENV +PATH DYLD_LIBRARY_PATH %i/lib/ThePEG
|
4 |
elmer |
1.8 |
#Source: http://www.thep.lu.se/~leif/ThePEG/ThePEG-%{realversion}.tgz
|
5 |
elmer |
1.16 |
#Source: http://projects.hepforge.org/herwig/files/ThePEG-%{realversion}.tar.gz
|
6 |
|
|
Source: http://service-spi.web.cern.ch/service-spi/external/MCGenerators/distribution/thepeg-%{realversion}-src.tgz
|
7 |
lenzip |
1.33 |
Patch0: thepeg-1.7.0-break-termcap-dependence
|
8 |
|
|
Patch1: thepeg-1.7.0-use-dylibs-macosx
|
9 |
|
|
Patch2: thepeg-1.6.1-lhapdf-env
|
10 |
|
|
Patch3: thepeg-1.6.1-gcc46
|
11 |
eulisse |
1.36 |
Patch4: thepeg-1.7.0-configure
|
12 |
eulisse |
1.44 |
Patch5: thepeg-1.7.0-gcc46
|
13 |
davidlt |
1.45 |
Patch6: thepeg-1.7.0-fix-bogus-ZLIB-HOME
|
14 |
davidlt |
1.47 |
Patch7: thepeg-1.7.0-fix-gcc47-cxx11
|
15 |
davidlt |
1.53 |
Patch8: thepeg-1.7.0-zlib-void-to-gzFile-ptr
|
16 |
dlange |
1.1 |
Requires: lhapdf
|
17 |
dlange |
1.2 |
Requires: gsl
|
18 |
lenzip |
1.33 |
Requires: hepmc
|
19 |
eulisse |
1.34 |
Requires: zlib
|
20 |
eulisse |
1.25 |
# FIXME: rivet?
|
21 |
eulisse |
1.43 |
%define keep_archives true
|
22 |
eulisse |
1.42 |
%if "%(case %cmsplatf in (osx*_*_gcc421) echo true ;; (*) echo false ;; esac)" == "true"
|
23 |
eulisse |
1.23 |
Requires: gfortran-macosx
|
24 |
|
|
%endif
|
25 |
dlange |
1.1 |
|
26 |
davidlt |
1.47 |
%if "%{?cms_cxx:set}" != "set"
|
27 |
|
|
%define cms_cxx c++
|
28 |
|
|
%endif
|
29 |
|
|
|
30 |
|
|
%if "%{?cms_cxxflags:set}" != "set"
|
31 |
davidlt |
1.49 |
%define cms_cxxflags -O2 -std=c++0x
|
32 |
davidlt |
1.47 |
%endif
|
33 |
|
|
|
34 |
dlange |
1.1 |
%prep
|
35 |
elmer |
1.16 |
%setup -q -n %{n}/%{realversion}
|
36 |
|
|
%patch0 -p2
|
37 |
eulisse |
1.34 |
case %cmsos in
|
38 |
|
|
osx*)
|
39 |
lenzip |
1.33 |
%patch1 -p1
|
40 |
eulisse |
1.34 |
;;
|
41 |
|
|
esac
|
42 |
lenzip |
1.33 |
%patch2 -p2
|
43 |
muzaffar |
1.26 |
%patch3 -p2
|
44 |
eulisse |
1.36 |
%patch4 -p1
|
45 |
eulisse |
1.44 |
%patch5 -p1
|
46 |
davidlt |
1.45 |
%patch6 -p2
|
47 |
davidlt |
1.47 |
%patch7 -p1
|
48 |
davidlt |
1.53 |
%patch8 -p2
|
49 |
davidlt |
1.45 |
|
50 |
|
|
# Trick make not to re-run aclocal, autoconf, automake, autoscan, etc.
|
51 |
|
|
find . -exec touch -m -t 201201010000 {} \;
|
52 |
dlange |
1.1 |
|
53 |
|
|
%build
|
54 |
eulisse |
1.37 |
# Build as static only on new architectures.
|
55 |
|
|
case %cmsplatf in
|
56 |
eulisse |
1.40 |
slc5*_*_gcc4[01234]*)
|
57 |
davidlt |
1.47 |
CXX="`which %cms_cxx`"
|
58 |
eulisse |
1.40 |
CC="`which gcc`"
|
59 |
|
|
PLATF_CONF_OPTS="--enable-shared --disable-static"
|
60 |
|
|
LIBGFORTRAN=`gfortran --print-file-name=libgfortran.so`
|
61 |
|
|
;;
|
62 |
|
|
*) perl -p -i -e 's|libLHAPDF[.]so|libLHAPDF.a|g' configure
|
63 |
davidlt |
1.47 |
CXX="`which %cms_cxx` -fPIC"
|
64 |
eulisse |
1.40 |
CC="`which gcc` -fPIC"
|
65 |
|
|
PLATF_CONF_OPTS="--enable-shared --disable-static"
|
66 |
|
|
LIBGFORTRAN="`gfortran --print-file-name=libgfortran.so`"
|
67 |
|
|
;;
|
68 |
eulisse |
1.37 |
esac
|
69 |
|
|
|
70 |
eulisse |
1.38 |
case %cmsplatf in
|
71 |
eulisse |
1.44 |
osx*) LIBGFORTRAN="`gfortran --print-file-name=libgfortran.a`" ;;
|
72 |
eulisse |
1.38 |
esac
|
73 |
|
|
|
74 |
eulisse |
1.42 |
case %cmsplatf in
|
75 |
|
|
osx*_*_gcc4[0-5]*) ;;
|
76 |
|
|
osx*_*_gcc*) LIBQUADMATH="-lquadmath" ;;
|
77 |
|
|
esac
|
78 |
|
|
|
79 |
eulisse |
1.40 |
./configure $PLATF_CONF_OPTS \
|
80 |
davidlt |
1.48 |
--disable-silent-rules \
|
81 |
eulisse |
1.37 |
--with-LHAPDF=$LHAPDF_ROOT \
|
82 |
|
|
--with-hepmc=$HEPMC_ROOT \
|
83 |
eulisse |
1.34 |
--with-gsl=$GSL_ROOT --with-zlib=$ZLIB_ROOT \
|
84 |
|
|
--without-javagui --prefix=%i \
|
85 |
davidlt |
1.47 |
--disable-readline CXX="$CXX" CC="$CC" CXXFLAGS="%cms_cxxflags" \
|
86 |
eulisse |
1.42 |
LIBS="-L$LHAPDF_ROOT/lib -lLHAPDF $LIBGFORTRAN -lz $LIBQUADMATH"
|
87 |
dlange |
1.1 |
make
|
88 |
|
|
|
89 |
|
|
%install
|
90 |
|
|
|
91 |
|
|
make install
|
92 |
|
|
rm %i/share/ThePEG/Doc/fixinterfaces.pl
|
93 |
elmer |
1.35 |
cd %i/lib/ThePEG
|
94 |
|
|
for item in LesHouches.so ; do
|
95 |
|
|
[ -e lib$item ] || ln -s $item lib$item
|
96 |
|
|
done
|
97 |
davidlt |
1.51 |
find %i/lib -name '*.la' -exec rm -f {} \;
|
98 |
|
|
|
99 |
|
|
%post
|
100 |
|
|
%{relocateConfig}lib/ThePEG/Makefile.common
|
101 |
|
|
%{relocateConfig}lib/ThePEG/libtool
|