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

Comparing COMP/CMSDIST/boost.spec (file contents):
Revision 1.37 by ratnik, Tue May 13 17:07:02 2008 UTC vs.
Revision 1.43 by eulisse, Mon Feb 16 18:45:22 2009 UTC

# Line 1 | Line 1
1 < ### RPM external boost 1.34.1-CMS21
1 > ### RPM external boost 1.38.0
2   %define boostver _%(echo %realversion | tr . _)
3   Source: http://internap.dl.sourceforge.net/sourceforge/%{n}/%{n}%{boostver}.tar.gz
4  
5   Requires: boost-build python bz2lib
6 < %if "%cmsplatf" != "slc4onl_ia32_gcc346"
6 > %if "%cmsplatf" == "slc4onl_ia32_gcc346"
7 > %else
8   Requires: zlib
9   %endif
10  
# Line 36 | Line 37 | bjam %makeprocesses -s$PR -s$PV -s$BZ2LI
37   %endif
38  
39   %install
39
40 linkgccver=%(echo %gccver | tr -d . | perl -pe 's/^(\d\d).*/$1/')
41
42 boost_abi=$(echo %boostver | sed 's/^_//; s/_0$//')
40   case $(uname) in Darwin ) so=dylib ;; * ) so=so ;; esac
41   #no debug libs...
42   #mkdir -p %i/lib/debug
43   mkdir %i/lib
44   #(cd bin/boost; find libs -path "libs/*/debug/*.$so" -exec cp {} %i/lib/debug \;)
45   # Perhaps the following could be done with a wildcard for the darwin/gcc dir
46 < case $(uname) in
47 <  Darwin )
46 > case %cmsplatf in
47 >  osx*)
48      (cd bin.v2; find libs -path "libs/*/build/darwin*/release/*.$so*" -exec cp  {} %i/lib/. \;)
49      ;;
50 <   * )
50 >  * )
51      (cd bin.v2; find libs -path "libs/*/build/gcc*/release/*.$so*" -exec cp  {} %i/lib/. \;)
52      ;;
53   esac
54 +
55   find boost -name '*.[hi]*' -print |
56    while read f; do
57      mkdir -p %i/include/$(dirname $f)
# Line 64 | Line 62 | find libs -name '*.py' -print |
62      mkdir -p %i/lib/$(dirname $f)
63      install -c $f %i/lib/$f
64    done
67 [ $(uname) = Darwin ] &&
68  for f in %i/lib/*.$so %i/lib/*.$so; do
69    install_name_tool -id $f $f
70  done
65  
66   # Do all manipulation with files before creating symbolic links:
67   perl -p -i -e "s|^#!.*python|/usr/bin/env python|" $(find %{i}/lib %{i}/bin)
68   #strip %i/lib/*.$so
69  
70 + for l in `find %i/lib -name "*.$so.*"`
71 + do
72 +  ln -s `basename $l` `echo $l | sed -e "s|[.]$so[.].*|.$so|"`
73 + done
74  
77 #(cd %i/lib; for f in lib*-$boost_abi.$so; do ln -s $f $(echo $f | sed "s/-$boost_abi//"); done)
78 #(cd %i/lib; for f in lib*-$boost_abi.$so; do ln -s $f $f.%realversion ; done)
79 (cd %i/lib; for f in lib*-$boost_abi.$so.%{realversion}; do ln -s $f $(echo $f | sed "s/.%{realversion}$//"); done)
80 (cd %i/lib; for f in lib*-$boost_abi.$so.%{realversion}; do ln -s $f $(echo $f | sed "s/-$boost_abi//" | sed "s/.%{realversion}$//"); done)
81 (cd %i/lib; for f in lib*-$boost_abi.$so.%{realversion}; do ln -s $f $(echo $f | sed "s/-$boost_abi//" | sed "s/.%{realversion}$//" | sed "s/gcc$linkgccver/gcc/"); done)
82 #(cd %i/lib/debug; for f in lib*-d-$boost_abi.$so; do ln -s $f $(echo $f | sed "s/-d-$boost_abi//"); done)
83 #(cd %i/lib/debug; for f in lib*-d-$boost_abi.$so; do ln -s $f $f.%realversion; done)
75   (cd %i/lib/libs/python/pyste/install; python setup.py install --prefix=%i)
76  
77 + getLibName()
78 + {
79 +  libname=`find %i/lib -name "libboost_$1*mt*.$so" -exec basename {} \;`
80 +  echo $libname | sed -e 's|[.][^-]*$||;s|^lib||'
81 + }
82 +
83 + export BOOST_THREAD_LIB=`getLibName thread`
84 + export BOOST_SIGNALS_LIB=`getLibName signals`
85 + export BOOST_FILESYSTEM_LIB=`getLibName filesystem`
86 + export BOOST_PROGRAM_OPTIONS_LIB=`getLibName program_options`
87 + export BOOST_PYTHON_LIB=`getLibName python`
88 + export BOOST_REGEX_LIB=`getLibName regex`
89 +
90   # SCRAM ToolBox toolfile
91   mkdir -p %i/etc/scram.d
92   # boost toolfile
# Line 90 | Line 94 | cat << \EOF_TOOLFILE >%i/etc/scram.d/boo
94   <doc type=BuildSystem::ToolDoc version=1.0>
95   <Tool name=boost version=%v>
96   <info url="http://www.boost.org"></info>
97 < <lib name=boost_thread-gcc-mt>
98 < <lib name=boost_signals-gcc-mt>
97 > <lib name="@BOOST_THREAD_LIB@">
98 > <lib name="@BOOST_SIGNALS_LIB@">
99   <Client>
100   <Environment name=BOOST_BASE default="%i"></Environment>
101   <Environment name=LIBDIR default="$BOOST_BASE/lib"></Environment>
# Line 108 | Line 112 | cat << \EOF_TOOLFILE >%i/etc/scram.d/boo
112   <doc type=BuildSystem::ToolDoc version=1.0>
113   <Tool name=boost_filesystem version=%v>
114   <info url="http://www.boost.org"></info>
115 < <lib name=boost_filesystem-gcc-mt>
115 > <lib name="@BOOST_FILESYSTEM_LIB@">
116   <use name=boost>
117   </Tool>
118   EOF_TOOLFILE
# Line 118 | Line 122 | cat << \EOF_TOOLFILE >%i/etc/scram.d/boo
122   <doc type=BuildSystem::ToolDoc version=1.0>
123   <Tool name=boost_program_options version=%v>
124   <info url="http://www.boost.org"></info>
125 < <lib name=boost_program_options-gcc-mt>
125 > <lib name="@BOOST_PROGRAM_OPTIONS_LIB@">
126   <use name=boost>
127   </Tool>
128   EOF_TOOLFILE
# Line 128 | Line 132 | cat << \EOF_TOOLFILE >%i/etc/scram.d/boo
132   <doc type=BuildSystem::ToolDoc version=1.0>
133   <Tool name=boost_python version=%v>
134   <info url="http://www.boost.org"></info>
135 < <lib name=boost_python-gcc-mt>
135 > <lib name="@BOOST_PYTHON_LIB@">
136   <Client>
137   <Environment name=BOOST_PYTHON_BASE default="%i"></Environment>
138   <Environment name=PYSTE_EXEC default="$BOOST_PYTHON_BASE/lib/python2.4/site-packages/Pyste/pyste.py"></Environment>
# Line 146 | Line 150 | cat << \EOF_TOOLFILE >%i/etc/scram.d/boo
150   <doc type=BuildSystem::ToolDoc version=1.0>
151   <Tool name=boost_regex version=%v>
152   <info url="http://www.boost.org"></info>
153 < <lib name=boost_regex-gcc-mt>
153 > <lib name="@BOOST_REGEX_LIB@">
154   <use name=boost>
155   </Tool>
156   EOF_TOOLFILE
# Line 156 | Line 160 | cat << \EOF_TOOLFILE >%i/etc/scram.d/boo
160   <doc type=BuildSystem::ToolDoc version=1.0>
161   <Tool name=boost_signals version=%v>
162   <info url="http://www.boost.org"></info>
163 < <lib name=boost_signals-gcc-mt>
163 > <lib name="@BOOST_SIGNALS_LIB@">
164   <use name=boost>
165   </Tool>
166   EOF_TOOLFILE
167  
168 + perl -p -i -e 's|\@([^@]*)\@|$ENV{$1}|g' %i/etc/scram.d/*
169 +
170   %post
171   %{relocateConfig}etc/scram.d/boost
172   %{relocateConfig}etc/scram.d/boost_filesystem

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines