1 |
< |
### RPM external xdaq 3.4 |
1 |
> |
### RPM external xdaq 3.5 |
2 |
> |
Requires: zlib |
3 |
> |
Requires: oracle |
4 |
|
%define xdaqv %(echo %v |tr . _) |
5 |
|
%define libext so |
4 |
– |
%define to_be_removed_externals cppunit gmp mimetic xerces tinyproxy |
5 |
– |
|
6 |
– |
Requires: xerces-c |
7 |
– |
Requires: mimetic |
8 |
– |
|
6 |
|
# Download from cern afs area to speed up testing: |
7 |
< |
Source: http://cmsdoc.cern.ch/Releases/XDAQ/XDAQ_%xdaqv/coretools_G_17559_V%xdaqv.tgz |
7 |
> |
#Source0: http://cmsdoc.cern.ch/Releases/XDAQ/XDAQ_%xdaqv/coretools_G_17559_V%xdaqv.tgz |
8 |
> |
#Source1: http://cmsdoc.cern.ch/Releases/XDAQ/XDAQ_%xdaqv/powerpack_G_28175_V1_3_1.tgz |
9 |
> |
#Source2: http://cmsdoc.cern.ch/Releases/XDAQ/XDAQ_%xdaqv/worksuite_G_28176_V1_4.tgz |
10 |
> |
Source0: http://switch.dl.sourceforge.net/sourceforge/xdaq/coretools_G_17559_V%{xdaqv}.tgz |
11 |
> |
Source1: http://switch.dl.sourceforge.net/sourceforge/xdaq/powerpack_G_28175_V1_4.tgz |
12 |
> |
Source2: http://switch.dl.sourceforge.net/sourceforge/xdaq/worksuite_G_28176_V1_5.tgz |
13 |
|
|
14 |
|
%prep |
15 |
< |
%setup -n TriDAS |
15 |
> |
%setup -T -b 0 -n TriDAS |
16 |
> |
%setup -D -T -b 1 -n TriDAS |
17 |
> |
%setup -D -T -b 2 -n TriDAS |
18 |
> |
ls |
19 |
> |
perl -p -i -e "s|^#.*ksh(.*)|#!/usr/bin/env ksh $1|" daq/extern/SBSVME/1003/v2p3p0/sys/makefile \ |
20 |
> |
daq/extern/SBSVME/1003/v2p3p0/sys/mkbtp |
21 |
> |
echo " Install root in prep:" %{i} %{pkginstroot} |
22 |
|
|
23 |
|
%build |
24 |
|
# Xdaq does not provide makeinstall, it uses "simplify" script instead to |
33 |
|
cd %{i}/daq |
34 |
|
make Set=extern |
35 |
|
make Set=coretools |
36 |
+ |
make Set=powerpack |
37 |
+ |
make Set=worksuite |
38 |
+ |
cd tstore |
39 |
+ |
make ORACLE_INCLUDE=$ORACLE_ROOT/include ORACLE_LIB=$ORACLE_ROOT/lib |
40 |
|
# The following structure used as defined in Xdaq "simplify" script: |
41 |
+ |
#cd %{i} |
42 |
+ |
# Catch-all |
43 |
+ |
# cp -r ./lib %{i}/lib |
44 |
+ |
# cp -r ./bin %{i}/bin |
45 |
|
cd %{i} |
46 |
+ |
# copies all the libraries in extern in %i/lib |
47 |
|
mkdir -p %{i}/lib |
48 |
|
mkdir -p %{i}/bin |
49 |
+ |
tar cpfv - `find daq -type f -name "*.%{libext}"` | ( cd %{i}/lib; tar xpfv -) |
50 |
+ |
tar cpfv - `find daq -type f -name "*.exe"` | ( cd %{i}/bin; tar xpfv -) |
51 |
|
|
52 |
< |
# Remove unneeded and standard externals that can be re-used from CMS distribution: |
53 |
< |
|
54 |
< |
for extern in %{to_be_removed_externals}; do echo removing external from daq: ${extern} ...; rm -rf daq/extern/${extern}; done |
36 |
< |
|
37 |
< |
# Catch-all |
38 |
< |
find . -type f ! -path "./lib/*.%{libext}" -name "*.%{libext}" -exec mv {} %{i}/lib \; |
39 |
< |
find . -type f ! -path "./bin/*.exe" -name "*.exe" -exec mv {} %{i}/bin \; |
52 |
> |
#links them back to lib and bin |
53 |
> |
find . -type f ! -path "%{i}/lib/*.%{libext}" -name "*.%{libext}" -exec ln {} %{i}/lib \; |
54 |
> |
find . -type f ! -path "%{i}/bin/*.exe" -name "*.exe" -exec ln {} %{i}/bin \; |
55 |
|
|
56 |
|
# Libraries from extern (not found cause they are symlinks) |
42 |
– |
cp -rdL daq/extern/*/linuxx86/lib/* %{i}/lib |
57 |
|
|
58 |
|
find daq -type f ! -path "*/extern/*lib*" -name "*.a" -exec cp {} %{i}/lib \; |
59 |
< |
perl -p -i -e "s|^#!.*make|/usr/bin/env make|" %{i}/daq/extern/slp/openslp-1.2.0/debian/rules |
59 |
> |
perl -p -i -e "s|^#!.*make|#!/usr/bin/env make|" %{i}/daq/extern/slp/openslp-1.2.0/debian/rules |
60 |
> |
%post |
61 |
> |
find $RPM_INSTALL_PREFIX/%pkgrel -type l | xargs ls -la | sed -e "s|.*[ ]\(/.*\) -> \(.*\)| \2 \1|;s|[ ]/[^ ]*/external| $RPM_INSTALL_PREFIX/%cmsplatf/external|g" |
62 |
> |
find $RPM_INSTALL_PREFIX/%pkgrel -type l | xargs ls -la | sed -e "s|.*[ ]\(/.*\) -> \(.*\)| \2 \1|;s|[ ]/[^ ]*/external| $RPM_INSTALL_PREFIX/%cmsplatf/external|g" | xargs -n2 ln -sf |