ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/COMP/SCRAM/src/compilers.mk
Revision: 1.10
Committed: Thu Apr 1 09:55:00 1999 UTC (26 years, 1 month ago) by williamc
Branch: MAIN
Changes since 1.9: +4 -3 lines
Log Message:
Dependency handling by individual file

File Contents

# User Rev Content
1 williamc 1.1 # Compiler Specific Details
2     #
3     #----------------------------------------------
4     # Some standard variables
5     #----------------------------------------------
6     # arlibname : name of library archive etc
7     # shlibname : name of shared object
8     # arlibobjs : name of objects destined for a library archive
9     # sharedlibobjs : name of objects detined for a shared object file
10     #
11     #
12     #
13     #----------------------------------------------
14     # Standard Defaults
15     # Override as necessary for specific compilers
16     #----------------------------------------------
17     CXX=CC
18     CXXDebugFlag=-g
19     FCDebugFlag=-g
20 williamc 1.7 FC:=f77
21 williamc 1.1
22     ArchiveSuffix = a
23     ArchiveTool = ar -rc $@ $^
24     ArchiveCCTool = $(ArchiveTool)
25    
26     SharedCCObjectFlags = -PIC
27     SharedFCObjectFlags = -PIC
28     SharedSuffix =so
29     SharedCCTool = @echo No Shared Library support
30    
31     #----------------------------------------------
32     # Sun 4.2 CC
33     #----------------------------------------------
34     ifeq ($(CCcompiler),Sun-CC-4.2)
35 williamc 1.10 CXX=CC
36 williamc 1.5 CXXFLAGS+=-ptr$(template_dir) -features=rtti
37 williamc 1.3 #template_dir=$(shell echo $@ )
38 williamc 1.6 template_dir=$(shell echo $@ | sed -e 's/.*\(_.*\)\..*/tmpl\1/' -e 's/.*.o/tmpl/' -e 's/.*.a/tmpl/' -e 's/.*.exe/tmpl/')
39 williamc 1.10 ArchiveCCTool = $(CXX) -xar -o $@ $^ -ptr$(template_dir)
40     SharedCCTool = $(CXX) -G -o $@ $^ -ptr$(template_dir)
41     DependencyCCTool = $(CXX) -xM1 $(CPPFLAGS) $^ > $@
42 williamc 1.4 ifdef f77
43     extralib+=M77 F77 sunmath m
44     endif
45 williamc 1.1 endif
46    
47     #----------------------------------------------
48     # aCC HP-UX
49     #----------------------------------------------
50     ifeq ($(CCcompiler),aCC)
51     CXX=aCC
52     SharedCCObjectFlags = +Z
53     SharedSuffix=sl
54     SharedCCTool=aCC -b $^ -o $@
55 williamc 1.4 ifdef f77
56     LIBDIR+=/opt/fortran/lib
57     extralib+=cl isamstub U77 /usr/lib/libdld.sl
58     endif
59 williamc 1.1 endif
60    
61     #----------------------------------------------
62     # gcc Linux
63     #----------------------------------------------
64     ifeq ($(CCcompiler),gcc)
65     CXX=c++
66     SharedCCObjectFlags = -fPIC
67     SharedCCTool = gcc $^ -o $@ -shared -Wl,-soname,$@
68 williamc 1.4 ifdef f77
69     extralib+=f2c m
70     endif
71 williamc 1.1 endif
72    
73     #----------------------------------------------
74     # egcs Linux
75     #----------------------------------------------
76     ifeq ($(CCcompiler),egcs)
77     CXX=c++
78     SharedCCObjectFlags = -fPIC
79     SharedCCTool = $(CXX) $^ -o $@ -shared -Wl,-soname,$@
80 williamc 1.4 ifdef f77
81     extralib+=g2c m
82     endif
83 williamc 1.7 endif
84    
85     #----------------------------------------------
86     # GNU g77 Fortran compiler
87     #----------------------------------------------
88     ifeq ($(F77compiler),g77)
89     FC:=g77
90 williamc 1.1 endif
91 williamc 1.8
92    
93     #-----------------------------------------------
94     # Insure++
95     #-----------------------------------------------
96     Insure:=insure
97 williamc 1.9 .psrc :
98     -@rm .psrc
99     echo insure++.compiler_cpp $(CXX) >> .psrc
100     echo insure++.temp_directory /tmp >> .psrc
101     echo insure++.compiler_default cpp >> .psrc
102     echo insure++.summarize leaks >> .psrc