ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/COMP/CMSDIST/xdaq.spec
Revision: 1.43
Committed: Mon Sep 3 15:28:46 2007 UTC (17 years, 7 months ago) by muzaffar
Branch: MAIN
CVS Tags: nr071017_170p5onl2, nr071016_170p5onl1, nr071016onl170p5bs, nr071016onl170p5, dl071010t2, dl071010, dl071009t2, dl071009, CMSSW_1_7_0_pre5, dl070926t2, dl070926, ap-20070926, CMSSW_1_7_0_pre4, dl070921t2, dl070921, dl070920, CMSSW_1_7_0_pre3, dl070916, dl070912, dl070812, sm070912b, sm070912a, sm070911a, dl070909p3, dl070909, CMSSW_1_7_0_pre2, dl070906, dl070905, sm030907a
Changes since 1.42: +48 -1 lines
Log Message:
new spec files for auto generation of toolfile i.e. no need of scramtoolbox

File Contents

# User Rev Content
1 muzaffar 1.43 ### RPM external xdaq 3.9.0-CMS8
2 elmer 1.39 Requires: zlib mimetic xerces-c uuid
3 dlange 1.33 %define xdaqv %(echo %v | cut -f1 -d- | tr . _)
4 eulisse 1.2 %define libext so
5 eulisse 1.18 %if "%cmsplatf" == "slc3_ia32_gcc323"
6     %define installDir linux/x86
7     %endif
8    
9 eulisse 1.7 # Download from cern afs area to speed up testing:
10 dlange 1.30 Source0: http://switch.dl.sourceforge.net/sourceforge/xdaq/coretools_G_V%{xdaqv}.tgz
11     Source1: http://switch.dl.sourceforge.net/sourceforge/xdaq/powerpack_G_V1_9_0.tgz
12 dlange 1.31 Source2: http://switch.dl.sourceforge.net/sourceforge/xdaq/worksuite_G_V1_8_0.tgz
13 dlange 1.34 Patch: xdaq_39_oracle
14 elmer 1.39 Patch1: xdaq-3.9.0-uuid
15 elmer 1.40 Patch2: xdaq-3.9.0-nossh
16 ratnik 1.5
17 eulisse 1.7 %prep
18     %setup -T -b 0 -n TriDAS
19     %setup -D -T -b 1 -n TriDAS
20     %setup -D -T -b 2 -n TriDAS
21 dlange 1.34
22 dlange 1.36 #%patch0 -p2
23 elmer 1.39 %patch1 -p1
24 elmer 1.40 %patch2 -p1
25 eulisse 1.11 ls
26 dlange 1.34 #perl -p -i -e "s|^#.*ksh(.*)|#!/usr/bin/env ksh $1|" daq/extern/SBSVME/1003/v2p3p0/sys/makefile \
27     # daq/extern/SBSVME/1003/v2p3p0/sys/mkbtp
28 eulisse 1.7 echo " Install root in prep:" %{i} %{pkginstroot}
29 ratnik 1.1
30     %build
31     # Xdaq does not provide makeinstall, it uses "simplify" script instead to
32     # reorganize the directory structure after the build is done.
33     # Therefore build is done in the install area.
34    
35     %install
36     # Copy all code into the installation area, and build directly there:
37     cp -rp * %{i} # assuming there are no symlinks in the original source code
38     cd %{i}
39     export XDAQ_ROOT=$PWD
40     cd %{i}/daq
41 dlange 1.36 export MIMETIC_PREFIX=$MIMETIC_ROOT
42     export XERCES_PREFIX=$XERCES_C_ROOT
43 elmer 1.39 export UUID_LIB_PREFIX=$UUID_ROOT/lib
44 dlange 1.36
45 dlange 1.34 make CPPDEFINES=linux Set=extern_coretools install
46 dlange 1.30 make CPPDEFINES=linux Set=coretools install
47 dlange 1.34 make CPPDEFINES=linux Set=extern_powerpack install
48 dlange 1.30 make CPPDEFINES=linux Set=powerpack install
49 dlange 1.36 cd xdaq2rc
50 dlange 1.38 make CPPDEFINES=linux install
51 dlange 1.36 cd ..
52    
53 dlange 1.30
54 ratnik 1.1 # The following structure used as defined in Xdaq "simplify" script:
55     cd %{i}
56 dlange 1.32 mv x86*/lib .
57     mv x86*/bin .
58     mv x86*/include .
59 dlange 1.37 mkdir include/interface
60 dlange 1.36 mv daq/interface/evb/include/interface/evb include/interface
61     mv daq/interface/shared/include/interface/shared include/interface
62 elmer 1.42 mkdir etc
63     mv daq/etc/default.profile etc/
64 dlange 1.32 rm -fr daq
65     rm -fr CVS
66 dlange 1.37 rm -fr x86*
67 ratnik 1.1
68     # Libraries from extern (not found cause they are symlinks)
69 eulisse 1.3
70 eulisse 1.22 #find daq -type f ! -path "*/extern/*lib*" -name "*.a" -exec cp {} %{i}/lib \;
71 eulisse 1.11 perl -p -i -e "s|^#!.*make|#!/usr/bin/env make|" %{i}/daq/extern/slp/openslp-1.2.0/debian/rules
72 muzaffar 1.43
73     # SCRAM ToolBox toolfile
74     mkdir -p %i/etc/scram.d
75     cat << \EOF_TOOLFILE >%i/etc/scram.d/%n
76     <doc type=BuildSystem::ToolDoc version=1.0>
77     <Tool name=XDAQ version=%v>
78     <info url=http://home.cern.ch/xdaq></info>
79     <lib name=toolbox>
80     <lib name=xdaq>
81     <lib name=config>
82     <lib name=xoap>
83     <lib name=xgi>
84     <lib name=xdata>
85     <lib name=cgicc>
86     <lib name=log4cplus>
87     <lib name=xcept>
88     <lib name=logudpappender>
89     <lib name=peer>
90     <lib name=logxmlappender>
91     <lib name=asyncresolv>
92     <lib name=ptfifo>
93     <lib name=pthttp>
94     <lib name=pttcp>
95     <lib name=i2outils>
96     <lib name=xdaq2rc>
97     <Client>
98     <Environment name=XDAQ_BASE default="%i"></Environment>
99     <Environment name=LIBDIR default="$XDAQ_BASE/lib"></Environment>
100     <Environment name=BINDIR default="$XDAQ_BASE/bin"></Environment>
101     <Environment name=INCLUDE default="$XDAQ_BASE/include"></Environment>
102     <Environment name=INCLUDE default="$XDAQ_BASE/include/linux"></Environment>
103     </Client>
104     <use name=xerces-c>
105     <use name=sockets>
106     <use name=mimetic>
107     <use name=uuid>
108     <runtime name=XDAQ_OS value="linux">
109     <runtime name=XDAQ_PLATFORM value="x86">
110     <runtime name=PATH value="$BINDIR" type=path>
111     <runtime name=XDAQ_ROOT value="$XDAQ_BASE">
112     <runtime name=XDAQ_DOCUMENT_ROOT value="$XDAQ_BASE/daq">
113     <flags CPPDEFINES="SOAP__ LITTLE_ENDIAN__">
114     <flags CPPDEFINES="linux">
115     </Tool>
116     EOF_TOOLFILE
117    
118 eulisse 1.12 %post
119     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
120 muzaffar 1.43 %{relocateConfig}etc/scram.d/%n