ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/COMP/CMSDIST/p5-xml-parser.spec
Revision: 1.14
Committed: Wed Jun 27 13:34:02 2007 UTC (17 years, 10 months ago) by elmer
Branch: MAIN
CVS Tags: pe20070628b-ports, pe20070628a-ports, pe20070627b-ports, pe20070627a-ports
Changes since 1.13: +5 -5 lines
Log Message:
Update to -CMS3 for full rebuild

File Contents

# User Rev Content
1 elmer 1.14 ### RPM external p5-xml-parser 2.34-CMS3
2 eulisse 1.8 ## INITENV +PATH PERL5LIB %i/lib/site_perl/%perlversion
3 lat 1.5 %define perlversion %(perl -e 'printf "%%vd", $^V')
4     %define perlarch %(perl -MConfig -e 'print $Config{archname}')
5 eulisse 1.1 %define downloadn XML-Parser
6 eulisse 1.13 %define expatversion 2.0.0
7 elmer 1.14 Source0: http://mirror.switch.ch/ftp/mirror/CPAN/authors/id/M/MS/MSERGEANT/%{downloadn}-%{realversion}.tar.gz
8 eulisse 1.13 Source1: http://dl.sourceforge.net/sourceforge/expat/expat-%expatversion.tar.gz
9 eulisse 1.1 %prep
10 elmer 1.14 %setup -T -b 0 -n %{downloadn}-%{realversion}
11 eulisse 1.13 %setup -D -T -b 1 -n expat-%expatversion
12 eulisse 1.1 %build
13 eulisse 1.13 # We statically compile expat so that the perl module itself,
14     # and hence scram, do not depend on the expat rpm.
15     # This way we can change the expat version in CMSSW/externals
16     # without having to rebuild scram.
17     which gcc
18     rm -rf %_builddir/tmp
19     cd ../expat-%expatversion
20     mkdir -p %_builddir/tmp
21     ./configure --prefix=%_builddir/tmp --disable-shared --enable-static
22     make clean
23     make
24     make install
25 elmer 1.14 cd ../%{downloadn}-%{realversion}
26 eulisse 1.12
27 lat 1.5 perl Makefile.PL PREFIX=%i LIB=%i/lib/site_perl/%perlversion \
28 eulisse 1.13 EXPATLIBPATH=%_builddir/tmp/lib \
29     EXPATINCPATH=%_builddir/tmp/include
30 eulisse 1.1 make
31 eulisse 1.12
32 eulisse 1.13 # If we are building on a machine which has a system compiler which
33     # can produce 64 bit binaries, than we also compile a 64 bit version
34     # of the module, so that scram can work also on 64bit platforms disguised
35     # as 32 bit via linux32.
36 eulisse 1.12 case %{cmsos} in
37     slc4_ia32)
38     if ldd /usr/bin/gcc | grep -q /lib64/
39     then
40     make install
41     mv %i/lib/site_perl/%perlversion/x86_64-linux-thread-multi %i/lib/site_perl/%perlversion/i386-linux-thread-multi
42     make clean
43    
44     export PATH=/usr/bin/:$PATH
45     export GCC_EXEC_PREFIX=/usr/lib/gcc/
46 eulisse 1.13 cd ../expat-%expatversion
47     CXX="/usr/bin/c++ -fPIC" CC="/usr/bin/gcc -fPIC" setarch x86_64 ./configure --prefix=%_builddir/tmp --bindir=%_builddir/tmp/bin/64 --libdir=%_builddir/tmp/lib64 --disable-shared --enable-static
48     echo "Building 64bit version"
49     setarch x86_64 make clean
50     setarch x86_64 make
51     setarch x86_64 make install
52 elmer 1.14 cd ../%{downloadn}-%{realversion}
53 eulisse 1.12 perl Makefile.PL PREFIX=%i LIB=%i/lib/site_perl/%perlversion \
54 eulisse 1.13 EXPATLIBPATH=%_builddir/tmp/lib64 \
55     EXPATINCPATH=%_builddir/tmp/include
56 eulisse 1.12 make
57 eulisse 1.13 make install
58 eulisse 1.12 fi;;
59     *)
60     ;;
61 elmer 1.7 esac
62 eulisse 1.12
63 eulisse 1.1 %install