ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/COMP/CMSDIST/llvm.spec
Revision: 1.1
Committed: Tue Apr 7 14:20:15 2009 UTC (16 years ago) by elmer
Branch: MAIN
CVS Tags: CMSSW_3_3_6_slc5-gcc434, apFor336v0-slc5-gcc434, CMSSW_3_3_5_patch4_slc5-gcc434, apFor335p4v0-slc5-gcc434, apFor335p4-slc5-gcc434, CMSSW_3_3_5_patch3_slc5-gcc434, apFor335p3v0-slc5-gcc434, CMSSW_3_3_5_patch2_slc5-gcc434, CMSSW_3_3_3_onlpatch5_ONLINE, apFor335p2v0-slc5-gcc434, CMSSW_3_3_5_patch1_slc5-gcc434, apFor335pat1v2-slc5-gcc434, apFor335pat1v1-slc5-gcc434, apFor335pat1v0-slc5-gcc434, CMSSW_3_3_5_slc5-gcc434, CMSSW_3_3_3_onlpatch4_ONLINE, apFor335v0-sl5igcc4, pe20091126a-for33X-slc5-gcc434, CMSSW_3_3_3_onlpatch2_ONLINE, CMSSW_3_3_3_onlpatch3_ONLINE, CMSSW_3_3_4_slc5-gcc434, apFor334v0-sl5igcc4, CMSSW_3_3_3_slc5-gcc434, CMSSW_3_3_3_ONLINE, fw20091114b, fw20091114a, fw20091114, pe20091113c-for33X-slc5-gcc434, pe20091113b-for33X-slc5-gcc434, pe20091113a-for33X-slc5-gcc434, apFor333v1-sl5igcc4, apFor333v1-sl4igcc4, apFor333v0_sl5igcc4, apFor333v0_sl4igcc4, CMSSW_3_3_2_ONLINE-slc5, sm091112c-slc5onl, sm091112b-slc5onl, sm091112a-slc5onl, sm091112-slc5onl, pe20091110c-34X-slc4-gcc432, pe20091110c-for33X-slc5-gcc434, pe20091110c-for33X-slc4-gcc432, pe20091110b-for33X-slc5-gcc434, pe20091110b-for33X-slc4-gcc432, pe20091110a-for33X-slc5-gcc434, pe20091110a-for33X-slc4-gcc432, CMSSW_3_3_2_onlpatch2_ONLINE, CMSSW_3_3_2_ONLINE, CMSSW_3_3_2_onlpatch1_ONLINE, pe20091108c-34X-slc4-gcc432, pe20091108b-34X-slc4-gcc432, pe20091108a-34X-slc4-gcc432, ap20091107-slc5onl, CMSSW_3_4_0_pre5-slc5-gcc434, pe20091106a-34X-slc4-gcc432, CMSSW_3_4_0_pre5-slc4-gcc432, CMSSW_3_4_0_pre4-slc4-gcc432, CMSSW_3_4_0_pre5-slc4_gcc432, dl091106, pe20091103d-34X-slc4-gcc432, pe20091103c-34X-slc4-gcc432, pe20091103b-slc4-gcc432, ap-20091103a-slc5onl-bootstrap, pe20091103a-slc4-gcc432, pe20091103a--slc4-gcc432, ap-20091103-slc5onl-bootstrap, CMSSW_3_3_2_FWLITE-slc5-gcc434, apFor332fwlv1-slc5-gcc434, apFor332fwlv0, eskFor340p4, CMSSW_3_3_2-slc5-gcc434, CMSSW_3_3_2-slc4-gcc432, apFor332v0_sl4igcc4, apFor332v0_sl5igcc4, CMSSW_3_4_0_pre3, eskFor340p3, apFor331fwlv1-slc5gcc434, sm091023b-slc5onl, sm091023a-slc5onl, CMSSW_3_3_1-slc5-gcc434, CMSSW_3_3_1-slc4-gcc432, CMSSW_3_3_0_onlpatch2_ONLINE, CMSSW_3_2_7_onlpatch6_ONLINE, for330op2, for327op6, pe20091022a-ports, pe20091022a-ports5, CMSSW_3_3_0_onlpatch1_ONLINE, pe20091021a-ports5, pe20091021a-ports, CMSSW_3_2_7_onlpatch5_ONLINE, CMSSW_3_2_7_onlpatch4_ONLINE, CMSSW_3_4_0_pre2-432, CMSSW_3_4_0_pre1-432, pe20091018a-ports5, ge20091019, sm327op4, ge20091015-comp-bootstrap, CMSSW_3_3_0-slc5, CMSSW_3_3_0-432, CMSSW_3_3_0_ONLINE, sm091013a, sm091012c, sm091012b, sm091012a, CMSSW_3_2_7_onlpatch3_ONLINE, pe20091008d-ports5, pe20091008d-ports, pe20091008c-ports5, ge20091008-fix-rpm-relocation, pe20091008b-ports5, pe20091008a-ports5, sm091007a, ge20091010-bootstrap, pe20091006e-ports5, ge20091006-bootstrap-3, pe20091006d-ports5, ge20091006-bootstrap-2, CMSSW_3_3_0_pre6-432, pe20091006c-ports5, ge20091006, pe20091006b-ports5, pe20091006a-ports5, pe20091006a-ports, pe20090929a-ports, ge20090929-amd64, ge20090929-ia32, ap20090929a-ports, CMSSW_3_3_0_pre5-432, CMSSW_3_2_7_onlpatch2_ONLINE, sm090928a, pe20090925a-ports, pe20090924a-ports, pe20090923b-ports, CMSSW_3_2_7_onlpatch1_ONLINE, CMSSW_3_2_7_ONLINE, sm090923a, pe20090923a-ports, pe20090922e-ports, pe20090922d-ports, pe20090922c-ports, pe20090922b-ports, pe20090922a-ports, ge20090922-ports, sm090922a, pe20090921d-ports, ge20090921-ports, pe20090921c-ports, pe20090912a-ports-xdaq, pe20090911a-ports-xdaq, pe20090907a-ports, apFor330pre2v0, PerfSuiteDB_20090904_almost_stable, pe20090904a-ports, PerfSuiteDB_20090904, pe20090903b-ports, pe20090903a-ports, PerfSuiteDB_20090901, CMSSW_3_2_1_onlpatch6_ONLINE, sm090829a, forHEARTBEATr04, pe20090827a-ports, CMSSW_3_2_1_onlpatch5_ONLINE, pe20090826a-ports, RPMVERIFY_0_2, sm090826a, forHEARTBEATr01, CMSSW_3_2_1_onlpatch4_ONLINE, sm090818a, CMSSW_3_2_4_ONLINE, sm090813e, sm090813d, sm090813c, sm090813b, sm090813a, CMSSW_3_2_1_onlpatch3_ONLINE, sm090810a, CMSSW_3_2_1_onlpatch2_ONLINE, sm090806a, CMSSW_3_2_1_onlpatch1_ONLINE, apFor321onlp1v1, apFor321onlp1v0, CMSSW_3_2_1-432, pe20090722b-31Xports-432, pe20090722a-31Xports-432, CMSSW_3_2_1_ONLINE, CMSSW_3_2_1, sm090721b, sm090721a, sm090720b, sm090720a, apFor320onlv1, CMSSW_3_1_1_onlpatch3_ONLINE, sm090716a, CMSSW_3_1_1_onlpatch2_ONLINE, sm090715c, sm090715b, sm090715a, CMSSW_3_ONLINE_BOOTSTRAP, sm090709a, CMSSW_3_1_1_onlpatch1_ONLINE, sm090708g, CMSSW_3_1_1_ONLINE, sm090708f, sm090708e, sm090708d, sm090708c, sm090708b, CMSSW_3_1_0_ONLINE2, sm090708a, pe20090707c-31Xports-432, pe20090707b-31Xports-432, pe20090707a-31Xports-432, pe20090706b-31Xports-432, pe20090706a-31Xports-432, CMSSW_3_1_0_onlpatch1_ONLINE, sm090703a, pe20090701a-31Xports-432, CMSSW_3_1_0_ONLINE, sm090701b, sm090701a, CMSSW_3_1_0_pre10_ONLINE, sm090621b, sm090621a, sm090620b, sm090620a, sm090619e, sm090619d, sm090619c, sm090619b, sm090619a, sm090618a, CMSSW_3_1_0_pre10-432, pe20090616a-31Xports-432, pe20090615a-31Xports-432, pe20090611c-31Xports-432, pe20090611b-31Xports-432, pe20090611a-31Xports-432, pe20090610d-31Xports-432, pe20090610c-31Xports-432, pe20090610b-31Xports-432, pe20090610a-31Xports-432, pe20090604a-31Xports-432, pe20090526a-31Xports-432, pe20090525b-31Xports-432, pe20090525a-31Xports-432, ap20090520-osx105, ap20090519-osx105, pe20090514b-31Xports-432, pe20090514a-31Xports-432, pe20090512a-31Xports-432, pe20090511a-31Xports-432, pe20090505b-31Xports-432, pe20090505a-31Xports-432, pe20090504a-31Xports-432, DBS_2_0_6_patch_2_32, pe20090414a-31Xports-432, pe20090407a-31Xports-432
Log Message:
First attempt at llvm spec

File Contents

# User Rev Content
1 elmer 1.1 ### RPM external llvm 2.5
2     Source0: http://llvm.org/releases/%realversion/%n-gcc-4.2-%realversion.source.tar.gz
3     Source1: http://llvm.org/releases/%realversion/%n-%realversion.tar.gz
4     %define gmpVersion 4.2.1
5     %define mpfrVersion 2.2.1
6     Source2: ftp://ftp.gnu.org/gnu/gmp/gmp-%{gmpVersion}.tar.bz2
7     Source3: http://www.mpfr.org/mpfr-%{mpfrVersion}/mpfr-%{mpfrVersion}.tar.bz2
8    
9     %prep
10     %setup -T -b 0 -n llvm-gcc4.2-%realversion.source
11    
12     %if "%cmsos" == "slc4_ia32"
13     cat << \EOF_CONFIG_GCC >> gcc/config.gcc
14     # CMS patch to include gcc/config/i386/t-cms when building gcc
15     tm_file="$tm_file i386/cms.h"
16     tmake_file="$tmake_file i386/t-cms"
17     EOF_CONFIG_GCC
18    
19     cat << \EOF_CMS_H > gcc/config/i386/cms.h
20     #undef ASM_SPEC
21     #define ASM_SPEC "%%{v:-V} %%{Qy:} %%{!Qn:-Qy} %%{n} %%{T} %%{Ym,*} %%{Yd,*} %%{Wa,*:%%*} --32"
22     #undef CC1_SPEC
23     #define CC1_SPEC "%%(cc1_cpu) %%{profile:-p} -m32"
24     #undef CC1PLUS_SPEC
25     #define CC1PLUS_SPEC "-m32"
26     #undef MULTILIB_DEFAULTS
27     #define MULTILIB_DEFAULTS { "m32" }
28     EOF_CMS_H
29    
30     cat << \EOF_T_CMS > gcc/config/i386/t-cms
31     MULTILIB_OPTIONS = m32
32     MULTILIB_DIRNAMES = ../lib
33     MULTILIB_MATCHES = m32=m32
34     EOF_T_CMS
35     %endif
36    
37     %setup -D -T -b 1 -n llvm-%realversion
38     %setup -D -T -b 2 -n gmp-%{gmpVersion}
39     %setup -D -T -b 3 -n mpfr-%{mpfrVersion}
40    
41     %build
42     %define gcc4opts %{nil}
43     # Build GMP/MPFR for GCC 4.x
44     cd ../gmp-%{gmpVersion}
45     CC="gcc $CCOPTS" ./configure --prefix=%i/tmp/gmp --disable-shared
46     make %makeprocesses
47     make install
48     cd ../mpfr-%{mpfrVersion}
49     CC="gcc $CCOPTS" ./configure --prefix=%i/tmp/mpfr --with-gmp=%i/tmp/gmp --disable-shared
50     make %makeprocesses
51     make install
52     %define gcc4opts --with-gmp=%i/tmp/gmp --with-mpfr=%i/tmp/mpfr
53    
54     # Build llvm
55     cd ..
56     mkdir llvm-objects
57     cd llvm-objects
58     ../llvm-%realversion/configure --prefix=%i --enable-optimized
59     make %makeprocesses
60     make install
61     # Build the llvm-gcc front-end
62     cd ../llvm-gcc4.2-%realversion.source
63     ./configure --prefix=%i %gcc4opts --enable-llvm=`pwd`/../llvm-objects --enable-languages=c,c++
64     rm GNUmakefile
65     make %makeprocesses
66     make install
67    
68     %install
69     # SCRAM ToolBox toolfile
70     mkdir -p %i/etc/scram.d
71     cat << \EOF_TOOLFILE >%i/etc/scram.d/%n
72     <doc type=BuildSystem::ToolDoc version=1.0>
73     <Tool name=%n version=%v>
74     <lib name=z>
75     <client>
76     <Environment name=ZLIB_BASE default="%i"></Environment>
77     <Environment name=INCLUDE default="$ZLIB_BASE/include"></Environment>
78     <Environment name=LIBDIR default="$ZLIB_BASE/lib"></Environment>
79     </client>
80     </Tool>
81     EOF_TOOLFILE
82    
83     %post
84     %{relocateConfig}etc/scram.d/%n