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.75 by muzaffar, Tue Aug 10 15:26:06 2010 UTC vs.
Revision 1.77 by eulisse, Mon Sep 27 14:13:42 2010 UTC

# Line 1 | Line 1
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
2  
3   Requires: zlib mimetic xerces-c uuid sqlite
4   %define xdaqv %(echo %v | cut -f1 -d- | tr . _)
# Line 11 | Line 10 | Patch0: xdaq_VR16021_build
10   Patch1: xdaq_mfDefs_flags
11   Patch2: xdaq_VR15544_gcc44
12   Patch3: xdaq-VR16021-gcc45
13 + Patch4: xdaq-VR16021-macosx
14  
15   Provides: /bin/awk
16  
# Line 21 | Line 21 | Provides: /bin/awk
21   %patch1 -p1
22   %patch2 -p1
23   %patch3 -p1
24 + # We do not apply the macosx patch on linux, because we
25 + # do not want to have to validate it.
26 + case %cmsos in
27 +  osx*)
28 + %patch4 -p1
29 +  mkdir daq/toolbox/include/macosx-new
30 +  mv daq/toolbox/include/macosx daq/toolbox/include/macosx-new/toolbox
31 +  mv daq/toolbox/include/macosx-new daq/toolbox/include/macosx
32 +  # i2o package is case sensitive, but it looks like the all upper case
33 +  # (or partially upper case) files are from an ancient version while the
34 +  # lowercase one are the one needed, therefore we extract by hand the required
35 +  # files.
36 +  cd ..
37 +    rm -f xdaq/daq/extern/i2o/include/i2o/shared/i2omsg.h
38 +    rm -f xdaq/daq/extern/i2o/include/i2o/shared/i2oexec.h
39 +    rm -f xdaq/daq/extern/i2o/include/i2o/shared/I2OTYPES.h
40 +    rm -f xdaq/daq/extern/i2o/include/i2o/shared/I2omodule.h
41 +    rm -f xdaq/daq/extern/i2o/include/i2o/shared/I2outil.h
42 +    tar xzvf %{_sourcedir}/xdaq.tar.gz xdaq/daq/extern/i2o/include/i2o/shared/i2omsg.h \
43 +                                       xdaq/daq/extern/i2o/include/i2o/shared/i2oexec.h \
44 +                                       xdaq/daq/extern/i2o/include/i2o/shared/i2otypes.h \
45 +                                       xdaq/daq/extern/i2o/include/i2o/shared/i2omodule.h \
46 +                                       xdaq/daq/extern/i2o/include/i2o/shared/i2outil.h
47 +  cd xdaq
48 + ;;
49 + esac
50  
51   %build
52   # Xdaq does not provide makeinstall,  it uses "simplify" script instead to
# Line 29 | Line 55 | Provides: /bin/awk
55  
56   %install
57   # Copy all code into the installation area, and build directly there:
58 + rm -rf %i
59 + mkdir -p %i
60   cp -rp *  %{i} # assuming there are no symlinks in the original source code
61   cd %{i}
62   export XDAQ_ROOT=$PWD
# Line 40 | Line 68 | export UUID_LIB_PREFIX=$UUID_ROOT/lib
68   export SQLITE_PREFIX=$SQLITE_ROOT
69   export SEARCH_PATH=$PATH
70  
71 < make CPPDEFINES=linux Set=extern_coretools install
72 < make CPPDEFINES=linux Set=coretools install
73 < make CPPDEFINES=linux Set=extern_powerpack install
74 < make CPPDEFINES=linux Set=powerpack install
75 < make CPPDEFINES=linux Set=general_worksuite install
71 > case %cmsplatf in
72 >  osx*)
73 >        PLATF_DEFINE=macosx
74 >        # Hack to make sure things compile on the mac.
75 >        find . -name Makefile.rules -exec perl -p -i -e 's|cp -pd|cp -p|g' {} \;
76 >        ;;
77 >  slc*) PLATF_DEFINE=linux ;;
78 > esac
79 >
80 > case %cmsplatf in
81 >  slc*)
82 >    make CPPDEFINES=$PLATF_DEFINE Set=extern_coretools install
83 >    make CPPDEFINES=$PLATF_DEFINE Set=coretools install
84 >    make CPPDEFINES=$PLATF_DEFINE Set=extern_powerpack install
85 >    make CPPDEFINES=$PLATF_DEFINE Set=powerpack install
86 >    make CPPDEFINES=$PLATF_DEFINE Set=general_worksuite install
87 >  ;;
88 >  osx*)
89 >    make -k CPPDEFINES=$PLATF_DEFINE CCDefines='-DHAVE_SOCKADDR_STORAGE_SS_LEN=linux -DLIBRARY_PATH_VARIABLE=\"DYLD_LIBRARY_PATH\" -DRLIMIT_SIGPENDING=-1 -DRLIMIT_LOCKS=-1 -DRLIMIT_MSGQUEUE=-1 -DRLIMIT_SIGPENDING=-1 -DLITTLE_ENDIAN__ -D"xdr_uint8_t(x,y)=false" -D"xdr_int8_t(x,y)=false" -D"xdr_uint16_t(x,y)=false" -D"xdr_uint32_t(x,y)=false" -D"xdr_uint64_t(x,y)=false"' Set=extern_coretools install || true
90 >    make -k CPPDEFINES=$PLATF_DEFINE CCDefines='-DHAVE_SOCKADDR_STORAGE_SS_LEN=linux -DLIBRARY_PATH_VARIABLE=\"DYLD_LIBRARY_PATH\" -DRLIMIT_SIGPENDING=-1 -DRLIMIT_LOCKS=-1 -DRLIMIT_MSGQUEUE=-1 -DRLIMIT_SIGPENDING=-1 -DLITTLE_ENDIAN__ -D"xdr_uint8_t(x,y)=false" -D"xdr_int8_t(x,y)=false" -D"xdr_uint16_t(x,y)=false" -D"xdr_uint32_t(x,y)=false" -D"xdr_uint64_t(x,y)=false"' Set=coretools install || true
91 >    make -k CPPDEFINES=$PLATF_DEFINE CCDefines='-DHAVE_SOCKADDR_STORAGE_SS_LEN=linux -DLIBRARY_PATH_VARIABLE=\"DYLD_LIBRARY_PATH\" -DRLIMIT_SIGPENDING=-1 -DRLIMIT_LOCKS=-1 -DRLIMIT_MSGQUEUE=-1 -DRLIMIT_SIGPENDING=-1 -DLITTLE_ENDIAN__ -D"xdr_uint8_t(x,y)=false" -D"xdr_int8_t(x,y)=false" -D"xdr_uint16_t(x,y)=false" -D"xdr_uint32_t(x,y)=false" -D"xdr_uint64_t(x,y)=false"' Set=extern_powerpack install || true
92 >    make -k CPPDEFINES=$PLATF_DEFINE CCDefines='-DHAVE_SOCKADDR_STORAGE_SS_LEN=linux -DLIBRARY_PATH_VARIABLE=\"DYLD_LIBRARY_PATH\" -DRLIMIT_SIGPENDING=-1 -DRLIMIT_LOCKS=-1 -DRLIMIT_MSGQUEUE=-1 -DRLIMIT_SIGPENDING=-1 -DLITTLE_ENDIAN__ -D"xdr_uint8_t(x,y)=false" -D"xdr_int8_t(x,y)=false" -D"xdr_uint16_t(x,y)=false" -D"xdr_uint32_t(x,y)=false" -D"xdr_uint64_t(x,y)=false"' Set=powerpack install || true
93 >    make -k CPPDEFINES=$PLATF_DEFINE CCDefines='-DHAVE_SOCKADDR_STORAGE_SS_LEN=linux -DLIBRARY_PATH_VARIABLE=\"DYLD_LIBRARY_PATH\" -DRLIMIT_SIGPENDING=-1 -DRLIMIT_LOCKS=-1 -DRLIMIT_MSGQUEUE=-1 -DRLIMIT_SIGPENDING=-1 -DLITTLE_ENDIAN__ -D"xdr_uint8_t(x,y)=false" -D"xdr_int8_t(x,y)=false" -D"xdr_uint16_t(x,y)=false" -D"xdr_uint32_t(x,y)=false" -D"xdr_uint64_t(x,y)=false"' Set=general_worksuite install || true
94 >  ;;
95 > esac
96  
97   # The following structure used as defined in Xdaq "simplify" script:
98   cd %{i}
# Line 54 | Line 102 | mv x86*/include .
102   # Make the following directory (it will be missing in the gcc4 case where
103   # things fail during the build and scram at least needs to see it)
104   mkdir -p include/linux
105 <
105 > mkdir -p include/macosx
106   mkdir -p htdocs
107  
108 < 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}'`
109 < do
110 <        mkdir -p %{i}/htdocs/$subdir/{images,xml,html}
111 <        echo $subdir
112 <        if [ -d daq/$subdir/xml ]; then
113 <                cd daq/$subdir/xml
114 <                find . -name "*.*" -exec install -m 655 -D {} %{i}/htdocs/$subdir/xml/{} \;
115 <                cd %{i}
116 <        fi      
117 <        if [ -d daq/$subdir/images ]; then
118 <                cd daq/$subdir/images
119 <                find . -name "*.*" -exec install -m 655 -D {} %{i}/htdocs/$subdir/images/{} \;
120 <                cd %{i}
121 <        fi      
74 <        if [ -d daq/$subdir/html ]; then
75 <                cd daq/$subdir/html
76 <                find . -name "*.*" -exec install -m 655 -D {} %{i}/htdocs/$subdir/html/{} \;
108 > case %cmsplatf in
109 >  slc*)
110 >    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}'`
111 >    do
112 >      mkdir -p %{i}/htdocs/$subdir/{images,xml,html}
113 >      echo $subdir
114 >      if [ -d daq/$subdir/xml ]; then
115 >            cd daq/$subdir/xml
116 >        find . -name "*.*" -exec install -m 655 -D {} %{i}/htdocs/$subdir/xml/{} \;
117 >            cd %{i}
118 >      fi        
119 >          if [ -d daq/$subdir/images ]; then
120 >            cd daq/$subdir/images
121 >        find . -name "*.*" -exec install -m 655 -D {} %{i}/htdocs/$subdir/images/{} \;
122                  cd %{i}
123 <        fi      
124 < done
123 >      fi        
124 >      if [ -d daq/$subdir/html ]; then
125 >            cd daq/$subdir/html
126 >        find . -name "*.*" -exec install -m 655 -D {} %{i}/htdocs/$subdir/html/{} \;
127 >            cd %{i}
128 >      fi
129 >    done
130 >  ;;
131 > esac
132  
133   mkdir -p include/interface
134   mv daq/interface/evb/include/interface/evb include/interface
135   mv daq/interface/shared/include/interface/shared include/interface
136   mkdir -p etc
137   mv daq/xdaq/etc/default.profile etc/
138 < rm -fr daq
138 > rm -fr daq
139   rm -fr CVS
140   rm -fr x86*
141   rm -fR java

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines