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

Comparing COMP/CMSDIST/gcc-toolfile.spec (file contents):
Revision 1.33 by eulisse, Wed Sep 1 08:24:00 2010 UTC vs.
Revision 1.41 by elmer, Wed Nov 3 23:33:52 2010 UTC

# Line 58 | Line 58 | cat << \EOF_TOOLFILE >%i/etc/scram.d/cxx
58      <flags LDFLAGS="@OS_LDFLAGS@"/>
59      <flags CXXSHAREDFLAGS="@OS_SHAREDFLAGS@ @ARCH_SHAREDFLAGS@"/>
60      <flags SHAREDSUFFIX="@OS_SHAREDSUFFIX@"/>
61 +    <flags LD_UNIT="@OS_LD_UNIT@ @ARCH_LD_UNIT@"/>
62      <flags SCRAM_LANGUAGE_TYPE="C++"/>
63 <    <runtime name="@OS_RUNTIME_LDPATH_NAME@" value="$GCC_BASE/@OS_LIB64DIR@" type="path"/>
64 <    <runtime name="@OS_RUNTIME_LDPATH_NAME@" value="$GCC_BASE/lib" type="path"/>
65 <    <runtime name="PATH" value="$GCC_BASE/bin" type="path"/>
63 >    <runtime name="@OS_RUNTIME_LDPATH_NAME@" value="$CXXCOMPILER_BASE/@ARCH_LIB64DIR@" type="path"/>
64 >    <runtime name="@OS_RUNTIME_LDPATH_NAME@" value="$CXXCOMPILER_BASE/lib" type="path"/>
65 >    <runtime name="PATH" value="$CXXCOMPILER_BASE/bin" type="path"/>
66    </tool>
67   EOF_TOOLFILE
68  
# Line 83 | Line 84 | cat << \EOF_TOOLFILE >%i/etc/scram.d/cco
84    </tool>
85   EOF_TOOLFILE
86  
87 + # Notice that on OSX we have a LIBDIR defined for f77compiler because gcc C++
88 + # compiler (which comes from the system) does not know about where to find
89 + # libgfortran.
90   cat << \EOF_TOOLFILE >%i/etc/scram.d/f77compiler.xml
91    <tool name="f77compiler" version="@GCC_VERSION@" type="compiler">
92      <lib name="gfortran"/>
# Line 90 | Line 94 | cat << \EOF_TOOLFILE >%i/etc/scram.d/f77
94      <client>
95        <environment name="F77COMPILER_BASE" default="@G77_ROOT@"/>
96        <environment name="FC" default="$F77COMPILER_BASE/bin/gfortran"/>
97 +      @OS_FORTRAN_LIBDIR@
98      </client>
99      <flags SCRAM_COMPILER_NAME="gcc@COMPILER_VERSION@"/>
100      <flags FFLAGS="-fno-second-underscore -Wunused -Wuninitialized -O2"/>
# Line 107 | Line 112 | export COMPILER_EXEC_NAME="c++"
112   # First of all handle OS specific options.
113   case %cmsplatf in
114    slc* )
115 <    export OS_SHAREDFLAGS="-Wl,-E"
115 >    export OS_SHAREDFLAGS="-shared -Wl,-E"
116      export OS_SHAREDSUFFIX="so"
112    export OS_LIB64DIR="lib64"
117      export OS_LDFLAGS="-Wl,-E -Wl,--hash-style=gnu"
118      export OS_RUNTIME_LDPATH_NAME="LD_LIBRARY_PATH"
119    ;;
120    osx* )
121      export OS_SHAREDFLAGS="-shared -dynamic -single_module"
122      export OS_SHAREDSUFFIX="dylib"
119    export OS_LIB64DIR="lib"
123      export OS_RUNTIME_LDPATH_NAME="DYLD_LIBRARY_PATH"
124 +    export OS_FORTRAN_LIBDIR='<environment name="LIBDIR" default="$F77COMPILER_BASE/lib/gcc/i686-apple-darwin10/4.2.1"/>'
125    ;;
126   esac
127  
# Line 127 | Line 131 | case %cmsplatf in
131    osx*_ia32_* )
132      export ARCH_CXXFLAGS="-arch i386"
133      export ARCH_SHAREDFLAGS="-arch i386"
134 +    export ARCH_LIB64DIR="lib"
135    ;;
136    osx*_amd64_* )
137      export ARCH_CXXFLAGS="-arch x86_64"
138      export ARCH_SHAREDFLAGS="-arch x86_64"
139 +    export ARCH_LIB64DIR="lib"
140    ;;
141    osx*_ppc32_* )
142      export ARCH_CXXFLAGS="-arch ppc"
143      export ARCH_SHAREDFLAGS="-arch ppc"
144 +    export ARCH_LIB64DIR="lib"
145    ;;
146 <  slc* )
146 >  slc*_amd64_* )
147 >    # For some reason on mac, some of the header do not compile if this is
148 >    # defined.  Ignore for now.
149 >    export ARCH_CXXFLAGS="-Werror=overflow"
150 >    export ARCH_LIB64DIR="lib64"
151 >    export ARCH_LD_UNIT="-r -m elf_x86_64"
152 >  ;;
153 >  slc*_ia32_* )
154      # For some reason on mac, some of the header do not compile if this is
155      # defined.  Ignore for now.
156      export ARCH_CXXFLAGS="-Werror=overflow"
157 +    export ARCH_LIB64DIR="lib"
158 +    export ARCH_LD_UNIT="-r -m elf_i386"
159 +  ;;
160 +  *)
161 +    echo "Unsupported."
162 +    exit 1
163    ;;
164   esac
165  
166   # Then handle compiler specific options. E.g. enable
167   # optimizations as they become available in gcc.
168 + COMPILER_CXXFLAGS=
169   case %cmsplatf in
170     *_gcc4[56789]* )
171 <     export COMPILER_CXXFLAGS="-ftree-vectorize"
171 >     COMPILER_CXXFLAGS="$COMPILER_CXXFLAGS -std=c++0x -ftree-vectorize"
172 >     export COMPILER_CXXFLAGS
173     ;;
174   esac
175  
176   case %cmsplatf in
177     *_gcc4[3456789]* )
178 <     export COMPILER_CXXFLAGS="-Werror=array-bounds -Werror=format-contains-nul"
178 >     COMPILER_CXXFLAGS="$COMPILER_CXXFLAGS -Werror=array-bounds -Werror=format-contains-nul"
179 >     export COMPILER_CXXFLAGS
180     ;;
181   esac
182  

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines