ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/COMP/CMSDIST/xdaq.spec
Revision: 1.52
Committed: Fri Nov 2 18:51:04 2007 UTC (17 years, 5 months ago) by elmer
Branch: MAIN
CVS Tags: pe20071105a-ports, pe20071103e-ports, pe20071103d-ports, pe20071103c-ports, pe20071103b-ports, pe20071103a-ports, pe20071102b-ports
Changes since 1.51: +1 -1 lines
Log Message:
Update to -CMS18

File Contents

# User Rev Content
1 elmer 1.52 ### RPM external xdaq 03.11.00-CMS18
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.44 Source0: http://switch.dl.sourceforge.net/sourceforge/xdaq/coretools_G_V%xdaqv.tgz
11     Source1: http://switch.dl.sourceforge.net/sourceforge/xdaq/powerpack_G_V01_11_00.tgz
12     Source2: http://switch.dl.sourceforge.net/sourceforge/xdaq/worksuite_G_V01_11_00.tgz
13     Patch: xdaq_3.11_p1
14 dlange 1.50 Patch1: xdaq_3.11_p2
15 ratnik 1.5
16 eulisse 1.7 %prep
17     %setup -T -b 0 -n TriDAS
18     %setup -D -T -b 1 -n TriDAS
19     %setup -D -T -b 2 -n TriDAS
20 dlange 1.34
21 dlange 1.45 %patch -p1
22 dlange 1.50 %patch1 -p1
23 eulisse 1.11 ls
24 eulisse 1.7 echo " Install root in prep:" %{i} %{pkginstroot}
25 ratnik 1.1
26     %build
27     # Xdaq does not provide makeinstall, it uses "simplify" script instead to
28     # reorganize the directory structure after the build is done.
29     # Therefore build is done in the install area.
30    
31     %install
32     # Copy all code into the installation area, and build directly there:
33     cp -rp * %{i} # assuming there are no symlinks in the original source code
34     cd %{i}
35     export XDAQ_ROOT=$PWD
36     cd %{i}/daq
37 dlange 1.36 export MIMETIC_PREFIX=$MIMETIC_ROOT
38     export XERCES_PREFIX=$XERCES_C_ROOT
39 elmer 1.39 export UUID_LIB_PREFIX=$UUID_ROOT/lib
40 dlange 1.36
41 dlange 1.34 make CPPDEFINES=linux Set=extern_coretools install
42 dlange 1.30 make CPPDEFINES=linux Set=coretools install
43 dlange 1.34 make CPPDEFINES=linux Set=extern_powerpack install
44 dlange 1.30 make CPPDEFINES=linux Set=powerpack install
45 dlange 1.36 cd xdaq2rc
46 dlange 1.38 make CPPDEFINES=linux install
47 dlange 1.36 cd ..
48    
49 dlange 1.30
50 ratnik 1.1 # The following structure used as defined in Xdaq "simplify" script:
51     cd %{i}
52 dlange 1.32 mv x86*/lib .
53     mv x86*/bin .
54     mv x86*/include .
55 dlange 1.44
56     mkdir htdocs
57 dlange 1.48
58 dlange 1.49 for subdir in `echo "xdaq2rc"; grep -h -v \# build/mfSet.coretools build/mfSet.extern_coretools build/mfSet.extern_powerpack build/mfSet.powerpack | grep -v Packages= | grep '[a-z]' | awk '{print $1}'`
59 dlange 1.46 do
60 dlange 1.48 mkdir -p %{i}/htdocs/$subdir/{images,xml,html}
61     echo $subdir
62     if [ -d daq/$subdir/xml ]; then
63     cd daq/$subdir/xml
64     find . -name "*.*" -exec install -m 655 -D {} %{i}/htdocs/$subdir/xml/{} \;
65     cd %{i}
66     fi
67     if [ -d daq/$subdir/images ]; then
68     cd daq/$subdir/images
69     find . -name "*.*" -exec install -m 655 -D {} %{i}/htdocs/$subdir/images/{} \;
70     cd %{i}
71     fi
72     if [ -d daq/$subdir/html ]; then
73     cd daq/$subdir/html
74     find . -name "*.*" -exec install -m 655 -D {} %{i}/htdocs/$subdir/html/{} \;
75     cd %{i}
76     fi
77 dlange 1.46 done
78 dlange 1.44
79 dlange 1.37 mkdir include/interface
80 dlange 1.36 mv daq/interface/evb/include/interface/evb include/interface
81     mv daq/interface/shared/include/interface/shared include/interface
82 elmer 1.42 mkdir etc
83     mv daq/etc/default.profile etc/
84 dlange 1.32 rm -fr daq
85     rm -fr CVS
86 dlange 1.37 rm -fr x86*
87 ratnik 1.1
88     # Libraries from extern (not found cause they are symlinks)
89 eulisse 1.3
90 eulisse 1.22 #find daq -type f ! -path "*/extern/*lib*" -name "*.a" -exec cp {} %{i}/lib \;
91 eulisse 1.11 perl -p -i -e "s|^#!.*make|#!/usr/bin/env make|" %{i}/daq/extern/slp/openslp-1.2.0/debian/rules
92 muzaffar 1.43
93     # SCRAM ToolBox toolfile
94     mkdir -p %i/etc/scram.d
95     cat << \EOF_TOOLFILE >%i/etc/scram.d/%n
96     <doc type=BuildSystem::ToolDoc version=1.0>
97     <Tool name=XDAQ version=%v>
98     <info url=http://home.cern.ch/xdaq></info>
99     <lib name=toolbox>
100     <lib name=xdaq>
101     <lib name=config>
102     <lib name=xoap>
103     <lib name=xgi>
104     <lib name=xdata>
105     <lib name=cgicc>
106     <lib name=log4cplus>
107     <lib name=xcept>
108     <lib name=logudpappender>
109     <lib name=peer>
110     <lib name=logxmlappender>
111     <lib name=asyncresolv>
112     <lib name=ptfifo>
113     <lib name=pthttp>
114     <lib name=pttcp>
115     <lib name=i2outils>
116     <lib name=xdaq2rc>
117     <Client>
118     <Environment name=XDAQ_BASE default="%i"></Environment>
119     <Environment name=LIBDIR default="$XDAQ_BASE/lib"></Environment>
120     <Environment name=BINDIR default="$XDAQ_BASE/bin"></Environment>
121     <Environment name=INCLUDE default="$XDAQ_BASE/include"></Environment>
122     <Environment name=INCLUDE default="$XDAQ_BASE/include/linux"></Environment>
123     </Client>
124     <use name=xerces-c>
125     <use name=sockets>
126     <use name=mimetic>
127     <use name=uuid>
128     <runtime name=XDAQ_OS value="linux">
129     <runtime name=XDAQ_PLATFORM value="x86">
130     <runtime name=PATH value="$BINDIR" type=path>
131     <runtime name=XDAQ_ROOT value="$XDAQ_BASE">
132 dlange 1.44 <runtime name=XDAQ_DOCUMENT_ROOT value="$XDAQ_BASE/htdocs">
133 muzaffar 1.43 <flags CPPDEFINES="SOAP__ LITTLE_ENDIAN__">
134     <flags CPPDEFINES="linux">
135     </Tool>
136     EOF_TOOLFILE
137    
138 eulisse 1.12 %post
139     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
140 muzaffar 1.43 %{relocateConfig}etc/scram.d/%n