ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/COMP/CMSDIST/xdaq.spec
(Generate patch)

Comparing COMP/CMSDIST/xdaq.spec (file contents):
Revision 1.26 by eulisse, Fri Aug 11 17:20:58 2006 UTC vs.
Revision 1.73 by muzaffar, Fri Feb 5 16:31:38 2010 UTC

# Line 1 | Line 1
1 < ### RPM external xdaq 3.5
2 < Requires: zlib
3 < Requires: oracle
4 < %define xdaqv %(echo %v |tr . _)
1 > ### RPM external xdaq VR16021
2 > ## BUILDIF case $(uname):$(uname -p) in Linux:i*86 ) true ;; Linux:x86_64 ) true ;;  Linux:ppc64 ) false ;; Darwin:* ) false ;; * ) false ;; esac
3 >
4 > Requires: zlib mimetic xerces-c uuid sqlite
5 > %define xdaqv %(echo %v | cut -f1 -d- | tr . _)
6   %define libext so
7 < %if "%cmsplatf" == "slc3_ia32_gcc323"
8 < %define installDir linux/x86
9 < %endif
10 <
11 < # Download from cern afs area to speed up testing:
12 < #Source0: http://cmsdoc.cern.ch/Releases/XDAQ/XDAQ_%xdaqv/coretools_G_17559_V%xdaqv.tgz
13 < #Source1: http://cmsdoc.cern.ch/Releases/XDAQ/XDAQ_%xdaqv/powerpack_G_28175_V1_3_1.tgz
14 < #Source2: http://cmsdoc.cern.ch/Releases/XDAQ/XDAQ_%xdaqv/worksuite_G_28176_V1_4.tgz
14 < Source0: http://switch.dl.sourceforge.net/sourceforge/xdaq/coretools_G_17559_V%{xdaqv}.tgz
15 < Source1: http://switch.dl.sourceforge.net/sourceforge/xdaq/powerpack_G_28175_V1_4.tgz
16 < Source2: http://switch.dl.sourceforge.net/sourceforge/xdaq/worksuite_G_28176_V1_5.tgz
7 > %define svntrunk  %(echo %v | sed 's|^VR||')
8 > Source: svn://svn.cern.ch/reps/cmsos/releases/baseline10/tags/base/?scheme=svn+ssh&revision=%svntrunk&strategy=export&module=xdaq&output=/xdaq.tar.gz
9 >
10 > Patch0: xdaq_VR16021_build
11 > Patch1: xdaq_mfDefs_flags
12 > Patch2: xdaq_VR15544_gcc44
13 >
14 > Provides: /bin/awk
15  
16   %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 < ls
21 < perl -p -i -e "s|^#.*ksh(.*)|#!/usr/bin/env ksh $1|" daq/extern/SBSVME/1003/v2p3p0/sys/makefile \
24 <                                                     daq/extern/SBSVME/1003/v2p3p0/sys/mkbtp
25 < echo " Install root in prep:" %{i}    %{pkginstroot}
17 > %setup -T -b 0 -n xdaq
18 >
19 > %patch0 -p1
20 > %patch1 -p1
21 > %patch2 -p1
22  
23   %build
24   # Xdaq does not provide makeinstall,  it uses "simplify" script instead to
# Line 35 | Line 31 | cp -rp *  %{i} # assuming there are no s
31   cd %{i}
32   export XDAQ_ROOT=$PWD
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
34 >
35 > export MIMETIC_PREFIX=$MIMETIC_ROOT
36 > export XERCES_PREFIX=$XERCES_C_ROOT
37 > export UUID_LIB_PREFIX=$UUID_ROOT/lib
38 > export SQLITE_PREFIX=$SQLITE_ROOT
39 > export SEARCH_PATH=$PATH
40 >
41 > make CPPDEFINES=linux Set=extern_coretools install
42 > make CPPDEFINES=linux Set=coretools install
43 > make CPPDEFINES=linux Set=extern_powerpack install
44 > make CPPDEFINES=linux Set=powerpack install
45 > make CPPDEFINES=linux Set=general_worksuite install
46 >
47   # The following structure used as defined in Xdaq "simplify" script:
45 #cd %{i}
46 # Catch-all
47 # cp -r ./lib %{i}/lib
48 # cp -r ./bin %{i}/bin
48   cd %{i}
49 < find daq -path *src* -type d -exec rm -rf daq/{} \;
50 < # copies all the libraries in extern in %i/lib
51 < mkdir -p %{i}/lib/linux/x86
52 < mkdir -p %{i}/bin/linux/x86
53 < (cd %{i}/lib; find ../daq \( -path "*/lib/lib*" -o -name "*.%{libext}" -o -name "*.%{libext}.*" -o -name "*.a" -o -name "*.la*" -o -name "*.lo*" \) -exec ln -s {} . \;)
54 < (cd %{i}/lib/linux/x86; find ../../../daq  \( -path "*/lib/lib*" -o -name "*.%{libext}" -o -name "*.%{libext}.*" -o -name "*.a" -o -name "*.la*" -o -name "*.lo*" \) -exec ln -s {} . \;)
55 < (cd %{i}/bin; find ../daq -path "*/bin/*.exe" -exec ln -s {} . \;)
56 < (cd %{i}/bin/linux/x86; find ../../../daq -path "*/bin/*.exe" -exec ln -s {} . \;)
57 <
58 < #tar cpfv - `find daq -path "*/lib/*.%{libext}"` | ( cd  %{i}/lib; tar xpfv -)
59 < #tar cpfv - `find daq -path "*/bin/*.exe" -type f` | ( cd  %{i}/bin; tar xpfv -)
60 <
61 < #links them back to lib and bin
62 < #find daq  -type f -name "*.%{libext}" -exec ln -sf {}  %{i}/lib \;
63 < #find daq  -type f -name "*.%{libext}" -exec ln -sf ../../{} %{i}/lib/%installDir \;
64 < #find daq  -type f -name "*.exe" -exec ln -sf {} %{i}/bin \;
65 < #find daq  -type f -name "*.exe" -exec ln -sf ../../{} %{i}/bin/%installDir \;
49 > mv x86*/lib .
50 > mv x86*/bin .
51 > mv x86*/include .
52 > # Make the following directory (it will be missing in the gcc4 case where
53 > # things fail during the build and scram at least needs to see it)
54 > mkdir -p include/linux
55 >
56 > mkdir -p htdocs
57 >
58 > for subdir in `echo "xdaq2rc"; grep -h -v \# config/mfSet.coretools config/mfSet.extern_coretools config/mfSet.extern_powerpack config/mfSet.powerpack | grep -v Packages= | grep '[a-z]' | awk '{print $1}'`
59 > do
60 >        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 > done
78 >
79 > mkdir -p include/interface
80 > mv daq/interface/evb/include/interface/evb include/interface
81 > mv daq/interface/shared/include/interface/shared include/interface
82 > mkdir -p etc
83 > mv daq/xdaq/etc/default.profile etc/
84 > rm -fr daq
85 > rm -fr CVS
86 > rm -fr x86*
87 > rm -fR java
88 > rm -fR htdocs
89 > ln -s libasyncresolv %{i}/lib/libasyncresolv.so
90 > rm -f %{i}/lib/lib*.a %{i}/lib/lib*.la
91  
92   # Libraries from extern (not found cause they are symlinks)
93  
94   #find daq -type f ! -path "*/extern/*lib*" -name "*.a" -exec cp {} %{i}/lib \;
95   perl -p -i -e "s|^#!.*make|#!/usr/bin/env make|" %{i}/daq/extern/slp/openslp-1.2.0/debian/rules
96 +
97 + # SCRAM ToolBox toolfile
98 + mkdir -p %i/etc/scram.d
99 + cat << \EOF_TOOLFILE >%i/etc/scram.d/%n.xml
100 +  <tool name="XDAQ" version="%v">
101 +    <info url="http://home.cern.ch/xdaq"/>
102 +    <lib name="toolbox"/>
103 +    <lib name="xdaq"/>
104 +    <lib name="config"/>
105 +    <lib name="xoap"/>
106 +    <lib name="xgi"/>
107 +    <lib name="xdata"/>
108 +    <lib name="cgicc"/>
109 +    <lib name="log4cplus"/>
110 +    <lib name="xcept"/>
111 +    <lib name="logudpappender"/>
112 +    <lib name="peer"/>
113 +    <lib name="logxmlappender"/>
114 +    <lib name="asyncresolv"/>
115 +    <lib name="ptfifo"/>
116 +    <lib name="pthttp"/>
117 +    <lib name="pttcp"/>
118 +    <lib name="i2outils"/>
119 +    <lib name="xdaq2rc"/>
120 +    <lib name="xoapfilter"/>
121 +    <lib name="xalan-c"/>
122 +    <lib name="xalanMsg"/>
123 +    <lib name="wsaddressing"/>
124 +    <lib name="wsclientsubscriber"/>
125 +    <lib name="wseventing"/>
126 +    <lib name="wsserviceeventing"/>
127 +    <client>
128 +      <environment name="XDAQ_BASE" default="%i"/>
129 +      <environment name="LIBDIR" default="$XDAQ_BASE/lib"/>
130 +      <environment name="BINDIR" default="$XDAQ_BASE/bin"/>
131 +      <environment name="INCLUDE" default="$XDAQ_BASE/include"/>
132 +      <environment name="INCLUDE" default="$XDAQ_BASE/include/linux"/>
133 +    </client>
134 +    <flags cppdefines="SOAP__ LITTLE_ENDIAN__"/>
135 +    <flags cppdefines="linux"/>
136 +    <runtime name="XDAQ_OS" value="linux"/>
137 +    <runtime name="XDAQ_PLATFORM" value="x86"/>
138 +    <runtime name="PATH" value="$BINDIR" type="path"/>
139 +    <runtime name="XDAQ_ROOT" value="$XDAQ_BASE"/>
140 +    <runtime name="XDAQ_DOCUMENT_ROOT" value="$XDAQ_BASE/htdocs"/>
141 +    <use name="xerces-c"/>
142 +    <use name="sockets"/>
143 +    <use name="mimetic"/>
144 +    <use name="uuid"/>
145 +  </tool>
146 + EOF_TOOLFILE
147 +
148 + cat << \EOF_TOOLFILE >%i/etc/scram.d/xdaqheader.xml
149 +  <tool name="XDAQHEADER" version="%v">
150 +    <info url="http://home.cern.ch/xdaq"/>
151 +    <client>
152 +      <environment name="XDAQHEADER_BASE" default="%i"/>
153 +      <environment name="INCLUDE" default="$XDAQHEADER_BASE/include"/>
154 +    </client>
155 +  </tool>
156 + EOF_TOOLFILE
157 +
158   %post
73 #find $RPM_INSTALL_PREFIX/%pkgrel -type l | xargs ls -la | sed -e "s|.*[ ]\(/.*\) -> \(.*\)| \2 \1|;s|[ ]/[^ ]*/external| $RPM_INSTALL_PREFIX/%cmsplatf/external|g"
159   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
160 + %{relocateConfig}etc/scram.d/%n.xml
161 + %{relocateConfig}etc/scram.d/xdaqheader.xml
162 +

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines